Skip to main content

Tool for creating changelogs

Project description

changelog-builder

A tool for creating markdown changelogs based on comments.


Python verion PyPI version MIT License Made with pypipal


Contents

Installation

Usage

Examples

Notes

License

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 IDE

Pycharm: 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 highlighted

This 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

MIT


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

changelog_builder-0.1.7.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

changelog_builder-0.1.7-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file changelog_builder-0.1.7.tar.gz.

File metadata

  • Download URL: changelog_builder-0.1.7.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2

File hashes

Hashes for changelog_builder-0.1.7.tar.gz
Algorithm Hash digest
SHA256 3366d6754f1b5a8b6ba0f4936a8136a65fec2ca9b0c190540ab1c5d45c45af04
MD5 cfa99f68671bc328216262c40ae8e0f7
BLAKE2b-256 777e31c0182d56e9211fb6e10dc672cf1f4ec668c691afc5b54316e4bae9cdbe

See more details on using hashes here.

File details

Details for the file changelog_builder-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: changelog_builder-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2

File hashes

Hashes for changelog_builder-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 65f03d0c15a7ad175e975b56fca398c0eb2aecc0407643ff58b262043b4908e0
MD5 da4610b40842e1e548d1d0cbe08f5114
BLAKE2b-256 74b3203018eb1dd2fb4bd1478d6813693e46d9cbce70d8cea780d4ecdb89a26b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page