Issue #12159 has been updated by mame (Yusuke Endoh).

Status changed from Assigned to Closed

I talked about this issue with nobu and ko1.

> Is it intentional? or a bug?

As @usa said, it is intentional according to nobu and ko1.  Please use `#absolute_path`.

> If so, I think it's better to write "Returns the file name or absolute path of this frame" in document.

It may return relative path, too.  IMO, "file name" includes relative and absolute paths, so I don't think we need to change anything.

ko1 said he withdraws his proposal.  So closing this ticket.

----------------------------------------
Bug #12159: Thread::Backtrace::Location#path returns absolute path for files loaded by require_relative
https://bugs.ruby-lang.org/issues/12159#change-84373

* Author: tagomoris (Satoshi TAGOMORI)
* Status: Closed
* Priority: Normal
* Assignee: ko1 (Koichi Sasada)
* ruby -v: ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin14]
* Backport: 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN
----------------------------------------
I expected that Thread::Backtrace::Location#path always returns base filename, but returns absolute path for files loaded by require_relative.
Is it intentional? or a bug?

~~~
$ ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin14]
$ cat > x.rb
def a
  caller_locations
end

p a.first.path
$ cat > y.rb
require_relative "x"
$ ruby x.rb 
"x.rb"
$ ruby y.rb
"/Users/tagomoris/x.rb"
~~~



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>