Project Management 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"
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
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
File details
Details for the file proman_versioning-0.7.1a1.tar.gz
.
File metadata
- Download URL: proman_versioning-0.7.1a1.tar.gz
- Upload date:
- Size: 19.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4117643d835d16349e6ce7e24449bfa653452552e8497d6f4b12c76f01db8c04 |
|
MD5 | 27b56d6a595a11569f3bf65cd54b05ce |
|
BLAKE2b-256 | 2017a07bbea48c052a1c8f7baf3c05beefe3a9f1c1df89ad46c9078f7712997b |
File details
Details for the file proman_versioning-0.7.1a1-py3-none-any.whl
.
File metadata
- Download URL: proman_versioning-0.7.1a1-py3-none-any.whl
- Upload date:
- Size: 22.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ace216f3c69163c201fd1a4a954ada8aed4cdc4231509b3b2c44097eb1dea645 |
|
MD5 | 2333014ac3b6456ec30974c302cd66f8 |
|
BLAKE2b-256 | f8b10239fef8c498103b6ef2d899cf86d451333400dcaccece3992e1a270d860 |