ariovistus / pyd

Interoperability between Python and D
MIT License
159 stars 32 forks source link

New release for python3.8 support #137

Closed andre2007 closed 3 years ago

andre2007 commented 4 years ago

Since release v0.13.1 support for python 3.8 was added. https://github.com/ariovistus/pyd/compare/v0.13.1...master

Could you please create a new release? Thanks.

yazd commented 4 years ago

New release with 3.8 support would be appreciated.

fccoelho commented 3 years ago

@ariovistus, any hope for this to be done soon? Can we help in any way? is it simple to add this support for newer versions? I could make a PR...

fccoelho commented 3 years ago

By the way, I decide to try the version from the master branch and got this error when building:

fccoelho@fccoelho-MACH-WX9 ~/D/S/corpushashD (master)> dub add-local ~/Downloads/pyd/
Registered package: pyd (version: 0.13.1+commit.5.g93d8235)
fccoelho@fccoelho-MACH-WX9 ~/D/S/corpushashD (master)> dub upgrade pyd
Upgrading project in /home/fccoelho/Documentos/Software_projects/corpushashD
fccoelho@fccoelho-MACH-WX9 ~/D/S/corpushashD (master)> dub build -f
Invalid source/import path: /home/fccoelho/Downloads/pyd/infrastructure/util/
Performing "debug" build using dmd for x86_64.
pyd 0.13.1+commit.5.g93d8235: building configuration "python38"...
corpushashd 0.3.2: building configuration "application"...
Linking...
Invalid source/import path: /home/fccoelho/Downloads/pyd/infrastructure/util/

am I missing some key step in the build?

fccoelho commented 3 years ago

the path pyd/infrastructure/util/ does not exist, but pyd/infrastructure/pyd/util/ does... So maybe this needs to be fixed...

ariovistus commented 3 years ago

curious. i renamed util/ to pyd/util recently and thought I got everything.

ariovistus commented 3 years ago

So there are a couple minor issues that make me hesitant to make a release. the first is the test suite is failing on a linker test that suggests the deimos headers are off somewhere for 3.8. which might not be a big deal. The second is the .lib files in infrastructure/windows. I have forgotten how to generate them. They are necessary for linking to python.dll or whatever on x86 windows with dmd.

andre2007 commented 3 years ago

@ariovistus if you can find out the details about the lib files you might use github Actions for the compilation. Therefore it is documented and done automatically for further releases.

ariovistus commented 3 years ago

ok, sorta remember it now, there's a tool called implib. left some notes at https://pythond.atlassian.net/wiki/spaces/pyd/pages/edit-v2/1784578049? But something seems to have changed since the last time i did this, symbols that used to be _PyTuple_Size are now PyTuple_Size. I imagine the windows python compile is different somehow, but i wouldn't know where to start. somewhat tempted to deprecate 32bit python/windows/dmd.

fccoelho commented 3 years ago

+1 to deprecate 32bit python/windows/dmd.

andre2007 commented 3 years ago

Thanks for the new release.

fccoelho commented 3 years ago

Thanks! I have rebuilt my projects for Python38 without problems!