Skip to content

Latest commit

 

History

History
69 lines (57 loc) · 4.63 KB

File metadata and controls

69 lines (57 loc) · 4.63 KB

pip vs easy_install

Page Status:Complete
Last Reviewed:2015-09-08

easy_install was released in 2004, as part of :ref:`setuptools`. It was notable at the time for installing :term:`packages <Distribution Package>` from :term:`PyPI <Python Package Index (PyPI)>` using requirement specifiers, and automatically installing dependencies.

:ref:`pip` came later in 2008, as alternative to easy_install, although still largely built on top of :ref:`setuptools` components. It was notable at the time for not installing packages as :term:`Eggs <Egg>` or from :term:`Eggs <Egg>` (but rather simply as 'flat' packages from :term:`sdists <Source Distribution (or "sdist")>`), and introducing the idea of :ref:`Requirements Files <pip:Requirements Files>`, which gave users the power to easily replicate environments.

Here's a breakdown of the important differences between pip and easy_install now:

  pip easy_install
Installs from :term:`Wheels <Wheel>` Yes No
Uninstall Packages Yes (pip uninstall) No
Dependency Overrides Yes (:ref:`Requirements Files <pip:Requirements Files>`) No
List Installed Packages Yes (pip list and pip freeze) No
PEP 438 Support Yes No
Installation format 'Flat' packages with egg-info metadata. Encapsulated Egg format
sys.path modification No Yes
Installs from :term:`Eggs <Egg>` No Yes
pylauncher support No Yes [1]
:ref:`Multi-version Installs` No Yes
Exclude scripts during install No Yes

[1]https://setuptools.readthedocs.io/en/latest/easy_install.html#natural-script-launcher