From: "mame (Yusuke Endoh)" Date: 2022-07-26T08:34:49+00:00 Subject: [ruby-core:109320] [Ruby master Bug#18810] Make `Kernel#p` interruptable. Issue #18810 has been updated by mame (Yusuke Endoh). My concern is that inserting `p(...)` changes a program behavior unintentionally (except that the p writes something to stdout, of course). When debugging, we often insert `p(...)` and run the program to reproduce the bug being debugged. It would be annoying if the bug becomes unreproducible because the insertion of `p(...)` changes the behavior of the program. I don't want to see something like the "bug not reproduced on the debugger" problem. ---------------------------------------- Bug #18810: Make `Kernel#p` interruptable. https://bugs.ruby-lang.org/issues/18810#change-98459 * Author: ioquatix (Samuel Williams) * Status: Open * Priority: Normal * Assignee: ioquatix (Samuel Williams) * Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN ---------------------------------------- While figuring out https://bugs.ruby-lang.org/issues/18465 I found a test which fails when `rb_io_flush` becomes blocking.: https://github.com/ruby/ruby/commit/fe6b2e20e9f17ed2c2900aa72994e075ffdc7124 It seems unusual to me that `Kernel#p` is uninterruptible (unique among all Ruby methods). I'd like to make `Kernel#p` interruptible. -- https://bugs.ruby-lang.org/ Unsubscribe: