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
CrazyPython has joined #pypy
CrazyPython has quit [Client Quit]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
speeder39_ has joined #pypy
BPL has quit [Quit: Leaving]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
dddddd has quit [Remote host closed the connection]
_whitelogger has joined #pypy
tsaka__ has joined #pypy
mattip has joined #pypy
<mattip> an interestng tool layered on top of perf to make some sense of performance bottlenecks (only on specific cpus and linux)
<cfbolz> mattip: morning!
<mattip> hi. Going well - we may have found the problem with hg-git and the pypy subrepo,
<mattip> someone hand edited .hgsub to comment out lines which hg-git was not prepared to handle
<cfbolz> Cool!
_whitelogger has joined #pypy
rubdos has quit [Ping timeout: 240 seconds]
rubdos_ has joined #pypy
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
mattip_ has quit [Ping timeout: 245 seconds]
mattip_ has joined #pypy
<mattip> sent a mail to pypy-dev about starting a release cycle, help is welcome
<mattip> especially someone with a mac, if they could figure out why default can run lib_pypy/_ssl_build.py and py3.6 cannot, and can tell me what version of libressl we should be using
<mattip> (we download one and ship it with pypy on macos)
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
<marmoute> mattip: actually, on this build bot the build step if failing…
<marmoute> mattip: HGDEMANDIMPORT=disable
tsaka__ has quit [Ping timeout: 245 seconds]
antocuni has joined #pypy
tsaka__ has joined #pypy
the_drow has joined #pypy
<the_drow> The REPL just crashed on me...
<the_drow> This is PyPy 7.1.0-beta0 with GCC 8.2.0
<the_drow> Python 3.6
<the_drow> I'm going to try pypy 7.1.1 and see if that makes a difference
<tos9> mattip_: what am I trying to figure out here, sorry -- just try to execute that file on the 2 branches?
<mattip> tos9: yes, then see what <pypy> -c "import ssl; print(ssl.OPENSSL_VERSION)" gives you
<mattip> at least on pypy2 where it should work
<tos9> the pypy3 nightly gives... AttributeError: cffi library '_pypy_openssl' has no function, constant or global variable named 'Cryptography_HAS_ECDH'
<tos9> That's what we're tryign to fix?
<mattip> right. What I don't understand is what is the difference with pypy2 where that passes
<tos9> Uh that was also with homebrew openssl by the way.
<tos9> Without homebrew openssl I got failures looking for the openssl headers.
<tos9> mattip: OK yeah but that succeeds on pypy2
<tos9> And gives me the openssl I told it to use ('OpenSSL 1.0.2s 28 May 2019', which is the current version in homebrew)
<mattip> cool. So homebrew uses OpenSSL not libressl at all
<mattip> maybe we should just do that
<mattip> do you have any idea where the canonical build of openssl 1.0.2s for macos is?
<tos9> they seem to use openssl on the built pypy2 but not pypy3
<tos9> mattip: on the filesystem, or you mean where does homebrew build openssl?
<tos9> (oh, interesting, looks like homebrew is also migrating formulae slowly to openssl 1.1, but is keeping that in a separate formula)
<mattip> they build from source on the local machine, or do they download a binary from somewhere to the machine?
antocuni has quit [Ping timeout: 244 seconds]
<tos9> mattip: either unfortunately
<tos9> there are "bottles", which are the prebuilt binaries, so if your machine matches an available bottle you get that
<tos9> if it doesn't, you build from source locally
<tos9> looks like both my pypys came from bottles
<mattip> could we reuse the bottle or some part of it in our pypy/tool/build_cffi_imports.py
<mattip> instead of downloading-and-patching libressl?
<mattip> hmm. This https://wiki.openssl.org/index.php/Binaries seems to point a site for macos
<tos9> ahhh you're looking for a remote bottle of *openssl*?
<tos9> sorry, thougth you were asking about how pypy itself gets built on homebrew
<tos9> mattip: it's a separate (crypto-related) issue as to whether to use libressl or openssl no?
<mattip> my answer would be "whatever homebrew does for cpython". Could you check that?
<tos9> mattip: Looks like they use openssl indeed...
<tos9> (1.1.x for cpy3 and 1.0.x for cpy2)
dddddd has joined #pypy
<mattip> good. Now we need a build of openssl
<mattip> or I guess we can download-and-build, like the current script does.
<mattip> tos9: so it would be helpful, if you have some cycles to try to modify tool/build_cffi_imports.py for pypy2 to use openssl-1.0.2s
<mattip> there are links here https://www.openssl.org/source/
<tos9> mattip: yep can give that a shot I think
<tos9> Where does this thing run? On the build salve?
<tos9> *slave
<tos9> Is it reasonable to just use homebrew there?
<mattip> it is totally after translation, so you can even run it from a pypy2 installation
<tos9> i.e. install openssl with homebrew on the build slave and build against that
<mattip> <pypy2> <path>/<to>/pypy/tool/build_cffi_imports.py
<mattip> it downloads and compiles openssl, builds and links the _ssl module with it
<mattip> I think all that is needed is to change the link/hash around line 32, and
<mattip> skip the "patching" step around line 185
<mattip> to answer your question: it runs as part of the last steps of the build
<mattip> and again as part of the "comprssion" step
<mattip> we could put homebrew into the build_cff_imports.py, but I think that would be overkill for what we need
<tos9> mattip: I think what I meant was "why doesn't this script just assume someone should have openssl installed externally via homebrew, instead of fetching it itself", not that it should install homebrew itself
<tos9> but... whatever, first -- looks like it doesn't just run directly for me quite yet
<tos9> and first I need to figure out hg sigh... how do I delete a branch
<tos9> or get it to not push this branch remotely
<tos9> or tell push to only push one branch
<tos9> ok hg push takes -b..
<mattip> if u use thg, you can right click on the base commit and mark it "private", or you can use the gui "detect outgoing changes" and then it will shou you what it wants to push
<mattip> mark only the ones you want and push them
<mattip> tos9: cool, thanks
<tos9> mattip: I didn't do anythign yet :)
kipras has joined #pypy
kipras has quit [Read error: Connection reset by peer]
antocuni has joined #pypy
mattip has quit [Ping timeout: 258 seconds]
ronan has joined #pypy
<cfbolz> ronan: yes
<cfbolz> That's what triggered me digging
<ronan> cfbolz: AFAICT CPython 3.8 deals with missing POP_BLOCK correctly, but not with missing END_FINALLY
<cfbolz> ronan: right
<ronan> but they err on the side of allowing wrong jumps :-(
jcea has joined #pypy
<ronan> I guess the only way to make it correct is to reconstruct exactly the cases where the compiler omits some opcodes
jcea has quit [Remote host closed the connection]
tsaka__ has quit [Ping timeout: 245 seconds]
oberstet has joined #pypy
ronan has quit [Ping timeout: 246 seconds]
BPL has joined #pypy
lesshaste has joined #pypy
jcea has joined #pypy
<tos9> mattip_: OK that seems to "work" at least inasmuch as giving the new version now correctly: https://bpaste.net/show/D8LI
<tos9> (the 2 commits I pushed, which like you said just change those lines)
<tos9> mattip_: If I kick a buildbot on that branch, based on what you said before I assume it should try to run the tests with that openssl version right?
<marmoute> mattip_: exporting [==============================================================================> ] 65357/97404 3h12m
antocuni has quit [Ping timeout: 245 seconds]
tsaka__ has joined #pypy
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
speeder39_ has quit [Quit: Connection closed for inactivity]
ajlawrence has joined #pypy
Viech has quit [Ping timeout: 246 seconds]
oberstet has quit [Remote host closed the connection]
tsaka__ has quit [Ping timeout: 268 seconds]
dnshane has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
dnshane has joined #pypy
ronan has joined #pypy
ekaologik has joined #pypy
CrazyPython has joined #pypy
rubdos_ is now known as rubdos
CrazyPython has quit [Remote host closed the connection]
CrazyPython has joined #pypy
CrazyPython has quit [Remote host closed the connection]
CrazyPython has joined #pypy
CrazyPython has quit [Ping timeout: 258 seconds]
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
CrazyPython has joined #pypy
mvantellingen has quit [*.net *.split]
mvantellingen has joined #pypy
CrazyPython has quit [Client Quit]
ekaologik has quit [Quit: https://quassel-irc.org - Komfortabler Chat. Überall.]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
ajlawrence has quit [Remote host closed the connection]
tsaka__ has joined #pypy
andi- has quit [Remote host closed the connection]
andi- has joined #pypy
the_drow_ has joined #pypy
the_drow has quit [Ping timeout: 245 seconds]
Viech has joined #pypy
Viech has quit [Changing host]
Viech has joined #pypy
speeder39_ has joined #pypy
dddddd has quit [Remote host closed the connection]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
BPL has quit [Quit: Leaving]