{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "Hear ye, hear ye, says the ``towncrier``\n========================================\n\n.. image:: https://travis-ci.org/hawkowl/towncrier.svg?branch=master\n :target: https://travis-ci.org/hawkowl/towncrier\n\n.. image:: https://codecov.io/github/hawkowl/towncrier/coverage.svg?branch=master\n :target: https://codecov.io/github/hawkowl/towncrier?branch=master\n\n``towncrier`` is a utility to produce useful, summarised news files for your project.\nRather than reading the Git history as some newer tools to produce it, or having one single file which developers all write to, ``towncrier`` reads \"news fragments\" which contain information `useful to end users`.\n\nPhilosophy\n----------\n\n``towncrier`` delivers the news which is convenient to those that hear it, not those that write it.\n\nThat is, by duplicating what has changed from the \"developer log\" (which may contain complex information about the original issue, how it was fixed, who authored the fix, and who reviewed the fix) into a \"news fragment\" (a small file containing just enough information to be useful to end users), ``towncrier`` can produce a digest of the changes which is valuable to those who may wish to use the software.\nThese fragments are also commonly called \"topfiles\" or \"newsfiles\" in Twisted parlance.\n\n``towncrier`` works best in a development system where all merges involve closing a ticket.\n\n\nQuick Start\n-----------\n\nInstall from PyPI::\n\n python3 -m pip install towncrier\n\n.. note::\n\n ``towncrier``, as a command line tool, works on Python 3.5+ only.\n It is usable by projects written in other languages, provided you give it the version of the project when invoking it.\n For Python 2/3 compatible projects, the version can be discovered automatically.\n\nIn your project root, add a ``pyproject.toml`` file, with the contents::\n\n [tool.towncrier]\n package = \"mypackage\"\n package_dir = \"src\"\n filename = \"NEWS.rst\"\n\nThen put news fragments (see \"News Fragments\" below) into a \"newsfragments\" directory under your package (so, if your project is named \"myproject\", and it's kept under ``src``, your newsfragments dir would be ``src/myproject/newsfragments/``).\n\nTo prevent git from removing the newsfragments directory, make a ``.gitignore`` file in it with::\n\n !.gitignore\n\nThis will keep the folder around, but otherwise \"empty\".\n\n``towncrier`` needs to know what version your project is, and there are two ways you can give it:\n\n- For Python 2/3 compatible projects, a ``__version__`` in the top level package.\n This can be either a string literal, a tuple, or an `Incremental `_ version.\n- Manually passing ``--version=`` when interacting with ``towncrier``.\n\nTo produce a draft of the news file, run::\n\n towncrier --draft\n\nTo produce the news file for real, run::\n\n towncrier\n\nThis command will remove the news files (with ``git rm``) and append the built news to the filename specified in ``towncrier.ini``, and then stage the news file changes (with ``git add``).\nIt leaves committing the changes up to the user.\n\nIf you wish to have content at the top of the news file (for example, to say where you can find the tickets), put your text above a rST comment that says::\n\n .. towncrier release notes start\n\n``towncrier`` will then put the version notes after this comment, and leave your existing content that was above it where it is.\n\n\nNews Fragments\n--------------\n\n``towncrier`` has a few standard types of news fragments, signified by the file extension.\nThese are:\n\n- ``.feature``: Signifying a new feature.\n- ``.bugfix``: Signifying a bug fix.\n- ``.doc``: Signifying a documentation improvement.\n- ``.removal``: Signifying a deprecation or removal of public API.\n- ``.misc``: A ticket has been closed, but it is not of interest to users.\n\nThe start of the filename is the ticket number, and the content is what will end up in the news file.\nFor example, if ticket #850 is about adding a new widget, the filename would be ``myproject/newsfragments/850.feature`` and the content would be ``myproject.widget has been added``.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/hawkowl/towncrier", "keywords": "", "license": "MIT", "maintainer": "Amber Brown", "maintainer_email": "hawkowl@twistedmatrix.com", "name": "towncrier", "package_url": "https://pypi.org/project/towncrier/", "platform": "", "project_url": "https://pypi.org/project/towncrier/", "project_urls": { "Homepage": "https://github.com/hawkowl/towncrier" }, "release_url": "https://pypi.org/project/towncrier/19.2.0/", "requires_dist": [ "Click", "incremental", "jinja2", "toml" ], "requires_python": "", "summary": "Building newsfiles for your project.", "version": "19.2.0" }, "last_serial": 5832520, "releases": { "15.0.0": [ { "comment_text": "", "digests": { "md5": "64390f83c2a460f3eaa978f39fd955c6", "sha256": "aa459d0275e464257d1edf44ce0d456d065ed9369c5da4342ea7e0a92e2949fe" }, "downloads": -1, "filename": "towncrier-15.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "64390f83c2a460f3eaa978f39fd955c6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11860, "upload_time": "2015-12-27T14:36:37", "url": "https://files.pythonhosted.org/packages/b5/34/76e2d2490240cafa0e6a512234141b24b09abbbdc1d9566e99f991104a51/towncrier-15.0.0-py3-none-any.whl" } ], "15.1.0": [ { "comment_text": "", "digests": { "md5": "15a02d54980d54d8b60de8accbf2bd18", "sha256": "761c9bebf5d1d35d007b2bc3af68c536ca5e9d13ee9ebff592c3ff74b7293213" }, "downloads": -1, "filename": "towncrier-15.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "15a02d54980d54d8b60de8accbf2bd18", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13410, "upload_time": "2015-12-29T10:58:43", "url": "https://files.pythonhosted.org/packages/30/8c/6f322c5a8b4dad2bbc2f9499ceafd3ad3c98e401c9e6577db49ab042cd3e/towncrier-15.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "da77a01f3bead54f54389b5c06548785", "sha256": "ae0a45b1248aa5f095f363419e65e2156ba61bd23b1abd56d4a15b63b10010aa" }, "downloads": -1, "filename": "towncrier-15.1.0.tar.gz", "has_sig": false, "md5_digest": "da77a01f3bead54f54389b5c06548785", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8932, "upload_time": "2015-12-29T10:58:49", "url": "https://files.pythonhosted.org/packages/f9/0d/e17ddc9c046b2bca79c96e53e850d703bec302e9fb9ec21470b14574b543/towncrier-15.1.0.tar.gz" } ], "16.0.0": [ { "comment_text": "", "digests": { "md5": "d0bf220a0877c8f3a5b9f2795990f710", "sha256": "eb1a9a198f476deb5e39d32edc67aa20135189c65ba787b23e31e828fa61e820" }, "downloads": -1, "filename": "towncrier-16.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d0bf220a0877c8f3a5b9f2795990f710", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 14272, "upload_time": "2016-01-06T08:01:09", "url": "https://files.pythonhosted.org/packages/0c/4a/5e0bb4c08bea73d348f57c4e0d57f9066b1e2e1fbee447e801966bdb6ec2/towncrier-16.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4b07878c737aa2d00317948e12b40243", "sha256": "50b12e6a756b5bf58a251f92515c1060ba19a9af95dcff15d70def0eb20d0e3a" }, "downloads": -1, "filename": "towncrier-16.0.0.tar.gz", "has_sig": false, "md5_digest": "4b07878c737aa2d00317948e12b40243", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9721, "upload_time": "2016-01-06T08:03:14", "url": "https://files.pythonhosted.org/packages/41/81/5c6877282a1bfe5e296e986e03eae69c96606cc973e19263583295ff7443/towncrier-16.0.0.tar.gz" } ], "16.1.0": [ { "comment_text": "", "digests": { "md5": "94e02a754a97c24aa37d293286b7a1b3", "sha256": "2d3dbfdb033902e950116a7a057b56c41eefb48da69d6d741a98e5b4926cb94b" }, "downloads": -1, "filename": "towncrier-16.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "94e02a754a97c24aa37d293286b7a1b3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14682, "upload_time": "2016-03-25T06:52:10", "url": "https://files.pythonhosted.org/packages/28/d6/3915c262f25bf1f7fbdb04c28c2ba74b01555f34af7b10f38ed3b229dfc8/towncrier-16.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2285fe4115b01efa128c801c12cab93c", "sha256": "69d1562ec3e77d857879cefe2b48543e8a4cca28da8219fdc65a28a66ae6ef50" }, "downloads": -1, "filename": "towncrier-16.1.0.tar.gz", "has_sig": false, "md5_digest": "2285fe4115b01efa128c801c12cab93c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9709, "upload_time": "2016-03-25T06:52:25", "url": "https://files.pythonhosted.org/packages/85/ec/c9478302dc164c01c539e0131c48016c67980b853708f9da3bc3cbfdcaaa/towncrier-16.1.0.tar.gz" } ], "16.12.0": [ { "comment_text": "", "digests": { "md5": "79f33082c187aa4e934753f5d49fcff0", "sha256": "2a3268707b3e35f9af170298b11beb31826b5a5a102a9096b056aec3b7e34d26" }, "downloads": -1, "filename": "towncrier-16.12.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "79f33082c187aa4e934753f5d49fcff0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17017, "upload_time": "2016-12-07T11:26:31", "url": "https://files.pythonhosted.org/packages/fe/34/2a4f2dc9f76b319a9e1583e13faa48b7e98477630d944081c384469c2d9f/towncrier-16.12.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ee21371f3957fce22ed39abe521b5520", "sha256": "9896065417e819f691e70502e2232bc1b712a643ae28aa5f7fb8bb69b57f61d6" }, "downloads": -1, "filename": "towncrier-16.12.0.tar.gz", "has_sig": false, "md5_digest": "ee21371f3957fce22ed39abe521b5520", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13681, "upload_time": "2016-12-07T11:26:33", "url": "https://files.pythonhosted.org/packages/b3/ff/bfa0a2bf0ef081c85de76bd4fe274be908e20d7e7e6d6a3a6f5f15bcb3eb/towncrier-16.12.0.tar.gz" } ], "17.1.0": [ { "comment_text": "", "digests": { "md5": "2bb804fa06b4964db6d5c6f62be75321", "sha256": "e0f3253ddc5f9f7d97fb9d46a0ca50eb61c1e1a1bd872c647a8441b58487f179" }, "downloads": -1, "filename": "towncrier-17.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2bb804fa06b4964db6d5c6f62be75321", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16996, "upload_time": "2017-01-14T21:00:23", "url": "https://files.pythonhosted.org/packages/05/77/1765a6f1a73b93c61ceeb1c5e63f065ebe60d6487161df07d805a4b4f448/towncrier-17.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d50af3edcfb8cb1106522a089333fea4", "sha256": "8e7bd7e64b12e88bf49172afc51d0e718eab8ebfa2a9bb13121d5a3859f87a64" }, "downloads": -1, "filename": "towncrier-17.1.0.tar.gz", "has_sig": false, "md5_digest": "d50af3edcfb8cb1106522a089333fea4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13765, "upload_time": "2017-01-14T21:00:25", "url": "https://files.pythonhosted.org/packages/2c/af/9062bcc00de8084e8511a356acb8f12ab0d47994f1f8c79ed2e0bdbb4fe0/towncrier-17.1.0.tar.gz" } ], "17.4.0": [ { "comment_text": "", "digests": { "md5": "7d537b40156b1a788994e4b9c08c8737", "sha256": "fed8df8f24813ea8bf4d2304b18c98d6a1aec180455ee8daa3a50701153ac7bd" }, "downloads": -1, "filename": "towncrier-17.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7d537b40156b1a788994e4b9c08c8737", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17059, "upload_time": "2017-04-15T05:01:43", "url": "https://files.pythonhosted.org/packages/10/d6/7efa0e6149899b39d8f5b5a04193ebd65f980be0bfbc08e82f72bc700afa/towncrier-17.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "319b625b8d5c533c9e99dd56db1b12a7", "sha256": "fbccc96ca6d66f8eae1944e0f6672ae24820fbb2c6d0c4433cb4efcd495078d1" }, "downloads": -1, "filename": "towncrier-17.4.0.tar.gz", "has_sig": false, "md5_digest": "319b625b8d5c533c9e99dd56db1b12a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13746, "upload_time": "2017-04-15T05:01:45", "url": "https://files.pythonhosted.org/packages/70/0d/6bd2ad0820a9cf9e2ec3da4330a0ccb6737d01055246e3f3fe67852b63f3/towncrier-17.4.0.tar.gz" } ], "17.8.0": [ { "comment_text": "", "digests": { "md5": "078e9a46a44d44c737e5e9abacee512c", "sha256": "bf5752f4c0d61da1f9d8deef0b14f324f04d88053ef35e406b704b2ee0948ebf" }, "downloads": -1, "filename": "towncrier-17.8.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "078e9a46a44d44c737e5e9abacee512c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18697, "upload_time": "2017-08-19T08:27:18", "url": "https://files.pythonhosted.org/packages/80/1c/0790764a34d115708a57cfeb0cd2c4fd967d106d327f4c2cae65df5f2e34/towncrier-17.8.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f210d1f0de65426dd5812fddae944658", "sha256": "8c0e5949851a9771a50d637b708322d73a4d4090fa354e5cb24a4f7464e81d47" }, "downloads": -1, "filename": "towncrier-17.8.0.tar.gz", "has_sig": false, "md5_digest": "f210d1f0de65426dd5812fddae944658", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17164, "upload_time": "2017-08-19T08:27:21", "url": "https://files.pythonhosted.org/packages/07/54/66d0de4311ead3c5514bf9dafd25cb17816292532d4f486036a807f9c0c8/towncrier-17.8.0.tar.gz" } ], "18.5.0": [ { "comment_text": "", "digests": { "md5": "2518a16e05c3ab3d6902932400a7161d", "sha256": "4643dafdde7d503cd6990dfba8043faa9f920fc4af0c2e69eb25488760534ac0" }, "downloads": -1, "filename": "towncrier-18.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2518a16e05c3ab3d6902932400a7161d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16940, "upload_time": "2018-05-16T22:19:09", "url": "https://files.pythonhosted.org/packages/33/41/b3e140bcf7ab4da80ebb5b9bdd3c7e5bb81d62a7934dc82fb988acf5d30d/towncrier-18.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "189bdc778feb298775def92e55f6479b", "sha256": "2b6da2c90c0f053232775d96e816687bf607062b9b2947f625f5586c357cbd59" }, "downloads": -1, "filename": "towncrier-18.5.0.tar.gz", "has_sig": false, "md5_digest": "189bdc778feb298775def92e55f6479b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16333, "upload_time": "2018-05-16T22:19:11", "url": "https://files.pythonhosted.org/packages/d0/78/06c63e3e83edebec636996d74eb6b384c706fccf3b391858890428e6bdc7/towncrier-18.5.0.tar.gz" } ], "18.6.0": [ { "comment_text": "", "digests": { "md5": "7c38c0ad62b1084bc66928d887bdd5a6", "sha256": "3c0da1de042861df9030c0608d346d55cabe14cfa7cf04045f22b0af63eb8aa7" }, "downloads": -1, "filename": "towncrier-18.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "7c38c0ad62b1084bc66928d887bdd5a6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19134, "upload_time": "2018-07-05T09:47:09", "url": "https://files.pythonhosted.org/packages/c9/77/129a569fa2e0b9121cc2a40ceacbfeb9348a49d97a07524f21dd4d53df25/towncrier-18.6.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3152834ec42bed50763bb64e290bbd6b", "sha256": "cfde66ada782db9269407eaefb38562d3d2a4bc4d7647c0b2197ed184b869aae" }, "downloads": -1, "filename": "towncrier-18.6.0.tar.gz", "has_sig": false, "md5_digest": "3152834ec42bed50763bb64e290bbd6b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18810, "upload_time": "2018-07-05T09:47:11", "url": "https://files.pythonhosted.org/packages/52/f9/b4d2b0f68d9a1c57ac89642fc2b6d6f0c9944fa5b9266966dbac3fe2ae6d/towncrier-18.6.0.tar.gz" } ], "18.6.0rc1": [ { "comment_text": "", "digests": { "md5": "60b9cca5f9f4acb22ef28c0bc11beb4d", "sha256": "54e9106061bad0425b62d0bf264ef3b6a443e8afd50f903f11f387a089b80204" }, "downloads": -1, "filename": "towncrier-18.6.0rc1-py3-none-any.whl", "has_sig": false, "md5_digest": "60b9cca5f9f4acb22ef28c0bc11beb4d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19185, "upload_time": "2018-06-22T12:50:58", "url": "https://files.pythonhosted.org/packages/6e/34/8ee543118b2f3063136779d5c9f8f4b8b42617d099e77f23676e73ad1595/towncrier-18.6.0rc1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b52a5d9cc091427d6bd4967e75ea58c3", "sha256": "2f3797a603c889dfd9102113d7438fccedf500c6ebb5953b681117395e54923b" }, "downloads": -1, "filename": "towncrier-18.6.0rc1.tar.gz", "has_sig": false, "md5_digest": "b52a5d9cc091427d6bd4967e75ea58c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18810, "upload_time": "2018-06-22T12:50:59", "url": "https://files.pythonhosted.org/packages/f2/1a/d21616e48511aea2e4a5f1902a848a47e1887dbc5fbcabc7747a51214116/towncrier-18.6.0rc1.tar.gz" } ], "19.2.0": [ { "comment_text": "", "digests": { "md5": "30a6afd7ebd205b350a9bc5519a7d969", "sha256": "de19da8b8cb44f18ea7ed3a3823087d2af8fcf497151bb9fd1e1b092ff56ed8d" }, "downloads": -1, "filename": "towncrier-19.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "30a6afd7ebd205b350a9bc5519a7d969", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20699, "upload_time": "2019-02-15T00:28:05", "url": "https://files.pythonhosted.org/packages/53/15/b930c010c822478866958e57c4dfea2db5d5161e04cbc1a9545ed10a4b42/towncrier-19.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "64b99cb60a96d57bd8ee4fb29ccf94ec", "sha256": "48251a1ae66d2cf7e6fa5552016386831b3e12bb3b2d08eb70374508c17a8196" }, "downloads": -1, "filename": "towncrier-19.2.0.tar.gz", "has_sig": false, "md5_digest": "64b99cb60a96d57bd8ee4fb29ccf94ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20250, "upload_time": "2019-02-15T00:28:07", "url": "https://files.pythonhosted.org/packages/eb/90/cdaaf0c0c03b17c3de0b9132334e69c8cde6028fadc2e81762fd312e7cdf/towncrier-19.2.0.tar.gz" } ], "19.9.0rc1": [ { "comment_text": "", "digests": { "md5": "305a7a49c5003a38f0179d58f91aa21a", "sha256": "f0375efce604977b4098c18dc805d5ce0de59b232db8374cb3ca98b078b5afae" }, "downloads": -1, "filename": "towncrier-19.9.0rc1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "305a7a49c5003a38f0179d58f91aa21a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 28439, "upload_time": "2019-09-15T16:55:24", "url": "https://files.pythonhosted.org/packages/28/09/0eced9995338f09f742cc75b56fcc7eef4aa0250919840b9f22df496ddb1/towncrier-19.9.0rc1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b6d5e613f58d10370fa660819a845a9b", "sha256": "d0c49060522e4b45d02c8ffe0b63e5ffa660830f681446945212e5c66314228b" }, "downloads": -1, "filename": "towncrier-19.9.0rc1.tar.gz", "has_sig": false, "md5_digest": "b6d5e613f58d10370fa660819a845a9b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25719, "upload_time": "2019-09-15T16:55:26", "url": "https://files.pythonhosted.org/packages/08/e0/8325cf4c5d2ce7e233580dd06976f30bf43a14e81feb6911e15a59d9be53/towncrier-19.9.0rc1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "30a6afd7ebd205b350a9bc5519a7d969", "sha256": "de19da8b8cb44f18ea7ed3a3823087d2af8fcf497151bb9fd1e1b092ff56ed8d" }, "downloads": -1, "filename": "towncrier-19.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "30a6afd7ebd205b350a9bc5519a7d969", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20699, "upload_time": "2019-02-15T00:28:05", "url": "https://files.pythonhosted.org/packages/53/15/b930c010c822478866958e57c4dfea2db5d5161e04cbc1a9545ed10a4b42/towncrier-19.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "64b99cb60a96d57bd8ee4fb29ccf94ec", "sha256": "48251a1ae66d2cf7e6fa5552016386831b3e12bb3b2d08eb70374508c17a8196" }, "downloads": -1, "filename": "towncrier-19.2.0.tar.gz", "has_sig": false, "md5_digest": "64b99cb60a96d57bd8ee4fb29ccf94ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20250, "upload_time": "2019-02-15T00:28:07", "url": "https://files.pythonhosted.org/packages/eb/90/cdaaf0c0c03b17c3de0b9132334e69c8cde6028fadc2e81762fd312e7cdf/towncrier-19.2.0.tar.gz" } ] }