Skip to main content

release-mgr

A simple tool for managing software releases on GitHub.

This is a polyglot tool, so it aims to supports all kinds of Version metadata files for all languages. I've added the ones that I use every day but feel free to send a PR with the version file for your favourite programming language.

Installation

release-mgr is available on pypi:

pip3 install --user release_mgr

Usage

Usage: release-mgr [OPTIONS]

  A simple tool for managing software releases on GitHub.

Options:
  -v, --version TEXT        Specify the version to go to
  -l, --pre-release         Indicates this is a pre-release
  -d, --draft               Indicates this is a draft release
  -r, --repo TEXT           The repository to create the release on in
                            :owner/:repo format, will attempt to parse from
                            git remotes if not given

  -t, --title               If given use the release name as the markdown
                            title, otherwise title is omitted for Github style
                            formatting

  -m, --minor               Bump minor version
  -j, --major               Bump major version
  -p, --patch               Bump patch version
  -s, --skip-version-files  Don't try to update version metadata files
                            (package.json, setup.py etc.)

  --skip-upload             Don't try to create a release on github and don't
                            push the commits

  --help                    Show this message and exit.

Example run

chasinglogic@raza ~/Code/release-mgr master λ release-mgr --patch
Creating release 0.1.2 8cc48996b099bdb4d2e04e6eeb7a2598381baf68
Previous version 0.1.1 0076879f4ca72a5e30a023c5f83dbcbb34a62f58
Pre-release? False
Draft release? False
Repository chasinglogic/gh-release
============= Release Notes ============
# Release 0.1.2

- 8cc4899 fix: Return True if **any** version file is updated
- 5473ff9 fix: git/ssh urls end with .git
- 429e675 fix: Stage the version file when updated

# Contributors to this Release

- Mathew Robinson <mathew@chasinglogic.io>

Does this look correct? (y/N) y
Updated version in: pyproject.toml
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 12 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 298 bytes | 298.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
To github.com:chasinglogic/release_mgr.git
   8cc4899..4e89ce6  master -> master
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
To github.com:chasinglogic/release_mgr.git
 * [new tag]         0.1.2 -> 0.1.2

Metadata

Release files for release-mgr 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for release-mgr 0.3.1
File Size Uploaded
release-mgr-0.3.1.macosx-13-x86_64.tar.gz 17.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for release-mgr 0.3.1
File Interpreter ABI Platform
release_mgr-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 30.2 kB

Release files / release-mgr-0.3.1.macosx-13-x86_64.tar.gz

Download URL release-mgr-0.3.1.macosx-13-x86_64.tar.gz
Size 17.7 kB
Tags Source
SHA-256 checksum
How to use checksums
a3125f7a62152a1dd57bf4cb7812bcafdf7d67ed4dcb5ced32de76859f024c07
BLAKE2b-256 checksum
How to use checksums
9192378ca823007c9fab3b908efd62799059e174c42febc76f0ef14c73eac18f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.9

Release files / release_mgr-0.3.1-py3-none-any.whl

Download URL release_mgr-0.3.1-py3-none-any.whl
Size 12.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
58ec9de9d5bf5be9a8cb1d7324ccf154f1d991a7776f5dbfcb1364b338ec66c5
BLAKE2b-256 checksum
How to use checksums
0f424cf09e42f57fad0dd9fb6bd15189afd16dfb039322b49548fd6a60413e33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.9

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.5

2 release files

0.1.4

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page