Bug 1654457 - Use `pip list --format freeze` instead of `pip freeze`. r=ahal

Newer versions of pip output something like:
`certifi @ file:///builds/worker/workspace/build/tests/tools/wpt_third_party/certifi`
rather than
`certifi==2018.4.16`

and the package_versions method doesn't know how to handle that.

Both old and new versions of pip, however, output the same thing for
`pip list --format freeze`, which is equivalent to the old
`pip freeze --all` output (which means we'll now list more packages,
essentially pip, setuptools and wheels).

Differential Revision: https://phabricator.services.mozilla.com/D92174
This commit is contained in:
Mike Hommey 2020-10-06 00:45:00 +00:00
Родитель abaa8e4d14
Коммит e1a9434752
1 изменённых файлов: 1 добавлений и 1 удалений

Просмотреть файл

@ -166,7 +166,7 @@ class VirtualenvMixin(object):
level=error_level)
return {}
pip_freeze_output = self.get_output_from_command(
[pip, "freeze"], silent=True, ignore_errors=True)
[pip, "list", "--format", "freeze"], silent=True, ignore_errors=True)
if not isinstance(pip_freeze_output, string_types):
self.fatal(
"package_versions: Error encountered running `pip freeze`: "