cpuguy83 has quit [Remote host closed the connection]
cpuguy83 has joined #jruby
<enebo[m]>
weird it did not happen for me locally but I will check it out
<headius[m]>
I think I have cracked the JI nut
<enebo[m]>
and tbh I don't know why a bug like this would not also occur on my system so doubly weird
<headius[m]>
I think I can reduce boot-time overhead to just scanning all classes and gathering visible method names
<headius[m]>
all classes in a given hierarchy
<enebo[m]>
That seems like it should have failed locally it was getting some written source and the \n was in the expected result
<enebo[m]>
I changed it to System.lineSeparator() but we shall see if that passes locally
<enebo[m]>
I sometimes think some of these tasks do not fail sometimes when errors occur
<enebo[m]>
lol...it fails with the fix for me locally but fails without it on azure
<enebo[m]>
I may just strip and compare...the line-endedness is not really important here
<enebo[m]>
Although I am a bit confused how the two envs can be different (I am running in CMD)
<headius[m]>
yeah I don't know either
<headius[m]>
could be different flushing behavior somewhere? a newline stuck in a buffer?
shellac has joined #jruby
<enebo[m]>
hmm
<enebo[m]>
the azure output does make it seem like something was not flushed doesn't it
<headius[m]>
yeah that was my first thought
<enebo[m]>
I actually missed it and just assumed wrong line endings
<enebo[m]>
I will see what happens there
cpuguy83 has quit [Remote host closed the connection]
cpuguy83 has joined #jruby
<enebo[m]>
ah I see what is happening
<enebo[m]>
test_script.rb is checked into git but I use WSL to check it out and Azure no doubt uses windows
cpuguy83 has quit [Remote host closed the connection]
cpuguy83 has joined #jruby
<headius[m]>
aha that makes sense
<headius[m]>
damn thee windows
<enebo[m]>
I still don't quite get this error
<enebo[m]>
assertEquals should be expected and actual but this test is written backwards as actual expected
<enebo[m]>
so in Azure the literal string is not containing a newline whereas the local file read in is correctly reading the \n content file and not doing crlf conversion
shellac has quit [Quit: Computer has gone to sleep.]
<headius[m]>
new complication... do we want to have accurate arity on Java methods before they're called? :-\
<headius[m]>
so many pieces of data that get gathered from the method list
<enebo[m]>
arity can be just as lazy as calling the method can't it?
<headius[m]>
need to aggregate all visible names, aliased if appropriate, mangled if reserved, with min/max arity and split by static/instance, and if instance it must be the highest-up visible implementer of the method
<headius[m]>
I think I can make getArity lazily initialize
<headius[m]>
there's just so many transformations of the list of methods that it's hard to know what I can safely defer and what needs to be done up front
<headius[m]>
also along the way it's doing setAccessible, possibly too many times
<enebo[m]>
yeah
<headius[m]>
we filter and aggregate these methods like four times before the Ruby binding is ready
<headius[m]>
creating intermediate collections every step of the way
<headius[m]>
bleh we have to get rid of the Arity class
<headius[m]>
it is less and less meaningful
xardion has quit [Ping timeout: 258 seconds]
whitingjr has quit [Quit: Leaving.]
xardion has joined #jruby
<headius[m]>
aha this is interesting
<headius[m]>
we have a precedent for installing a method that just errors
<headius[m]>
if there's no local constructors we install a __jcreate! that does errors immediately
<headius[m]>
I've managed to eliminate the intermediate ConstructorInvokerInstaller, so that's a step toward doing the same for methods
<headius[m]>
it goes straight from cls.getDeclaredConstructors to installing in the proxy class now