question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

setuptools dependencies and freeze

See original GitHub issue

setuptools doesn’t vendor its dependencies anymore (ref. https://github.com/pypa/setuptools/issues/581 and https://github.com/pypa/setuptools/commit/ff371f18f0076bc63da05334f7e551c1cc29e10d). Unfortunately this affects pip freeze and breaks our workflow around it. Below you’ll find what happens in a clean environment:

$ pip freeze

appdirs==1.4.0
packaging==16.8
pyparsing==2.1.10
six==1.10.0

Of course those are not my dependencies and I don’t want to see them in my requirements.txt file. pip already hides pip (itself), setuptools and wheel packages from freeze. It should do (recursively) the same with the dependencies of these packages. Alternatively we can start to treat setuptools as a regular package and show it (with its dependencies) in freeze. The latter option implies that setuptools should not be automatically installed anymore when installing pip.

Issue Analytics

  • State:closed
  • Created 7 years ago
  • Reactions:1
  • Comments:11 (7 by maintainers)

github_iconTop GitHub Comments

1reaction
philtaycommented, Feb 14, 2017

@pfmoore Then the breaking changes to setuptools (requiring vs vendoring) should have been made after PEP 518. Now all we have is your idea of “compromise”. But in the future it’ll be better. Like the daily dependency hell we’re exposed to isn’t enough. Sigh. I’m going to spend the next few days fixing all the problems this caused and, after PEP 518, I’ll do it again. Hurrah. Sorry if this message sounds rude or disrespectful. Not my intention. Just frustration.

1reaction
philtaycommented, Feb 14, 2017

@jaraco The official way to install pip also installs setuptools (and wheel). If setuptools is just a regular package it should not be included in any way during pip installation. Moreover pip freeze should treat it just like any other package, showing it along with its dependencies.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Setuptools, PIP Freeze, and Dependency Management - Reddit
I'm struggling with how to deal with dependency management for a package I'm working on. I often see the recommended paradigm: Install dependencies…...
Read more >
Question to Python Devs: Do you freeze all your package ...
I use a setup.py file to control the package dependencies. ... I am now thinking to run pip freeze on a set of...
Read more >
setuptools-freeze - PyPI
Integrate “pyinstaller” to “setuptools”. This will make it easy to freeze your package. More precisely, it will create a executable file ...
Read more >
setup script — cx_Freeze 6.13.0 documentation
cx_Freeze creates four new commands and subclasses four others in order to provide the ability to both build and install executables. In typical...
Read more >
Check all installed Python packages with pip list/freeze
pip freeze --all future==0.16.0 pip==18.1 setuptools==39.2.0 six==1.11.0 ... packages that are not dependencies of other packages, etc.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found