Changelog job pack for Tessera: turn git history into a structured changelog and release notes.
Project description
tesserakit-changelog
Turn git history into a structured CHANGELOG.md and release notes.
tessera-changelog reads commit history (from a git repository, or a portable commits.jsonl), parses Conventional Commits, groups changes by type, and emits a changelog, release notes, and quality reports. It reads git metadata only: no project code is executed and no network calls are made.
Input
- A git repository directory → reads
git log --no-merges(read-only). - A
commits.jsonlfile, or a directory containing one → parses it directly. Each line:{"hash": "...", "short_hash": "...", "author": "...", "date": "...", "subject": "feat: ...", "body": "..."}. Onlysubjectis required.
Build a changelog
tessera changelog build --input . --output ./out/changelog_pack
tessera changelog build --input . --since v0.1.0 # only since a tag
Artifacts written:
commits.jsonl canonical Commit rows (parsed type/scope/breaking)
CHANGELOG.md grouped by type, with a Breaking Changes section
release_notes.md prose summary with highlights
validation_report.md commit-hygiene findings
coverage_report.md commit-type distribution, % conventional, authors
Conventional Commits
Subjects of the form type(scope): description (and type!: ... or a
BREAKING CHANGE: body trailer for breaking changes) are parsed into a type,
scope, and breaking flag. Recognized types: feat, fix, docs, refactor,
perf, test, build, ci, chore, style, revert. Anything else is
grouped under other and flagged non_conventional_commit (informational).
Validation rules
source_error— not a git repo and no commits.jsonl, or git failedno_commits— empty rangeempty_subjectnon_conventional_commit(info)wip_commit— looks like a WIP/fixup commit that may not belong in a releasebreaking_change— surfaced for visibility
Project details
Release history Release notifications | RSS feed
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tesserakit_changelog-0.3.1.tar.gz.
File metadata
- Download URL: tesserakit_changelog-0.3.1.tar.gz
- Upload date:
- Size: 7.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c260053956efccb17b2a59293378939736be5d83c3a0c6adcdbcb7fde1a40467
|
|
| MD5 |
abb14e0a4dc7bd63be8a60aee47b9d1a
|
|
| BLAKE2b-256 |
7567733fe8099eefb3155c6af3086ea50b6718a2bc0f5160dd101eb5ec8ddec4
|
File details
Details for the file tesserakit_changelog-0.3.1-py3-none-any.whl.
File metadata
- Download URL: tesserakit_changelog-0.3.1-py3-none-any.whl
- Upload date:
- Size: 10.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ade41a98b45dca2574b006abf5756213fbbe3d298c22c6f66dcc94f99ccbe729
|
|
| MD5 |
5ec1eb784e748050f78666697789d1ad
|
|
| BLAKE2b-256 |
40722ac2989184382a8ebef3ca543eb3de30f9837842132a6ba807551b0a0ebf
|