[ruby-core:121156] [Ruby master Feature#21105] Improve Ruby Stack Trace to Include Exact Error Position (Column Number)
From:
"mame (Yusuke Endoh) via ruby-core" <ruby-core@...>
Date:
2025-02-25 09:49:32 UTC
List:
ruby-core #121156
Issue #21105 has been updated by mame (Yusuke Endoh).
@ennder Which Ruby version are you using? As @eregon said, a recent version=
of Ruby should show which error it was, as follows:
```
$ ruby trace.rb
trace.rb:3:in 'Example.runnable?': undefined method 'same_method_call?' for=
nil (NoMethodError)
check_one.same_method_call? && check_two.same_method_call?
^^^^^^^^^^^^^^^^^^
from trace.rb:14:in '<main>'
```
```
$ ruby trace.rb
trace.rb:3:in 'Example.runnable?': undefined method 'same_method_call?' for=
nil (NoMethodError)
check_one.same_method_call? && check_two.same_method_call?
^^^^^^^^^^^^^^^^^^
from trace.rb:14:in '<main>'
```
----------------------------------------
Feature #21105: Improve Ruby Stack Trace to Include Exact Error Position (C=
olumn Number)
https://bugs.ruby-lang.org/issues/21105#change-112096
* Author: ennder (J=E9r=F4me BATAILLE)
* Status: Closed
----------------------------------------
## Subject
Improve Ruby Stack Trace to Include Exact Error Position (Column Number)
## Description
Currently, when an exception occurs in Ruby, the stack trace provides the f=
ile name and line number but does not indicate the exact position (column n=
umber) where the error occurred within the line. This lack of precision can=
make debugging more challenging, especially in cases where multiple method=
calls or expressions are present on the same line.
## Example
``` ruby
class Example
def self.run
nil.some_method_call # Error occurs here
end
end
Example.run
```
## Expected Behavior
The stack trace should include the column number where the error occurred, =
e.g.:
``` ruby
trace.rb:4:10:in `run': undefined method `some_method_call' for nil:NilClas=
s (NoMethodError)
```
## Benefits
More precise debugging.
Easier identification of errors in complex one-liner expressions.
Better tooling support for editors and debuggers.
## Additional Notes
Would it be possible to add this enhancement in a future Ruby version?
Thank you for considering this request!
--=20
https://bugs.ruby-lang.org/
______________________________________________
ruby-core mailing list -- ruby-core@ml.ruby-lang.org
To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.rub=
y-lang.org/