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
blueyed has quit [Ping timeout: 268 seconds]
blueyed has joined #pypy
bogner_ has quit [Ping timeout: 268 seconds]
bogner has joined #pypy
xcm is now known as Guest6285
Guest6285 has quit [Ping timeout: 265 seconds]
xcm has joined #pypy
i9zO5AP has joined #pypy
<kenaan>
Yannick_Jadoul bpo-16055 d6cd8aee750b /rpython/rlib/rstring.py: Implement bpo-16055: Fixes incorrect error text for int('1', base=1000)
<kenaan>
arigo default 185d1d278712 /rpython/rlib/rstring.py: Merged in bpo-16055 (pull request #691) Implement bpo-16055: Fixes incorrect error text for int('1', base=1000)
<kenaan>
arigo py3.7-bpo-30399 fa464b737aac /: Close branch py3.7-bpo-30399
<kenaan>
arigo py3.7 112b3a20f382 /: Merged in py3.7-bpo-30399 (pull request #689) Implement bpo-30399: Get rid of trailing comma in the repr of BaseExce...
<arigato>
tos9: no, you have to write all the ones you're interested in
<kenaan>
arigo py3.7-bpo-30103 5f276be6e570 /: Close branch py3.7-bpo-30103
<kenaan>
arigo py3.7 5ddc0990a778 /pypy/module/binascii/: Merged in py3.7-bpo-30103 (pull request #690) Implement bpo-30103: Allow Uuencode in Python using backtick as zero i...
<arigato>
tos9: it would be a particularly hard problem to find it automatically because in C, enum "members" are not really members at all but just global constants
<arigato>
(i.e. you can't distinguish them from real global constants by writing more C code after the enum{} declaration)
<kenaan>
arigo py3.7-time-minor-bpos 9d12ffddcb04 /: Close branch py3.7-time-minor-bpos
<kenaan>
arigo py3.7 8f7bc5f6eb55 /: Merged in py3.7-time-minor-bpos (pull request #688) Py3.7 time module minor BPOs
<YannickJadoul>
The PyPy docs list this under differences with CPython, though: "Various built-in functions in CPython accept only positional arguments and not keyword arguments. That can be considered a long-running historical detail: newer functions tend to accept keyword arguments and older function are occasionally fixed to do so as well."
<YannickJadoul>
Does that mean the test failures are to be ignored?
<arigato>
YannickJadoul: I think there's a way to have positional-only arguments
<YannickJadoul>
arigato: I'm interested! :-)
<YannickJadoul>
I was messing around with `args_w`, but then you have the problem that the maybe-kwarg `base` should also still be allowed positionally
<arigato>
hum, no, it seems I wrong sorry :-)
<YannickJadoul>
Ah, too bad :-/ Maybe it's worth implementing already? Needed in Python 3.8 anyway
<YannickJadoul>
(Btw, is test_cpyext.py using some dark magic and an old version? I'm trying to debug the test I broke by removing a comma.)
<arigato>
test_cpyext is probably based on dark magic, unsure which old version you're talking about
<arigato>
if you're up to digging rather obscure code, the logic for co_posonlyargcount should be added to gateway.py, and either to argument.py too or you hack around in gateway.py (e.g. by turning the names of all arguments before some marker into empty strings, or something)
<YannickJadoul>
arigato: I'm running the failing test and the exception that gets thrown from within some C extension in the tests still prints the comma I've removed
<arigato>
"ah"
<YannickJadoul>
I.e., ZeroDivisionError('integer division or modulo by zero',) instead of ZeroDivisionError('integer division or modulo by zero')
<YannickJadoul>
arigato: Aha, right, thanks for those pointers! :-) I'll see if I can find my way around gateway.py
<arigato>
ah, it might be because it's an exception turned into a SystemError, which uses the repr of the base exception as a string message
<arigato>
yes, this occurs in wrapper_second_level() in module/cpyext/api.py
<arigato>
see w_SystemError in this function
<arigato>
it uses str(e) at rpython level
<arigato>
or repr(e) if not we_are_translated()
<arigato>
it means the test as written would not pass on top of a translated pypy anyway, because then the message would likely be a bit different
<arigato>
anyway in this spceial case I think the details are not important: it's just to get *some* information out of a crash in cpyext, really
tzuibo has quit [Remote host closed the connection]
<arigato>
you can just add the comma again and be done with it
<YannickJadoul>
Aha, thanks! :-)
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
<kenaan>
Yannick_Jadoul py3.7 295149c861c3 /pypy/module/cpyext/test/test_cpyext.py: Revert removal of trailing comma in test_cpyext.py in 705f6a3 (part of commit implementing bpo-30399)
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
omry has quit [Remote host closed the connection]
<kenaan>
Yannick_Jadoul py3.7-bpo-27541 fc33829c0465 /: Implement bpo-27541: Reprs of subclasses of some classes now contain actual type name
dansan has joined #pypy
<kenaan>
Yannick_Jadoul array-and-nan fe5283d50ae4 /pypy/module/array/: Replacing `space.eq_w(...)` by `space.is_true(space.eq(...))` in `compare_arrays` and `index_count_a...