Skip to main content

A simple tool to bump version number of a Python package

Project description

author:

Lele Gaifax

contact:

lele@metapensiero.it

license:

GNU General Public License version 3 or later

This is a very simple tool that I use to automatize the management of the version.txt file I usually put in my Python packages. There are tons of equivalent tools around, but none of them fullfilled my needs.

It uses the package Versio to handle different versioning schemas, with an additional simple2 scheme for versions composed simply by major.minor numbers.

Examples:

$ echo "0.0" > version.txt
$ bump_version --dry-run
Old version: 0.0
New version: 0.1

$ bump_version -n --field major
Old version: 0.0
New version: 1.0

$ echo "0.0.0.0" > version.txt
$ bump_version -f minor --scheme simple4
$ cat version.txt
0.1.0.0

$ echo "0.9" > version.txt
$ bump_version -n -f release --index 1 -s pep440
Old version: 0.9
New version: 0.10

$ bump_version -f release -i 1 -s pep440
$ cat version.txt
0.10

$ bump_version -n -f pre -i 1 -s pep440
Old version: 0.10
New version: 0.10a1

$ bump_version -n -f post -i 1 -s pep440
Old version: 0.10
New version: 0.10.post1

$ bump_version -f post -i 1 -s pep440
$ bump_version -n -f dev -i 1 -s pep440
Old version: 0.10.post1
New version: 0.10.post1.dev1

The version scheme is by default automatically determined from current version (just simple versions though):

$ echo "1.0" > version.txt
$ bump_version -n
Old version: 1.0
New version: 1.1

$ echo "1.0.0" > version.txt
$ bump_version -n
Old version: 1.0.0
New version: 1.0.1

$ echo "1.0.0.0" > version.txt
$ bump_version -n
Old version: 1.0.0.0
New version: 1.0.0.1

The current version may not exist yet, but obviously you must specify the right schema:

$ rm -f version.txt
$ bump_version -n -s simple2
Old version: 0.0
New version: 0.1

$ bump_version -s simple3
$ cat version.txt
0.0.1

Changes

1.3 (2017-03-22)

  • Minor adjustments to take off the dust

1.2 (2016-03-23)

  • New option to automatically select the versioning schema, when one exists

  • New simple test suite

1.1 (2015-09-09)

  • Properly include needed sources in the distribution

1.0 (2015-08-09)

  • Reimport from metapensiero.extjs.desktop

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

metapensiero.tool.bump_version-1.3.tar.gz (5.7 kB view details)

Uploaded Source

File details

Details for the file metapensiero.tool.bump_version-1.3.tar.gz.

File metadata

File hashes

Hashes for metapensiero.tool.bump_version-1.3.tar.gz
Algorithm Hash digest
SHA256 5d63435430b8786188cf48694b7d1d6de61da09221c66bf81b4c29fd9ac46b2b
MD5 a59e7db100a8ba870f669352a6106116
BLAKE2b-256 e312f88b5aa35fd413de44b57e1ede3066ce87d23a420ded841e2793cd2d4880

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page