At 10:25 AM 9/23/2005 +1000, Richard Jones wrote:
I can only assume that setuptools is mutating the name/version in order to generate a safe filename, but then passing the mutated name/version to PyPI as the release identifier.
I haven't attempted to reproduce Ian's problem, but I don't believe I'm doing this, at least not in the upload command. I'll have to check.
I think it's an unacceptable change to make to PyPI to accept the mutated name/version, as the name/version represents the unique identifier in the database for a package. Unique identifier collisions are possible when you start mangling them, and I'd really prefer to avoid such things.
I'd like to encourage moving towards mangling the *keys* themselves, in order to be robust in the face of typos. I think allowing random punctuation and upper/lower case to distinguish projects (e.g. allowing SQLObject, sqlobject, and SQLobject to be different packages) is asking for trouble on the human side of things, entirely aside from allowing them in filenames, dealing with case-insensitive filesystems, and so on. Having a nice human readable name for the web page, PKG-INFO, and description are one thing, but having it used for filenames, URLs, and database keys is quite another.