Skip to content

Release v3.3.0

Latest

Choose a tag to compare

@github-actions github-actions released this 07 Aug 04:11
Immutable release. Only release title and notes can be modified.
1d707ff

3.3.0 (2026-08-06)

This minor release of Grimmory has a large number of bug fixes, features, and refactors to prepare for the performance improvements we're looking to make in the near future. We've made a lot of improvements to our Hardcover and RanobeDB metadata parsers, fixed over twenty outstanding bugs, and have also added Korean and Czech language support.

Changelog

Full Changelog: v3.2.4...v3.3.0

Features

  • author: derive and store author sort name on save (#1897) (55b9d34)
  • language: use consistent language normalization across the frontend (#2258) (1d707ff)
  • metadata: improve RanobeDB search (#1804) (b68e022)
  • metadata: improve hardcover edition selection (#1800) (fbd1d5e)
  • ui: app-menu based shelf assignment component (#2058) (daae463)
  • emit actual koreader device / device ID (#2025) (e978098)

Internationalization

  • i18n: add support for Korean (ko) and Czech (cs) (#1880) (0d287a0)

Bug Fixes

  • amazon: parse kindle ebook metadata (#2201) (4d4df8c)
  • api: avoid missing-cover.jpg when getting book thumbnails (#2256) (1420634)
  • api: use safer default file naming pattern (#2252) (be2ac14)
  • api: emit 401 on bad credentials during login (#2130) (3376d33)
  • api: ensure JWTs always have a unique JWT ID (#2246) (5a6b0e5)
  • api: handle exceptions with status codes (#2160) (6056f8f)
  • api: ignore unused tasks to stop warnings (#2213) (38a0c47)
  • db: add explicit collation for icon map migration (#1944) (0792e0b)
  • docker: disable heap dumps by default (#2027) (1ff4619)
  • epub: ignores non-publication dates for published metadata (#2226) (c077551)
  • epub: remove refines when referenced elements are removed (#2048) (9dd8bcc)
  • fb2: prioritize explicit cover binary elements (#2230) (106a2eb)
  • fb2: use base64 decoder aware of newlines (#2229) (027ac6c)
  • magic-shelf: remove OPDS permission gate (#2144) (f410ecb)
  • magic-shelf: remove timestamp from magic shelf date checks (#2097) (8edf135)
  • metadata: require Google Books API key (#1795) (4df5816)
  • properly flush books during detach (#2085) (f1f86bc)
  • ranobedb: prioritize English results (#2133) (068d006)
  • resolve timezone offset in reading session heatmap tooltip (#1870) (2e4f85c)
  • support getAuthenticatedUser() in OPDS (#2041) (108c5c1)
  • ui: add missing page titles (#2073) (dbc0ccc)
  • ui: drop chartjs plugin datalabels (#2021) (15446a8)
  • ui: prevent ng-deep overrides from hiding upload modal text (#2227) (754637a)
  • use expected ranobedb rate limit (#2051) (e28b911)

Refactors

  • api: migrate away from nightcompress (#2103) (134e97f)
  • books: add /api/v1/books/facets endpoint (#1898) (d2c0836)
  • books: add /api/v1/books/ids select-all endpoint (#1899) (30d8760)
  • books: frontend book query service and pagination basics (#2094) (111670e)
  • books: initial book command service and shared command options (#2168) (cb88558)
  • books: paginate /api/v1/books/page with cursor, sort, facet, search (#1853) (ef51479)
  • covers: consolidate cover images into app-cover (#1928) (b4570e3)
  • epub: use archiveservice instead of epub4j to read archive (#2066) (b67b32a)
  • ui: autocomplete pagination and infinite scroll (#1965) (0b1fa83)
  • ui: rebuilt app-menu to angular aria template-based component (#2044) (0b71406)
  • ui: migrate controls to lucide (#1840) (891f900)
  • ui: mobile enhancements to UI controls (#1916) (88faeb6)
  • ui: new page header component and page size foundation (#1966) (a1a6031)
  • ui: switch library and shelf menu to app-menu (#2057) (0acd8bc)
  • ui: use app-cover for metadata searcher (#2254) (68f024b)
  • ui: simplify control transition guard (#2171) (d77a580)

Chores

  • drop unused demo-user permission (#2045) (f2b64c1)
  • drop unused jsoup connection factory (#2151) (6417224)
  • icons: remove bundled svgs and migrate preferences to default library (#1929) (9c59e91)
  • repo: add just ui dev-unsafe command (#2142) (1b911b0)
  • ui: drop unused missing-cover.jpg (#2260) (41f6c93)
  • ui: drop unused secure-src direcctive (#2255) (5898153)
  • use SERVER_PORT env var for listening port (#2018) (74642c1)
  • use grimmory.local for fake email domains (#2023) (ef707ab)
  • use Grimmory branding for basic auth realms (#2049) (a078fd5)
  • use grimmory in sidecar generatedby (#2024) (2859e4e)
  • use Grimmory branding for fallback koreader device / device ID (#2026) (bd478ce)
  • use Grimmory user agent for comicvine / ranobedb / fileservice (#2014) (9e3c503)

Dependencies

  • deps: bump @analogjs/vite-plugin-angular from 2.6.2 to 2.6.3 in the frontend group (#1985) (7e6e027)
  • deps: bump @angular/* from 21.2.18 to 21.2.19 (#2240) (7b0dfed)
  • deps: bump actions/cache/restore from 5.0.5 to 6.1.0 (#1982) (a451984)
  • deps: bump actions/cache/save from 5.0.5 to 6.1.0 (#1904) (4bd4542)
  • deps: bump actions/checkout from 6.0.3 to 7.0.0 (#1925) (0e483a2)
  • deps: bump actions/checkout from 7.0.0 to 7.0.1 (#2208) (349a0c3)
  • deps: bump actions/setup-java from 5.2.0 to 5.4.0 (#1908) (c94fc1a)
  • deps: bump actions/setup-java from 5.4.0 to 5.6.0 (#2205) (ccc3746)
  • deps: bump actions/setup-node from 6.4.0 to 7.0.0 (#2207) (86bf550)
  • deps: bump azure/setup-helm from 5.0.0 to 5.0.1 (#1906) (efd8280)
  • deps: bump codeql from 4.36.2 to 4.36.3 (#1922) (9838041)
  • deps: bump com.github.ben-manes.versions from 0.54.0 to 0.56.0 in /backend in the gradle-dependencies group (#2179) (9d78cba)
  • deps: bump conventional-changelog-conventionalcommits from 10.2.0 to 10.2.1 in the release-tooling group across 1 directory (#1970) (35959a6)
  • deps: bump conventional-changelog-conventionalcommits from 9.3.1 to 10.2.0 in the release-tooling group across 1 directory (#1919) (5733d43)
  • deps: bump docker/build-push-action from 7.2.0 to 7.3.0 (#1926) (4a2aa1f)
  • deps: bump docker/login-action from 4.2.0 to 4.4.0 (#1981) (82d5313)
  • deps: bump docker/metadata-action from 6.1.0 to 6.2.0 (#1923) (eb28439)
  • deps: bump docker/setup-buildx-action from 4.1.0 to 4.2.0 (#1924) (c389c7b)
  • deps: bump docker/setup-qemu-action from 4.1.0 to 4.2.0 (#1905) (e381ce5)
  • deps: bump github/codeql-action from 4.36.3 to 4.37.0 (#1980) (01687be)
  • deps: bump github/codeql-action from 4.37.0 to 4.37.3 (#2206) (a4ba65c)
  • deps: bump grimmory-epub4j to 1.5.0 (#2163) (a7a8464)
  • deps: bump semantic-release from 25.0.5 to 25.0.7 in the release-tooling group (#2042) (2cfe5d2)
  • deps: bump semantic-release from 25.0.7 to 25.0.8 in the release-tooling group (#2089) (9741c6d)
  • deps: bump taiki-e/install-action from 2.81.11 to 2.82.7 (#1907) (263e54f)
  • deps: bump taiki-e/install-action from 2.82.7 to 2.83.1 (#1983) (6154d3e)
  • deps: bump taiki-e/install-action from 2.82.7 to 2.85.4 (#2204) (61e9da7)
  • deps: bump the frontend group across 1 directory with 10 updates (#2101) (bf093b9)
  • deps: bump the frontend group across 1 directory with 18 updates (#2043) (d3c0c29)
  • deps: bump the frontend group with 10 updates (#2181) (51afd6c)
  • deps: bump the frontend group with 14 updates (#1972) (fa72429)
  • deps: bump the frontend group with 19 updates (#1921) (d28aea3)
  • deps: bump the gradle-dependencies group across 1 directory with 4 updates (#1920) (db20fcc)
  • deps: bump the gradle-dependencies group across 1 directory with 8 updates (#2008) (634e9e2)
  • deps: bump the gradle-dependencies group in /backend with 3 updates (#2090) (ce79661)
  • deps: bump the release-tooling group across 1 directory with 2 updates (#2180) (2e04b1a)
  • deps: drop deprecated angular packages (#2242) (b18c444)
  • deps: replace tailwindcss-primeui with optimus-ui-tailwindcss (#2175) (8152cd4)
  • deps: switch PrimeNG to Optimus UI (#2093) (cc8a53b)
  • deps: update pnpm to 11.18.0 (#2193) (2e60cb4)
  • fix pnpm peer dependency issues (#2074) (9be80a4)

Documentation

Contributors

We'd like to thank the contributors for this release for taking the time to make Grimmory better.

Including but not limited to: @alexhb1 @ftibi93 @imnotjames @NichaesMol @nightt5879 @pyrox0 @sabrina553 @terminalchai @zachyale @zanivann

New Contributors