{"info": {"author": null, "author_email": "Donald Stufft and individual contributors <donald@stufft.io>", "bugtrack_url": null, "classifiers": ["Intended Audience :: Developers", "Natural Language :: English", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Operating System :: POSIX :: BSD", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython"], "description": ".. |twine-version| image:: https://img.shields.io/pypi/v/twine.svg\n   :target: https://pypi.org/project/twine\n\n.. |python-versions| image:: https://img.shields.io/pypi/pyversions/twine.svg\n   :target: https://pypi.org/project/twine\n\n.. |docs-badge| image:: https://img.shields.io/readthedocs/twine\n   :target: https://twine.readthedocs.io\n\n.. |build-badge| image:: https://img.shields.io/github/actions/workflow/status/pypa/twine/main.yml?branch=main\n   :target: https://github.com/pypa/twine/actions\n\n|twine-version| |python-versions| |docs-badge| |build-badge|\n\ntwine\n=====\n\nTwine is a utility for `publishing`_ Python packages on `PyPI`_.\n\nIt provides build system independent uploads of source and binary\n`distribution artifacts <distributions_>`_ for both new and existing\n`projects`_.\n\nSee our `documentation`_ for a description of features, installation\nand usage instructions, and links to additional resources.\n\nContributing\n------------\n\nSee our `developer documentation`_ for how to get started, an\narchitectural overview, and our future development plans.\n\nCode of Conduct\n---------------\n\nEveryone interacting in the Twine project's codebases, issue\ntrackers, chat rooms, and mailing lists is expected to follow the\n`PSF Code of Conduct`_.\n\n.. _`publishing`: https://packaging.python.org/tutorials/packaging-projects/\n.. _`PyPI`: https://pypi.org\n.. _`distributions`:\n   https://packaging.python.org/glossary/#term-Distribution-Package\n.. _`projects`: https://packaging.python.org/glossary/#term-Project\n.. _`documentation`: https://twine.readthedocs.io/\n.. _`developer documentation`:\n   https://twine.readthedocs.io/en/latest/contributing.html\n.. _`PSF Code of Conduct`: https://github.com/pypa/.github/blob/main/CODE_OF_CONDUCT.md\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": null, "downloads": {"last_day": -1, "last_month": -1, "last_week": -1}, "dynamic": ["License-File"], "home_page": null, "keywords": null, "license": null, "license_expression": "Apache-2.0", "license_files": ["LICENSE"], "maintainer": null, "maintainer_email": null, "name": "twine", "package_url": "https://pypi.org/project/twine/", "platform": null, "project_url": "https://pypi.org/project/twine/", "project_urls": {"Documentation": "https://twine.readthedocs.io/en/latest/", "Homepage": "https://twine.readthedocs.io/", "Packaging tutorial": "https://packaging.python.org/tutorials/packaging-projects/", "Source": "https://github.com/pypa/twine/"}, "provides_extra": ["keyring"], "release_url": "https://pypi.org/project/twine/6.2.0/", "requires_dist": ["readme-renderer>=35.0", "requests>=2.20", "requests-toolbelt!=0.9.0,>=0.8.0", "urllib3>=1.26.0", "importlib-metadata>=3.6; python_version < \"3.10\"", "keyring>=21.2.0; platform_machine != \"ppc64le\" and platform_machine != \"s390x\"", "rfc3986>=1.4.0", "rich>=12.0.0", "packaging>=24.0", "id", "keyring>=21.2.0; extra == \"keyring\""], "requires_python": ">=3.9", "summary": "Collection of utilities for publishing packages on PyPI", "version": "6.2.0", "yanked": false, "yanked_reason": null}, "last_serial": 31060666, "ownership": {"organization": null, "roles": [{"role": "Owner", "user": "bhrutledge"}, {"role": "Owner", "user": "graffatcolmingov"}, {"role": "Owner", "user": "jaraco"}]}, "urls": [{"comment_text": null, "digests": {"blake2b_256": "3a7a882d99539b19b1490cac5d77c67338d126e4122c8276bf640e411650c830", "md5": "91f309cb20f931359e46f236dc626350", "sha256": "418ebf08ccda9a8caaebe414433b0ba5e25eb5e4a927667122fbe8f829f985d8"}, "downloads": -1, "filename": "twine-6.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "91f309cb20f931359e46f236dc626350", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9", "size": 42727, "upload_time": "2025-09-04T15:43:15", "upload_time_iso_8601": "2025-09-04T15:43:15.994841Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-6.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null}, {"comment_text": null, "digests": {"blake2b_256": "e0a8949edebe3a82774c1ec34f637f5dd82d1cf22c25e963b7d63771083bbee5", "md5": "12d698b39c49700950c8c6a501176c26", "sha256": "e5ed0d2fd70c9959770dce51c8f39c8945c574e18173a7b81802dab51b4b75cf"}, "downloads": -1, "filename": "twine-6.2.0.tar.gz", "has_sig": false, "md5_digest": "12d698b39c49700950c8c6a501176c26", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9", "size": 172262, "upload_time": "2025-09-04T15:43:17", "upload_time_iso_8601": "2025-09-04T15:43:17.255745Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-6.2.0.tar.gz", "yanked": false, "yanked_reason": null}], "vulnerabilities": [], "releases": {"5.1.0": [{"comment_text": "", "digests": {"blake2b_256": "d55055c2a06057cfa092e6ed3305aa587b117734c3d8dc8fddcc1661b5660d83", "md5": "27605089f5d3f10322b17063c6d245fe", "sha256": "fe1d814395bfe50cfbe27783cb74efe93abeac3f66deaeb6c8390e4e92bacb43"}, "downloads": -1, "filename": "twine-5.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "27605089f5d3f10322b17063c6d245fe", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.8", "size": 38563, "upload_time": "2024-05-16T13:49:47", "upload_time_iso_8601": "2024-05-16T13:49:47.785777Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-5.1.0-py3-none-any.whl", "yanked": true, "yanked_reason": "https://github.com/pypa/twine/issues/1125"}, {"comment_text": "", "digests": {"blake2b_256": "666ddcf5c58dbc468b52f20f2de0470caaae09a7ab91d847f7ca4a786137ca4f", "md5": "afafb8d3afe312fdf040fff8648549dd", "sha256": "4d74770c88c4fcaf8134d2a6a9d863e40f08255ff7d8e2acb3cbbd57d25f6e9d"}, "downloads": -1, "filename": "twine-5.1.0.tar.gz", "has_sig": false, "md5_digest": "afafb8d3afe312fdf040fff8648549dd", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.8", "size": 224997, "upload_time": "2024-05-16T13:49:50", "upload_time_iso_8601": "2024-05-16T13:49:50.075289Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-5.1.0.tar.gz", "yanked": true, "yanked_reason": "https://github.com/pypa/twine/issues/1125"}], "5.0.0": [{"comment_text": "", "digests": {"blake2b_256": "9ad44db90c4a2b8c1006ea3e6291f36b50b66e45887cf17b3b958b5d646fb837", "md5": "24b00a339766770a7f068366e675d382", "sha256": "a262933de0b484c53408f9edae2e7821c1c45a3314ff2df9bdd343aa7ab8edc0"}, "downloads": -1, "filename": "twine-5.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "24b00a339766770a7f068366e675d382", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.8", "size": 37138, "upload_time": "2024-02-11T19:59:38", "upload_time_iso_8601": "2024-02-11T19:59:38.163822Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-5.0.0-py3-none-any.whl", "yanked": false, "yanked_reason": null}, {"comment_text": "", "digests": {"blake2b_256": "d3cc8025ad5102a5c754023092143b8b511e184ec087dfbfb357d7d88fb82bff", "md5": "692f628c3708beca5f9073b0988e8f8f", "sha256": "89b0cc7d370a4b66421cc6102f269aa910fe0f1861c124f573cf2ddedbc10cf4"}, "downloads": -1, "filename": "twine-5.0.0.tar.gz", "has_sig": false, "md5_digest": "692f628c3708beca5f9073b0988e8f8f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.8", "size": 222119, "upload_time": "2024-02-11T19:59:40", "upload_time_iso_8601": "2024-02-11T19:59:40.377849Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-5.0.0.tar.gz", "yanked": false, "yanked_reason": null}], "5.1.1": [{"comment_text": "", "digests": {"blake2b_256": "5dec00f9d5fd040ae29867355e559a94e9a8429225a0284a3f5f091a3878bfc0", "md5": "b440143b09e218924eedcec26edbff1e", "sha256": "215dbe7b4b94c2c50a7315c0275d2258399280fbb7d04182c7e55e24b5f93997"}, "downloads": -1, "filename": "twine-5.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "b440143b09e218924eedcec26edbff1e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.8", "size": 38650, "upload_time": "2024-06-26T15:00:43", "upload_time_iso_8601": "2024-06-26T15:00:43.825377Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-5.1.1-py3-none-any.whl", "yanked": false, "yanked_reason": null}, {"comment_text": "", "digests": {"blake2b_256": "7768bd982e5e949ef8334e6f7dcf76ae40922a8750aa2e347291ae1477a4782b", "md5": "e5231e4a8242ac2502b3b8a839236e08", "sha256": "9aa0825139c02b3434d913545c7b847a21c835e11597f5255842d457da2322db"}, "downloads": -1, "filename": "twine-5.1.1.tar.gz", "has_sig": false, "md5_digest": "e5231e4a8242ac2502b3b8a839236e08", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.8", "size": 225531, "upload_time": "2024-06-26T15:00:46", "upload_time_iso_8601": "2024-06-26T15:00:46.580070Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-5.1.1.tar.gz", "yanked": false, "yanked_reason": null}], "6.1.0": [{"comment_text": "", "digests": {"blake2b_256": "7cb674e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe", "md5": "7ef148ec8f41eacb552aa5eb5660e8b2", "sha256": "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384"}, "downloads": -1, "filename": "twine-6.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "7ef148ec8f41eacb552aa5eb5660e8b2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.8", "size": 40791, "upload_time": "2025-01-21T18:45:24", "upload_time_iso_8601": "2025-01-21T18:45:24.584471Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-6.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null}, {"comment_text": "", "digests": {"blake2b_256": "c8a26df94fc5c8e2170d21d7134a565c3a8fb84f9797c1dd65a5976aaf714418", "md5": "c684cbf106cba031d3c7d322a77e574e", "sha256": "be324f6272eff91d07ee93f251edf232fc647935dd585ac003539b42404a8dbd"}, "downloads": -1, "filename": "twine-6.1.0.tar.gz", "has_sig": false, "md5_digest": "c684cbf106cba031d3c7d322a77e574e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.8", "size": 168404, "upload_time": "2025-01-21T18:45:26", "upload_time_iso_8601": "2025-01-21T18:45:26.758385Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-6.1.0.tar.gz", "yanked": false, "yanked_reason": null}], "6.2.0": [{"comment_text": null, "digests": {"blake2b_256": "3a7a882d99539b19b1490cac5d77c67338d126e4122c8276bf640e411650c830", "md5": "91f309cb20f931359e46f236dc626350", "sha256": "418ebf08ccda9a8caaebe414433b0ba5e25eb5e4a927667122fbe8f829f985d8"}, "downloads": -1, "filename": "twine-6.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "91f309cb20f931359e46f236dc626350", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9", "size": 42727, "upload_time": "2025-09-04T15:43:15", "upload_time_iso_8601": "2025-09-04T15:43:15.994841Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-6.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null}, {"comment_text": null, "digests": {"blake2b_256": "e0a8949edebe3a82774c1ec34f637f5dd82d1cf22c25e963b7d63771083bbee5", "md5": "12d698b39c49700950c8c6a501176c26", "sha256": "e5ed0d2fd70c9959770dce51c8f39c8945c574e18173a7b81802dab51b4b75cf"}, "downloads": -1, "filename": "twine-6.2.0.tar.gz", "has_sig": false, "md5_digest": "12d698b39c49700950c8c6a501176c26", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9", "size": 172262, "upload_time": "2025-09-04T15:43:17", "upload_time_iso_8601": "2025-09-04T15:43:17.255745Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-6.2.0.tar.gz", "yanked": false, "yanked_reason": null}], "6.0.1": [{"comment_text": "", "digests": {"blake2b_256": "21dfdda5f85131ecc0d31e10f6dc6be98440ef9f685947917b86f462eed6864b", "md5": "a6279d09c51552259f730bbbe0d6de6e", "sha256": "9c6025b203b51521d53e200f4a08b116dee7500a38591668c6a6033117bdc218"}, "downloads": -1, "filename": "twine-6.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a6279d09c51552259f730bbbe0d6de6e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.8", "size": 39398, "upload_time": "2024-12-01T01:19:32", "upload_time_iso_8601": "2024-12-01T01:19:32.213307Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-6.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null}, {"comment_text": "", "digests": {"blake2b_256": "2c3388b80116504b61759fa2db05e13f2296b0d2e73568f5e731d020c13843b8", "md5": "ed8887437c02ad56dc4e4f2868c8a098", "sha256": "36158b09df5406e1c9c1fb8edb24fc2be387709443e7376689b938531582ee27"}, "downloads": -1, "filename": "twine-6.0.1.tar.gz", "has_sig": false, "md5_digest": "ed8887437c02ad56dc4e4f2868c8a098", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.8", "size": 227175, "upload_time": "2024-12-01T01:20:00", "upload_time_iso_8601": "2024-12-01T01:20:00.911657Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-6.0.1.tar.gz", "yanked": false, "yanked_reason": null}], "6.0.0": [{"comment_text": "", "digests": {"blake2b_256": "d60723933b1b3c2adb52b47371fa798519beb809327732fb7a0df118902e7015", "md5": "61616d599708188c06565454d3b71b0c", "sha256": "7dc5617bda2764ad3060048c4fc0161ebac2f72216ab19f1977d2228a9e12691"}, "downloads": -1, "filename": "twine-6.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "61616d599708188c06565454d3b71b0c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.8", "size": 39372, "upload_time": "2024-11-30T15:33:21", "upload_time_iso_8601": "2024-11-30T15:33:21.761157Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-6.0.0-py3-none-any.whl", "yanked": false, "yanked_reason": null}, {"comment_text": "", "digests": {"blake2b_256": "d1712f838ca17e941a25353702ad993d5f6b2d8e3130b01185592e9465155fe1", "md5": "5e75847479e20f31dae306baeb89441d", "sha256": "9a9b815b3bad3186cc85be92294d8e2509558e0315d69ed746c0594419c835de"}, "downloads": -1, "filename": "twine-6.0.0.tar.gz", "has_sig": false, "md5_digest": "5e75847479e20f31dae306baeb89441d", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.8", "size": 226897, "upload_time": "2024-11-30T15:33:28", "upload_time_iso_8601": "2024-11-30T15:33:28.407073Z", "url": "https://fixtures.pulpproject.org/python-pypi/packages/twine-6.0.0.tar.gz", "yanked": false, "yanked_reason": null}]}}