<headius[m]>
this does not have to get in by any means but it makes Float behave more like CRuby flonum for purposes of identity
<enebo[m]>
headius: looking at the PR
<enebo[m]>
Do people id2ref fixnums and floats?
<enebo[m]>
Or I guess I should say if they do then they are probably doing it generically
<headius[m]>
I don't think they do it on purpose
<headius[m]>
yeah that
<enebo[m]>
Did this fix some specs or tests somewhere. I am not against this at all personally but I am wondering what the win is
<headius[m]>
see the link
<headius[m]>
it was just a behavioral difference that started with Ruby 2.0 when they added flonums... not specified behavior, but since we emulated fixnum behavior previously this closes a gap
<enebo[m]>
ah yeah I missed that
<headius[m]>
nobody should rely on this behavior and it should not be specified but this reduces our exposure
<enebo[m]>
So we can make equal? work and not get an issue report down the road
<headius[m]>
yeah
<headius[m]>
and I realized while working on it that equal? and object_id equality have to go hand in hand so I did that half as well
<enebo[m]>
yeah you know me. I love any change which will reduce our likelihood of getting a bug report
<headius[m]>
and fixed fixnum to limit the equal? range to the range we generate object_id for
<headius[m]>
(which only means values near 64 bits will not pretend to be the same object anymore)
subbu is now known as subbu|lunch
<enebo[m]>
So our ranges are a little different than MRIs but MRIs is different depending on arch already right?
<headius[m]>
our ranges match MRI on 64bit exactly now
<headius[m]>
we use a Fixnum object for more values than MRI does but that is not visible since the Integer unification
<enebo[m]>
ah cool.
<enebo[m]>
we just get better perf a little longer :)
<enebo[m]>
So over the weekend I bit the bullet and got all out of proc launching on windows to use SUSPECT plus other odd bits
<headius[m]>
yeah basically
<enebo[m]>
A small irony is my launching issue still persists but I think I am missing something which establishes the processes and in the same window group
<headius[m]>
mostly need it this way for Java integration, so values near 64 bits don't require a Bignum
<enebo[m]>
I will figure that out but now I am making dll loading working since I made it over the hump of importing winapis into Rust
<enebo[m]>
but I realized this weekend I made like 5x the progress just not being connected to social media at all
<headius[m]>
byteit101: I didn't forget about you... mopping up some unfinished work today and then will continue to review your questions
<headius[m]>
enebo: yeah I usually just have this and chats open during work
<byteit101[m]>
headius: Thanks! No rush though
<headius[m]>
byteit101: 9.3 won't ship without this
<ahorek[m]>
redis will work without it, so no rush. tcp_keepalive is optional, the option was ignored before, now it fails. But it's easy to disable it.
<headius[m]>
yeah just feeling like enough fixes have stacked up that it would be worth aligning 9.2 socket with 9.3
<headius[m]>
and trying to decide the cleanest way to do that