This release is a pre-release and may not be stable for production use.
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"
Example .version configuration
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.
version = "1.2.3"
[[versioning.files]]
filepath = "example/__init__.py"
pattern = "__version__ = '${version}'"
[[versioning.files]]
filepath = "chart/Chart.yaml"
patterns = [
"version = \"${version}\"",
"appVersion = \"${version}\""
]
Example pyproject.toml
[project]
name = "example"
version = "1.2.3"
[tool.proman.versioning]
compat = "semver"
[[tool.proman.versioning.files]]
filepath = "example/__init__.py"
pattern = "__version__ = '${version}'"
[[tool.proman.versioning.files]]
filepath = "chart/Chart.yaml"
patterns = [
"version = \"${version}\"",
"appVersion = \"${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
Metadata
Release files for proman-versioning 0.7.1a1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| proman_versioning-0.7.1a1.tar.gz | 19.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| proman_versioning-0.7.1a1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 41.9 kB
Release files / proman_versioning-0.7.1a1.tar.gz
| Download URL | proman_versioning-0.7.1a1.tar.gz |
|---|---|
| Size | 19.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4117643d835d16349e6ce7e24449bfa653452552e8497d6f4b12c76f01db8c04
|
|
BLAKE2b-256 checksum How to use checksums |
2017a07bbea48c052a1c8f7baf3c05beefe3a9f1c1df89ad46c9078f7712997b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.11.9
|
Release files / proman_versioning-0.7.1a1-py3-none-any.whl
| Download URL | proman_versioning-0.7.1a1-py3-none-any.whl |
|---|---|
| Size | 22.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ace216f3c69163c201fd1a4a954ada8aed4cdc4231509b3b2c44097eb1dea645
|
|
BLAKE2b-256 checksum How to use checksums |
f8b10239fef8c498103b6ef2d899cf86d451333400dcaccece3992e1a270d860
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.11.9
|