Skip to main content

A changelog generator using simply structured git commit messages.

Project description

GitHub license GitHub Workflow Status PyPI - Python Version semver GitHub tag (latest SemVer) Code style: black

whathappened

A changelog generator using simply structured git commit messages

Inspired by

and

Install and Run

Installation is as simple as it gets:

$ pip install whathappened

To generate a changelog, run:

$ whathappened

Make sure to activate any virtual environment that you might be using first.

Some options are available:

$ whathappened --help
Usage: whathappened [OPTIONS] [GIT_LOG_ARGS]...

  Handle command line arguments. Extra arguments are passed to 'git log'.

Options:
  --overriding-version TEXT  Specify a version number to use [format: x.y.z]
  -o, --output PATH  The changelog destination [default: stdout]
  -e, --emoji        Include emoji in headings if present
  -d, --development  Include development-related commits
  -p, --prefix TEXT  Version prefix, often 'version' or 'v' [default: '']

  --version          Show the version and exit.
  --help             Show this message and exit.

To limit the range of commits, add a revision range argument.

To create a changelog of commits that are yet to be pushed:

$ whathappened origin..HEAD

To create a changelog of commits between (branch: main) and (tag: v1.0.0) and write the output to file:

$ whathappened -o CHANGELOG.md main..v1.0.0

To create a development changelog, with addition headings like 'Testing' and 'Reverted':

$ whathappened -d

Package Changelog

Created by Whathappened itself - very meta.

For the complete changelog, please see CHANGELOG.md.

Whathappened Commit Message Format

For a full description of the message format, see Commit-It-Simple.

Whathappened expects git commit messages in the format outlined below:

[optional breaking ]<type>[ optional (<scope>)]: <description>

[optional body]

<type> is recommended to be one of:

fix
feat
build
ci
docs
style
refactor
perf
test

Variations on these types like feat, feature, features, or doc, docs are seamlessly grouped together.

The <scope> is recommended to be a module, file, or folder name as appropriate.

More examples can be viewed on whathappened's own commits.

For a nice summary of types and what they mean, please see Understanding Semantic Commit Messages Using Git and Angular.

Emoji

Adding the --emoji flag will add emoji after each heading in the changelog. Below are the emoji that are used:

Production:

  • Docs 📝
  • Features ✨
  • Fixes 🐛
  • Performance ⚡️
  • Refactorings ♻️
  • Other 🃏

Development:

  • Continuous Integration 🤖
  • Reverted ☠️
  • Testing 🧪

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

whathappened-1.1.0.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

whathappened-1.1.0-py3-none-any.whl (24.5 kB view details)

Uploaded Python 3

File details

Details for the file whathappened-1.1.0.tar.gz.

File metadata

  • Download URL: whathappened-1.1.0.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.5

File hashes

Hashes for whathappened-1.1.0.tar.gz
Algorithm Hash digest
SHA256 f3ac2129cd92aca74f17980bcd87c06b50375f20a2b0c8d124ec4dba14c4a1e6
MD5 97601d57ffd2672ebd25b77dc69350d1
BLAKE2b-256 8b6c04103f8547d51dc6736a5d72b7a5c844092702dc534171eb3d9153330bfa

See more details on using hashes here.

File details

Details for the file whathappened-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: whathappened-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 24.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.5

File hashes

Hashes for whathappened-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ad6a8a834366598758e9bb8c58bbf4f86d8c5966972cb2e8de234304be03a576
MD5 311eeeec67a550e03a68a853e9888ed7
BLAKE2b-256 6b870451021827bee55176d67b819254187c4a04c03cde5060df7b8a6b85f543

See more details on using hashes here.

Supported by

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