Closed rockorequin closed 3 years ago
@rockorequin Could you provide a sample script to reproduce the problem?
This script shows the problem for me: with 2.6.3p62, if I put a breakpoint on the line "k = DateTime.parse..." line and then do a 'next' when it hits that line, instead of stopping on the "puts" line, the code stops at ruby-debug-ide.rb#101, ie the line saying: if bt && !bt.is_a?(SystemExit).
require 'rails'
class Test
def a
k = DateTime.parse('2019-1-1').to_date.end_of_day
puts "Hello!"
k + 1.day
end
end
j = Test.new.a
@ViugiNick Did you have any luck reproducing this?
Fwiw, I tried ruby 2.7.0-preview1 and it seems that it doesn't have this problem, so maybe it's a bug in the underlying ruby-2.6 tracepoint API.
@rockorequin looks like you are right. Are you ok with using 2.7. or should I try to fix this for 2.6.?
@ViugiNick Personally I'm fine with using 2.7 for now or I can go back to 2.5 if 2.7 breaks something down the line. Perhaps it could be noted as a known issue with 2.6 in the readme?
I think the byebug maintainer figured out the issue with 2.6, and 2.6.4 might fix:
https://github.com/deivid-rodriguez/byebug/issues/550#issuecomment-525921168
I can confirm. I just upgraded from 2.6.3 to 2.6.5 and the problem with debase and "step over" is gone. I think this issue can be closed :)
With ruby 2.6.3 and ruby-debug-ide (I use Netbeans 11), I find that the 'Step Over' command often just continues until the next breakpoint. 'Step Over' works fine in ruby 2.5.5.
These issues might be related: https://github.com/deivid-rodriguez/byebug/issues/550 https://github.com/googleapis/google-cloud-ruby/issues/3022
Quoting from the latter:
I don't know if this might be related to the TracePoint changes listed here: https://rubyreferences.github.io/rubychanges/2.6.html#tracepoint-improvements