Project Manager Versioning tool.
Project description
Proman Versioning
Overview
Project Manager Versioning is a PEP-440 compliant tool for automating project versions using conventional commits.
Install
pip install proman-versioning
Setup
This tool is designed to work with any textfile using a templating pattern and path to the file.
Configuring versions
Configuration can be performed with either the .versioning
or pyproject.toml
files.
Global configuration settings:
Specific types of releases can be disabled by setting the respective release to false.
Disable development releases:
enable_devreleases = false
Disable pre-releases:
enable_prereleases = false
Disable post-releases:
enable_postreleases = false
File specific settings:
Use different version compatibiliy type:
compat = "semver"
Update only the release version for a configuration:
release_only = true
Example .versioning
The .versioning
config is a non-specfile based project file using TOML. This is the
preferred configuration for non-python projects that may use this tool.
[proman]
version = "1.2.3"
[proman.versioning]
disable_devreleases = true
[[tool.proman.versioning.files]]
filepath = "pyproject.toml"
pattern = "version = \"${version}\""
[[proman.versioning.files]]
filepath = "example/__init__.py"
pattern = "__version__ = '${version}'"
Example pyproject.toml
[tool.proman]
version = "1.2.3"
[tool.proman.versioning]
[[tool.proman.versioning.files]]
filepath = "pyproject.toml"
pattern = "version = \"${version}\""
[[tool.proman.versioning.files]]
filepath = "example/__init__.py"
pattern = "__version__ = '${version}'"
Example setup.cfg
Setuptools allows setup.cfg
to pull the version from the application. This
should be used in tandem with either of the above configurations to control
versions for a project.
[metadata]
name = example
version = attr: src.VERSION
...
References
Project details
Release history Release notifications | RSS feed
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
Hashes for proman-versioning-0.4.0a2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | b4b484aacb6f0723f2ea8a044c0c682c82946846efcb49d4072969e53c05a2b9 |
|
MD5 | da4e0cf031a1d3b46933b450925bc4ff |
|
BLAKE2b-256 | 9517eeea70d00d5d998fb2d03006762fb4e6dd0f5210ffe1851e24ae68457c83 |
Hashes for proman_versioning-0.4.0a2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b2e4242981ea5a14f136eba638df3435b43de9b32960d41e26797fe10e8fe39d |
|
MD5 | e2ec5fda4e7bd62c04b312791b7b0c74 |
|
BLAKE2b-256 | d71052c036c3f7870b5058a9d89b204d9c30cf53735b5aaa7a0bc6a6b1b90c37 |