Issue #13099 has been updated by Shyouhei Urabe.
Silently requiring something reminds me of multi-threaded autoload situation. Is it OK?
----------------------------------------
Bug #13099: Binding#irb does not work outside of irb
https://bugs.ruby-lang.org/issues/13099#change-62401
* Author: Eli Sadoff
* Status: Rejected
* Priority: Normal
* Assignee:
* Target version:
* ruby -v: ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin15]
* Backport: 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN
----------------------------------------
I had read that one of the new features of 2.4.0 is that `Binding#irb` is now a method, so I decided to test this out in a program I was working on. Here is the program
~~~ ruby
class Test
attr_accessor :x, :y, :z
def initialize(x, y, z)
@x = x
@y = y
binding.irb
@z = z
end
end
a = Test.new(1, 2, 3)
~~~
And the error that I got is
~~~
binding_test.rb:6:in `initialize': undefined method `irb' for #<Binding:0x007f8562025078> (NoMethodError)
from binding_test.rb:11:in `new'
from binding_test.rb:11:in `<main>'
~~~
So, I thought that maybe it was an issue with running it in a constructor, so I tried the simpler invocation
~~~ ruby
binding.irb
~~~
but I had a problem with that as well, with a very similar error message
~~~
bind.rb:1:in `<main>': undefined method `irb' for #<Binding:0x007ff34984e880> (NoMethodError)
~~~
--
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>