I may be missing something, but if the core mission for Twine is publishing on PyPI, and twine register (per pypa/warehouse#1267) is a no-op, I think we should deprecate and then remove the user-invocable register command.
I propose we deprecate it in the upcoming version (1.10) and then remove it in 1.11.0.
So, in 1.10.0:
Repository.register() and twine/commands/register.py as deprecated with @deprecated decorators..deprecated:: marker to the register guidance in the READMEIn 1.11.0:
Repository.register() and twine/commands/register.pyregister from the list of commands in setup.pytwine/exceptions.pyREADME, the architectural overview in docs/contributing.rst, and the changelogI'm not sure we can remove register. I think there are package indices that still require registration before upload like devpi. Some folks use twine with that iirc and I'm not sure what indices buildout is using twine to interact with.
My group isn't using devpi yet (so I can't verify whether devpi needs register), but we expect to soon. It would be a shame if twine didn't work with it, I imagine we'd like to keep most of our normal workflows which involve twine and/or zest.releaser (which uses twine under the covers).
Thanks for the pushback. I see where I fundamentally went wrong was
the core mission for Twine is publishing on PyPI
I think this clarifies for me that we have three goals.
So here's my new proposal:
twine register usage help.Repository.register() and twine/commands/register.py.register anymore but other package indexes might.register functionality.1-4 sound faster; 5 and 6 sound harder and slower.
There's now a bugs.python.org issue open to update the distutils docs regarding register.
@hpk42 mentioned to me in #devpi earlier this month that devpi does not require registration. @mplanchard does pypiserver ever need registration?
@brainwane nope!
@fschulze says that devpi does still currently need the register call.
@brainwane With the merge of #457, do you have more thoughts on resolving this issue?
A lot has been done for this issue but these are the things that, I think, still need doing:
Repository.register() and twine/commands/register.py.And, ideally (but this issue does not have to block on this):
register functionality.@brainwane FYI, since devpi-server 5.0.0 the register call is optional
Most helpful comment
@brainwane FYI, since devpi-server 5.0.0 the register call is optional