🔧 MAINTAIN: Use pyproject-build for package deployment#177
🔧 MAINTAIN: Use pyproject-build for package deployment#177chrisjsewell merged 3 commits intoexecutablebooks:masterfrom
pyproject-build for package deployment#177Conversation
Codecov Report
@@ Coverage Diff @@
## master #177 +/- ##
=======================================
Coverage 96.08% 96.08%
=======================================
Files 61 61
Lines 3273 3273
=======================================
Hits 3145 3145
Misses 128 128
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report at Codecov.
|
|
Thanks @hukkin, didn't know about this Hey @pradyunsg, would you mind quickly confirming that this is now the "canonical" way to build packages? (before I roll it out to other packages) |
|
I'm not pradyunsg 😄 , but the "canonical" replacements for direct setup.py invocations can be found in the Paul Ganssle blog post I linked (the table at the very bottom). With PEP660 being a thing now (basically editable installs for PEP 517 packages) we could now also remove the setup.py since we only left it there for |
Oh its not that I don't trust you lol, but pradsyung is a maintainer of pip, so it's nice to "hear it from the horse's mouth", before I start changing this across all my many repos 😅
yeh no, I tried this in some other repos (like https://github.com/aiidateam/archive-path), but there is a really annoying development issue for me; you have to use tox |
Hmm, I suspect you may have issues in the future with further deprecations/removals related to legacy builds. And tox 4 will default to isolated builds. Maybe you want to configure tox to test source instead of built package ( |
well I'll cross that bridge when I come to it lol; I'm sure I'm not the only one using a workflow including tox+vs code |
|
Yea, using build instead of setup.py directly is a good idea. It also makes sure that your wheels are built from the sdist, which is a good thing. |
|
thanks, just wanted to double-check! |
pyproject-build for package deployment
it's deprecated https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html