Skip to content
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

Moving users away using pep517 as a CLI tool #91

Closed
5 of 6 tasks
pradyunsg opened this issue Sep 9, 2020 · 19 comments · Fixed by #151
Closed
5 of 6 tasks

Moving users away using pep517 as a CLI tool #91

pradyunsg opened this issue Sep 9, 2020 · 19 comments · Fixed by #151

Comments

@pradyunsg
Copy link
Member

pradyunsg commented Sep 9, 2020

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.

Originally posted by @takluyver in #83 (comment) and edited by @pradyunsg

@matthewfeickert
Copy link

matthewfeickert commented Sep 14, 2020

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!).

@webknjaz
Copy link
Member

@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.

@pganssle
Copy link
Member

@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).

@pganssle
Copy link
Member

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."

@takluyver
Copy link
Member

The branch was my idea. I'm OK with reverting the change on master if people prefer.

@pganssle
Copy link
Member

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.

@pradyunsg
Copy link
Member Author

Okay, I'm picking this up and working on this, because sigh of course I have no self-control.

@takluyver
Copy link
Member

Thanks Pradyun for helping out with it.

@layday
Copy link
Member

layday commented Nov 3, 2020

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?

@webknjaz

This comment has been minimized.

@pradyunsg
Copy link
Member Author

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?

@FFY00
Copy link
Member

FFY00 commented Nov 4, 2020

I think given the last release this is reasonable.

FFY00 added a commit to FFY00/packaging.python.org that referenced this issue Nov 20, 2020
See pypa/pyproject-hooks#91

Signed-off-by: Filipe Laíns <lains@riseup.net>
FFY00 added a commit to FFY00/packaging.python.org that referenced this issue Nov 20, 2020
See pypa/pyproject-hooks#91

Signed-off-by: Filipe Laíns <lains@riseup.net>
FFY00 added a commit to FFY00/packaging.python.org that referenced this issue Nov 21, 2020
See pypa/pyproject-hooks#91

Signed-off-by: Filipe Laíns <lains@riseup.net>
@henryiii
Copy link
Contributor

Shouldn't this page be changed? https://setuptools.readthedocs.io/en/latest/build_meta.html 🤦

@pradyunsg
Copy link
Member Author

Yes it should! If you could filing an issue over at https://github.com/pypa/setuptools, that'd be great! ^.^

LeMyst added a commit to LeMyst/WikibaseIntegrator that referenced this issue Jan 17, 2021
LeMyst added a commit to LeMyst/WikibaseIntegrator that referenced this issue Jan 17, 2021
* Improve setup and use PEP517

* Create quick-pep517-test.yml

* Update quick-pep517-test.yml

* Remove test & fix typo

* Create test-use-pypa-build.yml

* Update test-use-pypa-build.yml

* Move from pep517.build to pypa/build

pypa/pyproject-hooks#91

* Update setup.cfg

* Update setup.cfg

Co-authored-by: Myst <1592048+Mystou@users.noreply.github.com>
@pradyunsg
Copy link
Member Author

Thanks to @hexagonrecursion, all the checkboxes except making the release are now checked. :)

hexagonrecursion added a commit to hexagonrecursion/setuptools that referenced this issue Feb 3, 2021
hexagonrecursion added a commit to hexagonrecursion/setuptools that referenced this issue Feb 8, 2021
hexagonrecursion added a commit to hexagonrecursion/setuptools that referenced this issue Feb 9, 2021
webknjaz added a commit to ansible/pylibssh that referenced this issue Apr 13, 2021
This is necessary because `pep517` is going to drop its experimental
CLIs eventually and the PyPA recomments using a new tool called
`build` instead. `pypa/build` is a CLI built around the APIs provided
by the `pep517` library.

Refs:
* pypa/pyproject-hooks#83
* pypa/pyproject-hooks#91
webknjaz added a commit to ansible/pylibssh that referenced this issue Apr 13, 2021
This is necessary because `pep517` is going to drop its experimental
CLIs eventually and the PyPA recomments using a new tool called
`build` instead. `pypa/build` is a CLI built around the APIs provided
by the `pep517` library.

Refs:
* pypa/pyproject-hooks#83
* pypa/pyproject-hooks#91
webknjaz added a commit to ansible/pylibssh that referenced this issue Apr 13, 2021
This is necessary because `pep517` is going to drop its experimental
CLIs eventually and the PyPA recomments using a new tool called
`build` instead. `pypa/build` is a CLI built around the APIs provided
by the `pep517` library.

Refs:
* pypa/pyproject-hooks#83
* pypa/pyproject-hooks#91
@pradyunsg
Copy link
Member Author

@takluyver Do you reckon you'd have time in the near future to cut a release of this package?

@takluyver
Copy link
Member

takluyver commented Sep 2, 2021 via email

@layday
Copy link
Member

layday commented Dec 20, 2021

Is pep517.meta not deprecated? It doesn't emit a warning.

@webknjaz
Copy link
Member

I think it should be.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants