Reno: Release Notes Manager

4.1.0 · active · verified Thu Apr 16

Reno is a release notes manager designed for high-throughput, distributed development teams. It uses Git to store release notes alongside the code, facilitating detailed and accurate notes, peer review, and easy back-porting. It organizes notes into logical groups (features, bug fixes, known issues) and integrates with Sphinx for automated documentation builds. The current version is 4.1.0, with releases tied to the OpenStack development cycle, typically several times a year.

Common errors

Warnings

Install

Imports

Quickstart

Reno is primarily a command-line interface (CLI) tool for managing release notes within a Git repository. The Python API is mostly for internal use or advanced integrations. A typical workflow involves `reno init` to set up the repository, `reno new` to create new note fragments, and `reno report` or `reno lint` to process them. The quickstart here shows how to import core components programmatically, though direct CLI usage is more common. To use `reno` effectively, consult its command-line documentation.

import os
from reno.config import Config
from reno.main import setup_logging, main

# Simulate command-line arguments and environment
# For a real application, these would come from sys.argv or direct configuration
# os.environ['RENO_DEBUG'] = '1'

# Initialize logging for reno output
setup_logging()

# Example: Setting up a reno repository (usually done once via 'reno init')
# This is a conceptual quickstart; reno is primarily a CLI tool.
# To actually run commands, you'd typically invoke the 'reno' CLI.
# Example for generating release notes (conceptually):
# config = Config()
# config.parse_args(['reno', 'new', 'my-first-note', '--type', 'feature'])
# main(config)

view raw JSON →