Remove packages from local pypi index

14.5k Views Asked by At

This is similar to this question with one exception. I want to remove a few specific versions of the package from our local pypi index, which I had uploaded with the following command in the past.

python setup.py sdist upload -r <index_name>

Any ideas?

3

There are 3 best solutions below

0
On

I'm using pypiserver and had to remove a bad package so I just SSH'd in and removed the bad packages and restarted the service.

The commands were roughly:

ssh root@pypiserver
cd ~pypiserver/pypiserver/packages
rm bad-package*
systemctl restart pypiserver.service

That seemed to work fine for me, and you can just remove what you need using standard shell commands. Just be sure to restart the process so it refreshes its index.

0
On

As an addenum from @jan-vlcinsky's answer

Removing from pypiserver

Using curl for instance:

curl --form ":action=remove_pkg" --form "name=<package_name>" --form "version=<version>" <pypiserver_url>
0
On

Removing packages from local pypi index depends on type of pypi index you use.

removing package from devpi index

devpi allows removing packages only from so called volatile indexes. Non-volatile are "release like" indexes and removing from them is not allowed (as you would surprise users depending on released package).

E.g. for package pysober version 0.2.0:

$ devpi remove -y pysober==0.2.0

removing package from public pypi

is described in the answer you already refered to.

removing package from other indexes

Can vary, but in many cases you can manually delete the files (with proper care).