[Distutils] PyPi not allowing duplicate filenames

Chris Barker chris.barker at noaa.gov
Wed Oct 14 18:43:25 CEST 2015

Hi all,

PyPi does not allow duplicate file names -- this makes lots of sense,
because you really don't want people to go to PyPi one day and grab a file,
and then go there another day, grab a file with exactly the same name, and
have it be a different file.


We are all too human, and make mistakes when doing a release. All to often
someone pushed a broken file up to PyPi, often realizes it pretty quickly
-- before anyone has a chance to even download it (or only the dev team as,
for testing...).

In fact, I was in a sprint last summer, and we decided to push our  package
up to PyPi -- granted, we were all careless amateurish noobs, but we ended
up making I think 4! minor version bumps because we had done something
stupid in the sdist.

Also -- the latest numpy  release got caught in this, too:

* We ran into a problem with pipy not allowing reuse of filenames and a
  resulting proliferation of *.*.*.postN releases. Not only were the names
  getting out of hand, some packages were unable to work with the postN

So -- I propose that PyPi allow projects to replace existing files if they

You should have to jump through all sorts of hoops, and make it really
clear that it is a BAD IDEA in the general case, but it'd be good to have
it be possible.

After all -- PyPi does not take on responsibility for anything else about
what's in those packages, and Python itself is all about "we're all
consenting adults here"

I suppose we could even put in some heuristics about how long the file as
been there, how many times it's been downloaded, etc.

Just a thought.....I really hate systems that don't let me roll back
mistakes, even when I discover them almost immediately...



Christopher Barker, Ph.D.

Emergency Response Division
NOAA/NOS/OR&R            (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception

Chris.Barker at noaa.gov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20151014/0be450a2/attachment.html>

More information about the Distutils-SIG mailing list