How to create "transitional" package?

INADA Naoki songofacandy at gmail.com
Mon Jan 8 23:09:33 EST 2018


Hi, all.

Yesterday, I released msgpack-0.5, which was msgpack-python.
Both packages provide "msgpack" python package.

I used msgpack in early days, but easy_install crawling website
and download msgpack-1.0.0.tar.gz, which is msgpack for C instead
of Python package I upload to PyPI.
So I renamed msgpack-python but I really dislike it.

Now pip doesn't such silly crawling so I decided to rename back
to msgpack.
To ease transition, I follow what uritemplate.py [1] did (which was
migrated to uritemplate).

I released msgpack-python 0.5.  It is empty package.
But it's metadata contains `install_requires=["msgpack>=0.5"]`.

Sadly, this breaks upgrading from old version via `pip install -U
msgpack-python`.
It does:

* Install msgpack-0.5 (overwrite msgpack-python 0.4.7)
* Uninstall msgpack-python 0.4.7 (removes msgapck 0.5!)
* Install msgpack-python 0.5 (empty!)

I found uritemplate.py has same issue.  Maybe pip's behavior was
changed after migration of uritemplate.py to uritemplate.

Now what can I do for smooth transition?
I don't want to back to msgpack-python again.

[1] https://pypi.python.org/pypi/uritemplate.py

Regards,

INADA Naoki  <songofacandy at gmail.com>



More information about the Python-list mailing list