Skip to main content
View as Markdown

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.

code
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

>_ terminal
sovrium changelog

Prints 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:

README.md
## 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 panel

The 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

>_ terminal
sovrium changelog 0.25.0
sovrium changelog v0.25.0

Both spellings work. A version the binary does not carry is refused, and the message suggests the nearest versions it does carry.

Every release

>_ terminal
sovrium changelog --list

One 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

>_ terminal
sovrium changelog --since 0.24.0

Prints 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

>_ terminal
sovrium changelog --since 0.24.0 --format json

Prints one JSON document:

app.json
{
  "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:

>_ terminal
sovrium changelog --since 0.24.0 --output notes/upgrade.md

Refusals

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 --list or --since — ask for one view at a time;
  • a --format other than md or json.

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 version sovrium --version reports, 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 --list prints
  • sovrium changelog 0.27.0 prints that release's heading, date, sections and every one of its lines, nothing from another release, and v0.27.0 prints the same bytes
  • sovrium changelog --since 0.23.0 prints 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
  • --list prints 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 is 0.0.2
  • --since 0.26.0 prints the entry of every release after 0.26.0 up to the running one, newest first, and not 0.26.0 itself; --since beside a version argument exits 1 naming both
  • --since the running version, or a version newer than it, prints Already up to date naming the running version, and exits 0
  • --format json prints one sovrium-changelog document at schemaVersion 1 whose engine is the running version and whose releases carry version, date, link, sections and scoped entries; an unknown --format exits 1 naming md and json
  • --output <path> writes exactly the bytes the same view prints to stdout, creating missing parent directories, and prints none of the notes to stdout
  • sovrium changelog --help prints its usage naming --list, --since, --format and --output and exits 0, and sovrium --help lists changelog
  • 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.

Built with Sovrium