skillfed

reno

RElease NOtes manager

reno v4.1.0 250.3K downloads/30d#8,634 on PyPI
Permissive license DORMANT released

What it is and what it does

Reno is a release notes manager built for distributed teams that want to avoid merge conflicts and manual coordination when writing release notes. Instead of a single changelog file that multiple developers edit simultaneously, reno stores each note in its own file alongside the code it describes. This lets developers write notes when changes are fresh, submit them through the same code review process, and avoid rebasing conflicts. Reno automatically groups notes by category (features, bug fixes, known issues, etc.) and ties them to releases using git tags, so you don't have to manually track which changes went into which version.

The package integrates with Sphinx for documentation builds and supports backporting notes to maintenance branches. It uses git as its storage backend, meaning release notes live in version control with the code they describe. Reno is designed for high-throughput teams and is used primarily in OpenStack projects. The package is currently dormant—no active development for 893 days—but remains stable and functional for its core workflow.

Use it for:

  • Coordinate release notes across a large distributed team without merge conflicts by storing each note in a separate file.
  • Automatically generate release notes tied to git tags, eliminating manual version tracking and the risk of missing changes.
  • Backport bug-fix notes from a main branch to maintenance branches alongside code patches.
  • Integrate release notes into Sphinx documentation builds for automated, styled release history.
  • Correct or update published release notes after a release without changing the version they're associated with.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Reno manages release notes by storing individual note files in git, organizing them by category, and automatically generating compiled release notes tied to git tags.

Yes, if you need a git-native, merge-conflict-free release notes workflow for a team. The dormant maintenance status is acceptable for a stable, focused tool with no known vulnerabilities. Not recommended if you need active development, frequent updates, or support for non-git workflows.

Install

reno on PyPI

pip

pip install reno

uv

uv add reno

poetry

poetry add reno

Installing reno

Before you install

Low install friction with a pure-Python wheel and four straightforward runtime dependencies. Maintenance is dormant—last release was 893 days ago—so expect no active bug fixes or feature work, though the package remains functional for its core use case.

License in practice

Licensed under Apache (permissive), so you can use, modify, and distribute reno freely in commercial and open-source projects without copyleft obligations.

Quickstart

pip install reno

reno new bugfix-title
reno report

Requires git repository initialized in the working directory; reno reads git tags and commit history to associate notes with versions.

Verify before relying

  • Whether dormant status means security patches will be applied if vulnerabilities are discovered.
  • Whether the package's Sphinx integration works with current Sphinx versions without additional configuration.
  • Compatibility with git workflows other than linear or simple branching (e.g., complex rebase scenarios).

Package facts

License not declared (permissive)
Python support supports the current Python release (>=3.6)
Install friction low — pure-Python wheel
Runtime dependencies 4 — PyYAML, dulwich, packaging, pbr
Maintenance dormant — 893 days since the last release
First released
Downloads 250,254/month — #8,634 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: reno-4.1.0-py3-none-any.whl

Environment :: OpenStackIntended Audience :: Information TechnologyIntended Audience :: System AdministratorsLicense :: OSI Approved :: Apache Software LicenseOperating System :: POSIX :: LinuxProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPython

Tags

release notes managementgit-based changelog generatordistributed release notes workflowautomated release note compilationrelease notes organization toolsphinx release notes integrationversion-tagged release notes
release-managementgit-nativeopenstack

More Documentation packages

docutils

Docutils converts plaintext documentation in…

unclear · top 1,000 on PyPI

Sphinx

Sphinx generates professional documentation…

permissive · top 1,000 on PyPI

griffe

Griffe extracts the complete structure and…

permissive · top 1,000 on PyPI

sphinxcontrib-serializinghtml

A Sphinx extension that outputs documentation…

permissive · top 1,000 on PyPI

alabaster

Alabaster is a clean, responsive Sphinx theme…

permissive · top 1,000 on PyPI

sphinxcontrib-htmlhelp

A Sphinx extension that generates HTML help…

permissive · top 1,000 on PyPI

git-review

git-review is a command-line tool that…

permissive · top 15,000 on PyPI

setuptools-scm-git-archive

A setuptools_scm plugin that extracts version…

permissive · top 5,000 on PyPI

autosemver

Automatically generates semantic versions for…

copyleft · top 15,000 on PyPI

sphinxcontrib-log-cabinet

A Sphinx extension that organizes changelog…

permissive · top 15,000 on PyPI

changelog

A Sphinx extension that generates formatted…

permissive · top 15,000 on PyPI

gitman

Gitman manages nested Git repositories as…

permissive · top 15,000 on PyPI

mkdocs-meta-manager

A MkDocs plugin that automatically applies meta…

permissive · top 5,000 on PyPI

charm-refresh-build-version

Writes charm version information into…

unclear · top 15,000 on PyPI

ghstack

ghstack submits stacks of local Git commits to…

permissive · top 15,000 on PyPI

sphinx-last-updated-by-git

A Sphinx extension that automatically extracts…

permissive · top 15,000 on PyPI