-
-
Notifications
You must be signed in to change notification settings - Fork 526
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
Indirect Extra-Dependencies use dependency metadata from PyPI #2904
Comments
Thanks for the report. I'm able to reproduce the issue as described. Reading through the following report for context: pypa/setuptools#1260
👆instead, tox will recognize the package name in the optional dependencies and look up the named extra in the current pyproject. |
It looks like there is already partial support for recursive extras: tox/src/tox/tox_env/python/virtual_env/package/util.py Lines 20 to 21 in acadf36
But that code path isn't being taken in this case. |
Add regression test for issue tox-dev#2904
Expand extras that reference an extra of the same package name to respect local changes to package metadata. Fix tox-dev#2904
Expand extras that reference an extra of the same package name to respect local changes to package metadata. Fix tox-dev#2904
* test_package_pyproject: recursive extras Add regression test for issue #2904 * test_package_pyproject: when project deps has a self-referential extra the project depends on an extra defined within itself * Support recursive extras defined in pyproject.toml Expand extras that reference an extra of the same package name to respect local changes to package metadata. Fix #2904
Issue
We've run into the problem that tox when told to use the
tests
extra uses the Mypy pin from PyPI instead of the local package. Pinning tox to<4
fixes it.While researching this bug for this issue, I've found out that the problem is that tests is a second-level extra.
Using
tests-no-zope
works as expected (see below at repro).Ref: python-attrs/attrs#1070 (comment)
Environment
Output of running tox
Provide the output of
tox -rvv
:Minimal example
In an attrs checkout use this:
Gives you:
But:
Gives you:
The text was updated successfully, but these errors were encountered: