[ruby-core:120969] [Ruby master Feature#21105] Improve Ruby Stack Trace to Include Exact Error Position (Column Number)
From:
"matz (Yukihiro Matsumoto) via ruby-core" <ruby-core@...>
Date:
2025-02-13 07:30:17 UTC
List:
ruby-core #120969
Issue #21105 has been updated by matz (Yukihiro Matsumoto).
Status changed from Open to Closed
I like introducing the column number in the error message, but in reality, =
it is hard to get column numbers from the error object, and I don't think i=
t's worth the extensive overhaul to make that possible.
Probably we will add this in the future wishlist.
Matz.
----------------------------------------
Feature #21105: Improve Ruby Stack Trace to Include Exact Error Position (C=
olumn Number)
https://bugs.ruby-lang.org/issues/21105#change-111868
* 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/