roca has joined #jruby
roca has quit [Quit: roca]
<GitHub30> [jruby] vassilios opened issue #5098: YAML.load significant performance degradation when JSON string is included https://git.io/vxcLw
pilne has quit [Quit: Leaving]
pilne has joined #jruby
roca has joined #jruby
<GitHub75> [jruby] dgolombek opened issue #5099: Exception.new.backtrace_locations should return nil https://git.io/vxcsZ
roca has quit [Ping timeout: 240 seconds]
roca has joined #jruby
roca has quit [Quit: roca]
mkristian has joined #jruby
sidx64 has joined #jruby
sidx64 has quit [Client Quit]
sidx64 has joined #jruby
sidx64 has quit [Client Quit]
sidx64 has joined #jruby
mkristian has quit [Remote host closed the connection]
sidx64_ has joined #jruby
sidx64 has quit [Read error: Connection reset by peer]
sidx64_ has quit [Ping timeout: 240 seconds]
sidx64 has joined #jruby
claudiuinberlin has joined #jruby
sidx64 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
sidx64 has joined #jruby
sidx64 has quit [Client Quit]
sidx64 has joined #jruby
sidx64 has quit [Client Quit]
drbobbeaty has joined #jruby
sidx64 has joined #jruby
sidx64 has quit [Client Quit]
sidx64 has joined #jruby
drbobbeaty has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
shellac has joined #jruby
sidx64 has quit [Read error: Connection reset by peer]
sidx64 has joined #jruby
<kares> enebo: rdubya: maybe you should point out exactly what you mean with breaking AR tests
<kares> did watch tests carefully as I did the merge (+ along the way) and it seems to me like I got it better
<kares> there's one suite of failures for sure - those are ENV[TZ] related but that is a trade-off
<kares> the gist of it is that we need to be able to return typed (not raw) values from custom SELECTs
<kares> that is the motivation for the change ...
<kares> the result is that we rely on JVM's time-zone and a TZ switch is not trivial as with MRI
<kares> but I feel like that assumption is wrong and we can port over those tests with the proper zone switch and exclude
<kares> also in JRuby it was hard the way date.rb was implemented - it should be easier now to manage zone changes with the rewrite (on master)
<kares> anyway, am going for an AR-JDBC review what I feel is okay-ish or easily fixable
<kares> enebo: rdubya: if you'll hit smt concrete you feel like I broke just ping me (or open a GH issue with details where you assign me)
<kares> really want to have a usable release out there
sidx64 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
sidx64 has joined #jruby
drbobbeaty has joined #jruby
sidx64 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
sidx64 has joined #jruby
sidx64 has quit [Client Quit]
bbrowning_away is now known as bbrowning
sidx64 has joined #jruby
sidx64 has quit [Client Quit]
sidx64 has joined #jruby
sidx64 has quit [Client Quit]
sidx64 has joined #jruby
sidx64 has quit [Client Quit]
sidx64 has joined #jruby
sidx64 has quit [Client Quit]
roca has joined #jruby
sidx64 has joined #jruby
roca has quit [Quit: roca]
drbobbeaty has quit [Read error: Connection reset by peer]
jrafanie has joined #jruby
<enebo> kares: ok I will try and figure out what I saw. I saw more than a single type of error. Possibly something was wrong with my env maybe?
shellac_ has joined #jruby
shellac_ has quit [Remote host closed the connection]
sidx64 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<GitHub178> [jruby] enebo pushed 2 new commits to ruby-2.5: https://git.io/vxCIS
<GitHub178> jruby/ruby-2.5 9c096c9 Thomas E. Enebo: A little hackage since real solution is a painful discussion....
<GitHub178> jruby/ruby-2.5 8ab9aea Thomas E. Enebo: Yay a little more up to date grammar. Still missing some new syntax lex...
roca has joined #jruby
sidx64 has joined #jruby
sidx64 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
nirvdrum has joined #jruby
xardion has quit [Remote host closed the connection]
xardion has joined #jruby
olle has quit [Quit: olle]
olle has joined #jruby
olle has quit [Client Quit]
roca_ has joined #jruby
roca has quit [Ping timeout: 264 seconds]
roca_ is now known as roca
roca_ has joined #jruby
roca has quit [Ping timeout: 256 seconds]
roca_ is now known as roca
roca is now known as lroca
claudiuinberlin has quit [Quit: Textual IRC Client: www.textualapp.com]
lopex has quit [Ping timeout: 276 seconds]
amitchellbullard has quit [Ping timeout: 276 seconds]
lopex has joined #jruby
amitchellbullard has joined #jruby
shellac has quit [Quit: Leaving]
lroca is now known as roca
roca has left #jruby ["Good Bye"]
<GitHub135> [jruby] thomas- opened issue #5100: File.open() on Windows without binary flag reading 0x0A (newline) instead of 0x0D (return) https://git.io/vxCrp
nirvdrum has quit [Ping timeout: 256 seconds]
<havenwood> it seems the cert for jruby.org is borked at the moment
<havenwood> *.github.com
<havenwood> Or was it never https? If so, never mind! Though the github wildcard cert seems odd.
claudiuinberlin has joined #jruby
desnudopenguino has joined #jruby
subbu is now known as subbu|lunch
claudiuinberlin has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<lopex> enebo: numbers
<enebo> lopex: lexers....grrrr
<lopex> enebo: lots of symbol comparisons
<lopex> shall I user newSymbol everywhere ?
<havenwood> can anyone give me a hint as to where the jruby-core-9.1.8.0.jar file comes from? it's used in this aws lambda wrapper: https://github.com/plainprogrammer/aws-lambda-jruby/tree/master/jars
<havenwood> I'm not coming up with anything Googling. I'm not familiar with the concept of the jruby-core jar so I'm not sure where to look.
<havenwood> I'm assuming that's not just jruby.jar renamed?
* desnudopenguino waves at havenwood
<havenwood> desnudopenguino: I have a script that downloads two of the three jars.
<havenwood> I just don't know what this jruby-core is!
<desnudopenguino> ah, i'm digging through the one link you provided, i got it to compile, now gotta figure out exactly how to package it to run on serverless
<lopex> havenwood: it's a jar that's not jruby complete
<lopex> :P
<lopex> so it's just a jruby with core library
<havenwood> lopex: ah, interesting
<lopex> so core is built in libraries, and complete is with std lib
<havenwood> Hrmm. How would I get at that jar for say 9.1.16.0? (Pardon my ignorance.)
<havenwood> ahh
<lopex> enebo: do we distribute them in maven repos anyhow ?
<havenwood> So maybe both aren't actually needed there. I'm trying to do a script to bootstrap the latest jars for aws lambda.
sidx64 has joined #jruby
claudiuinberlin has joined #jruby
<lopex> well, if you're going to use any std lib then you'll need jruby complete "in standalone" mode
<havenwood> lopex: thanks!
<lopex> havenwood: those jars seem to be 11 months old so something is not right
<havenwood> lopex: that repo seems to just be a spiked example of deploying jruby to amazon lambda
<lopex> also jruny.org seems to be ok now
<havenwood> I was trying to create a script to automate the process with the latest jars.
<lopex> *jruby.org
<havenwood> the (very hacky) spike i just wrote that does grab the latest aws-lambda-java-core and jruby-complete jars is: aws-lambda-java-core
<havenwood> lopex: ah, thanks, that's nicer
<havenwood> they support /latest, so that makes the version-finding part less hacky
<lopex> no idea why 11 month old jars would have 9.1.8.0 version though
<lopex> might be assemblified jars though
<lopex> anyways, hope it helped
<lopex> enebo: ?
<havenwood> lopex: thanks!
sidx64 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
sidx64 has joined #jruby
subbu|lunch is now known as subbu
sidx64_ has joined #jruby
sidx64 has quit [Ping timeout: 260 seconds]
sidx64 has joined #jruby
sidx64_ has quit [Ping timeout: 276 seconds]
<GitHub24> [jruby] headius pushed 3 new commits to block_dispatch: https://git.io/vxC5I
<GitHub24> jruby/block_dispatch f1a357e Charles Oliver Nutter: Fix Enumerable regressions dur to improper args prep.
<GitHub24> jruby/block_dispatch 3d53daf Charles Oliver Nutter: Fix regression in define_method return handling.
<GitHub24> jruby/block_dispatch 284ae60 Charles Oliver Nutter: Begin collapsing BlockBody logic....
<lopex> headius: when's the release ?
<headius> 9.2? shooting for beginning of May
<ChrisBr> headius: I'm currently looking at the failing ruby2.5 tests in CI. The Complex#finite? is driving me nuts :/ https://gist.github.com/ChrisBr/4d91b2df8281e8261fbe12838118a1d5
<ChrisBr> the ruby spec says a complex number is finite if it's magnitude is finite
<ChrisBr> however, the magnitude is not finite in this case, so not sure if this is actually a bug in ruby and not in jruby?
nirvdrum has joined #jruby
<headius> hmm
<headius> but it is finite isn't it?
<headius> Float::MAX is big but not infinite
<headius> havenwood: you good?
<ChrisBr> nope, the magnitude is inifinte
<ChrisBr> in ruby and jruby
<havenwood> havenwood: yup, thanks! I seem to have my code spike working and should be able to go from here.
<havenwood> headius: ^
<headius> ok great!
<headius> ChrisBr: well if that's the case it could be a bug
<ChrisBr> when running Complex(Float::MAX, Float::MAX).magnitude.finite? it is false in ruby and jruby
<headius> but the test thinks it should be true
<ChrisBr> yep
<headius> hmm
<headius> what's the test name
<headius> I'm looking at MRI 2.5 HEAD now
<ChrisBr> this is the failing line
<headius> assert_predicate(Complex(Float::MAX, Float::MAX), :finite?)
<headius> ok
<headius> so to clarify...do you think this case should be infinite or finite?
<headius> are you testing latest 2.5?
subbu is now known as subbu|away
<ChrisBr> yep, running on 2.5
<ChrisBr> according to the spec it should be infinite
<ChrisBr> as the spec says: it is infinite when the magnitude is infinite
<ChrisBr> and the magnitude is infinite in ruby and jruby
<headius> and MRI fails the test
<headius> yeah I guess we ask them
<ChrisBr> Complex(Float::MAX, Float::MAX).magnitude -> infinite
<headius> yeah I'm looking at the hypot code
<headius> if there's something to fix it would be in there I guess...perhaps needs to work with BigDecimal or something?
<ChrisBr> Hmm
<headius> hmm no, they just use doubles
<headius> their hypot looks a lot simpler than ours
<headius> in any case if 2.5 fails it then we ask
<headius> we're missing something
<headius> ChrisBr: Math.hypot(MAX, MAX) returns infinity as well, unsurprisingly
<headius> ChrisBr: are you on macOS?
<ChrisBr> nope
<ChrisBr> linux
<GitHub77> [jruby] headius pushed 1 new commit to block_dispatch: https://git.io/vxCxH
<GitHub77> jruby/block_dispatch 6902809 Charles Oliver Nutter: Restore lost yieldValues body.
<headius> test passes for me on MRI
bbrowning is now known as bbrowning_away
<headius> finite is true in the test!
claudiuinberlin has quit [Quit: Textual IRC Client: www.textualapp.com]
<lopex> headius: does the universe pass against mri tests ?
<ChrisBr> headius: yeah, right
<ChrisBr> but what I don't get is that it is true because the magnitude is false on MRI
<headius> strange things are afoot
<lopex> headius: can you cherry pick https://github.com/jruby/jruby/commit/36b44dfccae2eef1801cf6eb0547e921eeaf27bb for 9.1 please ?
<headius> ChrisBr: yeah confirmed
<lopex> headius: btw how quick intellij branch switch is for jruby sources ?
<headius> ChrisBr: heh, have you looked at Complex#finite?
<ChrisBr> so, just wondering how that can be because it is a float and it is infinite
<headius> it's not doing what it says
<ChrisBr> so it should be false, no?
<ChrisBr> on mri
<headius> yeah
<ChrisBr> Returns +true+ if +cmp+'s magnitude is finite number,
<ChrisBr> how you mean?
<headius> our version uses hypot function and theirs just checks finiteness of the real and imaginary parts
<headius> wait
<headius> the version there is different from what I have
<ChrisBr> but that does not matter, does it? Because in MRI and JRuby the magnitude is infinite
<headius> that's what I see on MRI 2.5 branch
<headius> no magnitude used at all
<headius> which explains why the test passes
<ChrisBr> huh?
sidx64 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<ChrisBr> grml, let me check
<ChrisBr> well, that makes sense
<ChrisBr> it looks even similar in jruby! I was already wondering why it calls both but does not use the values
<headius> 241ba38d700
<headius> that's the commit that killed using magnitude
<headius> so the docs are wrong now
<ChrisBr> and does not even use the value
<headius> hahah
<headius> yeah what the
<headius> yeah I think the mystery is solved
<ChrisBr> grml
<ChrisBr> sorry :/
<headius> no worries, I was confused too
<headius> probably should open a bug for bad doco
<ChrisBr> yeah, right
<ChrisBr> will do that
<ChrisBr> and with changing from magnitude to value the test passes :/
<lopex> headius: hiya ?
<headius> lopex: sorry yes
<lopex> no worries
<GitHub195> [jruby] headius pushed 1 new commit to jruby-9.1: https://git.io/vxWeB
<GitHub195> jruby/jruby-9.1 a72224d Marcin Mielzynski: fix for #5086, RegexpError invalid pattern in look-behind for certain Regexps since 9.1.16.0
<headius> ChrisBr: at least it was an easy one :-)
<lopex> headius: I even fill a guilt when interrupting you
<headius> yes I'm very important
<lopex> feel even
<lopex> nirvdrum: did you see that jcodings changes wrt reflection ?
<nirvdrum> lopex: I saw your comments, but haven't had a chance to look. My ISP broke something and I've been operating at dial-up speeds for a couple days.
<lopex> nirvdrum: no reflection now in jcodings
<nirvdrum> Awesome.
<lopex> only for fallback for truly unknown ones
<nirvdrum> It looks like SVM is much more forgiving with reflection calls these days, but it still can't do dynamic class loading without those classes being declared at image build time.
<lopex> yeah I saw the issue
<nirvdrum> So, whereas I had to vendor a ton of jcodings to just avoid the Class.forName call at all, now it'll just error out at runtime if the class isn't available.
<lopex> so SVN does some static analysis then ?
<nirvdrum> That's how it determines what to compile into the binary.
<nirvdrum> It does a closed world static analysis and throws away any classes and methods not used.
<nirvdrum> bbiab. Dinner time.
<lopex> headius, nirvdrum: btw in https://mbebenita.github.io/WasmExplorer/ it;s a cool playground for playing with llvm constant propagation
<lopex> for quick checks
<lopex> nirvdrum: but you can provide alternate paths as in proguard right ?
subbu|away is now known as subbu
<GitHub156> [jruby] ChrisBr opened pull request #5101: Fix Complex#finite? and Complex#infinite? failing tests (ruby-2.5...complex/finite) https://git.io/vxWfo
<ChrisBr> ^^ headius thanks for the help
<headius> ChrisBr: thank you!
<GitHub168> [jruby] headius closed pull request #5101: Fix Complex#finite? and Complex#infinite? failing tests (ruby-2.5...complex/finite) https://git.io/vxWfo
<GitHub22> [jruby] headius pushed 3 new commits to ruby-2.5: https://git.io/vxWfH
<GitHub22> jruby/ruby-2.5 21f0aa0 Charles Oliver Nutter: Merge pull request #5101 from ChrisBr/complex/finite...
<GitHub22> jruby/ruby-2.5 0b7e88a Christian Bruckmayer: Fix Complex#infinite?...
<GitHub22> jruby/ruby-2.5 152ef48 Christian Bruckmayer: Fix Complex#finite?...
<GitHub15> [jruby] headius pushed 6 new commits to ruby-2.5: https://git.io/vxWfF
<GitHub15> jruby/ruby-2.5 1115791 Miguel Landaeta: Enumerable#any? now accept a pattern argument...
<GitHub15> jruby/ruby-2.5 3c3bd8c Miguel Landaeta: Enumerable#none? now accept a pattern argument...
<GitHub15> jruby/ruby-2.5 f2cbbc7 Miguel Landaeta: Enumerable#one? now accept a pattern argument...
<GitHub137> [jruby] headius closed pull request #5096: Enumerable#any?, all?, none? and one? now accept a pattern argument (ruby-2.5...enumerable-methods-one-none-any-and-all-now-accept-pattern-argument) https://git.io/vxnuF
<ChrisBr> lol that was fast :)
<GitHub14> [jruby] headius closed pull request #5061: Add keyword_init option to Struct.new (ruby-2.5...keyword-arguments-on-struct-new) https://git.io/vAaax
<GitHub138> [jruby] headius pushed 2 new commits to ruby-2.5: https://git.io/vxWJv
<GitHub138> jruby/ruby-2.5 55fa773 Charles Oliver Nutter: Merge pull request #5061 from nomadium/keyword-arguments-on-struct-new...
<GitHub138> jruby/ruby-2.5 6746380 Miguel Landaeta: Add keyword_init option to Struct.new...
<ChrisBr> other question: Complex numbers are now always frozen! What would be the best approach to do that? Just call freeze in the constructor?
<lopex> as always
<headius> ChrisBr: that's what we do in Fixnum
<headius> the more numerics they freeze the more I want to split up our class hierarchy so numbers don't have instance variable space
<headius> it would shrink every numeric object by 64 bits or so
<headius> actually more because there's other state for that
<ChrisBr> headius: thanks for the hin
<GitHub117> [jruby] ChrisBr opened pull request #5102: Freeze Complex and Rational (ruby-2.5...freeze-complex) https://git.io/vxWUu
<ChrisBr> hint
<ChrisBr> ^^
<GitHub44> [jruby] headius pushed 2 new commits to ruby-2.5: https://git.io/vxWTL
<GitHub44> jruby/ruby-2.5 652d8a2 Charles Oliver Nutter: Merge pull request #5102 from ChrisBr/freeze-complex...
<GitHub44> jruby/ruby-2.5 a52f80e Christian Bruckmayer: Freeze Complex and Rational...
<GitHub49> [jruby] headius closed pull request #5102: Freeze Complex and Rational (ruby-2.5...freeze-complex) https://git.io/vxWUu
<headius> woot!
<lopex> numbers ?
<lopex> nirvdrum: what it's all about ?
<nirvdrum> Ideally we wouldn't have substitutions at all. But the mechanism is there if needed.
<lopex> nirvdrum: but you dont need that no more
<nirvdrum> I haven't tried out your latest changes. Ideally we won't need it, know.
<nirvdrum> s/know/no/
<nirvdrum> I need some sleep :-P
<nirvdrum> I might still need the one for loading the mapping tables, since the JAR won't be around. But I'll look into that more, too.
<lopex> ok
<lopex> nirvdrum: anyways Encoding.load is a fallback now
<nirvdrum> Have you deployed the snapshot?
<lopex> headius: ^^
<headius> I haven't
<nirvdrum> I can mvn install locally if not. No big deal.
<headius> lopex: all good on master?
<lopex> headius: I already registered on sonatype
<headius> ah ok
<headius> do you know how to deploy?
<lopex> headius: surely
<lopex> no!
<headius> ok
<lopex> headius: I'll pind you on that sonatype thing
<lopex> *ping
<headius> yeah just google for the ossrh thing
<lopex> os since enebo's not here
<headius> you just need some maven settings for auth and then mvn deploy
<lopex> headius: please gime the cost of newSymbol
<headius> lopex: if the symbol exists it's mostly a hash lookup
<headius> traversal of hash structure and weak ref in there also
<lopex> it's not the case
<lopex> headius: rare lookup symbol
<lopex> like upcase(:foo)
<lopex> foo no likely to be used
<lopex> er
<lopex> "a"."b"(upcase :foo)
<lopex> headius: ^^
<lopex> mri 2.5
<headius> if it's in code it should be anchored
<lopex> "upcase" is a flag for rare paths
<headius> literal symbols are stored in IR or cached in JIT
<lopex> hm
<headius> once enebo's branch lands, the symbols for identifiers should be anchored as well
<lopex> headius: stil here ?
<lopex> an idea how to make the more java friendly ?
<headius> hmm
<headius> looks like a straightforward port
<lopex> they shrink the exoectend length as they norroy the trans
<lopex> yeah
<lopex> headius: they shirink as the power of two
<lopex> modulo the margin which is CASE_MAPPING_ADDITIONAL_LENGTH
<lopex> headius: admint it's a bit funny
<headius> yeah
<lopex> headius: last bit in jruby btw
<lopex> for folding
<headius> yeah it's weird alright
<lopex> headius: any idea in getting rid of that linked map
<headius> so it builds this chain of buffers
<lopex> yeah
<lopex> it build s the chain
<lopex> and then constructs the sting at the end
<lopex> headius: but hey it's weird isnt it ?
<headius> it is
<headius> this is all because any given case mapping might be a wider char?
<lopex> yes
<lopex> it's an opts
<lopex> opt
<headius> it seems overcomplicated
<lopex> yea
<lopex> I'm calling it so now
<lopex> headius: c and memory artifacts
<lopex> ?
<headius> yeah for sure
<lopex> well the chain makes sense in some sense
<lopex> and we're talking about verry pssimistic scenarios
<lopex> the converge logarithmically woth a margin
<lopex> *with
<headius> yeah ok
<headius> I am confused, what is it converging on?
<lopex> they start with length + capa
<headius> so they're trying to dig out the bad caps?
<headius> with a sort of binary search
<lopex> then they seem to add capa + capa / 2
<lopex> no
<lopex> they (seem) to converge binaryly untill they finish
<lopex> headius: admit it's a weird wthin thwy do
<lopex> they
<lopex> so
<headius> what does enc->case_map do?
<lopex> headius: case map
<lopex> headius: er
<lopex> headius: let me show
<headius> so it's mapping all characters into the buffer's space
<lopex> yes
<lopex> headius: and it already assume a margin
<headius> oh ok I get it
<lopex> headius: jcodings has all it for now
<headius> so the buffer chunks are just incrementally larger each step so they reduce how many chunks
<headius> and then they just combine them all
<lopex> yes
<headius> and you ported it as is but wondering about better way
<lopex> yeah
<lopex> wrt mri
<headius> ok
<lopex> jcodings is 99% functionality now
<lopex> it's that bit
<headius> yeah I guess the linked list is close to what I might do
<lopex> and shrink right ?
<headius> I guess it is less copying for a long string than growing a buffer
<lopex> headius: hey I'm bothering you because folding is kind of important
<headius> sure
<lopex> 99% case wont go ahead for that marginh
<lopex> it;'s just that list tihng
<headius> where is this code in joni
<lopex> headius: like sharp s
<lopex> headius: it's the only function not used by joni
<lopex> headius: aaaah
<lopex> headius: another thing
<headius> I mean jcodings
<headius> CaseFoldItem
<headius> oh CodeItem
<lopex> caseMap ?
<lopex> it;s on encoding
<lopex> it;s a new function
<headius> yeah
<lopex> well it's a new function
<lopex> headius: it;s the only jcodings method not used by joni
<lopex> it's a specialized folding routine
<lopex> just for up/down case and the like
<lopex> headius: a low handing fruit to have case tests
<headius> yeah I guess I have no suggestions for improving it right now :-)
<lopex> the most universal folding routine I've ever seen
<lopex> headius: 35 times faster
<headius> nice
<headius> backport?
<headius> it's already on 9.1.16.0 isn't it?
<headius> and yeah I was just marveling at UnicodeEncoding.caseMap
xardion has quit [Ping timeout: 256 seconds]
xardion has joined #jruby