e_dub has quit [Ping timeout: 250 seconds]
camlow325 has joined #jruby
enebo has quit [Quit: enebo]
<GitHub103> [jruby] chrisseaton pushed 13 new commits to master: https://github.com/jruby/jruby/compare/712f62cde04d...26dff8d55f7f
<GitHub103> jruby/master 599d962 Chris Seaton: [Truffle] Link callsite versions to method versions.
<GitHub103> jruby/master 8d1d445 Chris Seaton: [Truffle] Get blocks to include their arguments in source sections.
<GitHub103> jruby/master c985553 Chris Seaton: [Truffle] The parser doesn't give us a node for 'end' or '}', so hack to try to get it to include that in source sections.
<GitHub126> [jruby] headius pushed 2 new commits to ruby-2.3: https://github.com/jruby/jruby/compare/130f636af095...f7cb4605025b
<GitHub126> jruby/ruby-2.3 7b026a4 Charles Oliver Nutter: Raise error when Thread does not properly initialize.
<GitHub126> jruby/ruby-2.3 f7cb460 Charles Oliver Nutter: Set encoding to US-ASCII if zone name is ascii only....
<headius> welp, 202 failures to go
pawnbox has joined #jruby
pawnbox has quit [Ping timeout: 272 seconds]
e_dub has joined #jruby
mrmargolis has joined #jruby
skade has quit [Quit: Computer has gone to sleep.]
<bga57> it's cold out there.
camlow325 has quit []
<travis-ci> jruby/jruby (ruby-2.3:f7cb460 by Charles Oliver Nutter): The build is still failing. (https://travis-ci.org/jruby/jruby/builds/101986935)
tenderlo_ has quit [Remote host closed the connection]
<GitHub182> [jruby] rinkevichjm opened issue #3598: Jruby 9040 matchdata incorrect https://github.com/jruby/jruby/issues/3598
bnagy has left #jruby [#jruby]
pitr-ch has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
pitr-ch has joined #jruby
robbyoconnor has joined #jruby
robbyoconnor has joined #jruby
robbyoconnor has quit [Changing host]
mrmargolis has quit [Remote host closed the connection]
tenderlove has joined #jruby
pawnbox has joined #jruby
pawnbox has quit [Ping timeout: 260 seconds]
tomjoro has quit [Remote host closed the connection]
pawnbox has joined #jruby
pawnbox has quit [Ping timeout: 260 seconds]
pitr-ch has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
yfeldblum has quit [Remote host closed the connection]
tenderlove has quit [Remote host closed the connection]
tomjoro has joined #jruby
tomjoro has quit [Ping timeout: 240 seconds]
tenderlove has joined #jruby
tenderlove has quit [Remote host closed the connection]
pawnbox has joined #jruby
tenderlove has joined #jruby
djellemah_ has joined #jruby
djellemah has quit [Ping timeout: 256 seconds]
pawnbox has quit [Remote host closed the connection]
yfeldblum has joined #jruby
pawnbox has joined #jruby
robbyoconnor has quit [Ping timeout: 240 seconds]
pawnbox has quit [Remote host closed the connection]
pawnbox has joined #jruby
yfeldblum has quit [Ping timeout: 272 seconds]
tomjoro has joined #jruby
nirvdrum has joined #jruby
tomjoro has quit [Ping timeout: 250 seconds]
n00bdev has joined #jruby
nirvdrum has quit [Ping timeout: 256 seconds]
nirvdrum has joined #jruby
n00bdev has quit []
bga57 has quit [Remote host closed the connection]
norc is now known as Guest35313
norc has joined #jruby
yfeldblum has joined #jruby
norc has quit [Ping timeout: 252 seconds]
nirvdrum has quit [Ping timeout: 264 seconds]
thedarkone2 has quit [Quit: thedarkone2]
tjohnson has quit [Quit: Connection closed for inactivity]
tomjoro has joined #jruby
n00bdev has joined #jruby
kares has joined #jruby
bb010g has quit [Quit: Connection closed for inactivity]
subbu has quit [Ping timeout: 240 seconds]
jimbaker has quit [Ping timeout: 260 seconds]
pawnbox has quit [Remote host closed the connection]
pawnbox has joined #jruby
subbu has joined #jruby
pawnbox has quit [Ping timeout: 260 seconds]
skade has joined #jruby
pawnbox has joined #jruby
vtunka has joined #jruby
mkristian has joined #jruby
pawnbox has quit [Remote host closed the connection]
blaxter has joined #jruby
pawnbox has joined #jruby
vtunka has quit [Quit: Leaving]
blaxter has quit [Ping timeout: 256 seconds]
shellac has joined #jruby
blaxter has joined #jruby
drbobbeaty has joined #jruby
n00bdev has quit []
catmartyn has joined #jruby
pawnbox has quit [Remote host closed the connection]
catmartyn has quit [Remote host closed the connection]
pawnbox has joined #jruby
drbobbeaty has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
robbyoconnor has joined #jruby
<GitHub134> [jruby] eregon commented on commit bfe5f63: Seems to me it should just call `to_hash` and if that is not defined then just not consider for kwargs, no? https://github.com/jruby/jruby/commit/bfe5f639c5250e67b4466504412686f2f64ca68a#commitcomment-15420498
DomKM has quit [Quit: Connection closed for inactivity]
yfeldblum has quit [Ping timeout: 260 seconds]
justinmcp has quit [Quit: No Ping reply in 180 seconds.]
lupine has quit [Ping timeout: 256 seconds]
justinmcp has joined #jruby
lupine has joined #jruby
yfeldblum has joined #jruby
pitr-ch has joined #jruby
drbobbeaty has joined #jruby
skade has quit [Quit: Computer has gone to sleep.]
lupine has quit [Changing host]
lupine has joined #jruby
<GitHub60> [jruby] chrisseaton commented on commit 599d962: @snim2 this is the change in the file format https://github.com/jruby/jruby/commit/599d9629710fef36f3087734caba4ba66460c090#commitcomment-15422167
<GitHub4> [jruby] snim2 commented on commit 599d962: Thanks, I have this running now and I'm just updating the Eco code. https://github.com/jruby/jruby/commit/599d9629710fef36f3087734caba4ba66460c090#commitcomment-15422192
pawnbox has quit [Remote host closed the connection]
pawnbox has joined #jruby
<GitHub71> [jruby] chrisseaton pushed 1 new commit to master: https://github.com/jruby/jruby/commit/642898f44a7acf6fa3198ea741d2fca4bbcaa86c
<GitHub71> jruby/master 642898f Chris Seaton: [Truffle] Check if respond_to?(:to_hash) before trying to destructure kwargs.
<GitHub78> [jruby] chrisseaton commented on commit bfe5f63: Yeah that makes more sense - fixed in 642898f44a7acf6fa3198ea741d2fca4bbcaa86c. https://github.com/jruby/jruby/commit/bfe5f639c5250e67b4466504412686f2f64ca68a#commitcomment-15422469
pawnbox has quit [Ping timeout: 264 seconds]
pawnbox has joined #jruby
skade has joined #jruby
pawnbox_ has joined #jruby
pawnbox has quit [Ping timeout: 260 seconds]
tcrawley-away is now known as tcrawley
mkristian has quit [Read error: Connection reset by peer]
mkristian has joined #jruby
nirvdrum has joined #jruby
bbrowning_away is now known as bbrowning
<GitHub12> [jruby] mkristian pushed 1 new commit to jruby-1_7: https://github.com/jruby/jruby/commit/6b115fa35bcb9d200aea264c13b4cb6bce39ef84
<GitHub12> jruby/jruby-1_7 6b115fa Christian Meier: on windows treat expand_path with jar-uris special...
lance|afk is now known as lanceball
tomjoro has quit [Remote host closed the connection]
tomjoro has joined #jruby
tomjoro has quit [Ping timeout: 264 seconds]
robbyoconnor has quit [Ping timeout: 272 seconds]
yfeldblum has quit [Ping timeout: 260 seconds]
enebo has joined #jruby
vtunka has joined #jruby
vtunka has quit [Quit: Leaving]
<GitHub131> [jruby] enebo pushed 1 new commit to jruby-1_7: https://github.com/jruby/jruby/commit/606b943bccf3f9a1003eee463e9ba36aeab1c6f9
<GitHub131> jruby/jruby-1_7 606b943 Thomas E. Enebo: Update to jnr-posix 3.0.25. Fixes failover stat FindFirstFile detecting FileNotFound conditions
mrmargolis has joined #jruby
<GitHub107> [jruby] ruskotron opened issue #3599: jrubyc won't compile a file with method in outer scope (NoMethodError: undefined method `new_method' for nil:NilClass) https://github.com/jruby/jruby/issues/3599
<GitHub18> [jruby] eregon pushed 2 new commits to master: https://github.com/jruby/jruby/compare/642898f44a7a...faf45ec1b6eb
<GitHub18> jruby/master faf45ec Benoit Daloze: [Truffle] Have a much simpler Array#fill for compilation.
<GitHub18> jruby/master e164632 Benoit Daloze: [Truffle] Make our Entry class final.
donV has quit [Quit: donV]
oblutak has joined #jruby
<GitHub149> [jruby] enebo closed issue #3599: jrubyc won't compile a file with method in outer scope (NoMethodError: undefined method `new_method' for nil:NilClass) https://github.com/jruby/jruby/issues/3599
<GitHub145> [jruby] chrisseaton pushed 1 new commit to master: https://github.com/jruby/jruby/commit/0fc15389b3d218b89e0bfb515282698384f82a35
<GitHub145> jruby/master 0fc1538 Chris Seaton: [Truffle] Off-by-one.
tjohnson has joined #jruby
pitr-ch has quit [Ping timeout: 246 seconds]
pitr-ch has joined #jruby
jimbaker has joined #jruby
<projectodd-ci> Project jruby-master-spec-ji build #2537: FAILURE in 27 sec: https://projectodd.ci.cloudbees.com/job/jruby-master-spec-ji/2537/
mkristian_ has joined #jruby
mkristian has quit [Ping timeout: 260 seconds]
pawnbox_ has quit [Remote host closed the connection]
pawnbox has joined #jruby
pawnbox has quit [Remote host closed the connection]
pawnbox has joined #jruby
shellac has quit [Quit: Ex-Chat]
<chrisseaton> is asarih around?
nirvdrum has quit [Ping timeout: 272 seconds]
tomjoro has joined #jruby
pitr-ch has quit [Ping timeout: 246 seconds]
<GitHub60> [jruby] eregon pushed 1 new commit to truffle-head: https://github.com/jruby/jruby/commit/9da42ccb8822a30cdb9ece68a690bb359f445982
<GitHub60> jruby/truffle-head 9da42cc Benoit Daloze: Merge remote-tracking branch 'origin/master' into truffle-head
bappelt has joined #jruby
pitr-ch has joined #jruby
camlow325 has joined #jruby
<GitHub135> [jruby] mkristian closed issue #3496: asciidoctorj-pdf does not work with JRuby 1.7.23 https://github.com/jruby/jruby/issues/3496
pitr-ch has quit [Read error: Connection reset by peer]
pitr-ch has joined #jruby
<GitHub17> [jruby] enebo reopened issue #3599: jrubyc won't compile a file with method in outer scope (NoMethodError: undefined method `new_method' for nil:NilClass) https://github.com/jruby/jruby/issues/3599
shellac has joined #jruby
vtunka has joined #jruby
Guest35313 has quit [Quit: Page closed]
brometeo has joined #jruby
<brometeo> Hello everybody.
<brometeo> Any expert in ffi? :)
bappelt has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
<brometeo> I have a problem reading declared variables with attach_variable
<brometeo> I can use (with same library) attach_funcion and search for functions without problem, but global variables seem not being there.
<brometeo> Any clue?
lanceball is now known as lance|afk
brometeo has quit [Quit: WeeChat 1.3]
skade has quit [Quit: Computer has gone to sleep.]
lance|afk is now known as lanceball
shellac has quit [Quit: Computer has gone to sleep.]
shellac has joined #jruby
arthurix has joined #jruby
arthurix has quit [Remote host closed the connection]
vtunka has quit [Quit: Leaving]
subbu is now known as subbu|afk
camlow32_ has joined #jruby
camlow325 has quit [Ping timeout: 265 seconds]
<enebo> lopex: any reason we should not update joni on jruby 1.7.x?
<enebo> lopex: we are at 2.1.3 and joni is up to 2.1.9
<lopex> enebo: and 9k is ?
<enebo> 2.1.8
<lopex> enebo: then none I guess
<enebo> lopex: ok. I cannot think of a reason
<lopex> enebo: there's also that fix for backrefs and anchors
<enebo> lopex: I think this is why people are asking on issues since we have fixed a bunch of issues
pitr-ch has quit [Ping timeout: 240 seconds]
<enebo> lopex: I did not put out 2.1.9 so I guess I will update both
andrewvc has quit [K-Lined]
zph has quit [K-Lined]
amdprophet has quit [K-Lined]
tjohnson has quit [K-Lined]
knowtheory has quit [K-Lined]
Guest85414______ has quit [K-Lined]
deathy has quit [K-Lined]
talevy has quit [K-Lined]
jsvd has quit [K-Lined]
aemadrid has quit [K-Lined]
guilleiguaran__ has quit [K-Lined]
chrisseaton has quit [K-Lined]
bruceadams has quit [K-Lined]
flavorjones has quit [K-Lined]
Scorchin has quit [K-Lined]
lopex has quit [K-Lined]
olleolleolle has quit [K-Lined]
jeregrine has quit [K-Lined]
asarih has quit [K-Lined]
fidothe has quit [K-Lined]
krainboltgreene has quit [K-Lined]
mccraig has quit [K-Lined]
<enebo> 9 and 1.7
shellac has quit [Quit: Computer has gone to sleep.]
lopex has joined #jruby
<lopex> lol irccloud just said I've been K-Lined
<lopex> Spam, harassment, and antisocial behavior
<GitHub37> [jruby] enebo pushed 1 new commit to jruby-1_7: https://github.com/jruby/jruby/commit/c49b5294033af2d41e4056de05e403be0187345f
<GitHub37> jruby/jruby-1_7 c49b529 Thomas E. Enebo: Update joni to latest release (fixes several reported issues)
krainboltgreene has joined #jruby
<lopex> on split
bbrowning is now known as bbrowning_away
<enebo> bah
<enebo> all these snapshots on master
mkristian_ has quit [Ping timeout: 255 seconds]
chrisseaton has joined #jruby
<enebo> something changed in jcodings
talevy has joined #jruby
tjohnson has joined #jruby
mkristian has joined #jruby
<enebo> lopex: do you feel master of jcodings is good enough for a full release?
subbu|afk is now known as subbu
<enebo> looks like this one has a massive data update
<chrisseaton> enebo: I updated the character tables
<lopex> enebo: code ranges and transcoder data
<chrisseaton> they'd been done but on stale data for the last year or so
asarih has joined #jruby
olleolleolle has joined #jruby
fidothe has joined #jruby
Guest85414______ has joined #jruby
<chrisseaton> and actually I only got them to use newer data for the code ranges - I didn't figure out how to parse the rest of it
<chrisseaton> it was enough to fix my bug though
<enebo> chrisseaton: lopex: ok yeah I figured. I am more concerned about confidence
jeregrine has joined #jruby
pitr-ch has joined #jruby
aemadrid has joined #jruby
<enebo> chrisseaton: if the differences of generated data obviously only changed a few mistakes then I will have more confidence but I am trying to determine if 1.7.x should update to a fresh jcodings release or not
mccraig has joined #jruby
<enebo> it defintiely sounds like some stuff will get fixed
<lopex> enebo: well, lots of other changes in jcodings, but mostly simplification
knowtheory has joined #jruby
<enebo> lopex: not what you would consider risky stuff
<chrisseaton> there's a failing RubySpec, so it would improve your RubySpec coverage if you care about that
<chrisseaton> and someone somewhere cared enough to create this spec
<lopex> enebo: also, the scripts contain a bunch of asserts when parsing c code
Scorchin has joined #jruby
<enebo> so no one seems particularly worried about this. I will put out 1.0.16 and update jruby-1_7 branch and master
flavorjones has joined #jruby
<lopex> enebo: you know I'm never confident of anything :)
<enebo> lopex: yeah I know :)
<enebo> lopex: it’s ok. I internally adjust your statements for confidence values :)
<lopex> enebo: no-confidence release
mrmargol_ has joined #jruby
blaxter has quit [Ping timeout: 264 seconds]
mrmargolis has quit [Read error: Connection reset by peer]
deathy has joined #jruby
amdprophet has joined #jruby
guilleiguaran__ has joined #jruby
GitHub4 has joined #jruby
<GitHub4> [jcodings] enebo pushed 1 new commit to master: https://github.com/jruby/jcodings/commit/84fc8684cb735de07403734c3897cc23f8f37d46
<GitHub4> jcodings/master 84fc868 Thomas E. Enebo: Update for release
GitHub4 has left #jruby [#jruby]
GitHub143 has joined #jruby
<GitHub143> [jcodings] enebo tagged 1.0.16 at master: https://github.com/jruby/jcodings/commits/1.0.16
GitHub143 has left #jruby [#jruby]
andrewvc has joined #jruby
<lopex> enebo: wrt transcoders, regenerated data didnt change, but two more were added
<enebo> lopex: and 1.7 does not use them so for 1.7.x it is ok
<enebo> lopex: but good to know that for 9k
<lopex> enebo: transcoder data should be split from jcodings though, it's too large
<enebo> lopex: you mean only from 1.7?
<enebo> lopex: we use it for 9k right?
<lopex> enebo: dunno, Transcoder_Big5_WordArray.bin alone is 400k
nirvdrum has joined #jruby
<lopex> and probably it's not often used
bruceadams has joined #jruby
mkristian has quit [Ping timeout: 260 seconds]
jsvd has joined #jruby
thedarkone2 has joined #jruby
enebo has quit [Ping timeout: 260 seconds]
norc has joined #jruby
enebo has joined #jruby
<enebo> lopex: sorry my wifi seems to have hung
GitHub72 has joined #jruby
<GitHub72> [jcodings] enebo pushed 1 new commit to master: https://github.com/jruby/jcodings/commit/5235fa58f368a79dffce5ac9eff237806afb78d0
<GitHub72> jcodings/master 5235fa5 Thomas E. Enebo: Bump for next dev cycle
GitHub72 has left #jruby [#jruby]
zph has joined #jruby
mkristian has joined #jruby
mrmargol_ has quit []
oblutak has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
<lopex> enebo: I mean those large transcoder tables are mostly for not often used encodings
<lopex> and they compress only at 50%
<chrisseaton> lopex: why can't we use Java's character classes? they both just come from the Unicode spec don't they?
<enebo> chrisseaton: these tables have direct translation without indirecting through UTF16LE
<lopex> chrisseaton: I believe mri might have a richer set
blaxter has joined #jruby
<lopex> chrisseaton: also there's encodings larger than unicode wrt character space
<enebo> yeah also more encodings shipped…JRE does not bother with some in some places
<norc> enebo: I was told you were responsible for porting the parser from MRI, is that correct?
<lopex> unicode is only 21bit
<enebo> norc: from some point in time forward yeah
<enebo> norc: someone else did original spike in 2000
<lopex> chrisseaton: there was a lot of tension between unicode consortium and asian countries
<norc> enebo: I see. Well I am currently in the process of dissecting cruby. Along the way I was wondering how anyone managed to fork everything considering the total lack of documentation anywhere...
<chrisseaton> yeah I got that, but I thought these tables were just generated from the unicode data
<lopex> chrisseaton: another thing is mri likes to change and patch things
<mkristian> enebo, I pushed my fix and I am of to bed with flu and traveling the next two days. so you have to be happy with what is :)
<enebo> norc: well we keep same production list and it is also a LALR parser
<lopex> chrisseaton: yeah, mri is too
<enebo> mkristian: thans. I saw that
<enebo> mkristian: happy to you could test it since I could not repro
<lopex> chrisseaton: but this way we wont miss their changes
<enebo> mkristian: also thanks for getting the squared away :)
<lopex> chrisseaton: I'm not a fan of how it's done now though
<enebo> norc: the lex_state is all a port at this point and pretty confusing
<enebo> norc: digital extremist is a good person to talk to about ruby parsers since he did his own ruby parser
<norc> enebo: That is good to know. Is he a person that hangs around here?
<mkristian> enebo, will look at the other windows issue with expand_path after the release
<enebo> he is @whitequark on line
<norc> Oh. That is a familiar name. :-)
<enebo> actually he just used to always display that name in his description
<enebo> but I think of him as that now :)
<enebo> but he probably knows MRI parser design better than anyone at this point
<enebo> I have some insight but I never had the time nor inclination to try and unravel the weird state stuff in the lexer
<norc> Started doing some modifications here and there, even authored a small compiler patch. It's been fun but really confusing, especially once you get past the parser.
<norc> There is some implementations that are basically just 10k lines of wtf.
<enebo> yeah the parser is really big but pretty ordinary … the lexer is pretty weird
<enebo> and some features like nested quoting I do not think can be done without some weirdness
<enebo> e.g. “#{“a”}”
<lopex> chrisseaton: also just a question if it's worth to make an exception for unicode (apart from risking incompatibilities)
<norc> I can see how that might be non-trivial to lex.
<enebo> lopex: chrisseaton: direct encoding to encoding translations exist for jcodings but not for JVM right?
<norc> The hard thing for me was the inability to find people over in #ruby who know their way around the source code. Figuring how all these weirdnesses in the Ruby VM for example has been a pretty hard task.
<norc> But then again I suppose that is the price for trying to work on a strictly Japanese piece of software.
<lopex> enebo: either not for all supported by mri or fewer of them (which makes transcod trips longer)
<lopex> enebo: or the other way round :)
<enebo> lopex: but Java does it for nothing but UTF16LE
<chrisseaton> norc: I'm planning to write a new parser in Antlr at some point
<lopex> enebo: but it has to transcode to outside world
<enebo> lopex: so that is a small difference
<chrisseaton> norc: I need some more detailed source information that the JRuby parser doesn't have at the moment
blaxter has quit [Ping timeout: 256 seconds]
<lopex> enebo: but yeah, you dont have m:n problem on every occasion like in ruby
<enebo> chrisseaton: please make it a goal to enter at def’s as an alternate entry point
<chrisseaton> enebo: not sure what you mean
<chrisseaton> enebo: we're making it support lazy parsing
<lopex> enebo: also, it's a question for how "direct" those transcodes are
<enebo> chrisseaton: for IDE support partial parsing is a huge deal
<enebo> chrisseaton: primarily methods
<lopex> enebo: or if you'll have different round trip problem
<lopex> *problems
<enebo> chrisseaton: so my request is only for IDE support
<norc> chrisseaton: What kind of source information are you talking about?
<chrisseaton> norc: things for the lazy parsing, and we want to know exact source location of all nodes
<chrisseaton> norc: plus embedded JS and other possible things for the future
<enebo> ok soup time for me…bbiab
<norc> chrisseaton: We are strictly talking about jruby here though right?
camlow32_ has quit [Remote host closed the connection]
<chrisseaton> well it parses Ruby and it's written in Java, but not sure how a parser could be specific to JRuby apart from that
<chrisseaton> it's not Truffle specific
camlow325 has joined #jruby
camlow325 has quit [Remote host closed the connection]
camlow325 has joined #jruby
bb010g has joined #jruby
camlow325 has quit [Remote host closed the connection]
lanceball is now known as lance|afk
camlow325 has joined #jruby
camlow325 has quit [Remote host closed the connection]
camlow325 has joined #jruby
camlow325 has quit [Remote host closed the connection]
bbrowning_away is now known as bbrowning
camlow325 has joined #jruby
<GitHub105> [jruby] enebo pushed 1 new commit to jruby-1_7: https://github.com/jruby/jruby/commit/5b409136a7974076c5f6baf802481cab28bf86a0
<GitHub105> jruby/jruby-1_7 5b40913 Thomas E. Enebo: Update to latest jcodings
<GitHub119> [jruby] enebo pushed 1 new commit to master: https://github.com/jruby/jruby/commit/ef0ee1978891e6a9a3af6a00324d65fbd2cff248
<GitHub119> jruby/master ef0ee19 Thomas E. Enebo: update to latest jcodings
lance|afk is now known as lanceball
pawnbox has quit [Remote host closed the connection]
norc has quit [Ping timeout: 252 seconds]
pawnbox has joined #jruby
<travis-ci> jruby/jruby (jruby-1_7:5b40913 by Thomas E. Enebo): The build was broken. (https://travis-ci.org/jruby/jruby/builds/102188859)
pawnbox has quit [Ping timeout: 264 seconds]
<enebo> lopex: "\u{180E}".match(/[[:blank:]]/)
<enebo> lopex: so this is spec’d as matching for 1.9 but our upgrades broke it
<enebo> lopex: is this really spec’d behavior or is it documenting broken behavior?
pitr-ch has quit [Ping timeout: 264 seconds]
<lopex> enebo: also fail for me under 2.2.4
<lopex> *fails
<enebo> lopex: sure, but it must have worked in 1.9.3
<enebo> lopex: it is in a version specific spec file
<lopex> enebo: no idea then
<enebo> /home/travis/build/jruby/jruby/spec/ruby/language/regexp/versions/character_classes_1.9.rb
<enebo> (in jruby-1_7)
<enebo> I mean it feels pretty esoteric for a mongolian vowel separator to even be disucess
<lopex> enebo: dont tell me it's the same hell as with 1.8/1.9
<lopex> well, the tables ?
<enebo> mri19 -e 'p "\u{180E}".match(/[[:blank:]]/)'
<enebo> #<MatchData "\u180E">
skade has joined #jruby
<enebo> yeah table update broke this but I can see MRI no longer treats this as :blank:
<lopex> what now ?
<lopex> jcodings branch ?
<enebo> latest version of jcodings (I released today) and MRI’s own data now shows this as not a [[:blank:]] but it did in 1.9.3 of MRI and jruby 1.7.23
<enebo> lopex: so upstream data changes made this not a blank…
<lopex> I know, but what we gonna do now
<enebo> lopex: I don’t know
<lopex> branch jcodings or revert for 1.7 ?
<enebo> lopex: I would hate to unwind a bunch of fixes for this one char not working but it has not worked in MRI for years
<lopex> with you
<enebo> lopex: if this was a common space character I would unwind but I may just tag this out
<projectodd-ci> Yippee, build fixed!
<projectodd-ci> Project jruby-master-spec-ji build #2538: FIXED in 6 min 0 sec: https://projectodd.ci.cloudbees.com/job/jruby-master-spec-ji/2538/
dling has quit []
<enebo> lopex: without doing more than skimming it looks like the status of this char has changed as unicode standard changes
skade has quit [Ping timeout: 265 seconds]
<lopex> enebo: still with you
<enebo> lopex: I am going to tag it
shellac has joined #jruby
pitr-ch has joined #jruby
<lopex> enebo: aside, an idea, if one would pass cr as 7bit to joni matcher, it could use faster version of joni bytecodes (separately emitted before)
<lopex> might be worth for literals
<lopex> (regexp literals)
<enebo> lopex: yeah I could see that I guess
<enebo> lopex: you could make new instrs and use same machine but it would make a bigger interpreter
<lopex> and it's virtual call foo.length(byte[], int, int) vs +=1
<lopex> enebo: it already has those faster bytecodes (I use them for singlebyte encodings)
<enebo> lopex: that no doubt inlines back into machine
<enebo> lopex: ah
<lopex> so encoding gives me "static info"
<enebo> lopex: well I guess I should not say it will inline
<lopex> enebo: mri got that much later if only
<enebo> lopex: regexp engine has many sites with potentially mixed encodings
<enebo> lopex: and I don’t know how big the method is which calls it
<enebo> lopex: but yeah neat idea. I still think you should use ASM and generate bytecode!
camlow325 has quit [Ping timeout: 256 seconds]
<lopex> there's lots of difference sometimes, especially with tight backtracking
<GitHub48> [jruby] enebo pushed 1 new commit to jruby-1_7: https://github.com/jruby/jruby/commit/5c425adb2e3d4f4a1ae343ac63389e9ca3e9b720
<GitHub48> jruby/jruby-1_7 5c425ad Thomas E. Enebo: updating to jcodings messes with this obscure char no longer being considered a space.
<lopex> enebo: yeah, same idea applies for java bytecode emitter
<lopex> and case insensitive matching is huge
<enebo> lopex: ah I bet
<lopex> *one
camlow325 has joined #jruby
<lopex> enebo: wrt mixed encodings, no, once matching only one is used
<enebo> hahaha all this unrolling is crazy
<lopex> enebo: should be removed
<enebo> lopex: does oniguruma do these various opExact{n} instrs or did you add those?
<lopex> enebo: it does
<lopex> enebo: probably bad for hotspot
<enebo> I would think Java could figure that out on its own
<lopex> enebo: but the templates is something onigmo doesnt have
<lopex> so fixed strings are not stored in bytecode stream
<lopex> so absolutely no copies (unless escape happens somewhere)
camlow325 has quit [Remote host closed the connection]
<enebo> lopex: at this point would it be difficult to follow oni if we just started deviating a little bit in instr design?
<enebo> lopex: I have always wondered how well nashorn folks did with their effort to translate these instrs to bytecode
<chrisseaton> we tried truffelising but not sure how far it went
<lopex> enebo: they probably removed 30% of code :)
<enebo> chrisseaton: yeah I was also wondering that :)
<enebo> lopex: yeah that makes sense
<chrisseaton> we've truffelised pack, printf and unpack now, so small languages do seem to work fine
<enebo> lopex: you could also have each instr know if they are 7bit only and then just look at all instrs and then pass it to 7bit interp if all of them are
<enebo> lopex: or maintain some state as you build instrs
<lopex> chrisseaton: yeah, I see the possibilities
camlow325 has joined #jruby
<nirvdrum> enebo: Oh wow. Now that you shortened it to "oni", the name "joni" suddenly makes sense.
<enebo> chrisseaton: yeah I am mildly surprised out of the other langs this one was not near the top
<chrisseaton> yeah I was thinking that as well :)
<chrisseaton> enebo: regex isn't huge in benchmarks, and we weren't ready to run real code with regexps yet
<enebo> chrisseaton: ok. Not sure. In the old days they were extemely important because cgi.rb ot http.rb or some lib like that did several massive regexps
<enebo> I think it was http.rb processed all headers and the body as a regexp
<enebo> lopex: you remember?
<lopex> enebo: cgi times ?
<enebo> lopex: yeah maybe
<lopex> enebo: rexml was huge
<enebo> lopex: oh also I guess you are only generating single byte for single byte encodings
<nirvdrum> I think strscanner makes heavy use of regexps.
<lopex> enebo: I havent played much with perl though
<enebo> lopex: I realize you could also generate two interpreters and if you know non-singlebyte encoding only had single byte chars you could use simpler one
<enebo> lopex: in fact for utf-8 that would be a big improvement if JVM is not optimziing the mbc instrs well
<lopex> enebo: yeah, but bytecode array doesnt virtualize
<lopex> enebo: hmm, depends how much would have to be dupped
<lopex> enebo: the branches have to go somewhere
<enebo> lopex: I think you lost me a little bit
<enebo> lopex: you generate an array of bytecode instrs
<enebo> lopex: you could generate 2
<enebo> lopex: then have 2 interpreters. one of which is optimized for single byte
<enebo> lopex: I think this is your idea with using 7BIT CR to pass off to singlebyte when appropriate vs only doing it for pure 7bit encodings
<enebo> lopex: assuming the 7bit-only interp is faster
camlow325 has quit [Remote host closed the connection]
<lopex> enebo: I missed you because it's the Idea I started with
<enebo> lopex: ah ok. I thought you meant you only would do it for purely 7-bit encodings
<enebo> lopex: e.g. US-ASCII
camlow325 has joined #jruby
<lopex> enebo: the other story is though (if still larger switches in hotspot as slower) spliting the big switch would pay of too
<lopex> *are slower
<lopex> even with dense switch values so no balanced trees are used
camlow325 has quit [Remote host closed the connection]
<lopex> enebo: remember that issue ?
<enebo> lopex: yeah but I do not think this is a big switch
<enebo> lopex: and I don’t know how true that is now
<lopex> enebo: it got slower as cases were added
<enebo> lopex: heh
<lopex> enebo: I tested that to oblivion
<lopex> enebo: and the suspition was that hotspot tries to inline the cases
<enebo> lopex: do you have an instr dumper for joni?
<enebo> lopex: it would be neat to see how big some regexps are
<lopex> enebo: everything, ast, processed ast, bytecode, execution
<lopex> a bit prettier than oni
<enebo> lopex: I guess I sort of remember seeing the output from this before
camlow325 has joined #jruby
<lopex> enebo: tremendously helps tracing bugs when comparing with oni
subbu is now known as subbu|lunch
camlow325 has quit [Remote host closed the connection]
camlow325 has joined #jruby
yfeldblum has joined #jruby
bb010g has quit [Quit: Connection closed for inactivity]
<lopex> nirvdrum: you think that cr issue will convince mri ro fix it ?
<lopex> *to
<nirvdrum> lopex: I haven't filed it yet. It seems unlikely, but who knows.
<lopex> nirvdrum: I believe on these cases we need to be bug to bug compatible
<lopex> I recall lots of these when porting core
<nirvdrum> I think you can be bug-for-bug compatible without having to use some of their crazy methods.
<nirvdrum> But you have more experience in this area than I do.
<lopex> if you're chasing moving target that becomes difficult
<nirvdrum> But most of this hasn't changed since the 1.9 release.
<lopex> yeah, I think most of that settled now
<lopex> but 1.9 was terrible to chase for the first two years
<nirvdrum> I do agree that when issues arise, it's a lot easier to diff that way.
<nirvdrum> I'm playing with ropes a bit locally. Nothing worth sharing yet. But naturally it means changing the way some of these methods are implemented.
<lopex> nirvdrum: the most notable place when jruby diverged in a string for example was more aggressive sharing and cow for strings
shellac has quit [Quit: Computer has gone to sleep.]
<lopex> since before, mri strings were all null terminated and they couldnt afford that
<lopex> afaik that has changed
camlow325 has quit [Remote host closed the connection]
<nirvdrum> Ahh. Interesting.
camlow325 has joined #jruby
<nirvdrum> IIRC, they're still null-terminated in Rubinius.
<lopex> so on split they could share only the last part for example
camlow325 has quit [Remote host closed the connection]
camlow325 has joined #jruby
camlow325 has quit [Remote host closed the connection]
<lopex> I wonder how much leak is there due to that
subbu|lunch is now known as subbu
camlow325 has joined #jruby
<travis-ci> jruby/jruby (jruby-1_7:5c425ad by Thomas E. Enebo): The build was fixed. (https://travis-ci.org/jruby/jruby/builds/102199210)
bbrowning is now known as bbrowning_away
pawnbox has joined #jruby
<nirvdrum> lopex: Due to what?
<lopex> nirvdrum: due to sharing
<lopex> but I guess array is much more offending here
<lopex> since it can leak whatever, not only byte[] regions
<nirvdrum> lopex: I mean, are you asking in JRuby, Rubinius, or MRI?
lanceball is now known as lance|afk
<lopex> nirvdrum: a reason jdk doesnt share on substring now for example
<lopex> nirvdrum: jruby
<lopex> in java.lang.String
<nirvdrum> Gotcha.
shellac has joined #jruby
pawnbox has quit [Ping timeout: 265 seconds]
<lopex> nirvdrum: headius even fantasized about spare thread that walked OS and reallocated shared strings once in a while
<lopex> or arrays
<nirvdrum> I had run into a case where it was a problem in JRuby. I don't think I filed an issue, but headius fixed it a couple years back.
<nirvdrum> I think the problem was it was a large source string that a small slice was taken of, but then CoW was triggered.
<lopex> and yet no one knows if it really pays off in th wild
<nirvdrum> And now I had multiple copies of this large string.
<lopex> ah
drbobbeaty has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<nirvdrum> lopex: Have you thought at all about a method that calculates CR, length, and hash code all in a single pass?
<lopex> nirvdrum: I guess I remember you mentioning it
<nirvdrum> I don't think I have. Maybe I did.
<enebo> nirvdrum: lopex: my dream is to cache length
<nirvdrum> eregon was looking at it at one point, I think.
<nirvdrum> enebo: That's about the only thing I have working with ropes right!
<lopex> nirvdrum, enebo: and hash I guess
<lopex> and now String will have more state than the entire world
<enebo> for mbc strings length is expensive :)
<nirvdrum> enebo: But I'm eagerly calculating CR & length in a single pass right now.
<lupine> heh. when sexy vegan's parents went away for a funeral recently, they asked her not to have sex in their bed
<lupine> goddamnit
<enebo> nirvdrum: cool
<lopex> enebo: yeah
<nirvdrum> enebo: It may be prohibitively expensive.
<lopex> enebo: do you remember why that unsafe utf8 walk was broken ?
<nirvdrum> enebo: I'm hoping to take advantage of math properties and doing some of this during the parse phase.
<enebo> what?
<enebo> no it is not expensive
<enebo> size?
<enebo> err lengh
<nirvdrum> You just said "mbc strings length is expensive" :-P
<enebo> The only reason MRI did not do it was due to limited size in their fixed size structus
<enebo> nirvdrum: to calculate it
<lopex> utf8 length forbids any optimization
<lopex> for hotspot
<nirvdrum> enebo: Well, yeah. But that's what I mean. I'm eagerly calculating it now, whether you use it or not.
<nirvdrum> But I want the code range cached, too. If I'm walking the thing already, I may as well get the length at the same time.
<nirvdrum> 'tis the theory anyway.
<enebo> nirvdrum: yeah I think we should cache and wipe out on modification
<enebo> nirvdrum: agreed
<enebo> nirvdrum: not walking is worth a small amount of memory
<lopex> effectful modification
<nirvdrum> enebo: Right. And virtually every String method ends up scanning for the code range.
<nirvdrum> I guess we have a situation currently where string literal nodes can be told it has CR_VALID without the string length.
<lopex> nirvdrum: but depends if that's a majority, lots of operations just taint
<nirvdrum> So you'd be doing an extra scan there.
<enebo> nirvdrum: I afso agree lexing can get rid of initial need to unknown
<lopex> enebo: it's not there yet ?
<enebo> lopex: not sure
<enebo> lopex: I know we have talked about it
<enebo> we = the three of us
<nirvdrum> lopex: Nearly all of them have a single byte optimizable form. You're right that they don't all scan. But then you have strings that really are 7-bit going down the mbc path and they have to walk the full string anyway.
<nirvdrum> lopex: We have this currently for anything being read from IO, for instance.
<lopex> nirvdrum: yeah, that is right
<nirvdrum> The ffi constants read from file at boot up all are CR_UNKNOWN.
<lopex> just wondering about cases where literals taint new strings
<lopex> and how far that goes
<nirvdrum> Basically, I'm not sure all the machinery in place to lazily calculate CR is worth it. In some cases eagerly calculating it may be wasted effort. But in most cases, you want to know the CR.
<nirvdrum> And if you have to scan for the CR, you can work out the string length at the same time.
<lopex> and hash
shellac has quit [Quit: Computer has gone to sleep.]
<nirvdrum> Right.
<nirvdrum> Hash is a bit different because it's on the ByteList right now.
<nirvdrum> But that's a minor detail.
<lopex> nirvdrum: I wonder how this all will play out with java integration wrt http://openjdk.java.net/jeps/254
<lopex> well, all of jruby strings state of things
<enebo> nirvdrum: Are you considering strings made from ruby IO?
<enebo> nirvdrum: like binary files?
<enebo> nirvdrum: they read by length and we do not directly walk those
<nirvdrum> enebo: I'm not that far along yet. But I suspect I'll wind up with some special handling for ASCII-8BIT/BINARY.
<nirvdrum> If someone reads in from IO as UTF-8 and then force encodes to ASCII-8BIT, I guess that'll fall apart.
<enebo> nirvdrum: yeah I could see that happening
<enebo> nirvdrum: cases where it starts utf-8 and are forced binary are probably pathological
<enebo> nirvdrum: or they deserved to be punished with bad perf :)
<nirvdrum> On the other hand, I know exactly where the IO core functions are implemented, so I could override and do something sensible there anyway.
<nirvdrum> But if it's ASCII-8BIT, I already know the length. The only thing I won't know is if it's CR_7BIT or not.
<nirvdrum> I might be willing to accept calling it CR_VALID.
<lopex> exactly
<nirvdrum> I think the only thing that adversely affects is the correctness of ascii_only?, which we've demonstrated already has odd semantics.
<nirvdrum> While I appreciate it was almost certainly done for backwards compatibility, I really wish they had a separate ByteArray type.
pawnbox has joined #jruby
<lopex> enebo: are the tests all good now ?
subbu has quit [Ping timeout: 256 seconds]
subbu has joined #jruby
pawnbox has quit [Ping timeout: 256 seconds]
<enebo> lopex: it was only that single test I guess
tomjoro has quit [Remote host closed the connection]
<GitHub181> [jruby] lopex pushed 1 new commit to master: https://github.com/jruby/jruby/commit/f93da36156d6f74152a804570be44cfe0ee9e65f
<GitHub181> jruby/master f93da36 Marcin Mielzynski: use isUTF8() where possible
shellac has joined #jruby
<GitHub0> [jruby] enebo pushed 1 new commit to jruby-1_7: https://github.com/jruby/jruby/commit/eb1dd7a4eae6d3ebeb950091c2a36b03a74b237c
<GitHub0> jruby/jruby-1_7 eb1dd7a Thomas E. Enebo: Fixes #3550. Warning "io/console not supported; tty will not be manipulated" occurs again on 1.7.23
<GitHub144> [jruby] enebo closed issue #3550: Warning "io/console not supported; tty will not be manipulated" occurs again on 1.7.23 https://github.com/jruby/jruby/issues/3550
robbyoconnor has joined #jruby
robbyoconnor has joined #jruby
robbyoconnor has quit [Changing host]
tcrawley is now known as tcrawley-away
shellac has quit [Quit: Computer has gone to sleep.]
enebo has quit [Quit: enebo]
shellac has joined #jruby
bb010g has joined #jruby
<GitHub144> [jruby] kares pushed 10 new commits to master: https://github.com/jruby/jruby/compare/f93da36156d6...3e1c2b752c11
<GitHub144> jruby/master 29b904c kares: make RubyKernel's autoload Ruby method receive a thread-context
<GitHub144> jruby/master f4ee6b4 kares: [test] import ruby/test_autoload.rb from MRI 2.2.4
<GitHub144> jruby/master 810c600 kares: cleanup & align const_defined? + const_get impl methods
pawnbox has joined #jruby