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
ebarrett has quit [Ping timeout: 244 seconds]
marky1991 has joined #pypy
marky1991 has quit [Remote host closed the connection]
marky1991 has joined #pypy
dddddd has quit [Remote host closed the connection]
marky1991 has quit [Remote host closed the connection]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
Garen has quit [Read error: Connection reset by peer]
Garen has joined #pypy
jcea has quit [Remote host closed the connection]
forgottenone has joined #pypy
jcea has joined #pypy
jcea has quit [Quit: jcea]
xcm has quit [Read error: Connection reset by peer]
xcm has joined #pypy
ronan has quit [Ping timeout: 252 seconds]
ronan has joined #pypy
mattip has joined #pypy
<mattip> it turns out there is a typed_ast package at https://github.com/python/typed_ast
<mattip> it uses CPython internal private functions and the PyArena which we do not support.
<mattip> someone tried to use it with PyPy, the summary is at the end of https://github.com/python/typed_ast/issues/97
<mattip> Should we expand effort to make this work? Not clear to me why it is in C and not pure python
<mattip> expend
brent_ has quit [Ping timeout: 248 seconds]
tsaka__ has quit [Quit: Konversation terminated!]
dddddd has joined #pypy
xcm has quit [Read error: Connection reset by peer]
xcm has joined #pypy
antocuni has joined #pypy
Ai9zO5AP has joined #pypy
<cfbolz> mattip: yes, I think it would be cool to support typed_ast, but I don't know how much effort we should put in
<cfbolz> ah, I see
<cfbolz> mattip: thinking more, it sounds ok to me that we wait until we catch up with 3.8
forgottenone has quit [Remote host closed the connection]
forgottenone has joined #pypy
_whitelogger has joined #pypy
brent has joined #pypy
<kenaan> arigo shadowstack-issue2722 0f76d02c2314 /rpython/: Link 'increase_root_stack_depth' through RPython and test it
danieljabailey_ has quit [Quit: ZNC 1.6.6+deb1ubuntu0.1 - http://znc.in]
<kenaan> arigo shadowstack-issue2722 a203fe94e7b4 /: Use rgc.increase_root_stack_depth() from PyPy (+tweaks)
xcm is now known as Guest34724
Guest34724 has quit [Killed (leguin.freenode.net (Nickname regained by services))]
antocuni has joined #pypy
xcm has joined #pypy
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
Rhy0lite has joined #pypy
xcm has quit [Ping timeout: 246 seconds]
<kenaan> arigo shadowstack-issue2722 82825fc607bb /rpython/memory/gctransform/shadowstack.py: fix
xcm has joined #pypy
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
<kenaan> arigo shadowstack-issue2722 d92c072bcab5 /pypy/module/sys/vm.py: Seems to work as expected, writing down a comment here after I debugged a multi-threaded problem that...
<kenaan> arigo shadowstack-issue2722 d14d5e009ca0 /: close branch, ready to merge
<kenaan> arigo default 52462bc541a3 /: hg merge shadowstack-issue2722
<cfbolz> arigato: nice!
<arigato> ...ok that seems to be open to a completely improbable but not impossible bug
<arigato> if you start several threads, and then you have code produced by the jit that calls back sys.setrecursionlimit()
<arigato> the sys.setrecursionlimit() will reallocate all the thread's shadowstacks
<arigato> if you're very unlucky, thread B's new shadowstack ends up at the very same address as thread A's old shadowstack
<arigato> then the JIT has got a problem because it uses the shadowstack pointer across a call but only to detect if the shadowstack may need to be reloaded because it's from another thread
<arigato> ...ok the JIT does that only when it uses call_release_gil
<arigato> so you need Yet More Strange code to trigger that bug
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
marky1991 has joined #pypy
<mattip> since 3.8 release is very close, should we just skip 3.7 and jump to 3.8 as our next development target
<mattip> ?
jcea has joined #pypy
moei has joined #pypy
fryguybob has quit [Read error: Connection reset by peer]
fryguybob has joined #pypy
jcea has quit [Remote host closed the connection]
mattip has quit [Remote host closed the connection]
marky1991 has quit [Remote host closed the connection]
marky1991 has joined #pypy
phinxy has quit [Quit: Lost terminal]
<cfbolz> mattip: it would be an option, yes. We should discuss it
antocuni has quit [Ping timeout: 244 seconds]
jcea has joined #pypy
marky1991 has quit [Ping timeout: 244 seconds]
marky1991 has joined #pypy
marky1991 has quit [Remote host closed the connection]
marky1991 has joined #pypy
forgottenone has quit [Quit: Konversation terminated!]
Rhy0lite has quit [Quit: Leaving]
asmeurer_ has joined #pypy
marky1991 has quit [Ping timeout: 250 seconds]
marky1991 has joined #pypy
Zaab1t has joined #pypy
<energizer> where do i find the ast->bytecode compiler code?
<cfbolz> energizer: in pypy/interpreter/astcompiler
<energizer> cfbolz: thanks
Zaab1t has quit [Quit: bye bye friends]
asmeurer_ has quit [Quit: asmeurer_]
Garen_ has joined #pypy
niceplace has quit [Ping timeout: 250 seconds]
dansan_ has joined #pypy
Garen has quit [Ping timeout: 250 seconds]
glyph has quit [Ping timeout: 250 seconds]
dansan has quit [Ping timeout: 250 seconds]
glyph has joined #pypy
Garen_ has quit [Read error: Connection reset by peer]
niceplace has joined #pypy
Garen has joined #pypy
mattip has joined #pypy
<catern> on cffi 1.12, "a = ffi.new("foo*"); a[0]" and "b = ffi.from_buffer("foo[]", data); b[0]", the former gives me a CDataOwn and the latter gives me just a CData
<catern> is there anything I can do to get the second to be owning as well? :(
<catern> I was looking forward to this feature
<catern> the reason this is relevant to me is that I want to use ffi.from_buffer to turn a bytebuffer holding a single struct, into a CFFI object
<catern> I'm not using it on arrays, just single structs, and so it's a hassle to use [0] everywhere
<catern> maybe I can more directly ask: if I have a Python "bytes" object, and I want to interpret that as a single C struct, what's the best way to do that?
Ai9zO5AP has quit [Quit: WeeChat 2.4]
mattip has quit [Ping timeout: 248 seconds]
mattip has joined #pypy
antocuni has joined #pypy
adamholmberg has quit [Remote host closed the connection]
mattip has quit [Ping timeout: 252 seconds]
moei has quit [Quit: Leaving...]
mattip has joined #pypy
ebarrett has joined #pypy
adamholmberg has joined #pypy
marky1991 has quit [Read error: Connection reset by peer]
antocuni has quit [Ping timeout: 252 seconds]
mattip has quit [Ping timeout: 252 seconds]