This release includes 1 breaking change for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
+12 more
Affected surfaces
ReleasePort's take
Light signalVersion v3.2.1 resolves several API bugs, improves database performance with new indices, and reduces memory usage by streaming book downloads.
Why it matters: Fixes content restrictions for /books/page, ensures public shelves appear, adds missing book_file index (performance gain), and streams downloads to cut memory consumption; severity scores indicate moderate impact across affected surfaces.
Summary
AI summaryUpdates Chores, Bug Fixes, and Performance across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Dependency | Low |
Migrates from Yarn to pnpm package manager. Migrates from Yarn to pnpm package manager. Source: llm_adapter@2026-06-14 Confidence: high |
— |
| Dependency | Low |
Drops the Blackbird library to avoid JSON serialization failures. Drops the Blackbird library to avoid JSON serialization failures. Source: llm_adapter@2026-06-14 Confidence: low |
— |
| Performance | Medium |
Adds missing `book_file` database indices for ingestion lookups. Adds missing `book_file` database indices for ingestion lookups. Source: llm_adapter@2026-06-14 Confidence: high |
— |
| Performance | Medium |
Streams all book downloads via `StreamingResponseBody` to reduce memory usage. Streams all book downloads via `StreamingResponseBody` to reduce memory usage. Source: llm_adapter@2026-06-14 Confidence: high |
— |
| Bugfix | Medium |
Fixes content restrictions for `api/v1/books/page` endpoint. Fixes content restrictions for `api/v1/books/page` endpoint. Source: llm_adapter@2026-06-14 Confidence: high |
— |
| Bugfix | Medium |
Fixes public shelves not showing up for books. Fixes public shelves not showing up for books. Source: llm_adapter@2026-06-14 Confidence: high |
— |
| Bugfix | Medium |
Fixes bidirectional KOReader sync issues. Fixes bidirectional KOReader sync issues. Source: llm_adapter@2026-06-14 Confidence: high |
— |
| Bugfix | Medium |
Streams book downloads instead of buffering in the browser. Streams book downloads instead of buffering in the browser. Source: llm_adapter@2026-06-14 Confidence: high |
— |
| Bugfix | Medium |
Handles multiple book files with identical checksums gracefully. Handles multiple book files with identical checksums gracefully. Source: llm_adapter@2026-06-14 Confidence: high |
— |
| Bugfix | Medium |
Adds startup probe to Helm chart for better deployment reliability. Adds startup probe to Helm chart for better deployment reliability. Source: llm_adapter@2026-06-14 Confidence: high |
— |
Full changelog
3.2.1 (2026-06-14)
This release of Grimmory is focused on bug fixes. It fixes content restrictions applied to the book's page endpoint, drops the Blackbird library to prevent JSON serialization errors, fixes public shelves not showing up for books, fixes bidirectional KOReader sync in some cases, and improves reactivity across the UI. Furthermore, there are performance improvements in the book ingest pipeline and reductions in memory usage due to file downloads.
Changelog
Full Changelog: https://github.com/grimmory-tools/grimmory/compare/v3.2.0...v3.2.1
Bug Fixes
- api: fix content restrictions for
api/v1/books/page(#1706) (a93bc5f) - book-details: fall back from invalid book detail tabs (#1685) (46f4457)
- download: stream book downloads instead of buffering in browser (#1718) (7f38de8)
- drop blackbird to avoid serialization failure states (#1513) (65f3f85)
- handle multiple book files with the same checksum (#1724) (0cc918f)
- helm: add startup probe to helm chart (#1712) (f13538a)
- koreader: fix bidirectional progress sync (#1687) (590bd9e)
- library stats showing 0KB due to incorrect fileSizeKb field path (#1436) (f3dacb9)
- login: fix oidc login button on light mode (#1682) (d1298af)
- metadata: extract epub titles per spec with regards to ordering (#1637) (d775011)
- reader: switch header/footer hover zones from static heights to dynamic (#1716) (a44197e)
- shelf: fix public shelf book visibility (#1735) (48eefc0)
- ui: convert device settings state to signals (#1635) (f6661fe)
- ui: no libraries assigned label (#1736) (0625095)
- ui: use signals for OIDC settings (#1737) (d5f652f)
- ui: use signals for user management to improve reactivity (#1726) (f2b7cdc)
Performance
- db: add missing
book_fileindices for ingestion lookups (#1729) (a86dfb2) - download: stream all book downloads via
StreamingResponseBody(#1722) (798767c)
Chores
- deps: bump docker/metadata-action from 6.0.0 to 6.1.0 (#1650) (abe1258)
- deps: bump docker/setup-buildx-action from 4.0.0 to 4.1.0 (#1648) (851fa40)
- deps: bump github/codeql-action from 4.36.1 to 4.36.2 (#1651) (8a06943)
- deps: bump hono from 4.12.18 to 4.12.23 in /frontend (#1642) (43b3c5d)
- deps: bump taiki-e/install-action from 2.77.6 to 2.81.5 (#1649) (436d04c)
- deps: bump the gradle-dependencies group across 1 directory with 4 updates (#1646) (d6a88a3)
- deps: bump the npm-dependencies group in /frontend with 25 updates (#1647) (1ffbd54)
- i18n: update translations from Weblate (#1644) (11febb9)
- i18n: update translations from Weblate (#1665) (2675c4a)
- i18n: update translations from Weblate (#1678) (1037757)
- i18n: update translations from Weblate (#1679) (1b64f13)
- i18n: update translations from Weblate (#1686) (6b28d14)
- repo: migrate from yarn to pnpm (#1598) (e83a143)
- ui: add warning for goodreads metadata provider (#1732) (b25a3f5)
- ui: normalise text size and spacing (#1656) (349f046)
Documentation
- document Weblate translation workflows (#1643) (d929cd2)
- update README badges for consistency (#1645) (7129d3c)
Contributors
We'd like to thank the contributors for this release for taking the time to make Grimmory better.
Including but not limited to: @zachyale @alexhb1 @DeeWooo @imnotjames @raphkun
New Contributors
- @DeeWooo made their first contribution in https://github.com/grimmory-tools/grimmory/pull/1436
- @raphkun made their first contribution in https://github.com/grimmory-tools/grimmory/pull/1726
Breaking Changes
- drop blackbird library (removes a dependency that caused JSON serialization failures)
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Related tools
Beta — feedback welcome: [email protected]