Comments (10)
@pradyunsg I could create such a test in #12709. Feel free to pick it.
from pip.
pkg_resources comes from setuptools and this is key related issue, pypa/setuptools#3586.
The pip new packaging version may have made this more likely issue then before although I think fix probably should be in setuptools still.
from pip.
Probably relevant (cc @hmc-cs-mdrissi):
I strongly suspect that error is related to hyphen/underscore normalization in extra names (mariadb-connector vs mariadb_connector) and pkg_resources vs packaging/pip having inconsistent normalization logic. I'd guess packaging upgrade may have touched extra normalization logic and I've seen inconsistencies across pkg_resources normalization/pip in past elsewhere as well with extras having hyphens.
edit: The last time I looked into this error my initial thought was fix seems best placed in pkg_resources itself and it doing lookups in normalized aware manner.
from pip.
Preparing metadata (setup.py) ... done
Huh, it looks like you have some global configuration instructing pip to not use PEP 517 style isolated builds and there's some statefulness involved as well.
The pip new packaging version may have made this more likely issue then before although I think fix probably should be in setuptools still.
Nah, setuptools isn't implicated here: we deal with the fact that pkg_resources isn't PEP 685 compliant yet via 5cc540b and related commits.
from pip.
@edgarrmondragon Could you also run with -vvv
in addition to --debug
? It might be easier to post the output to https://gist.github.com/new and link to that.
from pip.
@edgarrmondragon Could you also run with
-vvv
in addition to--debug
? It might be easier to post the output to https://gist.github.com/new and link to that.
@pradyunsg I've added the --debug -vvv
output as files to the original comment. Let me know if a gist is still preferable.
from pip.
This seems to arise out of some inconsistency in setuptools which generates Provides-Extra: mariadb-connector
in PKG-INFO
but mariadb_connector
in requires.txt
. And pkg_resources.safe_extra()
is not converting one to the other as it preserves -
. So 5cc540b is probably not doing what you think it does, @pradyunsg ?
from pip.
Can we build a test for this failure? I've tried to reproduce this and been unsuccessful thus far.
from pip.
OK, managed to reproduce it by using the sdist!
@sbidoul Thanks for that pointer! It turns out, the mapping that pkg_resources
uses internally (for _dep_map
) is based on requires.txt
and the logic was loading the extra names from the METADATA
file -- we can use an attribute on the Distribution object to get the keys of that mapping so that we aren't coupled/fragile against this failure now; or in the future.
from pip.
Ah, I see 77533d8
(#12709) now! I'll add that into my PR.
from pip.
Related Issues (20)
- ERROR: Fatal Internal error [id=1] HOT 4
- Improve the release process to enable trusted publishing HOT 1
- Improve UX and Performance of Install step HOT 5
- Show the detailed error when facing invalid requirements HOT 6
- pip-24.1b1 doesn't tolerate anymore a contraint like 'python-hdf4>=0.10.0+dummy' HOT 5
- pip --no-input will still prompt for git and ssh
- Ongoing CI issues on `main` HOT 8
- pip install error any package, but can work HOT 1
- Suggest a pip upgrade on UnsupportedWheel if the upgrade check is disabled HOT 3
- Installing dependencies from `pyproject.toml` in the Docker build phase takes very long HOT 6
- Autocomplete failures should not be fatal
- Allow installing packages that were current at a defined date HOT 2
- Failed to establish a new connection: HOT 1
- Present more informative `no distributions found` error when attempting to install a stdlib module HOT 1
- manpages for pip are out-of-date HOT 1
- Pip not installing nested subdirectories in package data HOT 2
- pip install does not seem to evaluate environment markers correctly per PEP 508 HOT 3
- Fresh PC - Forge WebUI won't install properly HOT 1
- Mac zsh auto=completion error "command not found: compdef"
- pip install .[test] fails with pyproject.toml HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pip.