Skip to main content

Supported Python versions PyPI - Version Documentation status Ruff

Read the freaking changelog is a tool to manage changelogs and versioning.

As the name implies, rtfc helps you produce clear, well-structured changelogs, leaving your users no excuse for being surprised by what changed between releases.

rtfc is heavily inspired by the great Towncrier project.

Installation

From PyPI:

pip install rtfc

Usage

Configure rtfc in the [tool.rtfc] table of your pyproject.toml (or in an rtfc.toml file), and add the insert marker to your changelog document:

[tool.rtfc]
changelog = "docs/source/changelog.rst"
Changelog
=========

.. rtfc-insert

Changelog entries are individual files created along the changes of a pull request, avoiding the merge conflicts a shared changelog file causes:

$ rtfc new --section bugfix --meta gh_issue=123 --content "Fix a bug."
Created changelog/d0592011.bugfix.rtfc

Each entry holds a TOML frontmatter and the change description, written in the documentation format of your project:

+++
date = 2026-08-06
nonce = "d0592011"
section = "bugfix"

[metadata]
gh_issue = 123
+++
Fix a bug.

Validate the configuration and the entries, typically in CI:

$ rtfc check
OK: 1 valid entries

On release, combine the entries into the changelog. The version block is inserted after the marker, and the entry files are deleted:

$ rtfc build --version 1.2.0
Updated docs/source/changelog.rst

A sphinx extension is also provided, rendering the not-yet-released entries when building your documentation.

Download files

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

Source Distribution

rtfc-0.1.0.tar.gz (119.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rtfc-0.1.0-py3-none-any.whl (26.1 kB view details)

Uploaded Python 3

File details

Details for the file rtfc-0.1.0.tar.gz.

File metadata

  • Download URL: rtfc-0.1.0.tar.gz
  • Upload date:
  • Size: 119.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.5

File hashes

Hashes for rtfc-0.1.0.tar.gz
Algorithm Hash digest
SHA256 519538cf8b15a37371c7eeab0b13f684b3f0f9576d63bd3d6d35fa1004e4b468
MD5 9fbd95fe89ff71a8660356c47b22e9bc
BLAKE2b-256 b3bd96fff93ec30929fbe96905cc0fc2a8f7f26843b58f186766041f40417e07

See more details on using hashes here.

File details

Details for the file rtfc-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: rtfc-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 26.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.5

File hashes

Hashes for rtfc-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bd8ef83e75cedb8e2deadd024d3ac949ecae9bb42d0cbbd3187400f6201b6d13
MD5 5a6369e1dcd9ef0bc37ceb7676118004
BLAKE2b-256 a132c52ebb6125c684bc57a4999c348f7439c71cde60db2638323c3a89d0417e

See more details on using hashes here.

Supported by

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