cfbolz changed the topic of #pypy to: #pypy PyPy, the flexible snake https://pypy.org | IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end and https://libera.irclog.whitequark.org/pypy | insert pithy quote here
fotis has quit [Ping timeout: 268 seconds]
fotis has joined #pypy
fotis has quit [Ping timeout: 272 seconds]
fotis has joined #pypy
fotis has quit [Ping timeout: 264 seconds]
fotis has joined #pypy
<cfbolz> Oops, seems something is broken
fotis has quit [Ping timeout: 272 seconds]
fotis has joined #pypy
karel has joined #pypy
<mattip_> probably my "fix" in 79fa6bf6e41c
fotis has quit [Ping timeout: 264 seconds]
<LarstiQ> cfbolz: they sure know how to dig a deeper hole (re https://news.ycombinator.com/item?id=27495358)
<cfbolz> mattip_: could be buffer stuff too
<cfbolz> LarstiQ: yeah
Julian has joined #pypy
fotis has joined #pypy
fotis has quit [Ping timeout: 244 seconds]
mattip_ is now known as mattip
<mattip> cfbolz: it is a failure of max([], default=-1) to return -1, instead it raises
<mattip> test and fix coming
<cfbolz> mattip: sorry, so my fault :-(
<mattip> well, I should have tested my fix
<mattip> no, still broken
<cfbolz> right
* cfbolz builds
Julian has quit [Quit: leaving]
fotis has joined #pypy
<mattip> you can run the untranslated __builtin__ tests to see that the kwarg parsing is wrong
<mattip> we need to differentiate between min([], default=None) and min([])
<mattip> the first should return None, the second should raise
<mattip> so w_default=WrappedDefault(None) in the unwrap_spec is off, we need to mark w_default as "missing"
<cfbolz> mattip: right
<mattip> that exists somewhere, I forget the usage pattern
<cfbolz> mattip: isn't it just a default value of "None"?
<mattip> maybe without the unwrap_spec at all
<cfbolz> no, I think we might need it for key :-(
<cfbolz> because in cpython, and they test for it:
<cfbolz> anyway, seems not to work
<cfbolz> will look in more detail later, need to do uni stuff today
fotis has quit [Ping timeout: 272 seconds]
fotis has joined #pypy
karel has quit [Quit: Konversation terminated!]
fotis has quit [Ping timeout: 244 seconds]
<mattip> I can't figure out a way to to say "this optional kwarg was not specified"
<cfbolz> It's possible that you really can't
<cfbolz> mattip: because the default value would be exposed via some func attribute
<cfbolz> So you can't use None
<cfbolz> So we need to revert part of what I did and re-add the manual argument parsing :-(
fotis has joined #pypy
[Arfrever] has joined #pypy
dustinm- has quit [Quit: Leaving]
dustinm has joined #pypy
fotis has quit [Ping timeout: 272 seconds]
leshaste has joined #pypy
<leshaste> hi
fotis has joined #pypy
fotis has quit [Ping timeout: 264 seconds]
fotis has joined #pypy
fotis has quit [Ping timeout: 252 seconds]
[Arfrever] has quit [Ping timeout: 272 seconds]
[Arfrever] has joined #pypy
fotis has joined #pypy
mattip has quit [Ping timeout: 268 seconds]
fotis has quit [Ping timeout: 272 seconds]
leshaste has quit [Quit: Leaving]
mattip has joined #pypy
daubers has quit [Ping timeout: 244 seconds]
jryans has quit [Read error: Connection reset by peer]
daubers has joined #pypy
jryans has joined #pypy
Dejan has joined #pypy
samth has joined #pypy
fotis has joined #pypy
<mattip> there is a segfault when importing scipy.stats.qmc, when calling PyErr_Format(PyExc_NameError, "name '%U' is not defined", name);
<mattip> it seems name does not have obj->wstr set, which hits an assert in PyUnicode_GET_SIZE(obj)
<mattip> but that macro is depracated since python3.3, and the whole PyUnicode_FromFormatV has been rewritten to use a "new" _PyUnicodeWriter
<mattip> we cargo-cult copied PyUnicode_FromFormatV from cpython, so now what do we do?
<mattip> - fix our outdated copy or
<mattip> - update it to CPython's version which means copying the whole _PyUnicodeWriter c-code
<mattip> - port PyErr_Format into rpython, which would require handling c-level va_list args
<arigato> probably "2". if it means that in order to be as compatible as possible we need a whole bunch of logic that can be easily bulk-copied, then so be it
<mattip> ok, I will try. In any case this is a relatively big change
<mattip> thanks
fotis has quit [Ping timeout: 264 seconds]
fotis has joined #pypy
fotis has quit [Ping timeout: 244 seconds]
<bbot2> Started: http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/7728 [ronan: force build, hpy-0.0.2]
<bbot2> Started: http://buildbot.pypy.org/builders/own-linux-x86-64/builds/8737 [ronan: force build, hpy-0.0.2]
fotis has joined #pypy
fotis has quit [Ping timeout: 244 seconds]
stkrdknmibalz has joined #pypy
fotis has joined #pypy
<bbot2> Failure: http://buildbot.pypy.org/builders/own-linux-x86-64/builds/8737 [ronan: force build, hpy-0.0.2]
<bbot2> Failure: http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/7728 [ronan: force build, hpy-0.0.2]
fotis has quit [Ping timeout: 244 seconds]
Julian has joined #pypy
Julian has quit [Quit: leaving]
fotis has joined #pypy
Julian has joined #pypy
Julian has quit [Client Quit]
<Dejan> I've just watched the "PyPy 3.8 support: the buffer protocol" :) nice!
<Dejan> thanks!
fotis has quit [Ping timeout: 244 seconds]
fotis has joined #pypy
fotis has quit [Ping timeout: 272 seconds]
Dejan has quit [Quit: Leaving]
fotis has joined #pypy
fotis has quit [Ping timeout: 272 seconds]
<cfbolz> Dejan: thank you
<mattip> the bug in PyErr_Format might be connected to the fact that PyErr_Occured() is not NULL when calling it,
<mattip> so exception handling is messed up
<mattip> I think the base issue is that PyObject_GetItem(module, name) is failing, which makes all the rest go haywire
fotis has joined #pypy
<mattip> another difference to cpython is that cython turns on CYTHON_AVOID_BORROWED_REFS for PyPy.
<mattip> so the code paths are different
glyph has quit [Quit: End of line.]
glyph has joined #pypy
mib_r5xvzu has joined #pypy
mib_r5xvzu has quit [Client Quit]
fotis has quit [Ping timeout: 272 seconds]
fotis has joined #pypy