Chachacha changes changelogs
Project description
CHACHACHA
Chachacha changes changelogs. This is a tool you can use to keep your changelog tidy, following the Keep a Changelog specification which is the most implemented plugin at the moment.
Installation
Grab latest copy from releases page and place it where you can invoke it.
Alternatively you can choose to install Python package and cope with $PATH
configuration.
$ pip install chachacha ...
Quickstart
Init a new changelog and then add some changes:
chachacha init chachacha added Glad to meet you cat CHANGELOG.md
Subcommands are modeled from Keep a Changelog specification:
chachacha --help Usage: chachacha [OPTIONS] COMMAND [ARGS]... Options: --filename TEXT changelog filename --driver TEXT changelog format driver --help Show this message and exit. Commands: init initialize a new file config configure changelog options release release a version added add an "added" entry changed add a "changed" entry deprecated add a "deprecated" entry fixed add a "fixed" entry removed add a "removed" entry security add a "security" entry
So you can add, change, deprecate, fix, remove and security announce your changes.
KAC format plugin driver heavily depends on Colin Bounouar's keepachangelog library.
Releasing a version is simple as:
chachacha release --help Usage: main.py release [OPTIONS] [SPEC] Update the changelog to release version SPEC. SPEC should either be the version number to release or the strings "major", "minor" or "patch". Options: --help Show this message and exit.
Specification follows Semantic Versioning thanks to python semver library.
Configuration
Starting from 0.1.3, Chachacha supports a small configuration system directly embedded in the file via a hack on Markdown link syntax. This allow for a number of features like generating compare history:
chachacha init chachacha config git_provider GH chachacha config repo_name aogier/chachacha chachacha config tag_template 'v{t}' chachacha added one feature chachacha added another feature chachacha release chachacha security hole chachacha added capability cat CHANGELOG.md [...] - another feature [Unreleased]: https://github.com/aogier/chachacha/compare/v0.0.1...HEAD [0.0.1]: https://github.com/aogier/chachacha/releases/tag/v0.0.1 [//]: # (C3-1-DKAC-GGH-Raogier/chachacha-Tv{t})
Configuration system keys are:
git_provider
: a git repo provider driver (supported:GH
for github.com)repo_name
: repo name + namespace your repo istag_template
: a tag template which maps release versions with tag names. Variablet
will be expanded with the version number.
Examples
Start a changelog, add entries and then release
chachacha init # quoting is supported chachacha added "this is a new feature I'm excited about" chachacha added this is also good chachacha deprecated this is no longer valid
File is now:
cat CHANGELOG.md # Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] ### Added - this is a new feature I'm excited about - this is also good ### Deprecated - this is no longer valid [//]: # (C3-1-DKAC)
Now release it:
chachacha release chachacha added new version added item
File is now:
cat CHANGELOG.md
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Added
- new version added item
## [0.0.1] - 2020-02-26
### Added
- this is a new feature I'm excited about
- this is also good
### Deprecated
- this is no longer valid
[//]: # (C3-1-DKAC)
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.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size chachacha-0.2.1-py3-none-any.whl (20.8 kB) | File type Wheel | Python version py3 | Upload date | Hashes View |
Filename, size chachacha-0.2.1.tar.gz (21.1 kB) | File type Source | Python version None | Upload date | Hashes View |
Hashes for chachacha-0.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26716e0147abf21047384a29d3c0c6aa6fc358727002ad745382da0e5a579d00 |
|
MD5 | 9409a9896b9b8220a12180f379789066 |
|
BLAKE2-256 | de491f54b3e44ffa494fa95261936a5a8e0eb6f835002038fcc0f489e8023ea5 |