The following works:
pip install git+git://github.com/pydata/pandas@master
But the following doesn't:
pip install -e git+git://github.com/pydata/pandas@master
The error is:
--editable=git+git://github.com/pydata/pandas@master is not the right format; it must have #egg=Package
Why?
Also, I read that the -e
does the following:
--egg
Install as self contained egg file, like easy_install does.
what is the value of this? When would this be helpful? (I always work on a virtualenv
and install through pip
)
Generally, you don't want to install as a .egg file. However, there are a few rare cases where you might. For example:
- It's one of a handful of packages that needs to override a built-in package, and knows how to do so when installed as a .egg. With Apple Python,
readline
is such a package. I don't know of any other common exceptions.
- The egg has binary dependencies that point to other eggs on PyPI, and can serve as a binary dependency for yet other eggs on PyPI. This is pretty rare nowadays, because it doesn't actually work in many important cases.
- You want a package embedded in a single file that you can copy-and-paste, FTP, etc. from one installation to another.
- You want a package that you can install into another installation straight out of site-packages.
- The package is badly broken (and you can't fix it, for whatever reason), so that setup.py install does not work, but it can properly build an egg and run out of an egg.
Meanwhile, if you want to use editable mode, the package, and all other packages it depends on, have to be egg-compatible, whether or not you install them as eggs; pip
will add #egg=<project name>
to the VCS URL for each one, and if any of them don't understand that, it will fail.