-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Closed
Labels
!release blockerHold a release until this is resolvedHold a release until this is resolvedC: freeze'pip freeze' related'pip freeze' relatedkind: crashFor situations where pip crashesFor situations where pip crashestype: bugA confirmed bug or unintended behaviorA confirmed bug or unintended behavior
Milestone
Description
First of all, great job guys on adding PEP 610 support, this is really awesome !
But, if you install a git package with sudo
, it will cause any non root pip freeze
to crash
Environment
- pip version: 20.1b1
- Python version: 3.6
- OS: Ubuntu
If you do
sudo pip install git+https://github.com/...
Then when you run pip freeze
(notice without sudo
)
You get the following exception:
ERROR: Exception:
Traceback (most recent call last):
File "/usr/local/lib/python3.6/site-packages/pip/_internal/cli/base_command.py", line 188, in _main
status = self.run(options, args)
File "/usr/local/lib/python3.6/site-packages/pip/_internal/commands/freeze.py", line 98, in run
for line in freeze(**freeze_kwargs):
File "/usr/local/lib/python3.6/site-packages/pip/_internal/operations/freeze.py", line 68, in freeze
req = FrozenRequirement.from_dist(dist)
File "/usr/local/lib/python3.6/site-packages/pip/_internal/operations/freeze.py", line 256, in from_dist
direct_url = dist_get_direct_url(dist)
File "/usr/local/lib/python3.6/site-packages/pip/_internal/utils/direct_url_helpers.py", line 118, in dist_get_direct_url
return DirectUrl.from_json(dist.get_metadata(DIRECT_URL_METADATA_NAME))
File "/usr/local/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1420, in get_metadata
value = self._get(path)
File "/usr/local/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1616, in _get
with open(path, 'rb') as stream:
PermissionError: [Errno 13] Permission denied: '/usr/local/lib/python3.6/site-packages/trains-0.14.1.dist-info/direct_url.json'
As you can see the direct_url.json
file is missing the r flag for group / others , which raises the exception.
-rw------- 1 root root 135 Apr 25 23:22 /usr/local/lib/python3.6/site-packages/trains-0.14.1.dist-info/direct_url.json
I tested running chmod 644
on this file, and after that pip freeze
works like a charm.
For reference, the top_level.txt
file that is next to the direct_url.json
has the correct permission
Metadata
Metadata
Assignees
Labels
!release blockerHold a release until this is resolvedHold a release until this is resolvedC: freeze'pip freeze' related'pip freeze' relatedkind: crashFor situations where pip crashesFor situations where pip crashestype: bugA confirmed bug or unintended behaviorA confirmed bug or unintended behavior