-
Notifications
You must be signed in to change notification settings - Fork 35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Python package index upload API spec #128
Comments
sounds good -- maybe it makes sense to also have a twine-branch and a warehouse branch or so, to showcase the interactions? We could then maybe also add a devpi-server/devpi-client branch. I guess that "compliant" uploaders could set a special header, requesting the more refined behaviour. Not sure it's needed but throwing around the idea. |
Currently devpi still needs the register call |
I would love it if the upload API was well-specified. |
I think there are two slightly different questions to consider here:
While I'm +1 on both of those ideas, I think it's worth separating the steps such that documentation of the existing API doesn't get held up by discussion of possible changes to that API. |
Conversation died down but I was busy :) so I will start a distutils-sig thread. (I should note that there are a ton of codebases available out there for private package indices, cf. https://stackoverflow.com/questions/1235331/how-to-roll-my-own-pypi . I'll make an effort to reach out to the ones I can find.) |
I don't have time to work on this and hope someone else picks it up. |
@dstufft laid out some ideas in pypi/warehouse#7730 that would interest anyone who's also interested in this issue. |
As a new
twine
maintainer I've been running into questions like:register
anymore, can we deprecate it fromdistutils
,setuptools
, andtwine
? Are any other package indexes or upload tools using it? (makeregister
error (with PyPI) more informative twine#311)twine
could depend on a package index providing anHTTP 201
response in response to a successful upload, and fail on200
(a response some non-package index servers will give to an arbitraryPOST
request).I do not see specifications to guide me here, e.g., in the official guidance on hosting one's own package index. PEP 301 was long enough ago that it's due an update, and PEP 503 only concerns browsing and download, not upload.
I suggest that I write a PEP specifying an API for uploading to a Python package index. This PEP would partially supersede PEP 301 and would document the Warehouse reference implementation. I would write it in collaboration with the Warehouse maintainers who will develop the reference implementation per pypi/warehouse/issues/284 , and consulting with the maintainers of packaging and distribution tools such as
zest.releaser
,flit
,devpi
,pypiserver
, etc.I believe my steps would be:
distutils
, maintainers of packaging and distribution tools, and documentation maintainers to implement PEP complianceThoughts are welcome.
The text was updated successfully, but these errors were encountered: