Tool for creating changelogs
Project description
changelog-builder
A tool for creating markdown changelogs based on comments.
Contents
Installation
Use the package manager pip to install changelog-builder.
pip install changelog-builder
Usage
changelog-builder [path][filename][identifier][current-version][version-increment][files][includes][excludes]
Parameters
- path the path to the project directory, defaults to
getcwd()
- --filename -fn the name of the changelog file, defaults to changelog.md
- --identifier -id one or more strings that identify changes (whitespaces in line before are ignored), defaults to "# NEW" "# new"
- --curent-version -cv three digits that specify the current version by major, minor an patch, defaults to 0 0 0
- --version-increment -ic three digits that specify the increment by major, minor an patch, defaults to 0 0 1 [example: version of 4.2.1 with the increment 0.1.0 becomes 4.3.1]
- --files -fi one or more file suffixes that get scanned (needs to start with a point), defaults to ".py"
these two do not work properly yet:
- --includes -in one or more files that get included additionally, defaults to []
- --excludes -ex one ore more files that get excluded, defaults to []
Running the changelog-builder in a project the first time will create a .changelog_builder
file which stores the parameters from above in json format and could be modified manually, but that will be probably rarely necessary, since every passed parameter will alter the settings file.
Examples
The following code:
def division(divident:int, divisior:int) -> float:
# NEW division by zero isn't allowed anymore
if divisor == 0: return None
...
would produce this changelog (while the # NEW division by zero isn't allowed anymore
line will be deleted above):
Changelog
0.0.1 2020-4-21
- division by zero isn't allowed anymore
multiple uses look like this:
Changelog
0.0.3 2020-4-27
- now in beta
- the screen size issue due to dpi settings should be resolved
0.0.2 2020-4-22
- some new stuff
- fixed #34
0.0.1 2020-4-21
- division by zero isn't allowed anymore
Notes
A very popular use case might be setting a version in the parameters directly. In this case should the current-version parameter be set to the desired version and the version-increment to 0 0 0. This set the next version to the desired value but will also set the version-increment in the settings file which means every use in the future without the version-increment parameter set differently, will result in the version not to be increased.
It is also possible to mark the identifiers (like
# NEW
) in your IDEPycharm: File →Â Settings →Â Editor →Â TODO →Â [the plus sign in the upper right] →Â Type in the regex pattern (like
\bnew\b.*
which will catch both# new
and# NEW
if case sensitive is unchecked) and specify the way you want it to be highlightedThis is certainly possible with other IDEs as well.
Both the --includes as well as the --excludes parameter do not work properly at the moment.
License
This file was automatically created by the pypipal.setup_builder tool.
Project details
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
Hashes for changelog_builder-0.1.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 65f03d0c15a7ad175e975b56fca398c0eb2aecc0407643ff58b262043b4908e0 |
|
MD5 | da4610b40842e1e548d1d0cbe08f5114 |
|
BLAKE2b-256 | 74b3203018eb1dd2fb4bd1478d6813693e46d9cbce70d8cea780d4ecdb89a26b |