[#100689] [Ruby master Feature#17303] Make webrick to bundled gems or remove from stdlib — hsbt@...
Issue #17303 has been reported by hsbt (Hiroshi SHIBATA).
11 messages
2020/11/02
[#100852] [Ruby master Feature#17326] Add Kernel#must! to the standard library — zimmerman.jake@...
SXNzdWUgIzE3MzI2IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGpleiAoSmFrZSBaaW1tZXJtYW4pLg0K
24 messages
2020/11/14
[#100930] [Ruby master Feature#17333] Enumerable#many? — masafumi.o1988@...
Issue #17333 has been reported by okuramasafumi (Masafumi OKURA).
10 messages
2020/11/18
[#101071] [Ruby master Feature#17342] Hash#fetch_set — hunter_spawn@...
Issue #17342 has been reported by MaxLap (Maxime Lapointe).
26 messages
2020/11/25
[ruby-core:100688] [Ruby master Bug#17302] The TracePoint API does not allow setting multiple line traces within the same method (ISEQ)
From:
liran.last@...
Date:
2020-11-02 07:58:28 UTC
List:
ruby-core #100688
Issue #17302 has been updated by liran.last@gmail.com (Liran Haimovitch). liran.last@gmail.com (Liran Haimovitch) wrote in #note-1: > liran.last@gmail.com (Liran Haimovitch) wrote: > > When setting a second line tracepoint within a method the first one will be turned off. > > > > I believe this is due to the fact that the encoded_iseq_trace_instrument function resets the trace value of an instruction rather then just turn it on if needed - https://github.com/ruby/ruby/blob/799253dc46e96518687dcd4fdca42582251ccffe/iseq.c#L3178 > > > > And it is unconditionally called, not limited to the correct line: https://github.com/ruby/ruby/blob/799253dc46e96518687dcd4fdca42582251ccffe/iseq.c#L3219 > > Attaching a short file to reproduce the bug, based on the existing `enable_spec.rb` in the Ruby repo. After some additional investigation, it seems that when adding multiple breakpoints to the same method (ISEQ) only the last one will apply. BUT, if I disable even one of them, all the breakpoints that are left enabled will work simultaneously. ---------------------------------------- Bug #17302: The TracePoint API does not allow setting multiple line traces within the same method (ISEQ) https://bugs.ruby-lang.org/issues/17302#change-88329 * Author: liran.last@gmail.com (Liran Haimovitch) * Status: Open * Priority: Normal * Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN ---------------------------------------- When setting a second line tracepoint within a method the first one will be turned off. I believe this is due to the fact that the encoded_iseq_trace_instrument function resets the trace value of an instruction rather then just turn it on if needed - https://github.com/ruby/ruby/blob/799253dc46e96518687dcd4fdca42582251ccffe/iseq.c#L3178 And it is unconditionally called, not limited to the correct line: https://github.com/ruby/ruby/blob/799253dc46e96518687dcd4fdca42582251ccffe/iseq.c#L3219 ---Files-------------------------------- my_test.rb (790 Bytes) -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>