Some fun archaeology and digging around into the dark and weird corners of PyPI. I, for one, didn't realise that "Kenneth Reitz" is a perfectly valid version number! :-)
> There are 16 versions on PyPI which end in a newline character. Of these 16, 12 have registered the stripped equivalent too ... Visually, on PyPI, these look identical
I often navigate through package versions in the PyPI website, and seeing something like this would have driven me nuts!
> A PyPI package version doesn’t have to be strictly numeric – they’re usually in the form 1.2.3 or similar, sometimes with characters appended to indicate alpha, beta, dev or release candidate, but they can be any string.
Wait... they don't have to be valid semver? How in the world does resolution work?
My favorite non-numeric version example in the article:
Sysv_ipc gives Python programs access to System V semaphores, shared memory and message queues. Most (all?) Unixes (including OS X) support System V IPC. Windows+Cygwin 1.7 might also work.
ntoll|4 years ago
carlosperate|4 years ago
I often navigate through package versions in the PyPI website, and seeing something like this would have driven me nuts!
brundolf|4 years ago
Wait... they don't have to be valid semver? How in the world does resolution work?
meepmorp|4 years ago
Sysv_ipc gives Python programs access to System V semaphores, shared memory and message queues. Most (all?) Unixes (including OS X) support System V IPC. Windows+Cygwin 1.7 might also work.
Sample code is included.
This extension is released under the GPL.
You might also be interested in the similar POSIX IPC module at: http://semanchuk.com/philip/posix_ipc/
carlosperate|4 years ago
But this is very close to semver and resolution works very similarly.
benn_88|4 years ago
floatingatoll|4 years ago