arigato 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 | mac OS and Fedora are not Windows
jcea has joined #pypy
jcea has quit [Quit: jcea]
lritter has quit [Ping timeout: 246 seconds]
lritter has joined #pypy
__pv has quit [Ping timeout: 272 seconds]
__pv has joined #pypy
tsaka_ has joined #pypy
agronholm has quit [Ping timeout: 248 seconds]
mattip has quit [Ping timeout: 245 seconds]
mattip has joined #pypy
tsaka_ has quit [Ping timeout: 244 seconds]
tsaka_ has joined #pypy
tsaka_ has quit [Ping timeout: 245 seconds]
<kenaan> stevie_92 cpyext-gc-cycle f454ba4d28f6 /rpython/: Refactored rrc to support multiple implementations
<kenaan> stevie_92 cpyext-gc-cycle 615c66be0a6a /rpython/memory/gc/: WIP: adapted incremental rrc to use snapshot (finalizers still missing)
<kenaan> stevie_92 cpyext-gc-cycle 7972e94ec0ac /rpython/memory/gc/: WIP: adapted incremental rrc to use snapshot (legacy finalizers missing)
<kenaan> stevie_92 cpyext-gc-cycle 13bf4458e03a /rpython/memory/gc/rrc/: Adapted incremental rrc to use snapshot
<kenaan> stevie_92 cpyext-gc-cycle 51bfe92174e1 /rpython/memory/gc/rrc/incmark.py: Fixed compilation issues with rrc incmark
tsaka_ has joined #pypy
ronan has joined #pypy
aixtools has joined #pypy
aixtools has left #pypy [#pypy]
<kenaan> mattip default 9af25f100cea /lib_pypy/_cffi_ssl/_cffi_src/openssl/evp.py: add more missing API functions that caused HMAC block_size error and test failure
<kenaan> mattip py3.6 7b2e8730917d /lib-python/3/test/test_ssl.py: remove debug cruft
<kenaan> mattip py3.6 06475a814c91 /lib_pypy/_cffi_ssl/_cffi_src/openssl/evp.py: merge default into branch
xorAxAx has quit [Ping timeout: 246 seconds]
tsaka_ has quit [Ping timeout: 272 seconds]
infinite has quit [Ping timeout: 245 seconds]
xorAxAx has joined #pypy
<arigato> >>> json.dumps({True: False}, sort_keys=True)
<arigato> '{"true": false}'
<arigato> '{"True": false}'
<arigato> >>> json.dumps({True: False})
<arigato> note the upper/lower case of the key
<arigato> that's cpython 2.7
infinite has joined #pypy
<kenaan> arigo default f48b6c5fe1ca /: Un-fix the broken attempt at emulating bug-to-bug compatibility, and instead just give the "correct" result in all ...
BPL has joined #pypy
<kenaan> arigo py3.6 72fdf69a0e6d /pypy/module/cpyext/: issue #3055 fix if we see a PyTypeObject with tp_doc==""
<mattip> arigato: thanks
<arigato> ah pff
<arigato> OK I found the buggy line in CPython
<arigato> they do ``if (PyInt_Check(key))... else if (key == Py_True)...``
<arigato> but of course, Py_True passes the test PyInt_Check()
<arigato> so it's clearly a bug and not a side-effect of some obscure design decision
tsaka_ has joined #pypy
BPL has quit [Read error: Connection reset by peer]
<tos9> oy
<mattip> feel like submitting a bug report?
<nimaje> well, it is a effect of the design decision that bool is a subclass of int
<mattip> my latest grasping-at-straws theory about the aarch64 translation failures is because the own tests are running in parallel, there is some memory corruption
<nimaje> even noted in point 6 of the review of the pep https://www.python.org/dev/peps/pep-0285/ arigato
<tos9> nimaje: the bool change is intentional but arigato was saying the line of code cannot be functioning as intended -- the person who wrote it was clearly trying to special case bools and just accidentally forgot that the second part of the conditional will never be reached
<tos9> (and then wrote no unit tests and didn't notice, hooray.)
<wleslie> pypy development is fantastic at discovering bugs in other people's software
<nimaje> ah, now I see, it is that json.dumps bug, ok
xcm has quit [Remote host closed the connection]
<mattip> yesterday I was in a panic because numpy runs pypy in its CI, and on a PR only pypy tests failed. Bug in PyPy? C-API?
<mattip> it turns out the PR had "if s is 'value': ..."
<mattip> which works fine on CPython
xcm has joined #pypy
<mattip> and sometimes works fine on PyPy too, but only when the test was rerun (deleting the pyc files made the test fail)
<kenaan> mattip buildbot d6d16988b8b9 /bot2/pypybuildbot/builds.py: only allow a single aarch64 build at a time
jcea has joined #pypy
<kenaan> mattip default 7a38750c11b1 /lib_pypy/_cffi_ssl/_cffi_src/build_openssl.py: force linking against openssl 1.0.2 on win32. CPython changed this for v3.7
xorAxAx is now known as xorAxAx2
Rhy0lite has joined #pypy
bbot2 has quit [Quit: buildmaster reconfigured: bot disconnecting]
bbot2 has joined #pypy
xorAxAx has joined #pypy
<xorAxAx> .
xorAxAx2 has quit [Quit: Gateway shutdown]
<mattip> ubuntu 14.04 has reached EOL (as of April 2019). The linux64 buildbot is a 14.04 chroot on bencher4
xorAxAx has quit [Remote host closed the connection]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
dddddd has joined #pypy
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
xorRaxRax has joined #pypy
xorRaxRax has quit [Client Quit]
lritter has quit [Quit: Leaving]
<arigato> mattip: does it make sense to extend our "is" operator to care for that, once and for all?
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
agronholm has joined #pypy
trinityhex has joined #pypy
Graypup_ has quit [Quit: ZNC 1.6.1 - http://znc.in]
Graypup_ has joined #pypy
ekaologik has joined #pypy
<nimaje> well, but cpythons 'is' isn't '==' for strings, for example https://0x0.st/zVd2.txt
<arigato> nimaje: the point is that 'is' is ill-defined, and making it be '==' seems to be the only full-definition that makes sense
<arigato> currently pypy implements this definition of 'is' for most types, except strings-of-more-than-one-character, and non-empty tuples and frozensets
<arigato> before we implemented all that we have now, we used to have regularly bogus bug reports because people rely on things
<arigato> not to mention, the example you give will probably produce "true" on pypy after jitting, because the jit figures out it's all the same
<arigato> or some more complicated variant maybe, like this example would produce "false" but if you run it in a loop then all the "a + b + c" give the same string object (different from abc)
<nimaje> yeah, for strings 'is' is bad as you normally don't care about object identity there and if you do you probably want to use marker objects instead
ekaologik has quit [Ping timeout: 248 seconds]
Rhy0lite has quit [Quit: Leaving]
Taggnostr3 has joined #pypy
Taggnostr has quit [Ping timeout: 250 seconds]
<cfbolz> arigato: I am slightly wary of this, because then 'is' wouldn't even be O(1)
Taggnostr3 is now known as Taggnostr
xorAxAx has joined #pypy
<xorAxAx> .
ekaologik has joined #pypy
ekaologik has quit [Ping timeout: 248 seconds]
<arigato> cfbolz: yes, agreed (although it already has got the same problem on very long longs)
<arigato> maybe issue a SyntaxWarning when we say ``is "constant"``?
<arigato> or, we can make it "often O(1)" if we first force and compare the hashes
speeder39_ has joined #pypy
ronan has quit [Ping timeout: 252 seconds]