
Issue #21338 has been updated by cfis (Charlie Savage). Hi @k0kubun - ok great - that sounds like an intentional change in Ruby 3.4 then. I don't understand your recommendation though "to define every method you call in the profiled code yourself". The ruby-prof test code has remained fairly consistent over the years. What has changed is that each new version of Ruby returns slightly different results. For example, 3.3 started reporting `block_given?` was called and then 3.4 removed it. Anyway, that's fine, I will update the test code. It already has a lot of version checks like this: ```ruby if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.3') .... else ... end ``` See https://github.com/ruby-prof/ruby-prof/blob/master/test/measure_wall_time_te... - meanig 3.3 added `blockresults Ruby returns with each version. Which is fineeach Ruby version slightly changes what it repors.results in s ---------------------------------------- Bug #21338: TracePoint Not Triggered for Kernel#block_given? https://bugs.ruby-lang.org/issues/21338#change-113335 * Author: cfis (Charlie Savage) * Status: Rejected * ruby -v: ruby 3.4.2 (2025-02-15 revision d2930f8e7a) +PRISM [x86_64-linux] * Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN ---------------------------------------- When updating ruby-prof for Ruby 3.4, various tests now fail because a method enter/leave tracepoint is not triggered for `Kernel#block_given?` For example: https://github.com/ruby-prof/ruby-prof/blob/master/test/line_number_test.rb#... In 3.3 a tracepoint was triggered but not in earlier Ruby versions. -- https://bugs.ruby-lang.org/