Skip to main content

zest.releaser plugin to call towncrier

Project description

zestreleaser.towncrier

This calls towncrier when releasing a package with zest.releaser. towncrier updates your history file (like CHANGES.rst) based on news snippets. This is for example used by pip.

The plugin will call towncrier --version <package version> --yes. You can get a preview of the result yourself by calling towncrier --version 1.2.3 --draft.

The towncrier command should be on your PATH. The plugin can also find it when it is in the same directory as the fullrelease script (or prerelease/postrelease).

Installation

Install zestreleaser.towncrier with pip:

$ pip install zestreleaser.towncrier

Then you can run fullrelease like you would normally do when releasing a package.

Contribute

Support

If you are having problems, please let us know by filing an issue.

License

The project is licensed under the GPL.

pyproject.toml example

towncrier needs a configured pyproject.toml file in the root of the package, next to the setup.py. For reference, here is the literal pyproject.toml file from zestreleaser.towncrier:

[tool.towncrier]
issue_format = "`Issue #{issue} <https://github.com/collective/zestreleaser.towncrier/issues/{issue}>`_"
filename = "CHANGES.rst"
directory = "news/"
title_format = "{version} ({project_date})"
# First underline is used for version/date header.
# Second underline is used for the type names (like 'Bug fixes:').
underlines = ["-", ""]

[[tool.towncrier.type]]
directory = "breaking"
name = "Breaking changes:"
showcontent = true

[[tool.towncrier.type]]
directory = "feature"
name = "New features:"
showcontent = true

[[tool.towncrier.type]]
directory = "bugfix"
name = "Bug fixes:"
showcontent = true

[tool.isort]
profile = "black"

Contributors

Changelog

1.3.0 (2022-04-19)

New features:

  • Use the build subcommand for towncrier to build the changelog. Fixes compatibility with towncrier 21.9.0 or later. Requires towncrier 19.9.0 or later. [mcflugen] (Issue #22)

  • For parsing, use tomli when on Python 3, toml on Python 2. Same as towncrier did until recently. [maurits] (Issue #23)

1.2.0 (2019-03-05)

New features:

  • Use ‘python -m towncrier’ when the script is not easily findable. Still check the directory of the fullrelease script first. No longer check the PATH. [maurits] (Issue #17)

Bug fixes:

  • Do not run sanity checks or run draft during postrelease. [maurits] (Issue #16)

1.1.0 (2019-03-05)

New features:

  • Rerelease 1.0.3 as 1.1.0, as it contains new features. (Issue #9)

1.0.3 (2019-03-05)

New features:

  • Report on sanity of newsfragments: do they have the correct extensions? Is at least one found? Show dry-run (draft) of what towncrier would do. [maurits] (Issue #9)

  • Handle multiple news entries per issue/type pair. [maurits] (Issue #14)

1.0.2 (2019-03-04)

Bug fixes:

  • Fixed finding towncrier when sys.argv is messed up. [maurits] (Issue #6)

1.0.1 (2019-02-20)

Bug fixes:

  • Tell bumpversion to not update the history. [maurits] (Issue #10)

1.0.0 (2019-02-06)

New features:

  • Warn and ask when towncrier is wanted but not found. [maurits] (Issue #7)

1.0.0b3 (2018-05-17)

New features:

  • Require towncrier 18.5.0 so we don’t need a package name in the config. [maurits] (Issue #3)

Bug fixes:

  • First look for towncrier next to the full/prerelease script. Then fall back to looking on the PATH. [maurits] (Issue #4)

1.0.0b2 (2018-05-16)

Bug fixes:

  • Do not fail when pyproject.toml file is not there. [maurits] (Issue #2)

1.0.0b1 (2018-05-15)

New features:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zestreleaser.towncrier-1.3.0.tar.gz (17.3 kB view details)

Uploaded Source

File details

Details for the file zestreleaser.towncrier-1.3.0.tar.gz.

File metadata

File hashes

Hashes for zestreleaser.towncrier-1.3.0.tar.gz
Algorithm Hash digest
SHA256 7a2fb65a760efc3b6448f8977b6181d801dd9a46625a404154240785f365d357
MD5 33fe84d7259b12aeb01ed14a2108edd0
BLAKE2b-256 2b01012cec7643e8179c08cc1a7cb37d2287fed898a7db3ddcf8ac91b083465e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page