pip uses mostly the same techniques for finding packages, so packages that were made easy_installable should be pip-installable as well.
pip is meant to improve on easy_install. Some of the improvements:
· All packages are downloaded before installation. Partially-completed installation doesn’t occur as a result.
· Care is taken to present useful output on the console.
· The reasons for actions are kept track of. For instance, if a package is being installed, pip keeps track of why that package was required.
· Error messages should be useful.
· The code is relatively concise and cohesive, making it easier to use programmatically.
· Packages don’t have to be installed as egg archives, they can be installed flat (while keeping the egg metadata).
· Maybe features like native support for other version control systems, or uninstallation, will get added. (They might get added to easy_install, but I think the chance for pip is higher.)
Also, pip will eventually be merged directly with poacheggs, a fact that will make it simple to define fixed sets of requirements and reliably reproduce a set of packages.
pip cannot install some packages. Specifically:
· It cannot install from eggs. It only installs from source. (Maybe this will be changed sometime, but it’s low priority.)
· It doesn’t understand Setuptools extras (like package[test]). This should be added eventually.
· It is incompatible with some packages that customize distutils or setuptools in their setup.py files.
· Maybe it doesn’t work on Windows. At least, the author doesn’t test on Windows often.
· It also has some extra features. Extra features the author thinks are great.
What's New in This Release: [ read full changelog ]
· Fixed a major backward incompatible change of parsing URLs to externally hosted packages that got accidentally included in 1.3.