A simple tool for managing software releases on GitHub.
Project description
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
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for release-mgr-0.3.0.macosx-13-x86_64.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 98eb26607cd9712c3e40eb777a3234422e6e182a2e9481f92b373360ff4b2ecf |
|
MD5 | 49d463a23ec6d5477e8f86be8cc7e023 |
|
BLAKE2b-256 | a844434086879142b5144ba96a8d495271e660bbd3f7b7cd3cf4aea2352634c1 |
Close
Hashes for release_mgr-0.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5de9dcf362970a94ef10d7f00615223a57ccf74c36e6b2018d8f66d0d67dae71 |
|
MD5 | a8d3c95f0ffb6a030d123fa67c12f194 |
|
BLAKE2b-256 | 9afa44659df603202f7b9dd0070cecdbaf6304abcfb2ff2df54c6c878f01fe2d |