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.

Replace easy_install with pip install

See original GitHub issue

There are many open issues with Setuptools that stem from the differences between easy_install and pip install. Now that #250 is complete and there exists a mechanism by which pip install can largely satisfy the use cases currently filled by easy_install. Perhaps at some point I will link to or enumerate the issues that would be addressed by such a replacement but not right now.

In the replacement, I imagine the following:

Invocations of easy_install whether from a command-line entry point or an implicit invocation as part of a setup.py install will instead shell out to pip to perform the equivalent operation. Some options may become unavailable while others will be translated to their pip equivalent.

One big open question is whether installs should still be done as eggs (using the deprecated pip install --egg) or if it should rely on pip’s use of wheel. I’m leaning toward the latter.

There are probably other open issues that I haven’t yet considered.

Issue Analytics

  • State:open
  • Created 7 years ago
  • Reactions:14
  • Comments:21 (17 by maintainers)

github_iconTop GitHub Comments

2reactions
pradyunsgcommented, May 28, 2020

If so, setuptools can start emitting a warning on usage of easy_install or setup.py install unconditionally IMO.

pip hides setup.py’s output if that command succeeds and shows the output (including stderr IIRC) when it fails. Plus, this would also fit in well with pip’s plan of dropping the setup.py install codepath as well (pypa/pip#8102).

1reaction
fungicommented, Aug 2, 2019

@fungi This is not the right forum for a referendum on the question of whether or not to use TOML files, nor to discuss the character of its creator. Please keep it on topic.

Yes, sorry, I was attempting to apologize for verging off topic. My point was that auto-generating pyproject.toml should not be indicated as an anti-pattern. The choice to use TOML was a politically-charged one, and there are legitimate reasons, even non-technical reasons, why projects might choose to not carry TOML files and instead seek alternative mechanisms to comply with the PEP.

Read more comments on GitHub >

github_iconTop Results From Across the Web

pip vs easy_install - Python Packaging User Guide
easy_install, now deprecated, was released in 2004 as part of setuptools. It was notable at the time for installing packages from PyPI using...
Read more >
Python 101: pip - a replacement for easy_install
Pip Installs Python or pip is a tool for installing and managing Python packages, many of which are on the Python Package Index...
Read more >
Easy Install - setuptools 65.6.3.post20221220 documentation
Easy Install is a python module ( easy_install ) bundled with setuptools that lets you automatically download, build, install, and manage Python packages....
Read more >
Can I use `pip` instead of `easy_install` for `python setup.py ...
Yes you can. You can install a package from a tarball or a folder, on the web or your computer. For example: Install...
Read more >
Which Installer is Better? Pip or Easy Install - Liquid Web
This package also replaced easy_install (while still being mainly built on top of setuptools). Besides all the advantages that wheels have, Pip ......
Read more >

github_iconTop Related Medium Post

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