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

Remove setup_requires and tests_require and package_index #2823

Open
jaraco opened this issue Oct 22, 2021 · 5 comments
Open

Remove setup_requires and tests_require and package_index #2823

jaraco opened this issue Oct 22, 2021 · 5 comments

Comments

@jaraco
Copy link
Member

jaraco commented Oct 22, 2021

It's time to remove easy_install and all the things it depends on, including setup_requires, tests_require, package_index.

Use of setup_requires has been discouraged for some time. Let's get it officially deprecated and removed.

@aragilar
Copy link

aragilar commented Nov 3, 2021

Is there some way to set the return values of get_requires_for_build_wheel and get_requires_for_build_sdist to replace usage of setup_requires (e.g. for dynamic dependencies which won't work under PEP 518)?

@jaraco
Copy link
Member Author

jaraco commented Nov 4, 2021

There is not currently, but that seems like a good idea. Maybe file a feature request if there isn’t one already. I’d like to collect some cases and design options.

@anntzer
Copy link

anntzer commented Nov 29, 2021

Would it be possible for setup_requires removal to be postponed until after PEP660 support is implemented (including for non-pure-python packages, as requested in #2816 (comment))? Otherwise, there would be a gap during which there would be no way (well, other than pinning setuptools) to write editably-installable packages with build-time dependencies.
Thanks :)

@jaraco
Copy link
Member Author

jaraco commented Nov 30, 2021

Would it be possible for setup_requires removal to be postponed until after PEP660 support is implemented (including for non-pure-python packages, as requested in #2816 (comment))? Otherwise, there would be a gap during which there would be no way (well, other than pinning setuptools) to write editably-installable packages with build-time dependencies.
Thanks :)

If you’re right, then yes. Editable installs are very important and there must be a transition to a working replacement.

In my testing, however, pip does install build-time dependencies including those specified for build wheel or build sdist, which resolves from setup requires. I’ll do some more testing and confirm again, but I believe setup-requires is honored for editable installs by that fall back to setup.py develop.

@anntzer
Copy link

anntzer commented Nov 30, 2021

Yes, setup_requires are currently honored (and installed if needed) by pip for editable installs. My fear is that setup_requires get removed from setuptools and therefore also by pip, with the intent of forcing the use of pyproject.toml to specify build-time dependencies; as far as I understand (but I may well be mistaken, please let me know in that case), pyproject.toml+setuptools is currently incompatible with editable installs.

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

No branches or pull requests

3 participants