Fragcha - Automate changelog from fragments
Installation
pip install fragcha
Usage
usage: python -m fragcha [-h] [--fragments FRAGMENTS] [--config CONFIG] {bump,changelog} ...
positional arguments:
{bump,changelog}
bump Generate subsequent semver based on changelog fragments
changelog Generate changelog from fragments
options:
-h, --help show this help message and exit
--fragments FRAGMENTS
Folder with changelog fragments (.yaml or .yml)
--config CONFIG Path to config file
usage: python -m fragcha bump [-h] --version VERSION [--output OUTPUT] [--ignore-major-zero]
options:
-h, --help show this help message and exit
--version VERSION Current version for which to generate the subsequent semver
--output OUTPUT File append changelog to (- for stdout)
--ignore-major-zero Don't treat major version 0 special (use to move from 0.X.Y to 1.0.0)
usage: python -m fragcha changelog [-h] [--version VERSION] [--output OUTPUT] [--append]
options:
-h, --help show this help message and exit
--version VERSION Version number to use in changelog header
--output OUTPUT File append changelog to (- for stdout)
--append Append to output file instead of prepending
Example changelog fragment
Without any extra configuration fragcha will check the .fragcha directory for yml and yaml files to generate a
changelog from. This is an example with all sections that are available by default:
breaking_changes:
- This is a major change, it will cause `fragcha bump` to increase the major version (except when on major version 0)
features:
- This is a minor change, it will cause `fragcha bump` to increase the minor version
bugfixes:
- This is a patch change, it will cause `fragcha bump` to increase the patch version
documentation:
- This is a misc change, it will cause `fragcha bump` to increase the patch version
Example config
The build in defaults are equivalent to this fragcha.json5 being present:
{
"sections": {
"major": {
"breaking_changes": "Breaking Changes"
},
"minor": {
"features": "Features"
},
"patch": {
"bugfixes": "Fixed bugs"
},
"misc": {
"documentation": "Documentation"
}
},
"template": "# {{ version }}\n\
\n\
{%- for section in sections %}\n\
## {{ section.title }}\n\
{%- for change in section['changes'] %}\n\
- {{ change }}\n\
{%- endfor %}\n\
{%- endfor %}\n\
***\n\
"
}
Metadata
Release files for fragcha 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fragcha-0.1.5.tar.gz | 17.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fragcha-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 35.3 kB
Release files / fragcha-0.1.5.tar.gz
| Download URL | fragcha-0.1.5.tar.gz |
|---|---|
| Size | 17.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7e98f99aada11079a49ec593ed2ae6fec0cd520c75ae7f8f879acb4fe8892c40
|
|
BLAKE2b-256 checksum How to use checksums |
d10161f409a01c12b219c4129e0a3719768598fead0b5151e2fd3ab757b87e96
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / fragcha-0.1.5-py3-none-any.whl
| Download URL | fragcha-0.1.5-py3-none-any.whl |
|---|---|
| Size | 17.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5bdf5bb5c5dce9c52e93f0b6cb0ac2d11a6968fe1252263f2938699438112c8d
|
|
BLAKE2b-256 checksum How to use checksums |
0daba33c53f6b8b440ba31bbdd3b5e2a054c56ff264f201e163ba4dcdbffb254
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|