Skip to main content

Generate a changelog from individual snippets

Project description

snippets2changelog

Downloads Release Python License: MIT codecov

Generate a changelog from individual snippets


General

Create version info files based on the latest changelog entry.

Installation

[<PYTHON> -m] pip[3] install [--user] [--upgrade] snippets2changelog

Usage

Info

Print informations about snippets2changelog

changelog-generator info

Create

Snippet

Create a new snippet with the given name at the specified snippets folder

changelog-generator create example_snippets/123.md
Short description: My example snippet
Choose from: ['bugfix', 'feature', 'breaking']
Type of change: feature
Choose from: ['internal', 'external', 'all']
Scope of change: external
Affected users (default all): testers
## My example snippet
<!--
type: feature
scope: external
affected: testers, users
-->

TBD

Changelog

Create or update a changelog with all snippets. New changelog will be named <OLD_CHANGELOG_NAME.new>

changelog-generator changelog changelog.md --snippets=.snippets

Parse

Parse an existing snippet file and return the data as JSON without indentation

changelog-generator parse example_snippets/123.md \
  --indent=4
{
    "type": "feature",
    "scope": [
        "external"
    ],
    "affected": [
        "testers",
        "users"
    ],
    "title": "My example snippet",
    "details": "\n\nTBD\n"
}

Contributing

Setup

For active development you need to have poetry and pre-commit installed

python3 -m pip install --upgrade --user poetry pre-commit
git clone https://github.com/brainelectronics/snippets2changelog.git
cd snippets2changelog
pre-commit install
poetry install

Testing

# run all tests
poetry run coverage run -m pytest -v

# run only one specific tests
poetry run coverage run -m pytest -v -k "test_read_save_json"

Generate the coverage files with

python create_report_dirs.py
coverage html

The coverage report is placed at reports/coverage/html/index.html

Credits

A big thank you to the creators and maintainers of SemVer.org for their documentation and regex example

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

snippets2changelog-1.0.0.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

snippets2changelog-1.0.0-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file snippets2changelog-1.0.0.tar.gz.

File metadata

  • Download URL: snippets2changelog-1.0.0.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.19

File hashes

Hashes for snippets2changelog-1.0.0.tar.gz
Algorithm Hash digest
SHA256 3d2be4e446da9557c8cc59ed2d677d4b8904197df70d8b2e487112680c526789
MD5 2490082f71ac100dfd2789ab4d255a7d
BLAKE2b-256 71b19af9612e58753bce949adf5f74d9920a68463f8b7e684da8987d501d5dfd

See more details on using hashes here.

File details

Details for the file snippets2changelog-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for snippets2changelog-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b0b26ffbd35e13a8dd9314378fd44ce56177b89420a788dc5e4ba729d2ffec38
MD5 2885056b43ddd997987136528ddbe11e
BLAKE2b-256 bfd2835519430b498720cb66c07ec869612057cdc3317ba30b35abf741acd8e8

See more details on using hashes here.

Supported by

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