Release Notes
Read what changed in the version you run, in any earlier version, or since the version you upgraded from — breaking changes first, from the binary, with no network.
Usage: sovrium changelog [<version>] [--list] [--since <version>] [--format md|json] [--output <path>]Every Sovrium release publishes release notes: what broke, what is new, what was fixed and what got faster. The binary carries those notes for every release, so the answer to "what changed?" is always one command away — on your laptop, on a server with no internet access, or inside the AI that edits your config.
The notes the binary prints are the ones published with it. Nothing is fetched, and nothing in your project is read.
What changed in the version I run
sovrium changelogPrints the entry of the version sovrium --version reports, then one line saying how many earlier releases the binary knows about.
An entry looks like this:
## 0.27.0 (2026-09-23)
### Features
- **cli**: add sovrium docs --export for documentation sites
### Bug Fixes
- **pages**: keep what is typed into a form inside a tab panelThe bold prefix names the part of Sovrium a change touches. A release with nothing you can see says so in one line.
A binary you built yourself between two releases has no published entry of its own yet. It says so, and prints the latest entry it carries.
One release
sovrium changelog 0.25.0
sovrium changelog v0.25.0Both spellings work. A version the binary does not carry is refused, and the message suggests the nearest versions it does carry.
Every release
sovrium changelog --listOne line per release, newest first, with its date and a count of what it holds — 1 feature, 3 fixes, 4 breaking, … — so you can see which entries are worth opening. The version you run is marked current.
Everything since I upgraded
sovrium changelog --since 0.24.0Prints every release after 0.24.0, up to the version you run, newest first. Before the first entry, it gathers every breaking change of those releases in one place, each naming the version that introduced it: when you jump several versions at once, that is the list to read before anything else.
If 0.24.0 is the version you run, or a newer one, the answer is Already up to date.
For tools and scripts
sovrium changelog --since 0.24.0 --format jsonPrints one JSON document:
{
"format": "sovrium-changelog",
"schemaVersion": 1,
"engine": "0.28.0",
"releases": [
{
"version": "0.27.0",
"date": "2026-09-23",
"compareUrl": "https://github.com/sovrium/sovrium/compare/v0.26.0...v0.27.0",
"current": false,
"sections": [
{
"kind": "features",
"title": "Features",
"entries": [
{ "scope": "cli", "text": "add sovrium docs --export for documentation sites" }
]
}
]
}
]
}kind is breaking, features, fixes, performance or other. scope is null for a change that names no area. The releases are the same ones the markdown view prints, in the same order.
--output <path> writes the result to a file instead of the terminal, creating missing folders:
sovrium changelog --since 0.24.0 --output notes/upgrade.mdRefusals
Each exits 1 with a message saying what to do instead:
- a version the binary does not carry, or a word that is not a version;
- a version together with
--listor--since— ask for one view at a time; - a
--formatother thanmdorjson.
sovrium changelog --help prints the usage.
Behaviour
sovrium changelog Prints the Release Notes the Binary Carries
sovrium changelog, run in an empty directory, prints the entry of the versionsovrium --versionreports, under a## <version> (<date>)heading, and exits 0- The default view ends with a footer naming how many earlier releases the binary carries and
sovrium changelog --list, and that count is one less than the lines--listprints sovrium changelog 0.27.0prints that release's heading, date, sections and every one of its lines, nothing from another release, andv0.27.0prints the same bytessovrium changelog --since 0.23.0prints every breaking change of the releases it covers, each naming its version, before the first release entry- A release whose lines carry no area prefix and a Performance Improvements section (
0.22.2) prints those lines verbatim, with no invented prefix, under their own section - A release with no user-facing changes (
0.6.2) prints its heading and says it has no user-facing changes, and exits 0 - A version the binary does not carry, and a word that is not a version, exit 1 with nothing on stdout; the message names what was asked, suggests the nearest carried versions and names
--list --listprints one line per release, newest first, each with its version, its date and what it holds; the first line is the running version and is marked as such, and the last is0.0.2--since 0.26.0prints the entry of every release after0.26.0up to the running one, newest first, and not0.26.0itself;--sincebeside a version argument exits 1 naming both--sincethe running version, or a version newer than it, printsAlready up to datenaming the running version, and exits 0--format jsonprints onesovrium-changelogdocument atschemaVersion1 whoseengineis the running version and whose releases carry version, date, link, sections and scoped entries; an unknown--formatexits 1 namingmdandjson--output <path>writes exactly the bytes the same view prints to stdout, creating missing parent directories, and prints none of the notes to stdoutsovrium changelog --helpprints its usage naming--list,--since,--formatand--outputand exits 0, andsovrium --helplistschangelog- Reading one release, the running one, the list, a range and the JSON document, and refusing what the binary does not carry (regression)
Last updated September 27, 2026
This documentation was written with AI, so errors or outdated content are possible. Sovrium is in beta. Contributions and corrections are welcome.