[ruby-core:120861] [Ruby master Feature#21105] Improve Ruby Stack Trace to Include Exact Error Position (Column Number)
From:
"Eregon (Benoit Daloze) via ruby-core" <ruby-core@...>
Date:
2025-02-02 11:42:07 UTC
List:
ruby-core #120861
Issue #21105 has been updated by Eregon (Benoit Daloze).
It is already shown:
```ruby
class Example
def self.run
nil.foo.bar.baz
end
end
Example.run
```
```
example.rb:3:in `run': undefined method `foo' for nil (NoMethodError)
nil.foo.bar.baz
^^^^
from example.rb:7:in `<main>'
```
Adding columns would add a lot of noise and would not be clearer than that.
So I think we can close this as "already done, just in a different/clearer =
way"
----------------------------------------
Feature #21105: Improve Ruby Stack Trace to Include Exact Error Position (C=
olumn Number)
https://bugs.ruby-lang.org/issues/21105#change-111735
* Author: ennder (J=E9r=F4me BATAILLE)
* Status: Open
----------------------------------------
## 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/