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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
|