-
Notifications
You must be signed in to change notification settings - Fork 3.2k
Closed
Closed
Copy link
Labels
C: PEP 517 impactAffected by PEP 517 processingAffected by PEP 517 processingtype: bugA confirmed bug or unintended behaviorA confirmed bug or unintended behavior
Description
Description
There is an issue when a project has a build dependency for which a pre-release version is available and which is stated both in pyproject.toml
and setup_requires
in setup.py
.
In this case, trying to install it from source with pip
(either from the source directory or from a tarball) with the --pre
option fails (see below for the output).
This issue arises with cython
for which an alpha version is available.
This issue does not occur:
- When removing the failing dependency from either
pyproject.toml
orsetup_requires
(which is what I'll do). - Without the
--pre
flag - When also adding
--no-build-isolation
Expected behavior
I'm not sure what is the expected behavior, but this was working with pip
v21.1.3 and previous and breaks with pip
v21.2.x
pip version
21.2.1 and 21.2
Python version
3.7
OS
macos
How to Reproduce
Create a project in a testpip
directory with:
pyproject.toml
:[build-system] requires = ["setuptools", "wheel", "Cython"] build-backend = "setuptools.build_meta"
setup.py
:setup( name="testpip", version="0.0.1", py_module=["testpip"], setup_requires=["Cython"], )
testpip.py
Run pip install . --pre
from testpip/
Output
pip install . --pre
Processing /testpip
DEPRECATION: A future pip version will change local packages to be built in-place without first copying to a temporary directory. We recommend you use --use-feature=in-tree-build to test your packages with this new behavior before it becomes the default.
pip 21.3 will remove support for this functionality. You can find discussion regarding this at https://github.com/pypa/pip/issues/7555.
Installing build dependencies ... done
Getting requirements to build wheel ... done
ERROR: Some build dependencies for file:///testpip conflict with the backend dependencies: Cython==3.0.0a9 is incompatible with Cython.
### Code of Conduct
- [X] I agree to follow the [PSF Code of Conduct](https://www.python.org/psf/conduct/).
Metadata
Metadata
Assignees
Labels
C: PEP 517 impactAffected by PEP 517 processingAffected by PEP 517 processingtype: bugA confirmed bug or unintended behaviorA confirmed bug or unintended behavior