QuantumOmega
QuantumOmega

Reputation: 330

Setup.py for uninstalling via pip

According to another question, pip offers a facility for uninstalling eggs, which it's help also indicates.

I have a project that, once installed, has a structure in my local site-packages folder that looks like this:

projecta/
projecta-1.0-py2.6.egg-info/

Using an up to date version, pip uninstall projecta asks me the following question:

  /path/to/python2.6/site-packages/projecta-1.0-py2.6.egg-info
Proceed (y/n)?

Answering y will remove the .egg-info directory, but not the main projecta directory, without saying there was any sort of error. Why doesn't pip manage or know to remove this directory?

The project itself is installed via a setup.py file using distutils. Are there any special settings I could/should use in that file to help pip with the removal process?

Upvotes: 3

Views: 1149

Answers (1)

Hugo Lopes Tavares
Hugo Lopes Tavares

Reputation: 30464

If I recall correctly pip knows how to uninstall packages installed via setuptools/distribute, not raw distutils.

There are some setuptools's features pip is based on - like --record option, which stores package metadata (and it is what allows pip to uninstal package related files).

Try doing:

$ pip install /path/to/projecta
$ pip uninstall projecta

Upvotes: 3

Related Questions