Skip to content

kobotoolbox/release-notes-writer

Repository files navigation

Setup

1. Create a virtual environment and install dependencies

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

2. Configure environment variables

Copy env.sample to env, fill in your values, then source it:

cp env.sample env
# edit env with your values
source ./env

release

One-shot script that runs create-kobo-release.sh then create-gh-releases.py.

Prerequisites

Complete the Setup steps above.

release.sh will exit with a clear error if KOBO_BASE_DIR or GITHUB_API_TOKEN are not set.

Usage:

./release.sh <tag>

Example:

./release.sh 2.026.07h

create-kobo-release

Tags and updates kobo-docker and kobo-install for a new release.

Prerequisites

source ./env   # sets KOBO_BASE_DIR

Usage:

./create-kobo-release.sh <tag>

create-gh-releases

Creates GitHub releases for the following KoboToolbox repositories:

  • kobo-docker — body links to the KPI release
  • kobo-install — body links to the KPI release
  • KPI — body uses CHANGELOG.md from the changelog/<tag> branch, falls back to auto-generated release notes

Prerequisites

Complete the Setup steps above.

Usage:

python3 create-gh-releases.py <tag>

Example:

python3 create-gh-releases.py 2.026.07h

Deprecated: release-notes.py is no longer maintained. Its documentation is kept below for reference.

release-notes.py (deprecated)

Generates a Markdown or CSV table of PRs merged between two tags for a given repo.

Prerequisites

source ./env   # sets KOBO_BASE_DIR

Usage:

python3 release-notes.py [--markdown] <repo> <previous-tag> <new-tag>

Examples:

python3 release-notes.py kpi 2.025.10 2.026.07h
python3 release-notes.py --markdown kpi 2.025.10 2.026.07h
  • Without --markdown: outputs CSV to stdout
  • With --markdown: outputs a Markdown table to stdout
  • Warnings about missing PRs are printed to stderr

About

Compile release notes as a Markdown table from PR titles and descriptions

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors