pyproject-hooks
pyproject-hooks copied to clipboard
Moving users away using pep517 as a CLI tool
This is the issue for tracking our plans for nudging users to transition away from using pep517 from the CLI. These changes would go into the inc-pep517.build
branch and not the default branch.
- [x] Revert #83 (see #96)
- [x] Point to python-build in the README
- [x] {maybe} Point to python-build from issue templates
- [x] Add a deprecation warning when
pep517.build
is used - [x] Add a deprecation warning when
pep517.check
is used - [ ] Release a version with the warning - possibly after a bit of a wait, to give people a chance to start moving to python-build and flush out any bugs there.
Originally posted by @takluyver in https://github.com/pypa/pep517/pull/83#issuecomment-689525025 and edited by @pradyunsg
Add a deprecation warning when
pep517.check
is used
~~Apologies in advance is this is covered in an Issue already and I've failed to find it, or if this should be directed to the python-build
Issues and not here (more than happy to delete this and move it to the appropriate spot), but as it isn't mentioned in PR #83, are there plans to also make an equivalent of pep517.check
available in the build
CLI API?~~ Moved to https://github.com/FFY00/python-build/issues/105 given @webknjaz's suggestion (thanks!).
@matthewfeickert I think this question should belong to the python-build tracker. pep517 is going to get rid of the CLI at some point as it wasn't meant to be an official public API. OTOH since python-build is a wrapper around pep517, it's probably reasonable to have check there too.
@pradyunsg What is the goal with this old vs. new branch thing? Do you have any idea what the deprecation period is going to be? I was a little surprised that y'all decided to branch instead of revert.
I will also note that I personally think that while it's a good idea to start incrementally moving people to python-build
, the current release version is 0.0.4. It needs a lot of love to get to be really stable — note that it accidentally doesn't work with flit
or any other non-setuptools
projects, and there's a good chance we'll have to change the console script entry point.
I definitely think it should be in the PyPA namespace, but it would be very nice if we could do a much more gradual migration. I'm not even confident that a deprecation warning would be appropriate at this point because while I encourage people to be early adopters, there's a good chance it will leave a bad taste in users' mouths if we start pushing them towards python-build
and it ends up causing a lot of pain (whereas I would hope that if we try to get some slightly wider natural adoption first, we can work out a lot of the kinks and for most people it will be a trivial change to the actual build script with no observable effect).
I'll note that I do think it's fair to stop improving pep517.build
, so changes to the issue template or the documentation saying something to the effect of, "We've frozen pep517.build
for now, all improvements will go to python-build
; this interface will be deprecated once python-build
is stable enough."
The branch was my idea. I'm OK with reverting the change on master if people prefer.
The branch was my idea. I'm OK with reverting the change on master if people prefer.
To clarify my position a bit, I don't really care what branching and maintenance strategy you use, it just seems that maintaining a branch with a deprecation warning in it tends to indicate that the timeline would be pretty rapid — presumably you aren't going to stop cutting releases from master for an extended period of time.
I think that — to the extent that it is possible to do so — at least pep517.build
should be maintained without an explicit deprecation warning in the code for a few months if not longer to give build
a time to stabilize and grow organically. I think it would be preferable to keep pep517.build
working (though not necessarily maintained or updated) for a year.
At the end of the day while I think it's fair to say that no support for this was ever really promised because it was considered "experimental", for better or worse no one else stepped up until now, and giving python-build
a bad reputation by forcing people onto it before it's "battle hardened" in any way is probably not going to help matters.
Okay, I'm picking this up and working on this, because sigh of course I have no self-control.
Thanks Pradyun for helping out with it.
Quite a bit of work's gone into build and I think it's more mature now as an env builder than pep517 was. Should the deprecation warnings be added?
- [x] Point to python-build in the README & possibly issue templates (thanks @webknjaz)
@pradyunsg looks like you've marked this as done but there's no template chooser @ https://github.com/pypa/pep517/issues/new
Quite a bit of work's gone into build and I think it's more mature now as an env builder than pep517 was. Should the deprecation warnings be added?
Sounds fair -- @FFY00 you reckon it's OK to start telling users of pep517
's CLI to switch to python-build?
I think given the last release this is reasonable.
Shouldn't this page be changed? https://setuptools.readthedocs.io/en/latest/build_meta.html 🤦
Yes it should! If you could filing an issue over at https://github.com/pypa/setuptools, that'd be great! ^.^
Thanks to @hexagonrecursion, all the checkboxes except making the release are now checked. :)
@takluyver Do you reckon you'd have time in the near future to cut a release of this package?
It will probably be a few days before I get to it, but any pypa committer should be able to make a release (see RELEASE.rst).
On Tue, 31 Aug 2021, 11:38 Pradyun Gedam, @.***> wrote:
@takluyver https://github.com/takluyver Do you reckon you'd have time in the near future to cut a release of this package?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/pypa/pep517/issues/91#issuecomment-909114966, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACQB5PXAEJVOQK3DTCPUI3T7SWJRANCNFSM4RCTEPSQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
Is pep517.meta
not deprecated? It doesn't emit a warning.
I think it should be.