This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+12 more
Summary
AI summaryUpdates Bug Fixes, Chores, and Refactors across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Adds support for external MariaDB via Helm. Adds support for external MariaDB via Helm. Source: llm_adapter@2026-06-04 Confidence: high |
— |
| Feature | Medium |
Adds subtitle field to KoboBookMetadata. Adds subtitle field to KoboBookMetadata. Source: llm_adapter@2026-06-04 Confidence: high |
— |
| Feature | Medium |
Adds manual save button to PDF/EPUB book details. Adds manual save button to PDF/EPUB book details. Source: llm_adapter@2026-06-04 Confidence: low |
— |
| Feature | Medium |
Adds OCLC lookup integration for book metadata. Adds OCLC lookup integration for book metadata. Source: llm_adapter@2026-06-04 Confidence: low |
— |
| Feature | Medium |
Adds OCLC lookup integration for series metadata. Adds OCLC lookup integration for series metadata. Source: llm_adapter@2026-06-04 Confidence: low |
— |
| Feature | Medium |
Adds OCLC lookup integration for author metadata. Adds OCLC lookup integration for author metadata. Source: llm_adapter@2026-06-04 Confidence: low |
— |
| Feature | Medium |
Adds OCLC lookup integration for publisher metadata. Adds OCLC lookup integration for publisher metadata. Source: llm_adapter@2026-06-04 Confidence: low |
— |
| Feature | Medium |
Adds Tailwind CSS 4.3 and updates UI classes. Adds Tailwind CSS 4.3 and updates UI classes. Source: llm_adapter@2026-06-04 Confidence: low |
— |
| Feature | Medium |
Adds extraObjects field to Helm chart configuration. Adds extraObjects field to Helm chart configuration. Source: llm_adapter@2026-06-04 Confidence: low |
— |
| Feature | Medium |
Adds local‑path‑configs backend option. Adds local‑path‑configs backend option. Source: llm_adapter@2026-06-04 Confidence: low |
— |
| Feature | Low |
Adds manual save button in PDF/EPUB reader top bar for document edits. Adds manual save button in PDF/EPUB reader top bar for document edits. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Feature | Low |
Introduces light mode and a new theming system. Introduces light mode and a new theming system. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Feature | Low |
Moves settings button to sidebar footer row. Moves settings button to sidebar footer row. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Feature | Low |
Adds OLED dark mode variant. Adds OLED dark mode variant. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Feature | Low |
Syncs profile locale and theme preferences across sessions. Syncs profile locale and theme preferences across sessions. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Feature | Low |
Stores user locale and theme preferences on the backend. Stores user locale and theme preferences on the backend. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Dependency | Low |
Updates Gradle to 9.5.1, Flyway to 12.6.1, Hibernate to 7.3.5, jaudiotager to 2.0.21, and other backend libraries. Updates Gradle to 9.5.1, Flyway to 12.6.1, Hibernate to 7.3.5, jaudiotager to 2.0.21, and other backend libraries. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Dependency | Low |
Bumps multiple npm packages in the frontend (qs, qs, etc.). Bumps multiple npm packages in the frontend (qs, qs, etc.). Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Performance | Low |
Optimizes initial library load by moving large‑library processing screen to notifications. Optimizes initial library load by moving large‑library processing screen to notifications. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Bugfix | Medium |
Clears EntityManager before deleting books in API. Clears EntityManager before deleting books in API. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Bugfix | Medium |
Flushes/clears EntityManager after deleting books in API. Flushes/clears EntityManager after deleting books in API. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Bugfix | Medium |
Centralizes token handling within the auth service. Centralizes token handling within the auth service. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Bugfix | Low |
Refreshes audit‑logs table reactively on changes. Refreshes audit‑logs table reactively on changes. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Bugfix | Low |
Converts AuthorMatchComponent state to signals for reactivity. Converts AuthorMatchComponent state to signals for reactivity. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Bugfix | Low |
Passes correct mail properties for SSL transport in email module. Passes correct mail properties for SSL transport in email module. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Bugfix | Low |
Properly groups multi‑file audiobooks imported via folder watcher. Properly groups multi‑file audiobooks imported via folder watcher. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Bugfix | Low |
Uses autocomplete endpoint for Goodreads metadata provider. Uses autocomplete endpoint for Goodreads metadata provider. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Bugfix | Low |
Normalizes language field to ISO 639‑1 codes in metadata. Normalizes language field to ISO 639‑1 codes in metadata. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Bugfix | Low |
Updates Comic ID validation to use a compiled regex pattern. Updates Comic ID validation to use a compiled regex pattern. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Refactor | Low |
Converts book details tab state to signals for improved reactivity. Converts book details tab state to signals for improved reactivity. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Refactor | Low |
Moves theme and locale settings location in the UI. Moves theme and locale settings location in the UI. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
| Refactor | Low |
Normalizes line endings in gradlew.bat for consistent builds on Windows. Normalizes line endings in gradlew.bat for consistent builds on Windows. Source: granite4.1:30b@2026-06-04-audit Confidence: low |
— |
Full changelog
3.2.0 (2026-06-04)
Features
- helm: support external MariaDB (#1068) (4afc738)
- kobo: add subtitle to KoboBookMetadata (#1543) (e4bf4c5)
- pdf-reader: add manual save to the top bar functionality for document edits (#1426) (0e76b38)
- ui: light mode and new theming system (#1468) (22ff6d8)
- ui: move settings button to sidebar footer row (#1469) (62c1435)
- ui: OLED dark mode variant (#1560) (5e0eac5)
- ui: sync profile locale and theme preferences (#1604) (d6d18aa)
- users: store locale and theme preferences on the backend (#1571) (ad63a95)
Bug Fixes
- api: clear EntityManager before deleting books (#1467) (f9d9000)
- api: flush/clear EntityManager after deleting books (#1453) (754bdb8)
- audit-logs: refresh table reactively (#1611) (5b79e12)
- auth: centralize token handling in auth service (#1534) (db64539)
- author-browser: convert AuthorMatchComponent state to signals (#1581) (1018549)
- email: pass correct mail properties for SSL transport (#1378) (150dcf4)
- file-imports: Properly group multi-file audiobooks imported via the folder watcher (#1489) (fbbcd3f)
- goodreads: use autocomplete endpoint for metadata provider (#1456) (673f008)
- i18n: align translation domain structure (#1605) (099873a)
- i18n: update Hardcover sync translations for clarity (#1640) (3971ea0)
- kobo: limit kobo shelf additions to permissible books (#1423) (4980391)
- kobo: update resources to match live values (#1502) (3211d78)
- logo: set logo bookmark colour based on theme (#1511) (91c248f)
- metadata: match new lubimyczytac HTML for search (#1608) (9b879af)
- metadata: NPE when updating book without files (#1446) (be9b141)
- metadata: replace iterator calls with getFirst() (#1305) (4055059)
- opds: add audiobook covers for opds navigation (#1425) (21f3b0b)
- reader: improve header layout and responsiveness in the reader (#1415) (b210265)
- reader: prevent 'x' shortcut from closing reader while typing notes (#1387) (453a5b8)
- readers: create reader-specific chrome colours (#1493) (7a3a3ba)
- reader: visual feedback for tools selected (#1394) (c926582)
- settings: hide opds, email, and device settings tabs when users lacks relevant perms (#1488) (413f12b)
- ui: add version number overflow handling (#1625) (9d30913)
- ui: backfill legacy appearance theme to system (#1510) (3726793)
- ui: convert book metadata suggestions to signals (#1583) (32acb61)
- ui: dashboard empty icon colour in light mode (#1600) (49239a1)
- ui: filter sidebar width narrow bug + UI polish (#1470) (7da24d1)
- ui: handle author adding when books are added (#1572) (49a7593)
- ui: proper favicon format for bookmarks (#1432) (f202939)
- ui: stats light mode theming (#1533) (bd9f99a)
- ui: update file type tag links to book type (#1530) (d22a6d6)
- ui: use signals for OPDS users to improve reactivity (#1544) (fe51328)
- user-management: render loaded content restrictions (#1623) (24079f0)
Performance
- frontend: optimize initial bundle size with lazy-loaded dialogs and localized chart providers (#1110) (c6cbdcf)
Refactors
- api: avoid using objectmapper on
TaskCreateRequest(#1509) (fa64030) - api: use spring objectmapper in mapstruct mappers (#1528) (2c59292)
- api: use spring objectmapper where possible (#1507) (07b83c1)
- book-api: drop redundant library joins from UserBookFileProgressRepository (#1414) (9b28306)
- helm: improve chart consistency (#1401) (e46305e)
- imports: remove unused imports across multiple service and controller files (#1307) (d103962)
- komga: stop using opds service for book access checks (#1479) (89279eb)
- math: replace min/max with clamp for improved readability (#1440) (c0d1d30)
- metadata: change long if/else branch to switch (#1589) (743303e)
- metadata: Normalize language field to ISO 639-1 (#1407) (1a76f19)
- metadata: update Comic ID validation to use a compiled regex pattern (#1441) (9951136)
- ui: convert book details tab state to signals (#1629) (05de312)
- ui: convert bookdrop progress to signals (#1626) (9de1c9d)
- ui: fix prime menu positioning + cleanup (#1377) (1e763b1)
- ui: move large library processing screen to notifications (#1428) (dbbc7c3)
- ui: move theme and locale settings location (#1624) (2ac8abd)
- ui: use signals for library import progress (#1458) (db09c39)
Chores
- backend: local-path-configs (#1594) (02cdaef)
- deps: bump actions/checkout from 6.0.2 to 6.0.3 (#1615) (174c672)
- deps: bump docker/build-push-action from 7.1.0 to 7.2.0 (#1614) (6046f89)
- deps: bump docker/login-action from 4.1.0 to 4.2.0 (#1613) (70d0da1)
- deps: bump docker/setup-qemu-action from 4.0.0 to 4.1.0 (#1617) (20df5d3)
- deps: bump github/codeql-action from 4.35.4 to 4.36.1 (#1616) (b5ebaa2)
- deps: bump gradle to 9.5.1 and flyway to 12.6.1 (#1329) (f2a89fb)
- deps: bump hibernate to 7.3.5, jaudiotager to 2.0.21, and flyway to 12.6.2 (#1447) (3537480)
- deps: bump qs from 6.15.0 to 6.15.2 in /frontend (#1462) (9c530f5)
- deps: bump the gradle-dependencies group in /backend with 4 updates (#1567) (49a2ad8)
- deps: bump the npm-dependencies group in /frontend with 26 updates (#1448) (ea9a76b)
- deps: bump the npm-dependencies group in /frontend with 29 updates (#1568) (e138648)
- deps: bump the npm-dependencies group in /frontend with 6 updates (#1330) (ec7c84b)
- docker: update docker-compose for Gradle caching and build volume management (#1312) (8365efd)
- drop duplicate goodreads requests (#1455) (82d4de4)
- env: update Java version to 25.0.3-tem in .sdkmanrc (#1439) (adef28f)
- helm: add extra objects field (#1464) (f56aa99)
- i18n: update translations from Weblate (#1620) (73bde70)
- i18n: update translations from Weblate (#1621) (a275218)
- i18n: update translations from Weblate (#1622) (8f5bda8)
- i18n: update translations from Weblate (#1633) (b936586)
- justfile: add dev-rebuild command to force Docker container rebuild (#1349) (09b7aa2)
- ui: add tailwind 4.3 and update classes (#1379) (398b1fa)
- use valid unraid icon (#1325) (4868589)
Documentation
Build
Tests
Contributors
We'd like to thank the contributors for this release for taking the time to make Grimmory better.
Including but not limited to: @opisaac9001 @balazs-szucs @imnotjames @thibaultamartin @alexhb1 @ghostdiverr @monsagri @zachyale @mhlgio @tuomasmakinen @KuntaMallikRaj @Rvby1 @sabrina553 @AliAbuelkheir
New Contributors
- @opisaac9001 made their first contribution in https://github.com/grimmory-tools/grimmory/pull/1325
- @ghostdiverr made their first contribution in https://github.com/grimmory-tools/grimmory/pull/1407
- @monsagri made their first contribution in https://github.com/grimmory-tools/grimmory/pull/1378
- @mhlgio made their first contribution in https://github.com/grimmory-tools/grimmory/pull/1464
- @KuntaMallikRaj made their first contribution in https://github.com/grimmory-tools/grimmory/pull/1581
- @Rvby1 made their first contribution in https://github.com/grimmory-tools/grimmory/pull/1589
- @sabrina553 made their first contribution in https://github.com/grimmory-tools/grimmory/pull/1594
- @AliAbuelkheir made their first contribution in https://github.com/grimmory-tools/grimmory/pull/1611
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]