-
-
Notifications
You must be signed in to change notification settings - Fork 947
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adopt PEP 517 #1683
Comments
|
Yeah, thanks @CaselIT ! I was actually about to write that too, but it never happened. Fixing now. |
Btw, I've tried setuptools pep517 mode for sqlalchemy, and it seems to execute the setup.py as when running in non-pep 517 mode, so it respects the env arguments and/or fallback if the compiler or cython is not found. |
I meant that while at it, it would be great if we could encapsulate cythonization as part of the PEP-517 build system, i.e. the user would only have to Thoughts? |
I think you can do something like this with setuptools that works with or without pep517. Take a look at the setup.py of sqlalchemy. It first tries to build the c extension and fallback it that fails Using pep517 allows a package to specify a list of requirements to install your package, cython could be one of them, I guess. I have not tried it so I may be wrong. |
I've tried to adapt the sqlalchemy setup to falcon here: Should I open a draft pr so we can discuss / experiment it there? |
If we could get this to work, then hopefully we won't need the --no-build-isolation hack |
You can add the pyproject.toml to the ignore list when distributing to pypi. |
Sqlalchemy currently is doing that, since pep517 seems still broken in some cases. Like in debian unstable the system pip has a broken pep517 module. |
An alternative to this may be to use a ci to build wheels for the various oses. For reference this is the current version of the action https://github.com/CaselIT/sqlalchemy/blob/36b3100b07e83866d8d5e6fa211c05c0aaacdf9c/.github/workflows/create-wheels.yaml |
Resolved fixed in #1709 |
It is getting increasingly annoying to install Falcon with Cython support using anything but the official stable release wheels.
At some point we'll need to switch the Falcon package build system to use PEP 517.
A non-exhaustive list of build tools that could be used
scons
user?The text was updated successfully, but these errors were encountered: