<phlebas>
argh, completely forgot about the meeting, i was happily hacking away...
<phlebas>
do we have discussion notes?
<phlebas>
also, was fangerer there? we actually wanted to discuss something about the HPyContext pointer, if he wasn't there, I'll put it in writing :)
<mattip>
yes and yes, and we discussed the context, the conclusion was "seems reasonable, need to try it and benchmark cpython"
<antocuni>
fangerer, phlebas: what is the easiest way to download/try a snapshot of graalpython with hpy?
<phlebas>
those are the "standalone" packages that don't also ship a full JVM environment
<phlebas>
these builds are expected to be a bit slower than the full releases on the jvm, but i guess that's fine
<antocuni>
do I just need to untar and run?
<antocuni>
I answer myself: yes :)
<phlebas>
:)
<antocuni>
I need some help from python packaging experts
<antocuni>
so now our setup.py specifies packages=['hpy.devel'], include_package_data=True
<antocuni>
I would like to also include hpy.debug in the released version
<antocuni>
but if do packages=['hpy.devel', 'hpy.debug'], include_package_data=True, I also get hpy/debug/src/*.[ch] in the wheel, which I don't want
<antocuni>
similarly, if I do include_package_data=False, hpy/devel/*.[ch] are NOT included
<antocuni>
what I would like is:
<antocuni>
1. hpy/devel/*.[ch] should always be included both in sdist and wheel
<antocuni>
2. hpy/debug/*.py should always be included
<antocuni>
3 hpy/debug/src/ should be included only in the sdist
<antocuni>
I *think* I need to play with MANIFEST.in but I am no longer sure of what is the correct approach nowadays
<antocuni>
I give up for now
<antocuni>
it seems to be ridiculously hard to get it right in all possible situations, e.g. building from checkout, building from sdist, installing from wheel, etc.
<antocuni>
there are at least MANIFEST.in, include_package_data, package_data, data_files, all of which do slightly different things
<antocuni>
I think that the wheel for hpy==0.0.2 will also include unnecessary C files, but too bad
<antocuni>
please try to pip install and play with it to check that everything works as expected
* antocuni
off for now
<ronan>
progress on the ujson segfault: it happens because cpyext, and specifically rawrefcount, isn't initialised
<antocuni>
ronan: that's weird though
<antocuni>
by looking at the source code, it seems that rawrefcount is initialized by State.build_api, which is NOT_RPYTHON and it's called at objspace creation time
<antocuni>
so it should be automatically initialized