ariovistus / pyd

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

PydPythonExtension #97

Closed John-Colvin closed 6 years ago

John-Colvin commented 6 years ago

What is it really for? Should it always be set when building a python extension?

The reason I ask is that it is involved in some python 3 parts of the code, but dcompiler.py only sets it for python 2. Also, it's never been set in the dub.json.

ariovistus commented 6 years ago

this is for when you are building a python extension with pyd (e.g. main method is in python, d artifact is a shared library), as opposed to embedding python in d (main method is in d). dub isn't set up to build python extensions, so it shouldn't be set there unless that changes. dcompiler.py sets it whenever the python 2 flags are used, which is for both python 2 and python 3

John-Colvin commented 6 years ago

Thanks for the info.

I've been building python extensions using pyd & dub for years on various projects, it seems to work fine. Are there any particular things you would be concerned that it isn't handling correctly (other than PydPythonExtension)?

ariovistus commented 6 years ago

Haven't had my hands in pyd's guts for a while, but I can't think of anything. I guess linking could be an issue, but if it works for you I'll happily not think about that bugbear