[ruby-core:121138] [Ruby master Feature#21105] Improve Ruby Stack Trace to Include Exact Error Position (Column Number)
From:
ennder via ruby-core <ruby-core@...>
Date:
2025-02-21 18:37:42 UTC
List:
ruby-core #121138
Issue #21105 has been updated by ennder (J=E9r=F4me BATAILLE).
Sorry to comment on a closed issue.
As a complement, I find it very useful when there is multiple objects calli=
ng the same method for exemple :
``` ruby
class Example
def self.runnable?
check_one.same_method_call? && check_two.same_method_call?
end
end
Example.runnable?
```
``` ruby
# The position in the line helps to know which object is nil
trace.rb:4:46:in `runnable?': undefined method `same_method_call?' for nil:=
NilClass (NoMethodError)
```
Perhaps instead of the position we could have the name of the variable on w=
hich the call was done ?=20
----------------------------------------
Feature #21105: Improve Ruby Stack Trace to Include Exact Error Position (C=
olumn Number)
https://bugs.ruby-lang.org/issues/21105#change-112071
* 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/