cfbolz changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end ) | use cffi for calling C | if a pep adds a mere 25-30 [C-API] functions or so, it's a drop in the ocean (cough) - Armin
dansan has quit [Ping timeout: 268 seconds]
xcm has quit [Read error: Connection reset by peer]
RoadrunnerWMC has quit [Read error: Connection reset by peer]
<kenaan>
Yannick_Jadoul py3.7-bpo-30399 705f6a3a7d9a /: Implement bpo-30399: Get rid of trailing comma in the repr of BaseException
<kenaan>
Yannick_Jadoul py3.7-bpo-30399 49811c96e106 /lib-python/3/test/test_gdb.py: Undo change to trailing commas in exception repr strings in lib-python/3/test/test_gdb.py
YannickJadoul has joined #pypy
<YannickJadoul>
I'm currently looking into the failure of test_array in the py3.7 test suite, and I found something quite annoying
<YannickJadoul>
The reason it's failing is not because of some 3.7 change, but because nan-comparisons for array.array is broken (also in 2.7 and 3.6)
<mattip>
:(
<YannickJadoul>
And if I look one step further, it's because space.eq_w doesn't work for NaN
<YannickJadoul>
def eq_w(...): return self.is_w(w_obj1, w_obj2) or self.is_true(self.eq(w_obj1, w_obj2))
<mattip>
does cpython do something different for array.array?
<YannickJadoul>
Not really, I think
<YannickJadoul>
But PyPy does "space.eq_w(w_elem1, w_elem2)"
<YannickJadoul>
Which takes the `is` shortcut, and float('nan') is float('nan')
<YannickJadoul>
Replacing the line in PyPy with `space.is_true(space.eq(w_elem1, w_elem2))` makes the test work
<YannickJadoul>
Changing the `space.eq_w` from `return self.is_w(w_obj1, w_obj2) or self.is_true(self.eq(w_obj1, w_obj2))` to `return self.is_true(self.eq(w_obj1, w_obj2))` also makes that test work, so the problem's definitely there
tsaka__ has quit [Ping timeout: 258 seconds]
nopf has quit [Ping timeout: 268 seconds]
nopf has joined #pypy
antocuni has quit [Ping timeout: 268 seconds]
antocuni has joined #pypy
<kenaan>
Yannick_Jadoul py3.7-bpo-30103 53ee6dae816a /pypy/module/binascii/: Implement bpo-30103: Allow Uuencode in Python using backtick as zero instead of space