camlow325 has quit [Remote host closed the connection]
camlow325 has joined #jruby
camlow32_ has joined #jruby
camlow325 has quit [Read error: Connection reset by peer]
yfeldblum has joined #jruby
<GitHub92>
[jruby] headius opened pull request #3923: Use "filesystem" encoding for PATH as in MRI. Fixes #3907. (master...filesystem_encoding_for_path) https://git.io/vr6Rn
camlow32_ has quit []
e_dub has quit [Read error: Connection reset by peer]
e_dub has joined #jruby
norc__ has joined #jruby
e_dub has quit [Read error: Connection reset by peer]
<kares>
next version (which we could release today) shouldn't be affected by this
pitr-ch has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<kares>
enebo: found it ... there's a symlink under warbler's spec!
<enebo>
kares: heh
<kares>
codefinger: ^^
<kares>
we shall merge the PR and push 2.0.2
<enebo>
so should gems include their tests? I never know
tcrawley is now known as tcrawley-away
<enebo>
I would say not
<enebo>
but sometimes I don’t mind extra files in the gem so I can look at how it is used (which is argably lazy)
<kares>
enebo: me neither :) some might makes sense but the default should be not to
pitr-ch has joined #jruby
<enebo>
I guess we should be omitting our specs in warbler unless codefinger knows of a reason we shouldn't
<kares>
in warbler spec/integration can get wild and include a lot of size (due .jar several Gem homes etc.)
<codefinger>
reading back
pitr-ch has quit [Client Quit]
<kares>
he already added a +1 on the PR :)
<kares>
was just waiting for mkristian to comment
<kares>
... although I doubt he needs those in
<codefinger>
i think it's pretty common to include specs/tests in gems. but i don't care if it's common, it's not necessary
tcrawley-away is now known as tcrawley
<kares>
wonder if its common cause bundler generates the new gem's gemspec that way :)
<GitHub13>
[jruby] headius opened issue #3924: ENV needs to be a true proxy to getenv rather than a Hash https://git.io/vriSt
<codefinger>
huh, never would have expect this to be part of the problem. i'll merge this and get a 2.0.2 out. sound ok kares?
<headius>
enebo: additional fixes for null byte should have it working, but I'm waiting for confirmation
<headius>
I'm not sure how to emulate differing locale/filesystem encodings on a unix
<kares>
codefinger: sounds perfect ... also had a regression in 2.0.1 that is fixed
<kares>
thanks!
<codefinger>
kares: "gem-diet-feature" :)
<enebo>
headius: at this point there is some pushback that gems should fail
brauliobo has joined #jruby
brauliobo_ has quit [Ping timeout: 260 seconds]
<enebo>
headius: which I do not think makes sense based on softlinks having never worked before this release
<headius>
yeah that is a weird situation
<headius>
I did not look at your patch yet, but was this behavior recently added to RG?
<headius>
I saw you mention that softlink was added for Ruby 2.3
<GitHub43>
[jruby] nirvdrum pushed 3 new commits to master: https://git.io/vriHL
<GitHub43>
jruby/master 0546037 Kevin Menard: [Truffle] Fixed code range detection when packing UTF-8 characters.
<GitHub43>
jruby/master bc9ae5b Kevin Menard: [Truffle] Untagged more passing ActiveSupport tests.
<GitHub43>
jruby/master 16ff516 Kevin Menard: Add spec to check string constructed from Array#pack has valid encoding.
<enebo>
so I think up until the last version of RG all softlinks were just ignored during unpacking
<enebo>
If I am mistaken then I do not know how they did it before
<enebo>
It seems like this is a new feature which if so then nothing depends on this behavior
<enebo>
I actually suspect at one time someone decided to not allow symlinks because windows could not support them
<enebo>
Anyways I htink if warbler gets updated to not have that symlink it won’t really matter how it is resolved unless this is more common than we think
brauliobo has quit [Ping timeout: 244 seconds]
brauliobo_ has joined #jruby
<headius>
yeah I don't have a good sense for how common it might be
<headius>
I've always tried to avoid symlinks in things I release as a package because there's so many filesystems that don't support them
<enebo>
so dberger basically said he has supported softlinks since Vista via his win32-file gem
<headius>
I mean...is this just supposed to blow up if you try to have a gem home on FAT32?
<enebo>
sam geddings says yes…but in a friendly way
<enebo>
like there is a softlink and you are using a ruby which does not support them…sorry
<enebo>
which obviously is reasonable if the softlink is required
<headius>
yeah seems pretty weird...and this makes it possible for new gems to not install on any older Ruby
<GitHub78>
[jruby] jtulach opened pull request #3925: Disable -X as there is too much verbosity in the build (master...MxWithoutDebug) https://git.io/vri75
<enebo>
headius: yeah I guess that was my only point
<headius>
just because they may have included a symlink
thedarkone2 has joined #jruby
<enebo>
Hey I guess this is a reason to specify rubygems version in your gemfile.lock :)
<enebo>
hmmm can you even downgrade ruby6gems in a ruby install?
<enebo>
perhaps it works because site-ruby or wheever —system installs specific rubygems is put first into load path?
<headius>
enebo: do we have a contingency plan if RG doesn't accept your patch?
<headius>
--system installs it into stdlib directly
<headius>
that's how we update our stdlib RG each time
<enebo>
headius: well we could maybe add win32-file to gem dep on both branches
<enebo>
headius: it did not for me on windows with MRI
<headius>
wha?
<headius>
that's weird
camlow325 has joined #jruby
<headius>
we did collapse some of those dirs to reduce searching
<headius>
maybe it does go into site_ruby then
<enebo>
ruby/site_ruby/2.2.0 in my particular MRI install
<headius>
ok
<headius>
neato
<enebo>
yeah so how do we make this work
camlow325 has quit [Read error: Connection reset by peer]
<headius>
I'm going to have a look at how MRI is doing links
camlow325 has joined #jruby
<GitHub57>
[jruby] eregon closed pull request #3925: Disable -X as there is too much verbosity in the build (master...MxWithoutDebug) https://git.io/vri75
<GitHub6>
jruby/master c7548fb Kevin Menard: [Truffle] Added a missing boundary for the `string_find_character` primitive.
<bbrowning>
enebo: yeah it looks like we're creating a new CertificateFactory every time we create a new X509AuthCertificate in jruby-openssl
kares has quit [Quit: ...]
<bbrowning>
and each new CertificateFactory ends up creating a new Provider
kares has joined #jruby
<bbrowning>
still not sure how it's happening though - code flow seems correct, I think
<headius>
enebo: how do I reproduce? Just install warbler?
<bbrowning>
kares: so the root of the problem is somehow a new bouncy castle provider is being instantiated for each X509AuxCertificate
<bbrowning>
trying to track down via debugging how that's happening now
<bbrowning>
but, it looks like Security.getProvider("BC") may need to return non-null to prevent this from happening inside BC internals
<bbrowning>
which means a "BC" provider needs to be registered somewhere?
prasunanand has joined #jruby
<enebo>
headius: yeah install warbler
<enebo>
headius: I used MRI 2.2 in my issue report
<headius>
bbrowning: I know there's code to register it but perhaps something broke in there
<headius>
enebo: ok...I think I have a reduced version of the symlink stuff
<headius>
it *should* work on both 9k and 1.7...I don't see anything odd
pitr-ch has joined #jruby
<enebo>
headius: great…we probably need to figure out if berger is ok with this license wise otherwise we need to add even more verbiage to our licensing file
<headius>
huh, virtualbox shows as system CPU
<headius>
yeah I planned to do that
<headius>
I'd be surprised if he didn't just let us relicense, especially if this is a first step to getting more of his stuff in
<bbrowning>
hah! actually, it's the BC 1.5.4 upgrade that triggered this I believe
<bbrowning>
that created the memory leak because we don't reuse the BC cert/CertificateFactory instance but instead create a new one every time
<headius>
oh nice!
<bbrowning>
and code changed in their to lookup a provider every time
<bbrowning>
there*
<bbrowning>
so now we're ending up with a new provider each time
<headius>
JDBC and security providers are so screwed up in JDK
colinsurprenant_ has joined #jruby
<bbrowning>
we end up creating a new instance of that BC CertificateFactory class for every X509AuxCertificate and it ends up attemping to lookup the BC provider, failing, and creating a new BC provider
<bbrowning>
so every X509AuxCertificate ends up with a new BC provider instance
<headius>
both leak classloaders no matter how you use them, and JDBC provides no way to unregister from outside that classloader
colinsurprenant_ is now known as colinsurprenant
<headius>
we can easily cache a provider somewhere in OpenSSL
<bbrowning>
looks like -Djruby.openssl.provider.register=true is broken anyway - first time registerProvider gets called securityProvider is null so nothing gets registered
<headius>
the logic we had before would try to register before an operation and unregister after to avoid the leaking
<headius>
kares: was there something wrong with that?
<headius>
I mean, it's probably not efficient
<headius>
but was it broken?
hobodave_ has joined #jruby
camlow32_ has joined #jruby
camlow3__ has joined #jruby
pitr-ch has joined #jruby
hobodave has quit [Ping timeout: 246 seconds]
hobodave_ is now known as hobodave
camlow325 has quit [Ping timeout: 252 seconds]
camlow32_ has quit [Ping timeout: 244 seconds]
<GitHub4>
[jruby] headius opened pull request #3926: Windows symlink (master...windows_symlink) https://git.io/vrPYx
<kares>
headius: there were issues with that ... was quite a long time ago
<kares>
recall some leaks in TC after un-deploys
<kares>
also its a bit scary doing that under multiple threads
<kares>
bbrowning: if its broken than no one really cared to register the provider since we refactored :)
pilhuhn has quit [Quit: Leaving...]
pitr-ch has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<enebo>
headius: can we use ffi to open the same .so twice?
<enebo>
headius: I think the answer is yes but you made me wonder
<headius>
I think it would just see it's already loaded
<headius>
it uses System.loadLibrary which uses dlopen I beleive
vtunka has quit [Quit: Leaving]
prasunanand has quit [Ping timeout: 244 seconds]
<headius>
enebo: do you have newer than windows 7?
<headius>
my VM is 7 and "not genuine" so I don't think I can update it, and I don't really want to reboot into Windows just to verify this
<headius>
the error I got seems to be a 7 permission issue
<enebo>
headius: no it is win7 as well
<headius>
ok
<headius>
guess I'll reboot and update to 10 then
<kares>
headius: oh no - you too!
<headius>
I have a license but I think I can only associated it with either the native install or the vm install eh?
<headius>
enebo: just to clarify, I'm ok merging my passing PRs to master, right? you'll be cherry-picking for 9.1.2?
prasunanand has joined #jruby
bbrowning_away is now known as bbrowning
hobodave has joined #jruby
<enebo>
headius: yeah
pitr-ch has joined #jruby
pitr-ch has quit [Client Quit]
pitr-ch has joined #jruby
<headius>
heh...we overload travis too easily
lance|afk is now known as lanceball
camlow325 has joined #jruby
yfeldblum has joined #jruby
yfeldblum has quit [Remote host closed the connection]
zacsek has quit [Quit: Leaving]
Tristitia has quit [Remote host closed the connection]
colinsurprenant has quit [Quit: colinsurprenant]
Puffball has quit [Quit: Puffball]
<nirvdrum>
We need to find 12 more contributors so we can hit 300.
pitr-ch has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
pitr-ch has joined #jruby
subbu|away is now known as subbu
<subbu>
headius, reg. ZSuper does not require caller's binding/scope. (#3909) ... MRI doesn't implement zsuper for define_method like we do .. that is what I meant. we do a more general thing than MRI .. i forget the specifics and will have to dig it up .. enebo probably remembers.
<enebo>
subbu: headius: I believe they either a) error saying it is not supported b) execute super of thing which contains define_method
<enebo>
subbu: headius: -e:1:in `block in foo': implicit argument passing of super from method defined by define_method() is not supported. Specify all arguments explicitly. (RuntimeError)
<subbu>
ok .. I think we support that usage since it falls out of our implementation naturally iirc.
<enebo>
so they totally punt on it while we work like you would expect if you did not know they punted on it
<enebo>
I asked ko1 about this and he said it was hard or not possible … not sure I remember which
<enebo>
but we definitely do not seen use of dynamic scope to raise an error and @headius is right that we used to have some requirements to use dynamicscope to get to staticscope. That problem is less an issue with IRScopes
<GitHub165>
[jruby] ahorek opened pull request #3927: backport BigDecimal .to_r for #3728 (jruby-1_7...backport_to_r_fix) https://git.io/vrPMX
colinsurprenant has joined #jruby
ITXpander has quit [Ping timeout: 276 seconds]
<GitHub83>
[jruby] enebo created jruby-9.1.2.0 (+1 new commit): https://git.io/vrPDc
<GitHub83>
jruby/jruby-9.1.2.0 45f46df Thomas E. Enebo: Fixes #3916. RubyUDPSocket ArrayIndexOutOfBounds with v9.1.[01].0....
ITXpander has joined #jruby
ITXpander has quit [Client Quit]
<nirvdrum>
Ooh. 9.1.2.0 today?
<enebo>
nirvdrum: well I think tomorrow but it should be ready today
<enebo>
nirvdrum: only three fixes
<nirvdrum>
But they were big ones, no?
<enebo>
nirvdrum: no
<enebo>
:)
<nirvdrum>
I thought I saw a filesystem fix for Windows.
<nirvdrum>
Oh well.
<enebo>
nirvdrum: symlink on windows, an off-by-one error in udp socket and file encoding fix for path on windows as followup to a previous fix
<nirvdrum>
Good stuff in any event.
<nirvdrum>
We had some nice stuff land in JRuby+Truffle.
<enebo>
nirvdrum: master has some stuff we want to bake so this is why we branches
<nirvdrum>
Oh. I didn't realize you branched off.
tcrawley is now known as tcrawley-away
tcrawley-away is now known as tcrawley
Specialist has quit [Ping timeout: 258 seconds]
imperator has left #jruby ["Leaving"]
pitr-ch_ has joined #jruby
pitr-ch has quit [Read error: Connection reset by peer]
Specialist has joined #jruby
robbyoconnor has quit [Read error: Connection reset by peer]
robbyoconnor has joined #jruby
norc has joined #jruby
norc__ has quit [Ping timeout: 260 seconds]
Aethenelle has joined #jruby
Specialist has quit [Ping timeout: 272 seconds]
subbu is now known as subbu|away
<headius>
enebo: oh yeah ok that behavior
<headius>
and the fact that we actually work and MRI "can't" or something
<enebo>
headius: yeah I just don’t think they realized it is not as hard as they might have thought
Specialist has joined #jruby
febuiles has joined #jruby
<headius>
enebo: ahorek sent in another PR, backporting some BigDecimal thing
<enebo>
headius: missing from 2.3?
lanceball is now known as lance|afk
<lopex>
does BigDecimal use strings inbetween for some operations ?
<lopex>
still...
Specialist has quit [Ping timeout: 258 seconds]
<headius>
lopex: it may, I haven't audited JDK in a while
<headius>
they fixed some of those
<lopex>
headius: I remember quite a few
<headius>
enebo: no, sorry, it was a BigDecimal fix to 9k that he backported to 1.7
<enebo>
headius: ah okj
<enebo>
OKJ
<headius>
we probably should think about putting out a 1.7.26 soon too...has been a while on that branch
<enebo>
headius: although almost nothing has been done on it since 1.7.25
<headius>
9.1.2 seems fine for tomorrow...PR builds are starting to go green for these last two items
pawnbox has quit [Remote host closed the connection]
<enebo>
It has been a little over a month though
<lopex>
enebo: my brother brewed a Wee-heavy style beer
<enebo>
lopex: nice
pawnbox has joined #jruby
<headius>
looks like a half-dozen items since 1.7.25
<lopex>
enebo: a bit too sweet for me
<lopex>
but not a lagerish sweetiness
<lopex>
which I dont like
<enebo>
lopex: wee heavy is not my style either but I do like some
<enebo>
headius: 7 commits on 1.7 since last reelease
<enebo>
2 are not fixes
<enebo>
oh 3 since one is for java 9 mock
<enebo>
err 8
<enebo>
NUMBERZ
<lopex>
where
<headius>
enebo: looks like one valid failure on the null byte branch
<enebo>
headius: one more to fix?
<headius>
I'll look into it now
<enebo>
headius: ok
<headius>
no, something regressed in ruby/spec
pawnbox has quit [Ping timeout: 244 seconds]
<lopex>
nirvdrum: does that libreadline stuff use sulong yet ?
skade has joined #jruby
<chrisseaton>
lopex: no that's using Java
<chrisseaton>
lopex: we're running the ruby/spec capi specs now though
<headius>
enebo: my fix is in and I think I'm going to go ahead and merge to master
<headius>
both items
skade has quit [Read error: Connection reset by peer]
<GitHub0>
jruby/master ea839cc Charles Oliver Nutter: Only do case-insensitive compare on Windows....
<enebo>
chrisseaton: it will be interesting to see how things go when you get to MRI tests since they were not written to that impl
<chrisseaton>
Well it's not part of the Ruby language spec, so if someone wants to violate it, that's up to them and I can't complain
<chrisseaton>
When we start to find problems, we will fix our code and try to accommodate everything people want to run - can't say that'll be easy or not, but that will be our approach
<lopex>
enebo: it boils down to having some harness api tests
<lopex>
enebo: like quickcheck, but for ruby :)
<enebo>
:)
<lopex>
enebo: or the api diff we used
<lopex>
enebo: dont tell me you didnt like it
<GitHub149>
[jruby] headius closed pull request #3923: Use "filesystem" encoding for PATH as in MRI. Fixes #3907. (master...filesystem_encoding_for_path) https://git.io/vr6Rn
<headius>
enebo: I think it's all set
<headius>
there's several items marked for 9.1.2 that were obviously intended for a longer cycle
<enebo>
headius: great...what?
<enebo>
Someone must have just added them since yesterday
<headius>
removing AddLocalVarLoadStore etc
<headius>
I thought you had moved these already too
<bga57>
How does activerecord jdbc drivers work? Are there Java jar files installed somewhere when the gem is installed?
<lopex>
probably
<lopex>
well, unless it;s a proprietary driver
enebo has quit [Quit: enebo]
<bga57>
well, sqlite doesn't work on freebsd because the java sqlite driver broke back in october when it started to expect a freebsd .so file in one folder, but it was stored in a second folder, but it's something that won't be fixed until the sqlite folks decide it's time to create a new release.
<lopex>
how it errors out ?
<bga57>
I was just trying to figure out where the files might be so I could check to see if there's a manual override post gem installation
<bga57>
when it tries to connect to the database, it complains that the native driver can't be found.
<lopex>
is there an strace equivalent on bsf ?
<bga57>
I opened a PR after talking to headius, and kares looked at it and closed it as invalid, but I thought I'd try to find a workaround in case I'm not the only jruby +rails on freebsd user