<GitHub105>
[jruby] perlun opened issue #4155: 1.7.26 regression: NoMethodError: private method `require' called for Kernel:Module in Sequel https://git.io/viVCG
tcrawley is now known as tcrawley-away
pil-afk is now known as pilhuhn
bbrowning_away is now known as bbrowning
drbobbeaty has joined #jruby
dannyNL has joined #jruby
dannyNL has quit [Client Quit]
<GitHub1>
[jruby] eregon pushed 1 new commit to truffle-head: https://git.io/viV8D
<GitHub1>
jruby/truffle-head 5f5581c Benoit Daloze: [Truffle] The attachment test relies on value profiling, which inlined basic methods do not do.
olle has joined #jruby
tcrawley-away is now known as tcrawley
at100 has joined #jruby
at100 has quit [Client Quit]
at100 has joined #jruby
tcrawley is now known as tcrawley-away
tcrawley-away is now known as tcrawley
lance|afk is now known as lanceball
<GitHub160>
[jruby] eregon pushed 1 new commit to truffle-head: https://git.io/viV2q
<GitHub160>
jruby/truffle-head c9b74c1 Benoit Daloze: [Truffle] Add indicies as comments in ArgumentIndicies to help debugging.
dannyNL has joined #jruby
dannyNL has quit [Client Quit]
tcrawley is now known as tcrawley-away
tcrawley-away is now known as tcrawley
claudiuinberlin has quit [Remote host closed the connection]
johnsonch_afk is now known as johnsonch
<headius>
JayL: definitely report
<headius>
I assume they do that because they patch it in some way
prasunanand has quit [Ping timeout: 276 seconds]
prasunanand has joined #jruby
<headius>
JayL: the private in that annotation refers to the instance method, which is supposed to be private
<headius>
Kernel.require seems to be callable on both 1.7 and 9k
<headius>
olle: why doesn't this just do k.send(:public, method)?
<headius>
I don't understand why it takes such a rounadabout way
<headius>
I guess it does redefine the method as a new name
<headius>
which is often called aliasing
<headius>
it just seems really overocmple
<headius>
overcomplex
<headius>
or even just define a new method that's public and calls the private one
<olle>
headius: I'm outside the Bundler community, but I think this is about taking-and-replacing-and-putting-the-replacement-back (like double-reverse-inverted replacement) of Rubygems code
<headius>
yeah it's replacing RubyGems 'require' with the original one
<headius>
but doing it in a very cumbersome way
<headius>
(to me)
<JayL>
Do you want to propose an alternate way? I'm participating on the Bundler issue https://github.com/bundler/bundler/issues/4975 related to this matter and can relay recommendations.
claudiuinberlin has joined #jruby
<JayL>
I think what Bundler is going to have to do regardless is test for Jruby 1.7.x where x < 27 and x > ? and use Kernel.send(:require, "fname")
<JayL>
Maybe he should just switch to this regardless of version. It is not confirmed to work BTW. Let me check here
dling` has quit []
<JayL>
Confirmed that Kernel.send(:require, fname) clears the issue in Bundler 1.13.1
claudiuinberlin has quit [Ping timeout: 276 seconds]
<headius>
JayL: for at least this case, it ought to be able to just alias the method
<headius>
I fully admit this is a bug...or perhaps a gap between JRuby and MRI
<JayL>
Lets go with gap ;-)
<JayL>
I'm going to advise Bundler to use Kernel.send to avoid this gap on certain 1.7.x JRuby versions.
<JayL>
Here's to one more nitpicky detail to make jruby even awesomer [sic]
<headius>
it's probably the same on 9k fwiw
<headius>
Kernel.send and a quick bundler release would be the simplest option since we can't do anything about released JRuby's
<headius>
or a second call to send(:public ...) should work too
<JayL>
Yup - agreed. I'll have a see if this exhibits on 9K if I can set it up quickly.
<headius>
leaving it private probably isn't a good idea
<headius>
I think the next task after this is getting bundler to test on JRuby :-\
<headius>
ten years and these libraries still don't test on jruby
<headius>
what am I doing with my life
<JayL>
heh heh - and rvm makes having a gazillion different rubies on hand so easy.
<headius>
and travis
<headius>
there's not really any excuse
<JayL>
Do you have a minute for an essoteric issue that's biting my production deploys?
<JayL>
I
<headius>
JayL: I commented on the bundler issue about send(public
<olle>
Thanks, JayL and headius for being so diligent about this.
<JayL>
My pleasure! I would love to help more. Headius do not hesitate to contact me for small jobs like helping Bundler get testing on JRuby all the time.
<headius>
JayL: thank you! I actually started a test run locally to see how it goes
<headius>
it's going to be really slow...looks like they run every test in a new process
<headius>
but it's mostly green
<headius>
JayL: can you confirm that my :public fix works and post to that bug?
<headius>
I'm 99% sure it should but I'm not exactly sure how to reproduce this issue
<headius>
i.e. I don't know to cause this redefine to happen
<JayL>
sure thing - 5 mins - very easy to reproduce bug here.
<headius>
cool, thanks
<JayL>
confirmed and done
<headius>
oh you know what, this might not affter 9k
<headius>
affect
<JayL>
I am amazed at the speed at which this matter resolved.
<headius>
because we fixed 9k to clone methods in define_method
<headius>
but that was somewhat recent too
<headius>
I'll try to come up with a trivial repro
<headius>
JayL: thank you
<JayL>
My test case doesn't run under 9k so I couldn't confirm for sure ... but based on how far it reached before barfing it looks like the Kernel.require was likely called.
<headius>
ok
<headius>
why doesn't your test case run under 9k?
<JayL>
Its a rails 3 app and some of my code needs to be brought up to snuff. I've inherited a lot of OPC (other people's code) - so I have to pick my battles
<headius>
I'm backporting it to 1.7...testing that now
<headius>
JayL: ok no problem...if you run into anything that's our fault, you know what to do :-)
<headius>
this issue is only in bundler 1.13
<headius>
yes?
<headius>
ahh it must be
<headius>
this only came out last week
<headius>
followed by 1.13.1
dannyNL has joined #jruby
dannyNL has quit [Client Quit]
<JayL>
yes that is correct 1.13.x
<JayL>
Again - wow at how fast this all resolved. Now just waiting for bundler 1.13.2
<havenwood>
any ideas on how we could more quickly get the values for RUBY_ENGINE, RUBY_VERSION and GEM_ROOT in JRuby for chruby switching?: https://github.com/postmodern/chruby/issues/369