razetime has joined #jruby
razetime has quit [Ping timeout: 248 seconds]
razetime has joined #jruby
razetime has quit [Ping timeout: 260 seconds]
razetime has joined #jruby
razetime has quit [Remote host closed the connection]
fidothe has quit [Read error: Connection reset by peer]
fidothe has joined #jruby
razetime has joined #jruby
razetime has quit [Ping timeout: 252 seconds]
razetime has joined #jruby
<headius> good morning!
subbu has joined #jruby
razetime has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
ldywicki[m] has quit [Ping timeout: 246 seconds]
headius has quit [Ping timeout: 246 seconds]
nilsding has quit [Ping timeout: 246 seconds]
razetime[m] has quit [Ping timeout: 246 seconds]
ldywicki[m] has joined #jruby
headius has joined #jruby
nilsding has joined #jruby
<byteit101[m]> for the first release, are there any other platforms we should support by default than the ones I built in CI linked above?
<headius> I think it's a fine start and we can add more incrementally
razetime[m] has joined #jruby
subbu has quit [Quit: Leaving]
<headius> omg I might have untangled this prepend thing
<headius> just ran into this trying to get rails working
<headius> rails 7 current version installs AR-JDBC 1.3.22 by default, we probably need to push something non-pre for 7.0
subbu has joined #jruby
<enebo[m]> yum
<enebo[m]> headius: what is calling ripper during Rails?
<enebo[m]> oh rdoc...what
<headius> yeah I guess
<headius> something in arjdbc must be passed through ripper and expose a glitch
<enebo[m]> I will finish up this warn thing I am nearly done with and try to figure this out
<headius> sorry for no deeper investigation, it isn't a showstopper for getting rails running so I'm on to the next thing
<enebo[m]> It is just some ruby code ripper is unable to parse
<enebo[m]> I saw this error a lot
<headius> and the alias_method_chain issue I thought was prepend-related was because it used arjdbc 1.x
<enebo[m]> Monitor is no doubt a new kwarg supported
<headius> so it gets farther... Monitor blows up the db:migrate
<headius> so that's how far
<headius> I'm finishing up fixes on the prepend change in 3.1 anyway and then I'll fix Monitor
<enebo[m]> monitor will be interesting loooking that that code
<headius> probably kwargs for timeout
<enebo[m]> yieldSpecific is callign with 0 args so it is not monitor at all
<enebo[m]> oh yeah it will be whatever is in the block
<enebo[m]> I just saw new specs coming it which exposed :in for some time/date thing
<headius> lovely
<enebo[m]> it is likely it is already something in MRI but we are not too far from passing most things
<enebo[m]> I just found something in warn as well which would trip over kwargs but I will land that soon
<enebo[m]> as well as fix some more warn issues
<headius> enebo: I mistakenly blamed Monitor because it was the top of the stack for this particular cropped output... it looks like it's a zsuper issue with anon kwargs
<headius> the description is updated with the actual failure, inside some callback logic
<enebo[m]> headius: yay. I think I saw something recently also with zsuper and kwargs...I wonder if nameless is weird somehow
<headius> prepend change is in https://github.com/jruby/jruby/pull/7429
<headius> took me a while to wrap my head around it but if simply ignores includes when searching for existing prepends
<headius> (assuming I have interpreted this right)
<enebo[m]> I think Ruby conceptually gets harder and harder to grok
<enebo[m]> In ways you don't realize until something does not work (like mixing features together)
<headius> they also run both include and prepend through the same logic with different inputs, and we have that method split up into pieces for prepend pre-check, do prepend, and do include
<enebo[m]> yeah that method is weird
<headius> it fixed two WIP, one in addition to the one from the CRuby issue
<enebo[m]> like saving duplicating 60% of that method is worth trying to parse the weird duality of it
<headius> yeah it is so big
<headius> most of the conditionals only ever affect either includes or prepends too
<enebo[m]> yeah different subsets of conditions for prepend or include
<enebo[m]> I would use it as a class example of how you can make something more confusing by sharing it
<headius> indeed
<enebo[m]> well my warning work I might table this afternoon and look at the zsuper thing
<headius> I'm going to hack the rails source to forward this differently so I can get past it for the moment
<enebo[m]> I will properly write out warnings and pass things I throw at it but I get something messing up with how they are mocking warnings
<headius> ah yeah
<headius> that is a little weird
<enebo[m]> Warnings is some hot garbage (not being in a charitable mood)
<enebo[m]> anyways it involves needing to call non-dyncalled stuff which ends up dyncalling but then also needs to keep kwargs data along so it can be remade later
<enebo[m]> It is just weird
<enebo[m]> headius: so you got it to work by working around or something else?
<headius> crud works
<headius> I am relieved
<enebo[m]> great
<enebo[m]> fun: snippets/kwargs134.rb
<headius> yeah fixed by changing that anon kwargs to have a name and forward explicitly
<headius> in Rails code
<headius> so if that were fixed Rails 7 can pass the smoke test
<enebo[m]> yeah I figured it would involve '**'
<headius> just don't install docs
<headius> rails server does not start under 19, that's interesting
<headius> might be some undiscovered issue with native fibers
<headius> Java 19
<headius> I will take that one
<headius> later
<enebo[m]> cya
<headius> I mean I'll take that issue later
<enebo[m]> heh. that was what I first thought
<enebo[m]> working on zsuper right now
<headius> miraculously that prepend PR does not seem to have regressed anything
<headius> enebo: I'm going to take a step back and figure out why the remaining three non-WIP suites are failing in CI
<headius> then we'll have normal nightlies and not have to force it
<enebo[m]> ok I think one is a regression from warning PR landing
<headius> hmm, spec:ruby:slow
<headius> ```
<headius> NoMethodError: undefined method `include?' for nil:NilClass
<headius> An exception occurred during: Process.times ERROR
<headius> /home/runner/work/jruby/jruby/spec/ruby/core/process/times_spec.rb:10:in `block in <main>'
<headius> maybe a glitch
<headius> don't get that one, rerunning
<headius> the M1 builds still fail to select the -java version of io-wait, something odd with the environment of the GHA runners there
<headius> FYI looks like about 18 C extensions required by mastodon
<headius> oj is one of them
<enebo[m]> fun
<enebo[m]> how many are actually needed vs diagnostic?
<headius> hard to say
<headius> maybe half
<headius> that's the list without dev deps from Gemfile
<enebo[m]> ok
<enebo[m]> ox/oj are xml/json
<headius> it uses pg directly, so that sucks
<enebo[m]> xorcist I think we support?
<enebo[m]> I believe I added a layer for pg into arjdbc unless I dreamed that
<headius> openssl would just be removed
<headius> byebug can be removed
<enebo[m]> Not totally complete but I think this was same problem for discourse
<headius> posix-spawn, unsure, they must be spawning worker children or something
<headius> I'm not familiar with most of the rest
<enebo[m]> cbor?
<headius> yeah beats me
<enebo[m]> charlock_holmes is likely something Ruby should support
<enebo[m]> it tries and detect character set of rando bytes
<enebo[m]> but I imagine the actual code for this is not huge
<headius> probably an equivalent JVM lib out there
<enebo[m]> yeah that is fairly small
<headius> or portable I guess
<enebo[m]> [_] Publish the pure-ruby version and make it work the same way on JRuby.
<enebo[m]> haha
<enebo[m]> cbor
<enebo[m]> This is a Ruby implementation of the CBOR encoding, based on the (polished) high-performance msgpack-ruby code.
<enebo[m]> So sounds like it may have some potential for support but it has not been updated since 2019
<enebo[m]> hahah c-rack making a cbor
<enebo[m]> cool I guess
<headius> yeah as usual most things could be ported or replaced
subbu has quit [Quit: Leaving]