PyPI is not the license police. You can specify any license you like in the dedicated, free-form text, "license" field.
That's the "license" field. But, PyPI does require that values in the "classifiers" field have to be taken from a known set. Among other things, this prevents typos, and prevents people making up different names for the same thing, which would defeat the purpose of classifier-based searching. This isn't a new thing; old PyPI did the same thing. The list of legal classifiers is stored inside the PyPI database. New ones are added from time to time on request. I don't know why you're having this experience of a classifier you think used to be supported no longer being supported. You say the license field is the same as on previous uploads. But the license field isn't the issue here. Is the classifiers field also the same? I believe there is no longer any manual upload mechanism – or rather, twine is the manual upload mechanism :-). I'm not sure what's going on with uploading the same file repeatedly without error – that seems weird. But I know in general that PyPI is very strict about making sure that once a file is uploaded, it never changes. So I don't think there's any risk of that. Possibly PyPI is noticing that the file you're trying to upload is identical to the one that's already there and counting that as a "successful upload"? On Wed, Jul 11, 2018, 09:15 Robin Becker <ro...@reportlab.com> wrote: > After release of Python-3.7 I wanted to upload to pypi a newly built > version of a C-extension which already has been migrated to > the new site. > > > $ twine --version > twine version 1.11.0 (pkginfo: 1.4.2, requests: 2.18.1, setuptools: 36.2.0, > requests-toolbelt: 0.8.0, tqdm: 4.14.0) > $ twine upload *.whl > Uploading distributions to https://upload.pypi.org/legacy/ > Uploading pyRXP-2.1.1-cp37-cp37m-manylinux1_i686.whl > 100%|████████████████████████████████████████████████████████████████████████████████████████████████████| > 104K/104K [00:00<00:00, > 141KB/s] > HTTPError: 400 Client Error: Invalid value for classifiers. Error: > 'License :: OSI Approved :: ReportLab BSD derived' is not a > valid choice for this field for url: https://upload.pypi.org/legacy/ > > 1) I think it is completely wrong for twine/pypi to fail to upload because > of the license field. The license is derived from BSD > and the same string is present in the previously uploaded versions of this > package. What are valid licenses? Presumably pypi is > now a gatekeeper for the license police. > > 2) I looked in vain on the new pypi.org site for a manual upload > mechanism. Is this now frowned on? > > 3) I was able to upload the same package several times without error; does > this mean I am overwriting the file? > -- > Robin Becker > -- > Distutils-SIG mailing list -- distutils-sig@python.org > To unsubscribe send an email to distutils-sig-le...@python.org > https://mail.python.org/mm3/mailman3/lists/distutils-sig.python.org/ > Message archived at > https://mail.python.org/mm3/archives/list/distutils-sig@python.org/message/RAFVT2Z23NZOAVURYKRASZTBWEGWSUDI/ > >
-- Distutils-SIG mailing list -- distutils-sig@python.org To unsubscribe send an email to distutils-sig-le...@python.org https://mail.python.org/mm3/mailman3/lists/distutils-sig.python.org/ Message archived at https://mail.python.org/mm3/archives/list/distutils-sig@python.org/message/JWB2NZQ5KQD66ROPSNMKFRRY6RP7XUTU/