<kenaan>
stevie_92 cpyext-gc-cycle ec43b45f7cc4 /rpython/memory/gc/: Added support for untracked objects in rawrefcount tests Fixed a bug in incminimark when using rawrefco...
<tos9>
antocuni: so -- for later also, I've been playign with trying to get https://github.com/joerick/cibuildwheel working -- probably we should think about that too?
<antocuni>
tos9: cibuildwheel looks interesting, I was not aware of it
<antocuni>
indeed, would be nice if it supported pypy as well
<tos9>
antocuni: step 1 is we need an alternate docker image
<tos9>
which you already have
<antocuni>
yes
<tos9>
(and then literally I got called into meetings and didn't get a chance to push and run that yet :P)
<tos9>
also it works locally :)
<antocuni>
looking at PR #135, adding pypy support using my image should be easy
<antocuni>
my image installs pypys in places like /opt/pypy/pypy2.7-7.7.1, but also symlink to /opt/python/pp271-pypy_41/
adamholmberg has quit [Ping timeout: 246 seconds]
adamholmberg has joined #pypy
* tos9
nods
jcea has joined #pypy
squeaky_pl has joined #pypy
<squeaky_pl>
I have a question about vmprof. I am profiling an application on CPython that heavily uses gevent, I would like to get my profile only local to the gevent thread I am looking at (when vmprof tracing was started) and not see things that happen when it switches to something else, as in I would like to treat it as it was blocking. This is for the sake of controlling number of frames appearing because with a lot of concurrent threads this can be quite
<squeaky_pl>
overwhelming and prevent you from reasoning about the flow. What's the best way to accomplish this?
tsaka__ has quit [Ping timeout: 258 seconds]
<antocuni>
squeaky_pl: vmprof takes samples of the process stack at "random" times during the execution, so it has no notion of greenlets
<antocuni>
so, there is no builtin way to tell it "discard this stacktrace"
<antocuni>
however, a simple workaround is to start each green thread from its own python function: this way, when you open the vmprof profile you should see all the python functions/green threads at the top of the flamegraph
<antocuni>
and you can click on any of them to view the details
<squeaky_pl>
antocuni, I am actually already doing it.
<squeaky_pl>
antocuni, I just realized, yes it's enough, is there a way in vmprofshow i can zoom into specific function?
<antocuni>
I never use vmprofshow, so I don't know :(. I don't think so
tsaka__ has joined #pypy
<antocuni>
it should be easy to add this option though; a vmprof file basically contains a list of stacktraces, you just need to filter out the non-interesting ones before proceeding
<squeaky_pl>
yes, I might think about it.
xcm has quit [Remote host closed the connection]
<antocuni>
squeaky_pl: while we are at it, I was thinking that it would be a good idea to make your portable pypy builds more official (e.g., I am using them for my manylinux image)
<antocuni>
would you be ok with that? E.g. by moving the repo to github.com/pypy ? (provided that I somehow manage to get access to it :))
xcm has joined #pypy
<squeaky_pl>
antocuni, it would be fine. No problem with that.
<antocuni>
cool
<antocuni>
I'll write an email to pypy dev about that
<tos9>
on portable pypy -- as someone having run exclusively portable pypy in prod for years, big +1 from me :)
Garen has quit [Read error: Connection reset by peer]
Garen has joined #pypy
tsaka__ has quit [Ping timeout: 258 seconds]
squeaky_pl has quit [Quit: Leaving]
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
alawrence has joined #pypy
<arigato>
antocuni: as I said, I don't think I can add you to https://github.com/orgs/pypy/people; at least I didn't figure out how to do that
<alawrence>
mattip: I have started looking at issue 2999. Do you have any more details about what is involved there?
<antocuni>
arigato: ah sorry, I missed the message in which you already said that. I suppose you don't even have idea of who can?
<arigato>
probably anybody who is listed as "owner" instead of "member" in that page
<antocuni>
arigato: I don't see any owner/member distinction
<antocuni>
maybe I have a different view because I am *not* a member
tsaka__ has joined #pypy
<cfbolz>
antocuni: I've added you
<cfbolz>
Also I made Armin an owner
<antocuni>
thanks!
<antocuni>
I confirm that the people page now looks very differently than before :)
<antocuni>
it's also weird that the page for general public lists only 6 people (arigo, benjaminp, cfbolz, fijal, tav, and thepian), while the one for logged-in users lists 11 people
<arigato>
antocuni: sorry about that, it didn't occur to me that it would look different :-)
<arigato>
some people are marked "private", I guess it makes sense that they're not publicly known then
<antocuni>
ah I see
<antocuni>
so apparently as a owner, I can change someone else status from public to private, but not viceversa
<antocuni>
also, related question: is any of us in charge of the "pypy" user on docker hub? https://hub.docker.com/u/pypy
Arfrever has joined #pypy
<cfbolz>
antocuni: no, I don't think so
<antocuni>
I wrote some info/docs about the manylinux images:
<antocuni>
simpson: not sure to understand what is nix and what it has to do with manylinux, but I am glad it helps :)
<simpson>
antocuni: Oh! I'm not sure how to introduce Nix properly. It's a build system. Maybe imagine Conda, but not bad
<simpson>
Using nixpkgs' dockerTools or `FROM nixos/nix` in Dockerfiles is like manylinux, but allows arbitrary package composition.
<antocuni>
and your plan is to provide a pypy recipe/package/whatever for that?
<simpson>
PyPy's already available in nixpkgs, so it's really just about corporate friction.
<antocuni>
I see
<simpson>
(Nix also provides a portable PyPy, living in /nix instead of /opt, and there's a nix-bundle tool for converting that into a standalone executable. It's a cool ecosystem.)
<antocuni>
how does this portable pypy compares to our portable pypys?
<simpson>
It gets various properties from Nix for free. The build is done in an isolated sandbox, and it only relies on a whitelist of build inputs.
<simpson>
What's interesting to me is that we can, in the Nix expression language, compose PyPy with various other non-Python packages, and put the resulting environment into a Docker-compatible container, or into a development shell.
<kapilt>
out of curiosity is it common/known that pip/dependency resolution takes sigificantly longer with pypy? i was adding pypy into a ci system and noticed it was taking significantly longer than other python runtimes, its seems to be specific to the tox/pip dependency graph calculation
<kapilt>
i guess it could just be wheel reuse on a few packages with extensions (cryptography, etc)