Skip to main content

Bump version by modifying source code. No regex needed from user.

Project description

jiggle_version

Version bumper that finds version numbers in source code and increases the build number by modifying source.

With jiggle-version, the source code is authoritative, as compared to some tools where the source control tag is authoritative, or the pyproject.toml is authoritative.

This tool was written before pyproject.toml was a well-supported standard. You should consider instead using poetry version patch and looking up the __version__ from the package metadata and not storing the version anywhere in source code.

Special attention to making sure you don't have to write regex or do complex configuration.

# This is just a command line tool, keep your venv clean using pipx
pipx install jiggle-version
 
# bump version
jiggle-version here

# bump version of specific module
jiggle_version here --module=my_module

# just find version
git --tag $(jiggle-version find)

Badges

Libraries.io dependency status for latest release Downloads

Coverage Status CodeFactor

Python Versions Supported

3.6, 3.7, 3.8, and forward. Pypi still hosts the old version that supported python 2 and earlier.

Opinionated

A library should have one working, no-options, no questions asked scenario, e.g.

jiggle-version here
# find, bump & update version strings in source code

An opinionated library has an opinion about the right way to do it. That said, if the library can discover existing conventions, it should discover them and use them. If you don't like it, see the end for competing opinionated libraries and their philosophy, such as vcs-tag-only, regex-more-regex-all-day-regex.

The following constraints enable "drop in and go"

No Config, No Regex

If the config is more complex than re-writing the code from scratch, there is something wrong with a library. Forcing the developer to write regex to use a utility is a colossal cop-out.

Security

Jiggle version will not execute python code other than ast.literal_eval. Some package versions stored in source code can only be handled by executing setup.py or executing the file with dunder version. Those scenarios are not handled.

Documentation

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

jiggle_version-1.1.0.tar.gz (25.1 kB view hashes)

Uploaded Source

Built Distribution

jiggle_version-1.1.0-py3-none-any.whl (33.0 kB view hashes)

Uploaded Python 3

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