# Changelog All notable changes to Lamb are recorded here. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and Lamb uses [SemVer](https://semver.org/) with `0.y` as the compatibility boundary until 1.0. Every user-visible change adds a fragment file to `changelog.d/` in the same commit as the code. At release, the fragments become the version block (see `RELEASING.md`). ## [Unreleased] Changes for the next release are in `changelog.d/` until the release assembles them here. ## [0.15.1] - 2026-11-04 ### Fixed - A webmention source page that is already UTF-8 is no longer re-decoded as another encoding, so a stale `charset` declaration, or `charset=` text inside a `` description, no longer turns "Café" into "Café". - Restore reports a damaged `manifest.json` as damaged instead of "Archive has no manifest.json". - The `/.well-known/about.md` AboutSpec file no longer turns root-relative links inside code spans, fenced code blocks or indented code blocks into absolute URLs, so code samples stay as written. ## [0.15.0] - 2026-11-04 ### Security - Webmention author names taken from the sending page are now capped at 100 characters, like the content snippet, so a hostile page can't store an unbounded author ([#772](https://github.com/svandragt/lamb/issues/772)). ### Fixed - A webmention from a page in a non-UTF-8 encoding (such as ISO-8859-1) now stores the author and title correctly instead of invalid text. - Restore reports a post whose file in the archive is damaged as "damaged entry" instead of "missing file", so you no longer look for a file that is there. - A database whose WAL sidecar files (`lamb.db-wal`, `lamb.db-shm`) the web server can't write now stops with an error that names both files and says to change their owner to the user PHP runs as (not to delete them, since they can hold committed writes), instead of a bare "attempt to write a readonly database" stack trace. An unwritable data directory gets its own message naming the directory ([#874](https://github.com/svandragt/lamb/issues/874)). - WordPress and Known import: `