Skip to main content

changelog

Changelog is a CLI tool for managing changelogs. Individual changelog entries are stored as files, eliminating merge conflicts and enabling CI enforcement.

Full documentation

Installation

npm

Install globally:

npm install -g @d-dev/changelog

Or as a dev dependency:

npm install -D @d-dev/changelog

Or run with npx

npx @d-dev/changelog

PyPI

Install with pip:

pip install changesets

Install with uv.

uv tool install changesets

Or as a dev dependency

uv add --dev changesets

Or run directly with uvx (no install required):

uvx --from changesets changelog <command>

GitHub Releases

Download pre-built binaries from GitHub Releases.

Available platforms:

Platform Architecture
Linux x64, arm64
Linux (musl) x64, arm64
macOS x64, arm64
Windows x64

Initialize

Run changelog init in your project root to set up the .changelog directory:

changelog init

You'll be prompted for:

? Current version: 0.1.0
? Changelog file path: CHANGELOG.md
? Main git branch: main
Enter post-apply commands (leave blank to finish):
? Post-apply command: npm install
? Post-apply command (1 added):
✓ Initialized .changelog directory

This creates the following structure:

.changelog/
├── config.yaml
├── next/
│   └── .gitkeep
├── releases/
│   └── .gitkeep
└── templates/
    ├── header.md
    ├── body.eta
    └── footer.md

Add an Entry

When you make a notable change, run changelog add:

changelog add

Select a change type and provide a description:

? Change type: Add - Add a new feature. Minor version bump.
? Description: Support for YAML configuration files
✓ Added changelog entry: .changelog/next/1740000000000.yaml
✓ Updated CHANGELOG.md

A YAML file is created in .changelog/next/:

timestamp: 1740000000000
type: Add
description: Support for YAML configuration files

The changelog file is automatically regenerated with an Unreleased section so you can preview changes at any time.

Apply a Release

When you're ready to release, run changelog apply:

changelog apply

This computes the version bump, creates the release, and updates your project:

✓ Updated version in package.json to 0.2.0
✓ Applied version 0.2.0
✓ Updated CHANGELOG.md
Running post-apply command: npm install
? Commit changes and tag the commit? Yes
✓ Committed and tagged version 0.2.0

The version bump is determined by the change types present:

Change Types Bump
Change, Remove Major
Add, Deprecate Minor
Fix Patch
Internal None

After applying, push the commit and tag:

git push origin main --follow-tags

Full documentation

Metadata

Release files for changesets 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for changesets 1.2.0
File
changesets-1.2.0-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details
changesets-1.2.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
changesets-1.2.0-py3-none-musllinux_1_2_x86_64.whl Python 3 none Linux musl 1.2+ x86-64 Details
changesets-1.2.0-py3-none-musllinux_1_2_aarch64.whl Python 3 none Linux musl 1.2+ ARM64 Details
changesets-1.2.0-py3-none-manylinux_2_17_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
changesets-1.2.0-py3-none-manylinux_2_17_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
changesets-1.2.0-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
changesets-1.2.0-py3-none-macosx_10_9_x86_64.whl Python 3 none macOS 10.9+ x86-64 Details

Total release size: 278.9 MB

Release files / changesets-1.2.0-py3-none-win_arm64.whl

Download URL changesets-1.2.0-py3-none-win_arm64.whl
Size 37.6 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
93974d984bfb7bdb7c6b1661f6ed6b077d1c989fd9a257782a23b00c1abd386b
BLAKE2b-256 checksum
How to use checksums
f2bf8cf23edbd8bfe9f27032412c5b770803736409d7ff1284e1cf47083bea8c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / changesets-1.2.0-py3-none-win_amd64.whl

Download URL changesets-1.2.0-py3-none-win_amd64.whl
Size 40.7 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
06ae73feb8575edf02b35b18226874b9779ed8371ca028e16472d90da33bdf70
BLAKE2b-256 checksum
How to use checksums
399987ab160740bcd9297dd4ed777f8135be42b971ffcc58c0740c14d301b878
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / changesets-1.2.0-py3-none-musllinux_1_2_x86_64.whl

Download URL changesets-1.2.0-py3-none-musllinux_1_2_x86_64.whl
Size 34.8 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
7161c431081d4bf58cfa00c211489e0767c8e8be70b56faaac76900240da360a
BLAKE2b-256 checksum
How to use checksums
131aa30514c1527c3ca9464633bc6c2ca8b55d7140d3dc7c7b7f07b45da779e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / changesets-1.2.0-py3-none-musllinux_1_2_aarch64.whl

Download URL changesets-1.2.0-py3-none-musllinux_1_2_aarch64.whl
Size 35.1 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
9df68c93379bbe822a9abfa1787b5d566f9d3491b6380eb3148743c6dba6a457
BLAKE2b-256 checksum
How to use checksums
cd16738af31695cdb0bc5e6eec8594b4e619930434cef0bde3f3630fc76afa1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / changesets-1.2.0-py3-none-manylinux_2_17_x86_64.whl

Download URL changesets-1.2.0-py3-none-manylinux_2_17_x86_64.whl
Size 37.3 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
0967b157e5198eb1856da586a97b6100da5c7da508caa0ef36baa25df96a09a8
BLAKE2b-256 checksum
How to use checksums
46a759cf29489df180d06a53b2a10b53b07a969a4e3898d06b295a0c29404715
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / changesets-1.2.0-py3-none-manylinux_2_17_aarch64.whl

Download URL changesets-1.2.0-py3-none-manylinux_2_17_aarch64.whl
Size 37.8 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
8313d10e4150d578671b36253cc35fc531bda5ddda726aab8fab9aa6f532d30b
BLAKE2b-256 checksum
How to use checksums
492b261a53fc74b3ca932acb17de1837eab566023bb68ba8fef23bc7c2c5112a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / changesets-1.2.0-py3-none-macosx_11_0_arm64.whl

Download URL changesets-1.2.0-py3-none-macosx_11_0_arm64.whl
Size 26.7 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9cb36330d09af246f9434777c5bce1742853df3863b82db2f8e1f6b700f585db
BLAKE2b-256 checksum
How to use checksums
ed6ded7c5401557acdcd2fb8bf486c79f6433f0250353437b5051e9850b2a2f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / changesets-1.2.0-py3-none-macosx_10_9_x86_64.whl

Download URL changesets-1.2.0-py3-none-macosx_10_9_x86_64.whl
Size 29.0 MB
Tags Python 3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
f7159a60eeea2ab26e4c9789f80e250f548cdd1d70812689e98955e40cb66569
BLAKE2b-256 checksum
How to use checksums
f590c5395f6c160c246458b53409d96bf43da149168943b7e28d868de3d649f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

1.2.0 This release

8 release files

1.1.1

8 release files

1.1.0

7 release files

1.0.2

7 release files

1.0.1

7 release files

1.0.0

7 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page