pixelated / pixelated-user-agent

User facing components of Pixelated: a JavaScript single page app and a RESTful service.
GNU Affero General Public License v3.0
159 stars 72 forks source link

pip list fails on wazokazi.is #983

Closed varac closed 7 years ago

varac commented 7 years ago
root@pixelated:~# pip list -vvv
...
leap.keymanager 0-unknown
Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/dist-packages/pip/commands/list.py", line 80, in run
    self.run_listing(options)
  File "/usr/lib/python2.7/dist-packages/pip/commands/list.py", line 143, in run_listing
    self.output_package_listing(installed_packages)
  File "/usr/lib/python2.7/dist-packages/pip/commands/list.py", line 153, in output_package_listing
    if dist_is_editable(dist):
  File "/usr/lib/python2.7/dist-packages/pip/util.py", line 367, in dist_is_editable
    req = FrozenRequirement.from_dist(dist, [])
  File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 299, in from_dist
    assert len(specs) == 1 and specs[0][0] == '=='
AssertionError

Storing debug log for failure in /root/.pip/pip.log

I modified /usr/lib/python2.7/dist-packages/pip/commands/list.py to show the package name before processing it, so we know what package pip chokes on (in this case leap-keymanager). see /usr/lib/python2.7/dist-packages/pip/commands/list.py.orig for the unmodified code.

varac commented 7 years ago

Putting the to candidate because it currently breaks leap deploy:

   - [pixelated] Error: Could not prefetch package provider 'pip': [nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
   - [pixelated] Error: /Package[behave]: Could not evaluate: [nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
varac commented 7 years ago

when I remove leap-keymanager it chokes at soledad-client:

leap.soledad.client 0.8.1-114.g57447e6.dirty
Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/dist-packages/pip/commands/list.py", line 80, in run
    self.run_listing(options)
  File "/usr/lib/python2.7/dist-packages/pip/commands/list.py", line 143, in run_listing
    self.output_package_listing(installed_packages)
  File "/usr/lib/python2.7/dist-packages/pip/commands/list.py", line 153, in output_package_listing
    if dist_is_editable(dist):
  File "/usr/lib/python2.7/dist-packages/pip/util.py", line 367, in dist_is_editable
    req = FrozenRequirement.from_dist(dist, [])
  File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 299, in from_dist
    assert len(specs) == 1 and specs[0][0] == '=='
AssertionError

Storing debug log for failure in /root/.pip/pip.log
varac commented 7 years ago

I guess pip 1.5.6 fails on the dashes in the version strings, see https://github.com/pixelated/project-issues/issues/421 and https://0xacab.org/leap/platform/issues/8754.

varac commented 7 years ago

pip install --upgrade pip fixed this.