2b9a35771cc46cb5146929b35029dca31e2a409d
56 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
| d964a690c5 | feat: change volsync schedule | |||
| 9d201656b6 |
chore(deps): update booklore-app/booklore to v2.2.0 (#4633)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [booklore-app/BookLore](https://github.com/booklore-app/BookLore) | minor | `v2.1.0` → `v2.2.0` | | [ghcr.io/booklore-app/booklore](https://github.com/booklore-app/booklore) | minor | `v2.1.0` → `v2.2.0` | --- ### Release Notes <details> <summary>booklore-app/BookLore (booklore-app/BookLore)</summary> ### [`v2.2.0`](https://github.com/booklore-app/booklore/releases/tag/v2.2.0) [Compare Source](https://github.com/booklore-app/BookLore/compare/v2.1.0...v2.2.0) #### 🌟 What's New in v2.2.0 This release introduces (or brings back) two new library organization modes: **Book per File** and **Book per Folder**, giving you explicit control over how Booklore groups files into books during scanning. When Booklore first started, the philosophy was simple: don't worry about how files are organized on disk, just scan everything and figure it out. This worked well when libraries only contained single-file formats like EPUB and PDF. But as support grew for multi-format books and multi-file audiobooks, that approach started to break down. The existing Auto-detect mode uses fuzzy filename matching and heuristics to guess how files should be grouped, and while it works in many cases, it has some real problems: files can get missed during scans, multi-file audiobooks sometimes show up as separate books (one per file), and the grouping behavior is unpredictable since it depends on how your files happen to be named. Rather than continuing to patch Auto-detect, I'm introducing two new modes that are simple, predictable, and thoroughly-tested: - **Book per File**: Every file becomes its own book. One file, one book, no guessing. This is now the default for new libraries. - **Book per Folder**: Files in the same folder are grouped into a single book. Great for organized libraries with an `Author/Title/` structure, and it handles multi-format books and folder-based audiobooks naturally. If you have a folder with an EPUB, a MOBI, and an `audiobook/` subfolder, they all become one book. **Auto-detect is not going away.** Existing libraries using it will continue to work as before. But it's now marked as legacy, and I strongly recommend switching to one of the new modes. They're simpler, more reliable, and will be the focus of ongoing development and support going forward. You can set the organization mode when creating a new library, but cannot change it on an existing library. For a detailed breakdown of each mode with examples, check out the [documentation](https://booklore.org/docs/library/organization-modes). #### 🚀 New Features - Scanner organization modes and monitoring rework ([#​3279](https://github.com/booklore-app/BookLore/issues/3279)) by [@​acx10](https://github.com/acx10) #### ✨ Enhancements - Add configurable magnifier zoom and lens size for CBX reader ([#​3260](https://github.com/booklore-app/BookLore/issues/3260)) ([#​3268](https://github.com/booklore-app/BookLore/issues/3268)) by [@​acx10](https://github.com/acx10) #### 🐛 Bug Fixes - Make OIDC scopes configurable ([#​3261](https://github.com/booklore-app/BookLore/issues/3261)) ([#​3265](https://github.com/booklore-app/BookLore/issues/3265)) by [@​acx10](https://github.com/acx10) #### 🛠️ Refactoring & Maintenance - Lock organization mode dropdown for AUTO\_DETECT libraries ([#​3284](https://github.com/booklore-app/BookLore/issues/3284)) by [@​acx10](https://github.com/acx10) - Lock organization mode for AUTO\_DETECT libraries ([#​3283](https://github.com/booklore-app/BookLore/issues/3283)) by [@​acx10](https://github.com/acx10) - Translations update from Hosted Weblate ([#​3248](https://github.com/booklore-app/BookLore/issues/3248)) by [@​acx10](https://github.com/acx10) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v2.2.0` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v2.2.0` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v2.1.0...v2.2.0> <img width="728" height="942" alt="Screenshot 2026-03-11 at 8 51 59 AM" src="https://github.com/user-attachments/assets/a8decbd8-e80f-4865-b6ee-bbb612fd20b7" /> <img width="728" height="942" alt="Screenshot 2026-03-11 at 8 51 20 AM" src="https://github.com/user-attachments/assets/51a11cb8-d4ec-47b8-ac09-61cc222a8ab4" /> </details> <details> <summary>booklore-app/booklore (ghcr.io/booklore-app/booklore)</summary> ### [`v2.2.0`](https://github.com/booklore-app/booklore/releases/tag/v2.2.0) [Compare Source](https://github.com/booklore-app/booklore/compare/v2.1.0...v2.2.0) #### 🌟 What's New in v2.2.0 This release introduces (or brings back) two new library organization modes: **Book per File** and **Book per Folder**, giving you explicit control over how Booklore groups files into books during scanning. When Booklore first started, the philosophy was simple: don't worry about how files are organized on disk, just scan everything and figure it out. This worked well when libraries only contained single-file formats like EPUB and PDF. But as support grew for multi-format books and multi-file audiobooks, that approach started to break down. The existing Auto-detect mode uses fuzzy filename matching and heuristics to guess how files should be grouped, and while it works in many cases, it has some real problems: files can get missed during scans, multi-file audiobooks sometimes show up as separate books (one per file), and the grouping behavior is unpredictable since it depends on how your files happen to be named. Rather than continuing to patch Auto-detect, I'm introducing two new modes that are simple, predictable, and thoroughly-tested: - **Book per File**: Every file becomes its own book. One file, one book, no guessing. This is now the default for new libraries. - **Book per Folder**: Files in the same folder are grouped into a single book. Great for organized libraries with an `Author/Title/` structure, and it handles multi-format books and folder-based audiobooks naturally. If you have a folder with an EPUB, a MOBI, and an `audiobook/` subfolder, they all become one book. **Auto-detect is not going away.** Existing libraries using it will continue to work as before. But it's now marked as legacy, and I strongly recommend switching to one of the new modes. They're simpler, more reliable, and will be the focus of ongoing development and support going forward. You can set the organization mode when creating a new library, but cannot change it on an existing library. For a detailed breakdown of each mode with examples, check out the [documentation](https://booklore.org/docs/library/organization-modes). #### 🚀 New Features - Scanner organization modes and monitoring rework ([#​3279](https://github.com/booklore-app/booklore/issues/3279)) by [@​acx10](https://github.com/acx10) #### ✨ Enhancements - Add configurable magnifier zoom and lens size for CBX reader ([#​3260](https://github.com/booklore-app/booklore/issues/3260)) ([#​3268](https://github.com/booklore-app/booklore/issues/3268)) by [@​acx10](https://github.com/acx10) #### 🐛 Bug Fixes - Make OIDC scopes configurable ([#​3261](https://github.com/booklore-app/booklore/issues/3261)) ([#​3265](https://github.com/booklore-app/booklore/issues/3265)) by [@​acx10](https://github.com/acx10) #### 🛠️ Refactoring & Maintenance - Lock organization mode dropdown for AUTO\_DETECT libraries ([#​3284](https://github.com/booklore-app/booklore/issues/3284)) by [@​acx10](https://github.com/acx10) - Lock organization mode for AUTO\_DETECT libraries ([#​3283](https://github.com/booklore-app/booklore/issues/3283)) by [@​acx10](https://github.com/acx10) - Translations update from Hosted Weblate ([#​3248](https://github.com/booklore-app/booklore/issues/3248)) by [@​acx10](https://github.com/acx10) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v2.2.0` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v2.2.0` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v2.1.0...v2.2.0> <img width="728" height="942" alt="Screenshot 2026-03-11 at 8 51 59 AM" src="https://github.com/user-attachments/assets/a8decbd8-e80f-4865-b6ee-bbb612fd20b7" /> <img width="728" height="942" alt="Screenshot 2026-03-11 at 8 51 20 AM" src="https://github.com/user-attachments/assets/51a11cb8-d4ec-47b8-ac09-61cc222a8ab4" /> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41OS4yIiwidXBkYXRlZEluVmVyIjoiNDMuNTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/4633 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| c391b211a4 |
chore(deps): update dependency booklore-app/booklore to v2.1.0 (#4540)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [booklore-app/BookLore](https://github.com/booklore-app/BookLore) | minor | `v2.0.6` → `v2.1.0` | --- ### Release Notes <details> <summary>booklore-app/BookLore (booklore-app/BookLore)</summary> ### [`v2.1.0`](https://github.com/booklore-app/booklore/releases/tag/v2.1.0) [Compare Source](https://github.com/booklore-app/BookLore/compare/v2.0.6...v2.1.0) #### 🌟 What's New in v2.1.0 #### 🚀 New Features - Add bulk ISBN import from file ([#​3239](https://github.com/booklore-app/BookLore/issues/3239)) ([#​3244](https://github.com/booklore-app/BookLore/issues/3244)) by [@​acx10](https://github.com/acx10) - Allow importing and exporting magic shelf JSON from the UI ([#​3183](https://github.com/booklore-app/BookLore/issues/3183)) ([#​3210](https://github.com/booklore-app/BookLore/issues/3210)) by [@​acx10](https://github.com/acx10) #### ✨ Enhancements - Allow physical and digital book states to coexist ([#​3043](https://github.com/booklore-app/BookLore/issues/3043)) ([#​3238](https://github.com/booklore-app/BookLore/issues/3238)) by [@​acx10](https://github.com/acx10) - Add ASIN lookup to author search ([#​3162](https://github.com/booklore-app/BookLore/issues/3162)) ([#​3228](https://github.com/booklore-app/BookLore/issues/3228)) by [@​acx10](https://github.com/acx10) - Add option to regenerate only missing covers ([#​3181](https://github.com/booklore-app/BookLore/issues/3181)) ([#​3227](https://github.com/booklore-app/BookLore/issues/3227)) by [@​acx10](https://github.com/acx10) - Fall back to folder cover images when embedded cover extraction fails ([#​3212](https://github.com/booklore-app/BookLore/issues/3212)) by [@​acx10](https://github.com/acx10) - Add magnifying glass to CBX reader ([#​3190](https://github.com/booklore-app/BookLore/issues/3190)) ([#​3209](https://github.com/booklore-app/BookLore/issues/3209)) by [@​acx10](https://github.com/acx10) #### 🐛 Bug Fixes - Fix cover download failing when CDN redirects to raw IP ([#​3149](https://github.com/booklore-app/BookLore/issues/3149)) ([#​3247](https://github.com/booklore-app/BookLore/issues/3247)) by [@​acx10](https://github.com/acx10) - Fix DST-related datetime rejection on TIMESTAMP columns ([#​3240](https://github.com/booklore-app/BookLore/issues/3240)) ([#​3241](https://github.com/booklore-app/BookLore/issues/3241)) ([#​3245](https://github.com/booklore-app/BookLore/issues/3245)) by [@​acx10](https://github.com/acx10) - Add groups scope to OIDC authorization request ([#​3211](https://github.com/booklore-app/BookLore/issues/3211)) ([#​3226](https://github.com/booklore-app/BookLore/issues/3226)) by [@​acx10](https://github.com/acx10) - Add Hardcover Book ID to custom metadata fetch ([#​3214](https://github.com/booklore-app/BookLore/issues/3214)) ([#​3224](https://github.com/booklore-app/BookLore/issues/3224)) by [@​acx10](https://github.com/acx10) - Fix organize files preview missing subtitle ([#​3217](https://github.com/booklore-app/BookLore/issues/3217)) ([#​3223](https://github.com/booklore-app/BookLore/issues/3223)) by [@​acx10](https://github.com/acx10) - Fix metadata center dialog mode being ignored on book card info button ([#​3218](https://github.com/booklore-app/BookLore/issues/3218)) ([#​3222](https://github.com/booklore-app/BookLore/issues/3222)) by [@​acx10](https://github.com/acx10) - fix(opds): sort libraries by name in OPDS feed ([#​3220](https://github.com/booklore-app/BookLore/issues/3220)) by [@​berb](https://github.com/berb) - Fix shelf view overrides not being respected ([#​2603](https://github.com/booklore-app/BookLore/issues/2603)) ([#​3206](https://github.com/booklore-app/BookLore/issues/3206)) by [@​acx10](https://github.com/acx10) #### 🛠️ Refactoring & Maintenance - Translations update from Hosted Weblate ([#​3200](https://github.com/booklore-app/BookLore/issues/3200)) by [@​acx10](https://github.com/acx10) - Pin footer buttons in metadata review dialog ([#​3053](https://github.com/booklore-app/BookLore/issues/3053)) ([#​3235](https://github.com/booklore-app/BookLore/issues/3235)) by [@​acx10](https://github.com/acx10) - Persist metadata search provider selection across book switches ([#​3107](https://github.com/booklore-app/BookLore/issues/3107)) ([#​3234](https://github.com/booklore-app/BookLore/issues/3234)) by [@​acx10](https://github.com/acx10) - Fix untranslatable UI strings, broken pluralization, and translation reactivity ([#​3108](https://github.com/booklore-app/BookLore/issues/3108)) ([#​3233](https://github.com/booklore-app/BookLore/issues/3233)) by [@​acx10](https://github.com/acx10) - Fix npm audit vulnerabilities ([#​3229](https://github.com/booklore-app/BookLore/issues/3229)) by [@​acx10](https://github.com/acx10) - Rename "Book Type" label to "File Format" ([#​3204](https://github.com/booklore-app/BookLore/issues/3204)) ([#​3225](https://github.com/booklore-app/BookLore/issues/3225)) by [@​acx10](https://github.com/acx10) - Increase minimum password length to 8 characters ([#​3185](https://github.com/booklore-app/BookLore/issues/3185)) ([#​3207](https://github.com/booklore-app/BookLore/issues/3207)) by [@​acx10](https://github.com/acx10) - Include physical books in the Book Type filter ([#​3205](https://github.com/booklore-app/BookLore/issues/3205)) by [@​acx10](https://github.com/acx10) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v2.1.0` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v2.1.0` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v2.0.6...v2.1.0>   </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41OS4yIiwidXBkYXRlZEluVmVyIjoiNDMuNTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/4540 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| f3dd32bd89 |
chore(deps): update ghcr.io/booklore-app/booklore docker tag to v2.1.0 (#4537)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/booklore-app/booklore](https://github.com/booklore-app/booklore) | minor | `v2.0.6` → `v2.1.0` | --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41OS4yIiwidXBkYXRlZEluVmVyIjoiNDMuNTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: #4537 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| 16f73b445b | chore(deps): update booklore-app/booklore to v2.0.6 (#4494) | |||
| 2f46dbc734 |
chore(deps): update volsync-target docker tag to v0.8.0 (#4459)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [volsync-target](https://github.com/backube/volsync) | minor | `0.7.0` → `0.8.0` | --- ### Release Notes <details> <summary>backube/volsync (volsync-target)</summary> ### [`v0.8.0`](https://github.com/backube/volsync/blob/HEAD/CHANGELOG.md#080) [Compare Source](https://github.com/backube/volsync/compare/v0.7.0...v0.8.0) ##### Added - Restic - ReplicationSource/ReplicationDestination can now specify a CustomCA that is from a configmap rather than only from a secret. - Rclone - ReplicationSource/ReplicationDestination can now specify a CustomCA that is contained in either a configmap or secret. - Restic - New option to run a restic unlock before the backup in the next sync. - Restic - Allow passing through of RCLONE\_ env vars from the restic secret to the mover job. - Volume Populator added for ReplicationDestinations. ##### Changed - Syncthing upgraded to v1.25.0 - Restic upgraded to v0.16.2 - Rclone upgraded to v1.63.1 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41MS4xIiwidXBkYXRlZEluVmVyIjoiNDMuNTEuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: #4459 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| fb79f11882 | feat: change user | |||
| d4b35afa33 | feat: change user | |||
| 36cd0800ac | chore(deps): update booklore-app/booklore to v2.0.5 (#4331) | |||
| bfa8b0c4c7 | chore(deps): update booklore-app/booklore to v2.0.4 (#4306) | |||
| 797d1e6b43 | chore(deps): update booklore-app/booklore to v2.0.3 (#4255) | |||
| 91540f1955 | chore(deps): update booklore-app/booklore to v2.0.2 (#4236) | |||
| 15423676b5 |
chore(deps): update booklore-app/booklore to v2 (major) (#4176)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [booklore-app/BookLore](https://github.com/booklore-app/BookLore) | major | `v1.18.5` → `v2.0.1` | | [ghcr.io/booklore-app/booklore](https://github.com/booklore-app/booklore) | major | `v1.18.5` → `v2.0.1` | --- ### Release Notes <details> <summary>booklore-app/BookLore (booklore-app/BookLore)</summary> ### [`v2.0.1`](https://github.com/booklore-app/booklore/releases/tag/v2.0.1) [Compare Source](https://github.com/booklore-app/BookLore/compare/v2.0.0...v2.0.1) #### 🌟 What's New in v2.0.1 #### 🐛 Bug Fixes - Fix max upload size description to include all file formats ([#​2894](https://github.com/booklore-app/BookLore/issues/2894)) by [@​acx10](https://github.com/acx10) - Fix magic shelf physical book filter and polish UI ([#​2888](https://github.com/booklore-app/BookLore/issues/2888)) by [@​acx10](https://github.com/acx10) - Fix metadata settings not saving due to null deserialization error ([#​2886](https://github.com/booklore-app/BookLore/issues/2886)) by [@​acx10](https://github.com/acx10) - Fix Kobo download/image URLs using wrong port behind reverse proxy ([#​2875](https://github.com/booklore-app/BookLore/issues/2875)) by [@​acx10](https://github.com/acx10) - Fix app crash on startup when /bookdrop volume is not mounted ([#​2873](https://github.com/booklore-app/BookLore/issues/2873)) by [@​acx10](https://github.com/acx10) #### 🛠️ Refactoring & Maintenance - Hide sidecar tab for physical books ([#​2887](https://github.com/booklore-app/BookLore/issues/2887)) by [@​acx10](https://github.com/acx10) - Translations update from Hosted Weblate ([#​2866](https://github.com/booklore-app/BookLore/issues/2866)) by [@​acx10](https://github.com/acx10) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v2.0.1` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v2.0.1` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v2.0.0...v2.0.1> ### [`v2.0.0`](https://github.com/booklore-app/booklore/releases/tag/v2.0.0) [Compare Source](https://github.com/booklore-app/BookLore/compare/v1.18.5...v2.0.0) #### 🌟 What's New in v2.0.0 This is the biggest Booklore release yet, with nearly 200 commits touching every part of the application: - **Multi-Format Book Support & Audiobooks**: Books can now have multiple file formats (EPUB, PDF, CBZ, etc.) attached to a single entry. Full audiobook support is here with a dedicated player, streaming playback, narrator filtering, and session tracking. - **Duplicate Book Detection & Merge**: Booklore can now detect duplicate books across your library. A new merge tool lets you combine duplicates, choose which formats to keep, and optionally move files, all without losing metadata. - **Author Metadata via Audnexus**: Author pages now pull rich metadata (bios, images) from the Audnexus API, with a dedicated author browser, detail page, and editor. - **Series Browser**: A brand new series browser page with search, filtering, sorting, and resizable cards for browsing your series collection at a glance. - **Annotation Notebook**: All your highlights, notes, and bookmarks are now collected in a searchable, paginated notebook view. - **Audit Log System**: Admins can now see a full audit trail of significant actions (user management, library changes, metadata operations) with geo flags, relative timestamps, and filterable logs. - **Bidirectional Kobo Sync**: Full two-way reading progress sync with Kobo devices, plus shelves and magic shelves now sync as Kobo tags. - **Cascading Sidebar Filters**: Filters now cascade, so selecting an author narrows available series, genres, etc. You can also customize which filters are visible. - **10+ New Statistics Charts**: A massive expansion of the stats page with reading heatmaps, distribution charts, completion races, and more. - **PDF Annotations & Reader Upgrades**: The PDF reader now supports annotations, dark/light mode toggle, and Range streaming. The ebook reader gains fullscreen, keyboard shortcuts, and go-to-percentage. The CBX reader adds fullscreen, slideshow, RTL, and long strip mode. - **Sidecar Metadata Files**: Booklore can now read and write `.metadata.json` sidecar files alongside your books for portable metadata storage. - **Extended Comic Metadata**: Full ComicInfo.xml support with a dedicated comic metadata picker and write-back to CBZ/PDF files. - **Internationalization via Weblate**: Booklore is now fully translatable with Transloco and Weblate integration. Ships with 15+ languages including Hungarian, Slovenian, Croatian, Swedish, Chinese, and Japanese. - **Java 25, Spring Boot 4, Gradle 9**: The entire backend has been upgraded to the latest stack. Nginx has been removed; Angular is now served directly from Spring Boot. - **Login Rate Limiting**: Brute-force protection on the login endpoint. Plus new age and content rating support for restricted libraries. - **Performance**: Book list API optimized with ETag caching, delta sync, and IndexedDB. Project Lilliput compact object headers reduce heap usage. #### 🚀 New Features - Introduce multi-format book support, including audiobooks ([#​2486](https://github.com/booklore-app/BookLore/issues/2486)) by [@​acx10](https://github.com/acx10) - Add duplicate book detection/merge and fix format-related data loss ([#​2820](https://github.com/booklore-app/BookLore/issues/2820)) by [@​acx10](https://github.com/acx10) - Add author metadata via Audnexus with browser, detail, and editor pages ([#​2843](https://github.com/booklore-app/BookLore/issues/2843)) by [@​acx10](https://github.com/acx10) - feat: add series browser page ([#​2771](https://github.com/booklore-app/BookLore/issues/2771)) by [@​acx10](https://github.com/acx10) - feat: add annotation notebook with server-side pagination ([#​2736](https://github.com/booklore-app/BookLore/issues/2736)) by [@​acx10](https://github.com/acx10) - feat: add audit log system for tracking admin-significant actions ([#​2759](https://github.com/booklore-app/BookLore/issues/2759)) by [@​acx10](https://github.com/acx10) - Add bidirectional Kobo reading progress sync ([#​2791](https://github.com/booklore-app/BookLore/issues/2791)) by [@​acx10](https://github.com/acx10) - feat(filters): implement cascading sidebar filters ([#​2616](https://github.com/booklore-app/BookLore/issues/2616)) by [@​acx10](https://github.com/acx10) - feat(cbx-reader): add fullscreen, slideshow, RTL, long strip mode and keyboard shortcuts ([#​2632](https://github.com/booklore-app/BookLore/issues/2632)) by [@​acx10](https://github.com/acx10) - feat(sidecar): add sidecar JSON metadata file support ([#​2657](https://github.com/booklore-app/BookLore/issues/2657)) by [@​acx10](https://github.com/acx10) - feat(comic-metadata): add extended comic metadata support ([#​2654](https://github.com/booklore-app/BookLore/issues/2654)) by [@​acx10](https://github.com/acx10) - feat(i18n): add Transloco translation framework with EN/ES and 7 language scaffolds ([#​2681](https://github.com/booklore-app/BookLore/issues/2681)) by [@​acx10](https://github.com/acx10) - feat(api, build): Upgrade to Java 25, Gradle 9, and Spring Boot 4, Jackson 3 ([#​2597](https://github.com/booklore-app/BookLore/issues/2597)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Remove nginx and serve Angular directly from Spring Boot ([#​2662](https://github.com/booklore-app/BookLore/issues/2662)) by [@​acx10](https://github.com/acx10) - feat: add login rate limiting to prevent brute-force attacks ([#​2761](https://github.com/booklore-app/BookLore/issues/2761)) by [@​acx10](https://github.com/acx10) - feat(content-restrictions): add age rating and content rating support ([#​2619](https://github.com/booklore-app/BookLore/issues/2619)) by [@​acx10](https://github.com/acx10) - feat(sorting): add multi-field sorting support ([#​2628](https://github.com/booklore-app/BookLore/issues/2628)) by [@​acx10](https://github.com/acx10) - feat(metadata): add custom metadata write to file support for moods, tags, ratings, and external IDs in PDF, and CBZ ([#​2552](https://github.com/booklore-app/BookLore/issues/2552)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(metadata) Save basic metadata to EPUB file - Bonus use Calibre Custom Columns for importing metadata. ([#​1879](https://github.com/booklore-app/BookLore/issues/1879)) by [@​jadehawk](https://github.com/jadehawk) - feat: add grouped field dropdown and composite fields to magic shelf ([#​2750](https://github.com/booklore-app/BookLore/issues/2750)) by [@​acx10](https://github.com/acx10) - feat(filters): add customizable visible filters setting ([#​2625](https://github.com/booklore-app/BookLore/issues/2625)) by [@​acx10](https://github.com/acx10) - Add 10 advanced stats charts ([#​2850](https://github.com/booklore-app/BookLore/issues/2850)) by [@​acx10](https://github.com/acx10) - feat(stats): add 5 new user statistics charts ([#​2703](https://github.com/booklore-app/BookLore/issues/2703)) by [@​acx10](https://github.com/acx10) - feat(i18n): add Weblate integration and auth translations ([#​2727](https://github.com/booklore-app/BookLore/issues/2727)) by [@​acx10](https://github.com/acx10) - feat: add else clause and value modifiers to file naming patterns ([#​2724](https://github.com/booklore-app/BookLore/issues/2724)) by [@​acx10](https://github.com/acx10) - feat: add button to fetch metadata from book file ([#​2739](https://github.com/booklore-app/BookLore/issues/2739)) by [@​acx10](https://github.com/acx10) - feat(google-books): add optional API key configuration ([#​2629](https://github.com/booklore-app/BookLore/issues/2629)) by [@​acx10](https://github.com/acx10) #### ✨ Enhancements - feat(reader): add PDF annotations, Range streaming, and optimized chunk loading ([#​2701](https://github.com/booklore-app/BookLore/issues/2701)) by [@​acx10](https://github.com/acx10) - feat(reader): add fullscreen, keyboard shortcuts, search cancel, and go-to-percentage ([#​2698](https://github.com/booklore-app/BookLore/issues/2698)) by [@​acx10](https://github.com/acx10) - feat(reader): add dark/light mode toggle and improved close button to PDF reader ([#​2699](https://github.com/booklore-app/BookLore/issues/2699)) by [@​acx10](https://github.com/acx10) - feat(kobo-sync): add user scoped 2 way kobo sync ([#​2452](https://github.com/booklore-app/BookLore/issues/2452)) by [@​b3nk3](https://github.com/b3nk3) - feat(kobo-sync): Sync Shelves and Magic Shelves to Kobo Tags ([#​2236](https://github.com/booklore-app/BookLore/issues/2236)) by [@​xcashy](https://github.com/xcashy) - Redesign series page layout and book list tab ([#​2847](https://github.com/booklore-app/BookLore/issues/2847)) by [@​acx10](https://github.com/acx10) - feat(sort): replace compound sort options with atomic fields and multi-sort support ([#​2686](https://github.com/booklore-app/BookLore/issues/2686)) by [@​acx10](https://github.com/acx10) - Add moveFiles option to attach/merge and per-book delete in duplicate merger ([#​2833](https://github.com/booklore-app/BookLore/issues/2833)) by [@​acx10](https://github.com/acx10) - feat: enhance audit logs with geo flags, relative time, and UX improvements ([#​2760](https://github.com/booklore-app/BookLore/issues/2760)) by [@​acx10](https://github.com/acx10) - feat(bookdrop): add ability to poll the bookdrop folder ([#​2768](https://github.com/booklore-app/BookLore/issues/2768)) by [@​arjunsrinivasan1997](https://github.com/arjunsrinivasan1997) - feat: add metadata presence filter to magic shelf ([#​2757](https://github.com/booklore-app/BookLore/issues/2757)) by [@​acx10](https://github.com/acx10) - feat(upload): add upload progress tracking with progress bar and stats ([#​2640](https://github.com/booklore-app/BookLore/issues/2640)) by [@​acx10](https://github.com/acx10) - feat(email): add format selection to email book dialog ([#​2650](https://github.com/booklore-app/BookLore/issues/2650)) by [@​acx10](https://github.com/acx10) - feat(pwa): Enable fullscreen mode for Android immersive reading ([#​2649](https://github.com/booklore-app/BookLore/issues/2649)) by [@​alondero](https://github.com/alondero) - Add Hungarian and Slovenian language support ([#​2846](https://github.com/booklore-app/BookLore/issues/2846)) by [@​acx10](https://github.com/acx10) - fix(library-service): prevent concurrent library scans with a tracking set ([#​2637](https://github.com/booklore-app/BookLore/issues/2637)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat: add configurable sidebar width setting ([#​2749](https://github.com/booklore-app/BookLore/issues/2749)) by [@​acx10](https://github.com/acx10) - refactor(download): simplify file download to use browser native handling ([#​2639](https://github.com/booklore-app/BookLore/issues/2639)) by [@​acx10](https://github.com/acx10) #### 🎨 UI Tweaks - Add visual polish to book card component ([#​2788](https://github.com/booklore-app/BookLore/issues/2788)) by [@​acx10](https://github.com/acx10) - refactor: centralize access-denied card styles into shared mixin ([#​2515](https://github.com/booklore-app/BookLore/issues/2515)) by [@​acx10](https://github.com/acx10) #### 🐛 Bug Fixes - fix(auth): resolve DST-related login failure for refresh tokens ([#​2624](https://github.com/booklore-app/BookLore/issues/2624)) by [@​acx10](https://github.com/acx10) - Fix Kobo sync HeadersTooLargeException for large libraries ([#​2809](https://github.com/booklore-app/BookLore/issues/2809)) by [@​acx10](https://github.com/acx10) - fix(metadata-refresh): Correct metadata update priorities and preserve disabled fields during 'replace all' ([#​2503](https://github.com/booklore-app/BookLore/issues/2503)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(metadata-parsers): improve ISBN search logic and fallback strategies for metadata fetching ([#​2502](https://github.com/booklore-app/BookLore/issues/2502)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(metadata-update): ensure per-book transaction isolation in bulk updates to prevent race conditions ([#​2536](https://github.com/booklore-app/BookLore/issues/2536)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(metadata-refresh): fix filter book shelves by authenticated user logs out the user. ([#​2481](https://github.com/booklore-app/BookLore/issues/2481)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix null collection errors for PDFs, audiobooks, and physical books ([#​2817](https://github.com/booklore-app/BookLore/issues/2817)) by [@​acx10](https://github.com/acx10) - fix(library-processing): re-fetch library entity after clearing entity manager during rescan ([#​2507](https://github.com/booklore-app/BookLore/issues/2507)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(file-move): ensure file moves are rolled back if database update fails ([#​2588](https://github.com/booklore-app/BookLore/issues/2588)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(file-move): update empty directory cleanup to handle multiple library paths ([#​2634](https://github.com/booklore-app/BookLore/issues/2634)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix CBR/CB7 to CBZ conversion losing track of file path ([#​2835](https://github.com/booklore-app/BookLore/issues/2835)) by [@​acx10](https://github.com/acx10) - fix(cbz-reader): CBZ reading regression and optimize ZIP parsing strategy ([#​2593](https://github.com/booklore-app/BookLore/issues/2593)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix PDF reader not loading alternate format files ([#​2836](https://github.com/booklore-app/BookLore/issues/2836)) by [@​acx10](https://github.com/acx10) - fix(epub-cover-extract): improve cover image extraction with fallback handling ([#​2585](https://github.com/booklore-app/BookLore/issues/2585)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(epub-metadata): enhance cover extraction with heuristic fallbacks for manifest and ZIP entries ([#​2636](https://github.com/booklore-app/BookLore/issues/2636)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(book-rule-evaluator): fix file type handling and add mapping for specific formats to fix magic shelve based on filetype ([#​2480](https://github.com/booklore-app/BookLore/issues/2480)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix magic shelf rule evaluation for numeric comparisons ([#​2795](https://github.com/booklore-app/BookLore/issues/2795)) by [@​acx10](https://github.com/acx10) - Fix read status NULL progress handling in rule evaluator ([#​2821](https://github.com/booklore-app/BookLore/issues/2821)) by [@​acx10](https://github.com/acx10) - Fix bookdrop race condition processing files before fully written ([#​2785](https://github.com/booklore-app/BookLore/issues/2785)) by [@​acx10](https://github.com/acx10) - fix(bookdrop): handle file modifications in Bookdrop event handler ([#​2559](https://github.com/booklore-app/BookLore/issues/2559)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(hardcover-sync): Don't send repeated read status to Hardcover.app ([#​2609](https://github.com/booklore-app/BookLore/issues/2609)) by [@​PhasecoreX](https://github.com/PhasecoreX) - fix(api): Select correct Hardcover.app ISBN from lookup results ([#​2530](https://github.com/booklore-app/BookLore/issues/2530)) by [@​PhasecoreX](https://github.com/PhasecoreX) - fix(ui): fix memory leaks and cascading API calls in metadata editor ([#​2716](https://github.com/booklore-app/BookLore/issues/2716)) by [@​acx10](https://github.com/acx10) - fix: replace Quill editor with native HTML rendering for book descriptions ([#​2733](https://github.com/booklore-app/BookLore/issues/2733)) by [@​acx10](https://github.com/acx10) - Fix reading stats queries not accounting for timezone ([#​2844](https://github.com/booklore-app/BookLore/issues/2844)) by [@​acx10](https://github.com/acx10) - Fix reading session timeline long sessions, tooltip perf, and week mismatch ([#​2848](https://github.com/booklore-app/BookLore/issues/2848)) by [@​acx10](https://github.com/acx10) - fix(reading-stats,ui): update heatmap to use local time formatting… ([#​2587](https://github.com/booklore-app/BookLore/issues/2587)) by [@​WorldTeacher](https://github.com/WorldTeacher) - fix(select-all): "Mark All" bug and add "Remove from all shelves" bulk action across components ([#​2562](https://github.com/booklore-app/BookLore/issues/2562)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(opds): Fix OPDS CBR mime type reporting and strict Archive detection ([#​2592](https://github.com/booklore-app/BookLore/issues/2592)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix OPDS shelf filter cartesian product ([#​2837](https://github.com/booklore-app/BookLore/issues/2837)) by [@​acx10](https://github.com/acx10) - fix(comic-metadata): fix series grouping bug with external ComicInfo.xml metadata ([#​2385](https://github.com/booklore-app/BookLore/issues/2385)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix additional file uploader bugs and improve metadata viewer ([#​2816](https://github.com/booklore-app/BookLore/issues/2816)) by [@​acx10](https://github.com/acx10) - Fix PWA offline fallback blocking localhost access when internet is disconnected ([#​2784](https://github.com/booklore-app/BookLore/issues/2784)) by [@​acx10](https://github.com/acx10) - fix(audiobook-reader): use preload=none for immediate streaming playback ([#​2518](https://github.com/booklore-app/BookLore/issues/2518)) by [@​acx10](https://github.com/acx10) - fix: reset audiobook progress and clear cached progress in UI ([#​2711](https://github.com/booklore-app/BookLore/issues/2711)) by [@​acx10](https://github.com/acx10) - Fix cbx reader prev/next book stacking on close ([#​2858](https://github.com/booklore-app/BookLore/issues/2858)) by [@​acx10](https://github.com/acx10) - Fix ebook reader header not hiding on mobile tap ([#​2857](https://github.com/booklore-app/BookLore/issues/2857)) by [@​acx10](https://github.com/acx10) - fix(reader): enable text copy in ebook reader ([#​2702](https://github.com/booklore-app/BookLore/issues/2702)) by [@​acx10](https://github.com/acx10) - Fix CBZ reader scroll position reset in infinite scroll mode ([#​2781](https://github.com/booklore-app/BookLore/issues/2781)) by [@​acx10](https://github.com/acx10) - Fix column gap +/- buttons in eBook reader default settings ([#​2780](https://github.com/booklore-app/BookLore/issues/2780)) by [@​acx10](https://github.com/acx10) - Fix email provider creation failing due to null shared field ([#​2794](https://github.com/booklore-app/BookLore/issues/2794)) by [@​acx10](https://github.com/acx10) - Fix audit logs pagination bug and add URL query param sync ([#​2787](https://github.com/booklore-app/BookLore/issues/2787)) by [@​acx10](https://github.com/acx10) - Fix audit log description overflow for bulk metadata refresh ([#​2783](https://github.com/booklore-app/BookLore/issues/2783)) by [@​acx10](https://github.com/acx10) - Fix multiple author card menus opening simultaneously ([#​2852](https://github.com/booklore-app/BookLore/issues/2852)) by [@​acx10](https://github.com/acx10) - Fix Goodreads label mappings and format config ([#​2779](https://github.com/booklore-app/BookLore/issues/2779)) by [@​AlfredSimpson](https://github.com/AlfredSimpson) - fix(ui): encode filter values in query params to handle commas in names ([#​2717](https://github.com/booklore-app/BookLore/issues/2717)) by [@​acx10](https://github.com/acx10) - fix(ui): prevent footer submenu from rendering off screen ([#​2714](https://github.com/booklore-app/BookLore/issues/2714)) by [@​acx10](https://github.com/acx10) - fix(ui): inline mobile charts submenu to prevent layout overflow ([#​2713](https://github.com/booklore-app/BookLore/issues/2713)) by [@​acx10](https://github.com/acx10) - fix(ui): correctly format lubimyczytac external rating link ([#​2491](https://github.com/booklore-app/BookLore/issues/2491)) by [@​sebhewelt](https://github.com/sebhewelt) - Fix iconDisplay binding syntax in metadata viewer ([#​2772](https://github.com/booklore-app/BookLore/issues/2772)) by [@​WorldTeacher](https://github.com/WorldTeacher) - Fix mobile toolbar overlapping on small screens ([#​2856](https://github.com/booklore-app/BookLore/issues/2856)) by [@​acx10](https://github.com/acx10) - Fix book browser header title overflow on mobile ([#​2808](https://github.com/booklore-app/BookLore/issues/2808)) by [@​acx10](https://github.com/acx10) - fix(book-browser): resolve footer menu not hiding after navigation back ([#​2626](https://github.com/booklore-app/BookLore/issues/2626)) by [@​acx10](https://github.com/acx10) - fix: align frontend Page interfaces with VIA\_DTO serialization format ([#​2751](https://github.com/booklore-app/BookLore/issues/2751)) by [@​acx10](https://github.com/acx10) - fix: show provider icons in metadata viewer when only ID is present ([#​2734](https://github.com/booklore-app/BookLore/issues/2734)) by [@​acx10](https://github.com/acx10) - fix: hide show-more button when description fits without truncation ([#​2766](https://github.com/booklore-app/BookLore/issues/2766)) by [@​acx10](https://github.com/acx10) - fix: use audiobook thumbnail for audiobook entries in notebook ([#​2763](https://github.com/booklore-app/BookLore/issues/2763)) by [@​acx10](https://github.com/acx10) - fix: show session numbers in book ([#​2696](https://github.com/booklore-app/BookLore/issues/2696)) by [@​WorldTeacher](https://github.com/WorldTeacher) - fix(settings): use boxed Integer for ScrollerConfig.maxItems to allow null ([#​2684](https://github.com/booklore-app/BookLore/issues/2684)) by [@​acx10](https://github.com/acx10) - fix(series-multi-select): Fix transparency in series multi select pop-up ([#​2555](https://github.com/booklore-app/BookLore/issues/2555)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix: Filter text overwrites on long options ([#​2540](https://github.com/booklore-app/BookLore/issues/2540)) by [@​acx10](https://github.com/acx10) - Fix: Lock icons do not stay with publisher and series name input fields ([#​2539](https://github.com/booklore-app/BookLore/issues/2539)) by [@​acx10](https://github.com/acx10) - fix(metadata): improve cover errors, reduce metadata fetch count, and hide attach option ([#​2690](https://github.com/booklore-app/BookLore/issues/2690)) by [@​acx10](https://github.com/acx10) #### ⚡ Performance - perf: optimize book list API with ETag, delta sync, and IndexedDB caching ([#​2753](https://github.com/booklore-app/BookLore/issues/2753)) by [@​acx10](https://github.com/acx10) - perf: enable compact object headers (Project Lilliput) ([#​2755](https://github.com/booklore-app/BookLore/issues/2755)) by [@​acx10](https://github.com/acx10) #### 🛠️ Refactoring & Maintenance - refactor: split BookService into BookFileService and BookMetadataManageService ([#​2758](https://github.com/booklore-app/BookLore/issues/2758)) by [@​acx10](https://github.com/acx10) - chore: fix memory leaks, add aria-labels, improve type safety and logging ([#​2764](https://github.com/booklore-app/BookLore/issues/2764)) by [@​acx10](https://github.com/acx10) - chore: add caching, validation, lazy routes, refresh rate limiting, JaCoCo, and cleanup ([#​2762](https://github.com/booklore-app/BookLore/issues/2762)) by [@​acx10](https://github.com/acx10) - perf: strip unused fields from book list API response ([#​2741](https://github.com/booklore-app/BookLore/issues/2741)) by [@​acx10](https://github.com/acx10) - perf(epub): Replace linear manifest scans with HashMaps in EPUB reader ([#​2598](https://github.com/booklore-app/BookLore/issues/2598)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(metadata): return full metadata from parsers instead of previews ([#​2689](https://github.com/booklore-app/BookLore/issues/2689)) by [@​acx10](https://github.com/acx10) - feat: comic metadata picker, lazy-load providers, and UI improvements ([#​2679](https://github.com/booklore-app/BookLore/issues/2679)) by [@​acx10](https://github.com/acx10) - Add complete translations for all supported languages ([#​2831](https://github.com/booklore-app/BookLore/issues/2831)) by [@​acx10](https://github.com/acx10) - Add Hungarian and Slovenian language support ([#​2846](https://github.com/booklore-app/BookLore/issues/2846)) by [@​acx10](https://github.com/acx10) - Add Croatian and Swedish translations for login page ([#​2786](https://github.com/booklore-app/BookLore/issues/2786)) by [@​acx10](https://github.com/acx10) - feat: add i18n translations for stats, pdf reader, magic shelf, and remaining components (en/es) ([#​2742](https://github.com/booklore-app/BookLore/issues/2742)) by [@​acx10](https://github.com/acx10) - feat: add i18n translations for book components, services, and readers (en/es) ([#​2738](https://github.com/booklore-app/BookLore/issues/2738)) by [@​acx10](https://github.com/acx10) - fix(i18n): dynamic sidebar translations and UI font normalization ([#​2683](https://github.com/booklore-app/BookLore/issues/2683)) by [@​acx10](https://github.com/acx10) - feat: disable PDF printing for users without download permission ([#​2737](https://github.com/booklore-app/BookLore/issues/2737)) by [@​acx10](https://github.com/acx10) - feat(ui): add file name column to table view and include filename in search ([#​2712](https://github.com/booklore-app/BookLore/issues/2712)) by [@​acx10](https://github.com/acx10) - feat(ui): provide hyperlinks for books as book cards in grid view ([#​2500](https://github.com/booklore-app/BookLore/issues/2500)) by [@​berb](https://github.com/berb) - feat(ui): Add sort by filePath ([#​1180](https://github.com/booklore-app/BookLore/issues/1180) and [#​2364](https://github.com/booklore-app/BookLore/issues/2364)) ([#​2512](https://github.com/booklore-app/BookLore/issues/2512)) by [@​chiguirepower](https://github.com/chiguirepower) - feat(icons): Made icons for libraries and shelves optional with no default icons. ([#​2599](https://github.com/booklore-app/BookLore/issues/2599)) by [@​arthurgiroux](https://github.com/arthurgiroux) - fix(comicvine): add fallback to issue detail endpoint for missing creator credits ([#​2694](https://github.com/booklore-app/BookLore/issues/2694)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(epub-metadata): enhance cover extraction with heuristic fallbacks for manifest and ZIP entries ([#​2636](https://github.com/booklore-app/BookLore/issues/2636)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(metadata-match): Fix metadata quality calculation to properly handle locked fields ([#​2513](https://github.com/booklore-app/BookLore/issues/2513)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(ui): reload shelves when enabling Kobo sync ([#​2715](https://github.com/booklore-app/BookLore/issues/2715)) by [@​acx10](https://github.com/acx10) - fix(ui): standardize button labels and styles across components ([#​2560](https://github.com/booklore-app/BookLore/issues/2560)) by [@​balazs-szucs](https://github.com/balazs-szucs) - chore: redesign README for cleaner layout and visual polish ([#​2728](https://github.com/booklore-app/BookLore/issues/2728)) by [@​acx10](https://github.com/acx10) - fix: make README logo visible in GitHub light mode ([#​2756](https://github.com/booklore-app/BookLore/issues/2756)) by [@​acx10](https://github.com/acx10) - chore: clean up PR template and contributing guide ([#​2660](https://github.com/booklore-app/BookLore/issues/2660)) by [@​acx10](https://github.com/acx10) - fix(file naming): add leading zero to series index ([#​2642](https://github.com/booklore-app/BookLore/issues/2642)) by [@​WorldTeacher](https://github.com/WorldTeacher) - Update viewport meta tag to prevent auto-zoom on iOS when entering in… ([#​2620](https://github.com/booklore-app/BookLore/issues/2620)) by [@​jmswangit](https://github.com/jmswangit) - test(API): add missing tests for BookMapperV2 ([#​2495](https://github.com/booklore-app/BookLore/issues/2495)) by [@​piffio](https://github.com/piffio) - fix(audiobook-reader): use preload=none with explicit load() for faster streaming ([#​2520](https://github.com/booklore-app/BookLore/issues/2520)) by [@​acx10](https://github.com/acx10) - fix(ui): clean cached properties ([#​2499](https://github.com/booklore-app/BookLore/issues/2499)) by [@​piffio](https://github.com/piffio) - fix(additional-file-uploader): add file size validation with UI feedback ([#​2516](https://github.com/booklore-app/BookLore/issues/2516)) by [@​acx10](https://github.com/acx10) - fix(os\_x-conversion): ignore \_\_MACOSX directory for conversions ([#​2479](https://github.com/booklore-app/BookLore/issues/2479)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(series-page): add missing overlay preference service to book card ([#​2466](https://github.com/booklore-app/BookLore/issues/2466)) by [@​xcashy](https://github.com/xcashy) - fix(docker): add build and gradle directories to volumes in docker compose ([#​2459](https://github.com/booklore-app/BookLore/issues/2459)) by [@​balazs-szucs](https://github.com/balazs-szucs) #### 📦 Dependencies - chore(deps): bump org.springframework.boot from 4.0.2 to 4.0.3 in /booklore-api in the gradle-dependencies group ([#​2813](https://github.com/booklore-app/BookLore/issues/2813)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the npm-dependencies group in /booklore-ui with 15 updates ([#​2814](https://github.com/booklore-app/BookLore/issues/2814)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the npm-dependencies group across 1 directory with 18 updates ([#​2687](https://github.com/booklore-app/BookLore/issues/2687)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the npm-dependencies group in /booklore-ui with 13 updates ([#​2721](https://github.com/booklore-app/BookLore/issues/2721)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the npm-dependencies group in /booklore-ui with 20 updates ([#​2542](https://github.com/booklore-app/BookLore/issues/2542)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the gradle-dependencies group across 1 directory with 7 updates ([#​2659](https://github.com/booklore-app/BookLore/issues/2659)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the gradle-dependencies group in /booklore-api with 2 updates ([#​2720](https://github.com/booklore-app/BookLore/issues/2720)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump tar from 7.5.7 to 7.5.9 in /booklore-ui ([#​2805](https://github.com/booklore-app/BookLore/issues/2805)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump tar from 7.5.6 to 7.5.7 in /booklore-ui ([#​2534](https://github.com/booklore-app/BookLore/issues/2534)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump hono from 4.11.9 to 4.12.0 in /booklore-ui ([#​2815](https://github.com/booklore-app/BookLore/issues/2815)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump qs from 6.14.1 to 6.14.2 in /booklore-ui ([#​2722](https://github.com/booklore-app/BookLore/issues/2722)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump [@​modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/sdk) and [@​angular/cli](https://github.com/angular/cli) in /booklore-ui ([#​2612](https://github.com/booklore-app/BookLore/issues/2612)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump actions/setup-node from 4 to 6 ([#​2573](https://github.com/booklore-app/BookLore/issues/2573)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) #### ⚙️ CI/CD - ci: move Angular/Gradle builds to native CI steps to eliminate QEMU emulation ([#​2705](https://github.com/booklore-app/BookLore/issues/2705)) by [@​acx10](https://github.com/acx10) - chore: add performance label to release drafter categories ([#​2754](https://github.com/booklore-app/BookLore/issues/2754)) by [@​acx10](https://github.com/acx10) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v2.0.0` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v2.0.0` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.18.5...v2.0.0> #### 📸 Screenshots <img width="750" alt="Book browser with audiobook library and cascading sidebar filters" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/book-browser-audiobooks-library.png" /> <img width="750" alt="Book detail page with multi-format support and alternative formats" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/book-detail-multi-format.png" /> <img width="300" alt="Audiobook player with streaming playback" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/audiobook-player.png" /> <img width="300" alt="Ebook reader" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/ebook-reader.png" /> <img width="750" alt="CBX comic reader with fullscreen, slideshow, RTL, and long strip mode" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/cbx-comic-reader.png" /> <img width="750" alt="Annotation notebook with highlights, notes, and bookmarks" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/annotation-notebook.png" /> <img width="750" alt="Author browser with Audnexus metadata" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/author-browser.png" /> <img width="750" alt="Series browser with search, filter, and sort" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/series-browser.png" /> <img width="500" alt="Reading Clock statistics chart" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/reading-clock-stats.png" /> <img width="750" alt="Reading Survival Curve and Book Length Sweet Spot charts" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/reading-survival-book-length-charts.png" /> <img width="750" alt="Reading Completion Race chart" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/reading-completion-race.png" /> </details> <details> <summary>booklore-app/booklore (ghcr.io/booklore-app/booklore)</summary> ### [`v2.0.1`](https://github.com/booklore-app/booklore/releases/tag/v2.0.1) [Compare Source](https://github.com/booklore-app/booklore/compare/v2.0.0...v2.0.1) #### 🌟 What's New in v2.0.1 #### 🐛 Bug Fixes - Fix max upload size description to include all file formats ([#​2894](https://github.com/booklore-app/booklore/issues/2894)) by [@​acx10](https://github.com/acx10) - Fix magic shelf physical book filter and polish UI ([#​2888](https://github.com/booklore-app/booklore/issues/2888)) by [@​acx10](https://github.com/acx10) - Fix metadata settings not saving due to null deserialization error ([#​2886](https://github.com/booklore-app/booklore/issues/2886)) by [@​acx10](https://github.com/acx10) - Fix Kobo download/image URLs using wrong port behind reverse proxy ([#​2875](https://github.com/booklore-app/booklore/issues/2875)) by [@​acx10](https://github.com/acx10) - Fix app crash on startup when /bookdrop volume is not mounted ([#​2873](https://github.com/booklore-app/booklore/issues/2873)) by [@​acx10](https://github.com/acx10) #### 🛠️ Refactoring & Maintenance - Hide sidecar tab for physical books ([#​2887](https://github.com/booklore-app/booklore/issues/2887)) by [@​acx10](https://github.com/acx10) - Translations update from Hosted Weblate ([#​2866](https://github.com/booklore-app/booklore/issues/2866)) by [@​acx10](https://github.com/acx10) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v2.0.1` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v2.0.1` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v2.0.0...v2.0.1> ### [`v2.0.0`](https://github.com/booklore-app/booklore/releases/tag/v2.0.0) [Compare Source](https://github.com/booklore-app/booklore/compare/v1.18.5...v2.0.0) #### 🌟 What's New in v2.0.0 This is the biggest Booklore release yet, with nearly 200 commits touching every part of the application: - **Multi-Format Book Support & Audiobooks**: Books can now have multiple file formats (EPUB, PDF, CBZ, etc.) attached to a single entry. Full audiobook support is here with a dedicated player, streaming playback, narrator filtering, and session tracking. - **Duplicate Book Detection & Merge**: Booklore can now detect duplicate books across your library. A new merge tool lets you combine duplicates, choose which formats to keep, and optionally move files, all without losing metadata. - **Author Metadata via Audnexus**: Author pages now pull rich metadata (bios, images) from the Audnexus API, with a dedicated author browser, detail page, and editor. - **Series Browser**: A brand new series browser page with search, filtering, sorting, and resizable cards for browsing your series collection at a glance. - **Annotation Notebook**: All your highlights, notes, and bookmarks are now collected in a searchable, paginated notebook view. - **Audit Log System**: Admins can now see a full audit trail of significant actions (user management, library changes, metadata operations) with geo flags, relative timestamps, and filterable logs. - **Bidirectional Kobo Sync**: Full two-way reading progress sync with Kobo devices, plus shelves and magic shelves now sync as Kobo tags. - **Cascading Sidebar Filters**: Filters now cascade, so selecting an author narrows available series, genres, etc. You can also customize which filters are visible. - **10+ New Statistics Charts**: A massive expansion of the stats page with reading heatmaps, distribution charts, completion races, and more. - **PDF Annotations & Reader Upgrades**: The PDF reader now supports annotations, dark/light mode toggle, and Range streaming. The ebook reader gains fullscreen, keyboard shortcuts, and go-to-percentage. The CBX reader adds fullscreen, slideshow, RTL, and long strip mode. - **Sidecar Metadata Files**: Booklore can now read and write `.metadata.json` sidecar files alongside your books for portable metadata storage. - **Extended Comic Metadata**: Full ComicInfo.xml support with a dedicated comic metadata picker and write-back to CBZ/PDF files. - **Internationalization via Weblate**: Booklore is now fully translatable with Transloco and Weblate integration. Ships with 15+ languages including Hungarian, Slovenian, Croatian, Swedish, Chinese, and Japanese. - **Java 25, Spring Boot 4, Gradle 9**: The entire backend has been upgraded to the latest stack. Nginx has been removed; Angular is now served directly from Spring Boot. - **Login Rate Limiting**: Brute-force protection on the login endpoint. Plus new age and content rating support for restricted libraries. - **Performance**: Book list API optimized with ETag caching, delta sync, and IndexedDB. Project Lilliput compact object headers reduce heap usage. #### 🚀 New Features - Introduce multi-format book support, including audiobooks ([#​2486](https://github.com/booklore-app/booklore/issues/2486)) by [@​acx10](https://github.com/acx10) - Add duplicate book detection/merge and fix format-related data loss ([#​2820](https://github.com/booklore-app/booklore/issues/2820)) by [@​acx10](https://github.com/acx10) - Add author metadata via Audnexus with browser, detail, and editor pages ([#​2843](https://github.com/booklore-app/booklore/issues/2843)) by [@​acx10](https://github.com/acx10) - feat: add series browser page ([#​2771](https://github.com/booklore-app/booklore/issues/2771)) by [@​acx10](https://github.com/acx10) - feat: add annotation notebook with server-side pagination ([#​2736](https://github.com/booklore-app/booklore/issues/2736)) by [@​acx10](https://github.com/acx10) - feat: add audit log system for tracking admin-significant actions ([#​2759](https://github.com/booklore-app/booklore/issues/2759)) by [@​acx10](https://github.com/acx10) - Add bidirectional Kobo reading progress sync ([#​2791](https://github.com/booklore-app/booklore/issues/2791)) by [@​acx10](https://github.com/acx10) - feat(filters): implement cascading sidebar filters ([#​2616](https://github.com/booklore-app/booklore/issues/2616)) by [@​acx10](https://github.com/acx10) - feat(cbx-reader): add fullscreen, slideshow, RTL, long strip mode and keyboard shortcuts ([#​2632](https://github.com/booklore-app/booklore/issues/2632)) by [@​acx10](https://github.com/acx10) - feat(sidecar): add sidecar JSON metadata file support ([#​2657](https://github.com/booklore-app/booklore/issues/2657)) by [@​acx10](https://github.com/acx10) - feat(comic-metadata): add extended comic metadata support ([#​2654](https://github.com/booklore-app/booklore/issues/2654)) by [@​acx10](https://github.com/acx10) - feat(i18n): add Transloco translation framework with EN/ES and 7 language scaffolds ([#​2681](https://github.com/booklore-app/booklore/issues/2681)) by [@​acx10](https://github.com/acx10) - feat(api, build): Upgrade to Java 25, Gradle 9, and Spring Boot 4, Jackson 3 ([#​2597](https://github.com/booklore-app/booklore/issues/2597)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Remove nginx and serve Angular directly from Spring Boot ([#​2662](https://github.com/booklore-app/booklore/issues/2662)) by [@​acx10](https://github.com/acx10) - feat: add login rate limiting to prevent brute-force attacks ([#​2761](https://github.com/booklore-app/booklore/issues/2761)) by [@​acx10](https://github.com/acx10) - feat(content-restrictions): add age rating and content rating support ([#​2619](https://github.com/booklore-app/booklore/issues/2619)) by [@​acx10](https://github.com/acx10) - feat(sorting): add multi-field sorting support ([#​2628](https://github.com/booklore-app/booklore/issues/2628)) by [@​acx10](https://github.com/acx10) - feat(metadata): add custom metadata write to file support for moods, tags, ratings, and external IDs in PDF, and CBZ ([#​2552](https://github.com/booklore-app/booklore/issues/2552)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(metadata) Save basic metadata to EPUB file - Bonus use Calibre Custom Columns for importing metadata. ([#​1879](https://github.com/booklore-app/booklore/issues/1879)) by [@​jadehawk](https://github.com/jadehawk) - feat: add grouped field dropdown and composite fields to magic shelf ([#​2750](https://github.com/booklore-app/booklore/issues/2750)) by [@​acx10](https://github.com/acx10) - feat(filters): add customizable visible filters setting ([#​2625](https://github.com/booklore-app/booklore/issues/2625)) by [@​acx10](https://github.com/acx10) - Add 10 advanced stats charts ([#​2850](https://github.com/booklore-app/booklore/issues/2850)) by [@​acx10](https://github.com/acx10) - feat(stats): add 5 new user statistics charts ([#​2703](https://github.com/booklore-app/booklore/issues/2703)) by [@​acx10](https://github.com/acx10) - feat(i18n): add Weblate integration and auth translations ([#​2727](https://github.com/booklore-app/booklore/issues/2727)) by [@​acx10](https://github.com/acx10) - feat: add else clause and value modifiers to file naming patterns ([#​2724](https://github.com/booklore-app/booklore/issues/2724)) by [@​acx10](https://github.com/acx10) - feat: add button to fetch metadata from book file ([#​2739](https://github.com/booklore-app/booklore/issues/2739)) by [@​acx10](https://github.com/acx10) - feat(google-books): add optional API key configuration ([#​2629](https://github.com/booklore-app/booklore/issues/2629)) by [@​acx10](https://github.com/acx10) #### ✨ Enhancements - feat(reader): add PDF annotations, Range streaming, and optimized chunk loading ([#​2701](https://github.com/booklore-app/booklore/issues/2701)) by [@​acx10](https://github.com/acx10) - feat(reader): add fullscreen, keyboard shortcuts, search cancel, and go-to-percentage ([#​2698](https://github.com/booklore-app/booklore/issues/2698)) by [@​acx10](https://github.com/acx10) - feat(reader): add dark/light mode toggle and improved close button to PDF reader ([#​2699](https://github.com/booklore-app/booklore/issues/2699)) by [@​acx10](https://github.com/acx10) - feat(kobo-sync): add user scoped 2 way kobo sync ([#​2452](https://github.com/booklore-app/booklore/issues/2452)) by [@​b3nk3](https://github.com/b3nk3) - feat(kobo-sync): Sync Shelves and Magic Shelves to Kobo Tags ([#​2236](https://github.com/booklore-app/booklore/issues/2236)) by [@​xcashy](https://github.com/xcashy) - Redesign series page layout and book list tab ([#​2847](https://github.com/booklore-app/booklore/issues/2847)) by [@​acx10](https://github.com/acx10) - feat(sort): replace compound sort options with atomic fields and multi-sort support ([#​2686](https://github.com/booklore-app/booklore/issues/2686)) by [@​acx10](https://github.com/acx10) - Add moveFiles option to attach/merge and per-book delete in duplicate merger ([#​2833](https://github.com/booklore-app/booklore/issues/2833)) by [@​acx10](https://github.com/acx10) - feat: enhance audit logs with geo flags, relative time, and UX improvements ([#​2760](https://github.com/booklore-app/booklore/issues/2760)) by [@​acx10](https://github.com/acx10) - feat(bookdrop): add ability to poll the bookdrop folder ([#​2768](https://github.com/booklore-app/booklore/issues/2768)) by [@​arjunsrinivasan1997](https://github.com/arjunsrinivasan1997) - feat: add metadata presence filter to magic shelf ([#​2757](https://github.com/booklore-app/booklore/issues/2757)) by [@​acx10](https://github.com/acx10) - feat(upload): add upload progress tracking with progress bar and stats ([#​2640](https://github.com/booklore-app/booklore/issues/2640)) by [@​acx10](https://github.com/acx10) - feat(email): add format selection to email book dialog ([#​2650](https://github.com/booklore-app/booklore/issues/2650)) by [@​acx10](https://github.com/acx10) - feat(pwa): Enable fullscreen mode for Android immersive reading ([#​2649](https://github.com/booklore-app/booklore/issues/2649)) by [@​alondero](https://github.com/alondero) - Add Hungarian and Slovenian language support ([#​2846](https://github.com/booklore-app/booklore/issues/2846)) by [@​acx10](https://github.com/acx10) - fix(library-service): prevent concurrent library scans with a tracking set ([#​2637](https://github.com/booklore-app/booklore/issues/2637)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat: add configurable sidebar width setting ([#​2749](https://github.com/booklore-app/booklore/issues/2749)) by [@​acx10](https://github.com/acx10) - refactor(download): simplify file download to use browser native handling ([#​2639](https://github.com/booklore-app/booklore/issues/2639)) by [@​acx10](https://github.com/acx10) #### 🎨 UI Tweaks - Add visual polish to book card component ([#​2788](https://github.com/booklore-app/booklore/issues/2788)) by [@​acx10](https://github.com/acx10) - refactor: centralize access-denied card styles into shared mixin ([#​2515](https://github.com/booklore-app/booklore/issues/2515)) by [@​acx10](https://github.com/acx10) #### 🐛 Bug Fixes - fix(auth): resolve DST-related login failure for refresh tokens ([#​2624](https://github.com/booklore-app/booklore/issues/2624)) by [@​acx10](https://github.com/acx10) - Fix Kobo sync HeadersTooLargeException for large libraries ([#​2809](https://github.com/booklore-app/booklore/issues/2809)) by [@​acx10](https://github.com/acx10) - fix(metadata-refresh): Correct metadata update priorities and preserve disabled fields during 'replace all' ([#​2503](https://github.com/booklore-app/booklore/issues/2503)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(metadata-parsers): improve ISBN search logic and fallback strategies for metadata fetching ([#​2502](https://github.com/booklore-app/booklore/issues/2502)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(metadata-update): ensure per-book transaction isolation in bulk updates to prevent race conditions ([#​2536](https://github.com/booklore-app/booklore/issues/2536)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(metadata-refresh): fix filter book shelves by authenticated user logs out the user. ([#​2481](https://github.com/booklore-app/booklore/issues/2481)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix null collection errors for PDFs, audiobooks, and physical books ([#​2817](https://github.com/booklore-app/booklore/issues/2817)) by [@​acx10](https://github.com/acx10) - fix(library-processing): re-fetch library entity after clearing entity manager during rescan ([#​2507](https://github.com/booklore-app/booklore/issues/2507)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(file-move): ensure file moves are rolled back if database update fails ([#​2588](https://github.com/booklore-app/booklore/issues/2588)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(file-move): update empty directory cleanup to handle multiple library paths ([#​2634](https://github.com/booklore-app/booklore/issues/2634)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix CBR/CB7 to CBZ conversion losing track of file path ([#​2835](https://github.com/booklore-app/booklore/issues/2835)) by [@​acx10](https://github.com/acx10) - fix(cbz-reader): CBZ reading regression and optimize ZIP parsing strategy ([#​2593](https://github.com/booklore-app/booklore/issues/2593)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix PDF reader not loading alternate format files ([#​2836](https://github.com/booklore-app/booklore/issues/2836)) by [@​acx10](https://github.com/acx10) - fix(epub-cover-extract): improve cover image extraction with fallback handling ([#​2585](https://github.com/booklore-app/booklore/issues/2585)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(epub-metadata): enhance cover extraction with heuristic fallbacks for manifest and ZIP entries ([#​2636](https://github.com/booklore-app/booklore/issues/2636)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(book-rule-evaluator): fix file type handling and add mapping for specific formats to fix magic shelve based on filetype ([#​2480](https://github.com/booklore-app/booklore/issues/2480)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix magic shelf rule evaluation for numeric comparisons ([#​2795](https://github.com/booklore-app/booklore/issues/2795)) by [@​acx10](https://github.com/acx10) - Fix read status NULL progress handling in rule evaluator ([#​2821](https://github.com/booklore-app/booklore/issues/2821)) by [@​acx10](https://github.com/acx10) - Fix bookdrop race condition processing files before fully written ([#​2785](https://github.com/booklore-app/booklore/issues/2785)) by [@​acx10](https://github.com/acx10) - fix(bookdrop): handle file modifications in Bookdrop event handler ([#​2559](https://github.com/booklore-app/booklore/issues/2559)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(hardcover-sync): Don't send repeated read status to Hardcover.app ([#​2609](https://github.com/booklore-app/booklore/issues/2609)) by [@​PhasecoreX](https://github.com/PhasecoreX) - fix(api): Select correct Hardcover.app ISBN from lookup results ([#​2530](https://github.com/booklore-app/booklore/issues/2530)) by [@​PhasecoreX](https://github.com/PhasecoreX) - fix(ui): fix memory leaks and cascading API calls in metadata editor ([#​2716](https://github.com/booklore-app/booklore/issues/2716)) by [@​acx10](https://github.com/acx10) - fix: replace Quill editor with native HTML rendering for book descriptions ([#​2733](https://github.com/booklore-app/booklore/issues/2733)) by [@​acx10](https://github.com/acx10) - Fix reading stats queries not accounting for timezone ([#​2844](https://github.com/booklore-app/booklore/issues/2844)) by [@​acx10](https://github.com/acx10) - Fix reading session timeline long sessions, tooltip perf, and week mismatch ([#​2848](https://github.com/booklore-app/booklore/issues/2848)) by [@​acx10](https://github.com/acx10) - fix(reading-stats,ui): update heatmap to use local time formatting… ([#​2587](https://github.com/booklore-app/booklore/issues/2587)) by [@​WorldTeacher](https://github.com/WorldTeacher) - fix(select-all): "Mark All" bug and add "Remove from all shelves" bulk action across components ([#​2562](https://github.com/booklore-app/booklore/issues/2562)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(opds): Fix OPDS CBR mime type reporting and strict Archive detection ([#​2592](https://github.com/booklore-app/booklore/issues/2592)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix OPDS shelf filter cartesian product ([#​2837](https://github.com/booklore-app/booklore/issues/2837)) by [@​acx10](https://github.com/acx10) - fix(comic-metadata): fix series grouping bug with external ComicInfo.xml metadata ([#​2385](https://github.com/booklore-app/booklore/issues/2385)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix additional file uploader bugs and improve metadata viewer ([#​2816](https://github.com/booklore-app/booklore/issues/2816)) by [@​acx10](https://github.com/acx10) - Fix PWA offline fallback blocking localhost access when internet is disconnected ([#​2784](https://github.com/booklore-app/booklore/issues/2784)) by [@​acx10](https://github.com/acx10) - fix(audiobook-reader): use preload=none for immediate streaming playback ([#​2518](https://github.com/booklore-app/booklore/issues/2518)) by [@​acx10](https://github.com/acx10) - fix: reset audiobook progress and clear cached progress in UI ([#​2711](https://github.com/booklore-app/booklore/issues/2711)) by [@​acx10](https://github.com/acx10) - Fix cbx reader prev/next book stacking on close ([#​2858](https://github.com/booklore-app/booklore/issues/2858)) by [@​acx10](https://github.com/acx10) - Fix ebook reader header not hiding on mobile tap ([#​2857](https://github.com/booklore-app/booklore/issues/2857)) by [@​acx10](https://github.com/acx10) - fix(reader): enable text copy in ebook reader ([#​2702](https://github.com/booklore-app/booklore/issues/2702)) by [@​acx10](https://github.com/acx10) - Fix CBZ reader scroll position reset in infinite scroll mode ([#​2781](https://github.com/booklore-app/booklore/issues/2781)) by [@​acx10](https://github.com/acx10) - Fix column gap +/- buttons in eBook reader default settings ([#​2780](https://github.com/booklore-app/booklore/issues/2780)) by [@​acx10](https://github.com/acx10) - Fix email provider creation failing due to null shared field ([#​2794](https://github.com/booklore-app/booklore/issues/2794)) by [@​acx10](https://github.com/acx10) - Fix audit logs pagination bug and add URL query param sync ([#​2787](https://github.com/booklore-app/booklore/issues/2787)) by [@​acx10](https://github.com/acx10) - Fix audit log description overflow for bulk metadata refresh ([#​2783](https://github.com/booklore-app/booklore/issues/2783)) by [@​acx10](https://github.com/acx10) - Fix multiple author card menus opening simultaneously ([#​2852](https://github.com/booklore-app/booklore/issues/2852)) by [@​acx10](https://github.com/acx10) - Fix Goodreads label mappings and format config ([#​2779](https://github.com/booklore-app/booklore/issues/2779)) by [@​AlfredSimpson](https://github.com/AlfredSimpson) - fix(ui): encode filter values in query params to handle commas in names ([#​2717](https://github.com/booklore-app/booklore/issues/2717)) by [@​acx10](https://github.com/acx10) - fix(ui): prevent footer submenu from rendering off screen ([#​2714](https://github.com/booklore-app/booklore/issues/2714)) by [@​acx10](https://github.com/acx10) - fix(ui): inline mobile charts submenu to prevent layout overflow ([#​2713](https://github.com/booklore-app/booklore/issues/2713)) by [@​acx10](https://github.com/acx10) - fix(ui): correctly format lubimyczytac external rating link ([#​2491](https://github.com/booklore-app/booklore/issues/2491)) by [@​sebhewelt](https://github.com/sebhewelt) - Fix iconDisplay binding syntax in metadata viewer ([#​2772](https://github.com/booklore-app/booklore/issues/2772)) by [@​WorldTeacher](https://github.com/WorldTeacher) - Fix mobile toolbar overlapping on small screens ([#​2856](https://github.com/booklore-app/booklore/issues/2856)) by [@​acx10](https://github.com/acx10) - Fix book browser header title overflow on mobile ([#​2808](https://github.com/booklore-app/booklore/issues/2808)) by [@​acx10](https://github.com/acx10) - fix(book-browser): resolve footer menu not hiding after navigation back ([#​2626](https://github.com/booklore-app/booklore/issues/2626)) by [@​acx10](https://github.com/acx10) - fix: align frontend Page interfaces with VIA\_DTO serialization format ([#​2751](https://github.com/booklore-app/booklore/issues/2751)) by [@​acx10](https://github.com/acx10) - fix: show provider icons in metadata viewer when only ID is present ([#​2734](https://github.com/booklore-app/booklore/issues/2734)) by [@​acx10](https://github.com/acx10) - fix: hide show-more button when description fits without truncation ([#​2766](https://github.com/booklore-app/booklore/issues/2766)) by [@​acx10](https://github.com/acx10) - fix: use audiobook thumbnail for audiobook entries in notebook ([#​2763](https://github.com/booklore-app/booklore/issues/2763)) by [@​acx10](https://github.com/acx10) - fix: show session numbers in book ([#​2696](https://github.com/booklore-app/booklore/issues/2696)) by [@​WorldTeacher](https://github.com/WorldTeacher) - fix(settings): use boxed Integer for ScrollerConfig.maxItems to allow null ([#​2684](https://github.com/booklore-app/booklore/issues/2684)) by [@​acx10](https://github.com/acx10) - fix(series-multi-select): Fix transparency in series multi select pop-up ([#​2555](https://github.com/booklore-app/booklore/issues/2555)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix: Filter text overwrites on long options ([#​2540](https://github.com/booklore-app/booklore/issues/2540)) by [@​acx10](https://github.com/acx10) - Fix: Lock icons do not stay with publisher and series name input fields ([#​2539](https://github.com/booklore-app/booklore/issues/2539)) by [@​acx10](https://github.com/acx10) - fix(metadata): improve cover errors, reduce metadata fetch count, and hide attach option ([#​2690](https://github.com/booklore-app/booklore/issues/2690)) by [@​acx10](https://github.com/acx10) #### ⚡ Performance - perf: optimize book list API with ETag, delta sync, and IndexedDB caching ([#​2753](https://github.com/booklore-app/booklore/issues/2753)) by [@​acx10](https://github.com/acx10) - perf: enable compact object headers (Project Lilliput) ([#​2755](https://github.com/booklore-app/booklore/issues/2755)) by [@​acx10](https://github.com/acx10) #### 🛠️ Refactoring & Maintenance - refactor: split BookService into BookFileService and BookMetadataManageService ([#​2758](https://github.com/booklore-app/booklore/issues/2758)) by [@​acx10](https://github.com/acx10) - chore: fix memory leaks, add aria-labels, improve type safety and logging ([#​2764](https://github.com/booklore-app/booklore/issues/2764)) by [@​acx10](https://github.com/acx10) - chore: add caching, validation, lazy routes, refresh rate limiting, JaCoCo, and cleanup ([#​2762](https://github.com/booklore-app/booklore/issues/2762)) by [@​acx10](https://github.com/acx10) - perf: strip unused fields from book list API response ([#​2741](https://github.com/booklore-app/booklore/issues/2741)) by [@​acx10](https://github.com/acx10) - perf(epub): Replace linear manifest scans with HashMaps in EPUB reader ([#​2598](https://github.com/booklore-app/booklore/issues/2598)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(metadata): return full metadata from parsers instead of previews ([#​2689](https://github.com/booklore-app/booklore/issues/2689)) by [@​acx10](https://github.com/acx10) - feat: comic metadata picker, lazy-load providers, and UI improvements ([#​2679](https://github.com/booklore-app/booklore/issues/2679)) by [@​acx10](https://github.com/acx10) - Add complete translations for all supported languages ([#​2831](https://github.com/booklore-app/booklore/issues/2831)) by [@​acx10](https://github.com/acx10) - Add Hungarian and Slovenian language support ([#​2846](https://github.com/booklore-app/booklore/issues/2846)) by [@​acx10](https://github.com/acx10) - Add Croatian and Swedish translations for login page ([#​2786](https://github.com/booklore-app/booklore/issues/2786)) by [@​acx10](https://github.com/acx10) - feat: add i18n translations for stats, pdf reader, magic shelf, and remaining components (en/es) ([#​2742](https://github.com/booklore-app/booklore/issues/2742)) by [@​acx10](https://github.com/acx10) - feat: add i18n translations for book components, services, and readers (en/es) ([#​2738](https://github.com/booklore-app/booklore/issues/2738)) by [@​acx10](https://github.com/acx10) - fix(i18n): dynamic sidebar translations and UI font normalization ([#​2683](https://github.com/booklore-app/booklore/issues/2683)) by [@​acx10](https://github.com/acx10) - feat: disable PDF printing for users without download permission ([#​2737](https://github.com/booklore-app/booklore/issues/2737)) by [@​acx10](https://github.com/acx10) - feat(ui): add file name column to table view and include filename in search ([#​2712](https://github.com/booklore-app/booklore/issues/2712)) by [@​acx10](https://github.com/acx10) - feat(ui): provide hyperlinks for books as book cards in grid view ([#​2500](https://github.com/booklore-app/booklore/issues/2500)) by [@​berb](https://github.com/berb) - feat(ui): Add sort by filePath ([#​1180](https://github.com/booklore-app/booklore/issues/1180) and [#​2364](https://github.com/booklore-app/booklore/issues/2364)) ([#​2512](https://github.com/booklore-app/booklore/issues/2512)) by [@​chiguirepower](https://github.com/chiguirepower) - feat(icons): Made icons for libraries and shelves optional with no default icons. ([#​2599](https://github.com/booklore-app/booklore/issues/2599)) by [@​arthurgiroux](https://github.com/arthurgiroux) - fix(comicvine): add fallback to issue detail endpoint for missing creator credits ([#​2694](https://github.com/booklore-app/booklore/issues/2694)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(epub-metadata): enhance cover extraction with heuristic fallbacks for manifest and ZIP entries ([#​2636](https://github.com/booklore-app/booklore/issues/2636)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(metadata-match): Fix metadata quality calculation to properly handle locked fields ([#​2513](https://github.com/booklore-app/booklore/issues/2513)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(ui): reload shelves when enabling Kobo sync ([#​2715](https://github.com/booklore-app/booklore/issues/2715)) by [@​acx10](https://github.com/acx10) - fix(ui): standardize button labels and styles across components ([#​2560](https://github.com/booklore-app/booklore/issues/2560)) by [@​balazs-szucs](https://github.com/balazs-szucs) - chore: redesign README for cleaner layout and visual polish ([#​2728](https://github.com/booklore-app/booklore/issues/2728)) by [@​acx10](https://github.com/acx10) - fix: make README logo visible in GitHub light mode ([#​2756](https://github.com/booklore-app/booklore/issues/2756)) by [@​acx10](https://github.com/acx10) - chore: clean up PR template and contributing guide ([#​2660](https://github.com/booklore-app/booklore/issues/2660)) by [@​acx10](https://github.com/acx10) - fix(file naming): add leading zero to series index ([#​2642](https://github.com/booklore-app/booklore/issues/2642)) by [@​WorldTeacher](https://github.com/WorldTeacher) - Update viewport meta tag to prevent auto-zoom on iOS when entering in… ([#​2620](https://github.com/booklore-app/booklore/issues/2620)) by [@​jmswangit](https://github.com/jmswangit) - test(API): add missing tests for BookMapperV2 ([#​2495](https://github.com/booklore-app/booklore/issues/2495)) by [@​piffio](https://github.com/piffio) - fix(audiobook-reader): use preload=none with explicit load() for faster streaming ([#​2520](https://github.com/booklore-app/booklore/issues/2520)) by [@​acx10](https://github.com/acx10) - fix(ui): clean cached properties ([#​2499](https://github.com/booklore-app/booklore/issues/2499)) by [@​piffio](https://github.com/piffio) - fix(additional-file-uploader): add file size validation with UI feedback ([#​2516](https://github.com/booklore-app/booklore/issues/2516)) by [@​acx10](https://github.com/acx10) - fix(os\_x-conversion): ignore \_\_MACOSX directory for conversions ([#​2479](https://github.com/booklore-app/booklore/issues/2479)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(series-page): add missing overlay preference service to book card ([#​2466](https://github.com/booklore-app/booklore/issues/2466)) by [@​xcashy](https://github.com/xcashy) - fix(docker): add build and gradle directories to volumes in docker compose ([#​2459](https://github.com/booklore-app/booklore/issues/2459)) by [@​balazs-szucs](https://github.com/balazs-szucs) #### 📦 Dependencies - chore(deps): bump org.springframework.boot from 4.0.2 to 4.0.3 in /booklore-api in the gradle-dependencies group ([#​2813](https://github.com/booklore-app/booklore/issues/2813)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the npm-dependencies group in /booklore-ui with 15 updates ([#​2814](https://github.com/booklore-app/booklore/issues/2814)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the npm-dependencies group across 1 directory with 18 updates ([#​2687](https://github.com/booklore-app/booklore/issues/2687)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the npm-dependencies group in /booklore-ui with 13 updates ([#​2721](https://github.com/booklore-app/booklore/issues/2721)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the npm-dependencies group in /booklore-ui with 20 updates ([#​2542](https://github.com/booklore-app/booklore/issues/2542)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the gradle-dependencies group across 1 directory with 7 updates ([#​2659](https://github.com/booklore-app/booklore/issues/2659)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump the gradle-dependencies group in /booklore-api with 2 updates ([#​2720](https://github.com/booklore-app/booklore/issues/2720)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump tar from 7.5.7 to 7.5.9 in /booklore-ui ([#​2805](https://github.com/booklore-app/booklore/issues/2805)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump tar from 7.5.6 to 7.5.7 in /booklore-ui ([#​2534](https://github.com/booklore-app/booklore/issues/2534)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump hono from 4.11.9 to 4.12.0 in /booklore-ui ([#​2815](https://github.com/booklore-app/booklore/issues/2815)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump qs from 6.14.1 to 6.14.2 in /booklore-ui ([#​2722](https://github.com/booklore-app/booklore/issues/2722)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump [@​modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/sdk) and [@​angular/cli](https://github.com/angular/cli) in /booklore-ui ([#​2612](https://github.com/booklore-app/booklore/issues/2612)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump actions/setup-node from 4 to 6 ([#​2573](https://github.com/booklore-app/booklore/issues/2573)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) #### ⚙️ CI/CD - ci: move Angular/Gradle builds to native CI steps to eliminate QEMU emulation ([#​2705](https://github.com/booklore-app/booklore/issues/2705)) by [@​acx10](https://github.com/acx10) - chore: add performance label to release drafter categories ([#​2754](https://github.com/booklore-app/booklore/issues/2754)) by [@​acx10](https://github.com/acx10) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v2.0.0` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v2.0.0` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.18.5...v2.0.0> #### 📸 Screenshots <img width="750" alt="Book browser with audiobook library and cascading sidebar filters" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/book-browser-audiobooks-library.png" /> <img width="750" alt="Book detail page with multi-format support and alternative formats" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/book-detail-multi-format.png" /> <img width="300" alt="Audiobook player with streaming playback" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/audiobook-player.png" /> <img width="300" alt="Ebook reader" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/ebook-reader.png" /> <img width="750" alt="CBX comic reader with fullscreen, slideshow, RTL, and long strip mode" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/cbx-comic-reader.png" /> <img width="750" alt="Annotation notebook with highlights, notes, and bookmarks" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/annotation-notebook.png" /> <img width="750" alt="Author browser with Audnexus metadata" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/author-browser.png" /> <img width="750" alt="Series browser with search, filter, and sort" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/series-browser.png" /> <img width="500" alt="Reading Clock statistics chart" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/reading-clock-stats.png" /> <img width="750" alt="Reading Survival Curve and Book Length Sweet Spot charts" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/reading-survival-book-length-charts.png" /> <img width="750" alt="Reading Completion Race chart" src="https://github.com/booklore-app/booklore/releases/download/v2.0.0/reading-completion-race.png" /> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNS44IiwidXBkYXRlZEluVmVyIjoiNDMuMjUuOCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/4176 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| 034faf2e32 |
chore(deps): update dependency booklore-app/booklore to v1.18.5 (#3471)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [booklore-app/BookLore](https://github.com/booklore-app/BookLore) | patch | `v1.18.4` → `v1.18.5` | --- ### Release Notes <details> <summary>booklore-app/BookLore (booklore-app/BookLore)</summary> ### [`v1.18.5`](https://github.com/booklore-app/booklore/releases/tag/v1.18.5) [Compare Source](https://github.com/booklore-app/BookLore/compare/v1.18.4...v1.18.5) #### 🌟 What's New in v1.18.5 #### 🚀 New Features - feat(book-browser): add responsive grid columns for mobile view ([#​2446](https://github.com/booklore-app/BookLore/issues/2446)) by [@​acx10](https://github.com/acx10) #### ✨ Enhancements - feat(dashboard-settings): update sort field options for Surname, and Personal Rating ([#​2456](https://github.com/booklore-app/BookLore/issues/2456)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(themes): add AMOLED theme with distinct light and dark color schemes ([#​2457](https://github.com/booklore-app/BookLore/issues/2457)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(book-browser): preserve scroll position when navigating back fro… ([#​2449](https://github.com/booklore-app/BookLore/issues/2449)) by [@​acx10](https://github.com/acx10) - feat(pwa): add offline handling and fallback support ([#​2444](https://github.com/booklore-app/BookLore/issues/2444)) by [@​acx10](https://github.com/acx10) #### 🐛 Bug Fixes - fix(stats): show tooltip for single bubble and allow overflow in auth… ([#​2443](https://github.com/booklore-app/BookLore/issues/2443)) by [@​acx10](https://github.com/acx10) - fix(opds): fix regression with browsing shelves ([#​2423](https://github.com/booklore-app/BookLore/issues/2423)) by [@​piffio](https://github.com/piffio) #### 🛠️ Refactoring & Maintenance - fix(ui): use local asset for page background ([#​2445](https://github.com/booklore-app/BookLore/issues/2445)) by [@​imnotjames](https://github.com/imnotjames) - perf: lazy-load accordion content in library metadata settings ([#​2442](https://github.com/booklore-app/BookLore/issues/2442)) by [@​acx10](https://github.com/acx10) - fix(cbx-reader): prevent touch drag on mobile and fix header title ov… ([#​2441](https://github.com/booklore-app/BookLore/issues/2441)) by [@​acx10](https://github.com/acx10) - refactor: reduce re-renders and improve filter sidebar performance ([#​2440](https://github.com/booklore-app/BookLore/issues/2440)) by [@​acx10](https://github.com/acx10) - Add clear warning when deleting books that files will be permanently … ([#​2438](https://github.com/booklore-app/BookLore/issues/2438)) by [@​acx10](https://github.com/acx10) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v1.18.5` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v1.18.5` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.18.4...v1.18.5> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4yIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/3471 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| a9d34053af | chore(deps): update ghcr.io/booklore-app/booklore docker tag to v1.18.5 (#3472) | |||
| f46ac98970 | chore(deps): update appVersions | |||
| 75de4c2984 | chore(deps): update ghcr.io/booklore-app/booklore docker tag to v1.18.4 (#3448) | |||
| 914dd14c81 | fix: align renovate custom manager to appVersion updates on Chart | |||
| 8cf45d06c4 | Update ghcr.io/booklore-app/booklore Docker tag to v1.18.3 (#3371) | |||
| e255ed994f |
Update ghcr.io/booklore-app/booklore Docker tag to v1.18.2 (#3369)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/booklore-app/booklore](https://github.com/booklore-app/booklore) | minor | `v1.17.0` → `v1.18.2` | --- > ⚠️ **Warning** > > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>booklore-app/booklore (ghcr.io/booklore-app/booklore)</summary> ### [`v1.18.2`](https://github.com/booklore-app/booklore/releases/tag/v1.18.2) [Compare Source](https://github.com/booklore-app/booklore/compare/v1.18.0...v1.18.2) #### 🌟 What's New in v1.18.2 This release introduces some of the largest and most impactful features Booklore has seen so far: - **New Ebook Reader**: Introducing a responsive, clean, and intuitive reader based on Foliate.js. Supports EPUB, AZW3, MOBI, and FB2 formats, with highlights, notes, and bookmarks for seamless reading. - **Bi-Directional Reading Progress Sync**: Reading progress now syncs automatically between Booklore and KoReader, with Kobo support coming in upcoming releases. - **Streaming Ebook Reading (Beta)**: Large ebooks, such as multi-hundred-page cookbooks or textbooks, can now be read page by page, minimizing memory and storage usage. - **Optimized PDF & CBZ Streaming**: PDF and CBX files no longer need to be fully extracted for reading; pages are streamed directly, improving performance for large files. - **Enhanced Charts**: All charts have been redesigned for clarity and visual appeal. Three new chart types have been added: Taste Ratings, Reading Backlog, and Series Progress. - **Komga-Compatible API**: Connect your Komga apps, such as Mihon or Komelia, directly to Booklore for unified library management. - **Progressive Web App Support**: Booklore can now be installed as a PWA, allowing access without browser UI limitations for a cleaner reading experience. #### 🐛 Bug Fixes (v1.18.2 + v1.18.1) - fix(db): remove unused CBX/PDF cache cleanup cron entries ([#​2402](https://github.com/booklore-app/booklore/issues/2402)) - Fix showstopper bugs in v1.18.0 ([#​2399](https://github.com/booklore-app/booklore/issues/2399)) by [@​acx10](https://github.com/acx10) - fix(reading sessions): Split sessions, re-calculate times in book overview ([#​2393](https://github.com/booklore-app/booklore/issues/2393)) by [@​WorldTeacher](https://github.com/WorldTeacher) #### 🚀 New Features (v1.18.0) - Introduced additional library charts to surface meaningful insights ([#​2390](https://github.com/booklore-app/booklore/issues/2390)) by [@​acx10](https://github.com/acx10) - Introduce three new analytical charts: Taste Ratings, Reading Backlog, and Series Progress ([#​2383](https://github.com/booklore-app/booklore/issues/2383)) by [@​acx10](https://github.com/acx10) - Initialize progress web app ([#​2351](https://github.com/booklore-app/booklore/issues/2351)) by [@​acx10](https://github.com/acx10) - feat(custom-covers): add functionality to generate custom covers for selected books ([#​2355](https://github.com/booklore-app/booklore/issues/2355)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Implement streaming EPUB reader with on-demand loading ([#​2350](https://github.com/booklore-app/booklore/issues/2350)) by [@​acx10](https://github.com/acx10) - Feat/komga api ([#​2071](https://github.com/booklore-app/booklore/issues/2071)) by [@​farfromrefug](https://github.com/farfromrefug) - Revamp streaming PDF reader to render pages on demand ([#​2332](https://github.com/booklore-app/booklore/issues/2332)) by [@​acx10](https://github.com/acx10) - Revamp the CBX reader layout for improved structure and usability ([#​2330](https://github.com/booklore-app/booklore/issues/2330)) by [@​acx10](https://github.com/acx10) - Add support for annotations and book notes in the new ebook reader ([#​2313](https://github.com/booklore-app/booklore/issues/2313)) by [@​acx10](https://github.com/acx10) - Bidirectional progress sync between koreader and booklore reader ([#​2312](https://github.com/booklore-app/booklore/issues/2312)) by [@​acx10](https://github.com/acx10) - feat(metadata): add configurable enabled fields for metadata editor a… ([#​2299](https://github.com/booklore-app/booklore/issues/2299)) by [@​acx10](https://github.com/acx10) - Implement Public Shelves ([#​1969](https://github.com/booklore-app/booklore/issues/1969)) by [@​cjd](https://github.com/cjd) - Introduce a new eBook reader with support for EPUB, MOBI, AZW3, and FB2 formats ([#​2258](https://github.com/booklore-app/booklore/issues/2258)) by [@​acx10](https://github.com/acx10) - feat(metadata): add auto-save metadata feature in editor settings ([#​2274](https://github.com/booklore-app/booklore/issues/2274)) by [@​balazs-szucs](https://github.com/balazs-szucs) - RanobeDB Light Novel metadata provider ([#​2221](https://github.com/booklore-app/booklore/issues/2221)) by [@​Nedra1998](https://github.com/Nedra1998) #### ✨ Enhancements (v1.18.0) - feat(metadata): add 'Replace When Provided' option to metadata replacement modes ([#​2379](https://github.com/booklore-app/booklore/issues/2379)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(google-parser): improve Google Books API integration with improved metadata handling and series extraction ([#​2375](https://github.com/booklore-app/booklore/issues/2375)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(metadata): add replace mode option for metadata fetching ([#​2356](https://github.com/booklore-app/booklore/issues/2356)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(comicVine): improve comic metadata structure with additional credits and fields ([#​2358](https://github.com/booklore-app/booklore/issues/2358)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(library): add validation for library path accessibility during rescan ([#​2347](https://github.com/booklore-app/booklore/issues/2347)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(ui): add password confirmations ([#​2291](https://github.com/booklore-app/booklore/issues/2291)) by [@​arjunsrinivasan1997](https://github.com/arjunsrinivasan1997) - feat(sort): Add sort by author surname and first name ([#​2292](https://github.com/booklore-app/booklore/issues/2292)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(directory-picker): add selection actions for folders, add buttons for select all, deselect all, and select current folder ([#​2293](https://github.com/booklore-app/booklore/issues/2293)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(hardcover): Improve Hardcover metadata accuracy and rate limiting ([#​2303](https://github.com/booklore-app/booklore/issues/2303)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(shelf): add shelf filtering options and integrate into book processing ([#​2268](https://github.com/booklore-app/booklore/issues/2268)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Stream CBX contents directly from the archive instead of unzipping and caching files ([#​2229](https://github.com/booklore-app/booklore/issues/2229)) by [@​acx10](https://github.com/acx10) #### 🎨 UI Tweaks (v1.18.0) - Polish view and metadata settings page UI ([#​2362](https://github.com/booklore-app/booklore/issues/2362)) by [@​acx10](https://github.com/acx10) - Optimize metadata picker for mobile layout ([#​2361](https://github.com/booklore-app/booklore/issues/2361)) by [@​acx10](https://github.com/acx10) #### 🐛 Bug Fixes (v1.18.0) - Fix touch issues with ebook reader ([#​2395](https://github.com/booklore-app/booklore/issues/2395)) by [@​acx10](https://github.com/acx10) - Fix failing book cover search due to HTTP 403 ([#​2392](https://github.com/booklore-app/booklore/issues/2392)) by [@​acx10](https://github.com/acx10) - fix: Refactor HardcoverSyncService to improve edition and page count ([#​2389](https://github.com/booklore-app/booklore/issues/2389)) by [@​boludo00](https://github.com/boludo00) - fix(kobo): Update KoboResources file to match Calibre web to fix issues with Overdrive ([#​2367](https://github.com/booklore-app/booklore/issues/2367)) by [@​cra21k](https://github.com/cra21k) - fix(comic-metadata): fix series grouping bug with external ComicInfo.xml metadata ([#​2385](https://github.com/booklore-app/booklore/issues/2385)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(PathPatternResolver): remove leading slash from resolved pattern if first component is empty ([#​2339](https://github.com/booklore-app/booklore/issues/2339)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(ui): map comic book extensions to CBX filter in book details ([#​2338](https://github.com/booklore-app/booklore/issues/2338)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix: Reading stats UI ([#​2322](https://github.com/booklore-app/booklore/issues/2322)) by [@​WorldTeacher](https://github.com/WorldTeacher) - fix: split reading sessions based on the date ([#​2316](https://github.com/booklore-app/booklore/issues/2316)) by [@​WorldTeacher](https://github.com/WorldTeacher) - fix(chart-ui): resolve glitches in chart rendering ([#​2290](https://github.com/booklore-app/booklore/issues/2290)) by [@​acx10](https://github.com/acx10) - fix(comicvine): fix metadata search failing for titles containing '#<number>' ([#​2273](https://github.com/booklore-app/booklore/issues/2273)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(reading statistics ui): small fixes ([#​2276](https://github.com/booklore-app/booklore/issues/2276)) by [@​WorldTeacher](https://github.com/WorldTeacher) - fix(metadata-picker): handle null and empty values in fetched metadata processing ([#​2269](https://github.com/booklore-app/booklore/issues/2269)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(OpdsFeedService): detect ZIP mime type for FB2 files when zipped ([#​2242](https://github.com/booklore-app/booklore/issues/2242)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(epub): strip formatting from ISBN values to ensure correct extraction ([#​2248](https://github.com/booklore-app/booklore/issues/2248)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(deps): add JPEG2000 support in PDFBox with Jai ImageIO dependencies ([#​2250](https://github.com/booklore-app/booklore/issues/2250)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(metadata): missing lubimyczytac fields and fetch retry ([#​2179](https://github.com/booklore-app/booklore/issues/2179)) by [@​Spynacz](https://github.com/Spynacz) #### 🛠️ Refactoring & Maintenance (v1.18.0) - Refactor: Enhance healthcheck response with version info and DTO ([#​2378](https://github.com/booklore-app/booklore/issues/2378)) by [@​hyun4965](https://github.com/hyun4965) - perf(regex): introduce regex patterns for improved string handling invarious services ([#​2386](https://github.com/booklore-app/booklore/issues/2386)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix: Yes/No buttons on bookdrop import have reversed colors/icons ([#​2363](https://github.com/booklore-app/booklore/issues/2363)) by [@​acx10](https://github.com/acx10) - Normalize book progress percentage rounding ([#​2359](https://github.com/booklore-app/booklore/issues/2359)) by [@​acx10](https://github.com/acx10) - chore(metadata-warning): add warnings about metadata quality for file naming and moving features ([#​2340](https://github.com/booklore-app/booklore/issues/2340)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(api,epub): add cover extraction fallback using meta cover attribute for URL-encoded cover image hrefs ([#​2310](https://github.com/booklore-app/booklore/issues/2310)) by [@​ajbanck](https://github.com/ajbanck) - fix(amazon-parser): handle Amazon error responses and improve error logging ([#​2294](https://github.com/booklore-app/booklore/issues/2294)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(metadata): ensure authors/genres are replaced, not merged, during metadata update by defaulting mergeCategories to false ([#​2304](https://github.com/booklore-app/booklore/issues/2304)) by [@​balazs-szucs](https://github.com/balazs-szucs) - chore(docs): update copyright year in README ([#​2323](https://github.com/booklore-app/booklore/issues/2323)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Refactor metadata picker and parsers for Amazon, Goodreads, and Google ([#​2327](https://github.com/booklore-app/booklore/issues/2327)) by [@​acx10](https://github.com/acx10) - Refactor dialogs for a consistent look and feel ([#​2321](https://github.com/booklore-app/booklore/issues/2321)) by [@​acx10](https://github.com/acx10) - Refactor common dialog header and footer components ([#​2318](https://github.com/booklore-app/booklore/issues/2318)) by [@​acx10](https://github.com/acx10) - Refactor the Book Browser to simplify and streamline the implementation ([#​2317](https://github.com/booklore-app/booklore/issues/2317)) by [@​acx10](https://github.com/acx10) - Centralize book tag color definitions ([#​2314](https://github.com/booklore-app/booklore/issues/2314)) by [@​acx10](https://github.com/acx10) - Remove support for the legacy ePub reader ([#​2287](https://github.com/booklore-app/booklore/issues/2287)) by [@​acx10](https://github.com/acx10) - fix(parsers): increase request interval to prevent rate limiting issues ([#​2282](https://github.com/booklore-app/booklore/issues/2282)) by [@​balazs-szucs](https://github.com/balazs-szucs) - (Refactor) Extract file-specific information from book ([#​1734](https://github.com/booklore-app/booklore/issues/1734)) by [@​piffio](https://github.com/piffio) - Update query to use startTime instead of createdAt ([#​2272](https://github.com/booklore-app/booklore/issues/2272)) by [@​WorldTeacher](https://github.com/WorldTeacher) - feat(archive): add ArchiveType via Magic Numbers detection and integrate into book processing ([#​2220](https://github.com/booklore-app/booklore/issues/2220)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(epub): normalize text nodes in EPUB metadata content.opf ([#​2222](https://github.com/booklore-app/booklore/issues/2222)) by [@​balazs-szucs](https://github.com/balazs-szucs) #### 📦 Dependencies (v1.18.0) - chore(deps): bump tar from 7.5.2 to 7.5.6 in /booklore-ui ([#​2387](https://github.com/booklore-app/booklore/issues/2387)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): bump lodash-es from 4.17.21 to 4.17.23 in /booklore-ui ([#​2388](https://github.com/booklore-app/booklore/issues/2388)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore: update Angular dependencies to latest minor/patch versions ([#​2285](https://github.com/booklore-app/booklore/issues/2285)) by [@​acx10](https://github.com/acx10) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v1.18.2` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v1.18.2` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.17.0...v1.18.2> #### 📸 Screenshots <img width="750" height="471" alt="Screenshot 2026-01-22 at 12 10 47 PM" src="https://github.com/user-attachments/assets/d5118bbf-771c-495d-b2a3-a695027a6bcd" /> <img width="750" height="451" alt="Screenshot 2026-01-22 at 12 06 23 PM" src="https://github.com/user-attachments/assets/13456e8f-e3bb-4373-b6c8-b4871c5b5504" /> <img width="750" height="452" alt="Screenshot 2026-01-22 at 12 02 35 PM" src="https://github.com/user-attachments/assets/d2f8a2d6-6ea8-43d2-b990-7a058ca45e29" /> <img width="750" height="452" alt="Screenshot 2026-01-22 at 12 01 46 PM" src="https://github.com/user-attachments/assets/0aff60b3-238f-4f6e-a2b5-c962f844e7ba" /> <img width="632" height="710" alt="Screenshot 2026-01-22 at 12 04 22 PM" src="https://github.com/user-attachments/assets/fd4fcc98-3d95-4662-ac61-a93d534f3ed3" /> <img width="632" height="710" alt="Screenshot 2026-01-22 at 12 04 27 PM" src="https://github.com/user-attachments/assets/5464a3d4-a6f7-4e8d-acfc-1ca7fb14e9ec" /> <img width="632" height="710" alt="Screenshot 2026-01-22 at 12 04 33 PM" src="https://github.com/user-attachments/assets/c7722037-ba00-4bea-a166-150b6557caf3" /> <img width="632" height="710" alt="Screenshot 2026-01-22 at 12 05 47 PM" src="https://github.com/user-attachments/assets/6011c4ee-efa2-4471-a9b0-9fd2b2d09712" /> <img width="750" height="471" alt="Screenshot 2026-01-22 at 12 13 56 PM" src="https://github.com/user-attachments/assets/820465a6-59d7-44d7-9eef-56f69451ab85" /> <img width="750" height="402" alt="Screenshot 2026-01-22 at 1 17 59 AM" src="https://github.com/user-attachments/assets/08aa7a57-aa54-4672-ab1c-b35551e88b51" /> <img width="750" height="369" alt="Screenshot 2026-01-22 at 1 17 41 AM" src="https://github.com/user-attachments/assets/2f08f94f-59e4-40f1-932b-07b028620875" /> <img width="750" height="317" alt="Screenshot 2026-01-22 at 1 18 11 AM" src="https://github.com/user-attachments/assets/947c96cc-ab9a-481d-adb0-2a1472393ee8" /> <img width="750" height="471" alt="Screenshot 2026-01-22 at 12 09 34 PM" src="https://github.com/user-attachments/assets/3bfc4666-7aa5-45db-a2b5-f16f0a3a8b5c" /> <img width="750" height="471" alt="Screenshot 2026-01-22 at 12 09 28 PM" src="https://github.com/user-attachments/assets/1c3cc89f-1cd6-4dd3-b0f2-26b9ad56aa66" /> <img width="750" height="451" alt="Screenshot 2026-01-22 at 12 07 03 PM" src="https://github.com/user-attachments/assets/8b9577c0-db09-4bf1-8903-f9ceca7b9964" /> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4yIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/3369 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| 285e17717f | Update Helm release app-template to v4.6.2 (#3266) | |||
| 41b5b60bd7 |
Update ghcr.io/booklore-app/booklore Docker tag to v1.17.0 (#3146)
All checks were successful
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/booklore-app/booklore](https://github.com/booklore-app/booklore) | minor | `v1.16.5` → `v1.17.0` | --- ### Release Notes <details> <summary>booklore-app/booklore (ghcr.io/booklore-app/booklore)</summary> ### [`v1.17.0`](https://github.com/booklore-app/booklore/releases/tag/v1.17.0) [Compare Source](https://github.com/booklore-app/booklore/compare/v1.16.5...v1.17.0) #### 🌟 What's New in v1.17.0 ##### This release brings some exciting new features! Highlights include: - **Custom Fonts in the EPUB Reader**: Users can now upload and use up to 10 of their favorite fonts for a personalized reading experience. - **Reading Progress Sync**: Progress (in percent) now syncs to hardcover books and is tracked per user. - **Revamped Metadata Search**: The search UI has been redesigned to provide live, real-time results for a smoother and faster experience. Plus, numerous performance improvements and bug fixes across the app. Enjoy! #### 🚀 New Features - feat: Add custom font support for EPUB reader ([#​2120](https://github.com/booklore-app/booklore/issues/2120)) by [@​darkraise](https://github.com/darkraise) - Revamp metadata search UI to display live results ([#​2195](https://github.com/booklore-app/booklore/issues/2195)) by [@​acx10](https://github.com/acx10) - Feature/koreader hardcover sync ([#​2204](https://github.com/booklore-app/booklore/issues/2204)) by [@​boludo00](https://github.com/boludo00) #### ✨ Enhancements - feat(series-page): implement multi-select functionality for book selection and add footer actions ([#​2167](https://github.com/booklore-app/booklore/issues/2167)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Add per-user font management permission ([#​2210](https://github.com/booklore-app/booklore/issues/2210)) by [@​acx10](https://github.com/acx10) - Support individual “write to file” settings per book type, with configurable file size limits ([#​2206](https://github.com/booklore-app/booklore/issues/2206)) by [@​acx10](https://github.com/acx10) - feat(ComicVine): use structured search for ComicVine metadata fetching instead of generic /search ([#​2193](https://github.com/booklore-app/booklore/issues/2193)) by [@​balazs-szucs](https://github.com/balazs-szucs) - refactor(images): migrate to TwelveMonkeys ImageIO with graceful unsupported format handling ([#​2188](https://github.com/booklore-app/booklore/issues/2188)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Show a persistent loader while a large library is being created ([#​2200](https://github.com/booklore-app/booklore/issues/2200)) by [@​acx10](https://github.com/acx10) - feat(magic-shelf): add ISBN-10 and ISBN-13 metadata fields to book rules ([#​2196](https://github.com/booklore-app/booklore/issues/2196)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Implement memoization in the book card to reduce CPU usage during scrolling ([#​2198](https://github.com/booklore-app/booklore/issues/2198)) by [@​acx10](https://github.com/acx10) - feat(metadata): enhance XML parsing with secure processing and improved error handling ([#​2163](https://github.com/booklore-app/booklore/issues/2163)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(magic-shelf): add genre filter support and improve category labeling in rule fields ([#​2075](https://github.com/booklore-app/booklore/issues/2075)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(cover-generator): enhance cover resolution and redesign layout for improved aesthetics ([#​2125](https://github.com/booklore-app/booklore/issues/2125)) by [@​balazs-szucs](https://github.com/balazs-szucs) #### 🐛 Bug Fixes - fix(ui): use view preference override for magic shelves ([#​2215](https://github.com/booklore-app/booklore/issues/2215)) by [@​xcashy](https://github.com/xcashy) - fix(kobo-sync): fix Kobo series handling for empty names and series number formatting ([#​2185](https://github.com/booklore-app/booklore/issues/2185)) by [@​xcashy](https://github.com/xcashy) - fix(cbx): "Archive too large" error for invalid/corrupt CBX files ([#​2205](https://github.com/booklore-app/booklore/issues/2205)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix: correctly update book cover hash on metadata refresh ([#​2149](https://github.com/booklore-app/booklore/issues/2149)) by [@​acx10](https://github.com/acx10) #### 🛠️ Refactoring & Maintenance - fix: Ignore access denied when doing library scan instead of failing (fixes [#​1342](https://github.com/booklore-app/booklore/issues/1342), [#​2122](https://github.com/booklore-app/booklore/issues/2122)) ([#​2132](https://github.com/booklore-app/booklore/issues/2132)) by [@​halkeye](https://github.com/halkeye) - feat(ui): add series number overlay for More in Series ([#​2208](https://github.com/booklore-app/booklore/issues/2208)) by [@​xcashy](https://github.com/xcashy) - refactor(frontend): resolve linting errors, and EPUB reader lifecycle errors ([#​2127](https://github.com/booklore-app/booklore/issues/2127)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Test ([#​2201](https://github.com/booklore-app/booklore/issues/2201)) by [@​acx10](https://github.com/acx10) - fix(parser): handle missing results table in GoodReads search and log a warning (instead of erroring) ([#​2187](https://github.com/booklore-app/booklore/issues/2187)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(lubimyczytac): Fix Lubimyczytac metadata lock persistence ([#​2194](https://github.com/booklore-app/booklore/issues/2194)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Move custom fonts management to Reader tab ([#​2161](https://github.com/booklore-app/booklore/issues/2161)) by [@​acx10](https://github.com/acx10) - fix(api): kobo proxy server unit tests ([#​2136](https://github.com/booklore-app/booklore/issues/2136)) by [@​CounterClops](https://github.com/CounterClops) - fix(docs): update issue report links to use specific templates ([#​2156](https://github.com/booklore-app/booklore/issues/2156)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Add Vitest frontend tests to CI with JUnit reporting and coverage ([#​2151](https://github.com/booklore-app/booklore/issues/2151)) by [@​acx10](https://github.com/acx10) - Introduce Vitest as the frontend Angular testing framework for Booklore ([#​2150](https://github.com/booklore-app/booklore/issues/2150)) by [@​acx10](https://github.com/acx10) #### 📦 Dependencies - chore(deps): bump qs and body-parser in /booklore-ui ([#​2088](https://github.com/booklore-app/booklore/issues/2088)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v1.17.0` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v1.17.0` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.16.5...v1.17.0> #### 📸 Screenshots: <img width="750" height="452" alt="Screenshot 2026-01-09 at 3 39 40 PM" src="https://github.com/user-attachments/assets/40e13036-0f51-4b39-99fb-9239f6dc6067" /> <img width="750" height="452" alt="Screenshot 2026-01-09 at 3 39 57 PM" src="https://github.com/user-attachments/assets/338d00bf-795f-4613-aa2c-f80dee546cc4" /> <img width="750" height="452" alt="Screenshot 2026-01-09 at 3 42 06 PM" src="https://github.com/user-attachments/assets/5e420e89-c186-4d96-8520-601ce6c0342c" /> <img width="750" height="452" alt="Screenshot 2026-01-09 at 3 40 29 PM" src="https://github.com/user-attachments/assets/13a6cfcc-f691-4613-9dfb-1e761cc67450" /> <img width="750" height="452" alt="Screenshot 2026-01-09 at 3 41 15 PM" src="https://github.com/user-attachments/assets/2efdaefb-8a94-4e05-a3b8-03bc4a37d22f" /> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4yIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/3146 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| 0f883ebbd5 | Update Helm release mariadb-cluster to v25.10.4 (#3126) | |||
| a100fc174a |
Update Helm release app-template to v4.6.0 (#3094)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [app-template](https://github.com/bjw-s-labs/helm-charts) | minor | `4.5.0` → `4.6.0` | --- ### Release Notes <details> <summary>bjw-s-labs/helm-charts (app-template)</summary> ### [`v4.6.0`](https://github.com/bjw-s-labs/helm-charts/releases/tag/app-template-4.6.0) [Compare Source](https://github.com/bjw-s-labs/helm-charts/compare/app-template-4.5.0...app-template-4.6.0) ##### Changelog: ##### Changed - Upgraded the common library to v4.6.0 - [Upgrade notes](https://bjw-s-labs.github.io/helm-charts/docs/app-template/upgrade-instructions/) - [Detailed release notes](https://github.com/bjw-s-labs/helm-charts/releases/tag/common-4.6.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4yIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiY2hhcnQiXX0=--> Reviewed-on: #3094 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| 70c18ae648 | Update ghcr.io/booklore-app/booklore Docker tag to v1.16.5 (#3077) | |||
| 6bf48a1e3e | Update ghcr.io/booklore-app/booklore Docker tag to v1.16.4 (#3053) | |||
| e79d6783d8 |
Update ghcr.io/booklore-app/booklore Docker tag to v1.16.3 (#3042)
All checks were successful
|
|||
| 6e7464005c | enable local | |||
| 6f318db6a0 | Update ghcr.io/booklore-app/booklore Docker tag to v1.16.2 (#3015) | |||
| a353cc0f25 |
Update ghcr.io/booklore-app/booklore Docker tag to v1.16.1 (#2938)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/booklore-app/booklore](https://github.com/booklore-app/booklore) | minor | `v1.15.0` → `v1.16.1` | --- ### Release Notes <details> <summary>booklore-app/booklore (ghcr.io/booklore-app/booklore)</summary> ### [`v1.16.1`](https://github.com/booklore-app/booklore/releases/tag/v1.16.1) [Compare Source](https://github.com/booklore-app/booklore/compare/v1.16.0...v1.16.1) #### 🌟 What's New in v1.16.1 #### 🚀 New Features - Feat/lubimyczytac metadata provider ([#​2019](https://github.com/booklore-app/booklore/issues/2019)) by [@​gajewsky](https://github.com/gajewsky) - Display paginated reading sessions in the book metadata view ([#​2003](https://github.com/booklore-app/booklore/issues/2003)) by [@​acx10](https://github.com/acx10) #### ✨ Enhancements - Improve the SVG fetching and caching logic ([#​2011](https://github.com/booklore-app/booklore/issues/2011)) by [@​acx10](https://github.com/acx10) - Fix(metadata): Improve handling of non-author creator roles ([#​1987](https://github.com/booklore-app/booklore/issues/1987)) by [@​MightyHalfGinger](https://github.com/MightyHalfGinger) - Add more user-specific charts ([#​1991](https://github.com/booklore-app/booklore/issues/1991)) by [@​acx10](https://github.com/acx10) - fix: when selecting a series, select all books from the series ([#​1979](https://github.com/booklore-app/booklore/issues/1979)) by [@​farfromrefug](https://github.com/farfromrefug) - fix(metadata): Use existing Goodreads ID for batch refresh instead of searching ([#​1973](https://github.com/booklore-app/booklore/issues/1973)) by [@​cwar](https://github.com/cwar) - Add anonymous usage telemetry ([#​2026](https://github.com/booklore-app/booklore/issues/2026)) by [@​acx10](https://github.com/acx10) - perf(cbz): optimize CBZ reading ([#​1980](https://github.com/booklore-app/booklore/issues/1980)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix: regenerate improvements ([#​1981](https://github.com/booklore-app/booklore/issues/1981)) by [@​farfromrefug](https://github.com/farfromrefug) #### 🐛 Bug Fixes - Fix: Custom/Added icons not visible when assigning shelf ([#​2010](https://github.com/booklore-app/booklore/issues/2010)) by [@​acx10](https://github.com/acx10) - fix(epub-metadata): properly decode URL-encoded cover image hrefs in EPUBs ([#​1983](https://github.com/booklore-app/booklore/issues/1983)) by [@​balazs-szucs](https://github.com/balazs-szucs) #### 🛠️ Refactoring & Maintenance - refactor(api): improve file resource handling in book download and FB2 metadata extraction ([#​2018](https://github.com/booklore-app/booklore/issues/2018)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Refactor book service in BE and FE ([#​2013](https://github.com/booklore-app/booklore/issues/2013)) by [@​acx10](https://github.com/acx10) - Disable nginx IPv6 listener when disabled on host ([#​1998](https://github.com/booklore-app/booklore/issues/1998)) by [@​descensus](https://github.com/descensus) - test(util): expand and improve utility test coverage for BookUtils, FileUtils, PathPatternResolver, MetadataChangeDetector, and UserPermissionUtils ([#​1985](https://github.com/booklore-app/booklore/issues/1985)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix: Prevent transaction rollback when cover download fails ([#​1971](https://github.com/booklore-app/booklore/issues/1971)) by [@​cwar](https://github.com/cwar) ##### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v1.16.1` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v1.16.1` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.16.0...v1.16.1> ### [`v1.16.0`](https://github.com/booklore-app/booklore/releases/tag/v1.16.0) [Compare Source](https://github.com/booklore-app/booklore/compare/v1.15.0...v1.16.0) #### 🌟 What's New in v1.16.0 #### 🚀 New Features - Introduce reading session tracking with visual insights ([#​1957](https://github.com/booklore-app/booklore/issues/1957)) by [@​acx10](https://github.com/acx10) - Introduce more granular permission controls and update the user management UI ([#​1965](https://github.com/booklore-app/booklore/issues/1965)) by [@​acx10](https://github.com/acx10) - Enhance EPUB reader with new themes and UI improvements ([#​1948](https://github.com/booklore-app/booklore/issues/1948)) by [@​acx10](https://github.com/acx10) #### ✨ Enhancements - feat(bookmark): improve bookmark feature by adding rename, note, color, priority functionalities ([#​1946](https://github.com/booklore-app/booklore/issues/1946)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix: Add missing kobo progress bar and stats ([#​1942](https://github.com/booklore-app/booklore/issues/1942)) by [@​pedronave](https://github.com/pedronave) - Fix/hardcover api key per user ([#​1943](https://github.com/booklore-app/booklore/issues/1943)) by [@​boludo00](https://github.com/boludo00) #### 🐛 Bug Fixes - fix(scans): prevent shelf associations from being cleared during metadata operations ([#​1947](https://github.com/booklore-app/booklore/issues/1947)) by [@​balazs-szucs](https://github.com/balazs-szucs) ##### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v1.16.0` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v1.16.0` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.15.0...v1.16.0> ##### 📸 Screenshots:      </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi42Ni45IiwidXBkYXRlZEluVmVyIjoiNDIuNjYuMTMiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImltYWdlIl19--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2938 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| 45b4391d59 | add restore | |||
| e4138a7994 | add local | |||
| c896e4a32f | disable local | |||
| c37f9cf23e | enable local backups | |||
| b67d15cdfc | change schedule | |||
| d1b88d31cd | disable volsync | |||
| 5e14a56dd5 | Update Helm release mariadb-cluster to v25.10.3 (#2814) | |||
| eb6ff2df76 | renovate update chart appVersion | |||
| f20c4483e8 | update chart | |||
| a2dbe6f120 | consolidate all services to tailscale operator | |||
| 8ca684f42c |
Update ghcr.io/booklore-app/booklore Docker tag to v1.15.0 (#2735)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/booklore-app/booklore](https://github.com/booklore-app/booklore) | minor | `v1.14.1` -> `v1.15.0` | --- ### Release Notes <details> <summary>booklore-app/booklore (ghcr.io/booklore-app/booklore)</summary> ### [`v1.15.0`](https://github.com/booklore-app/booklore/releases/tag/v1.15.0) [Compare Source](https://github.com/booklore-app/booklore/compare/v1.14.1...v1.15.0) #### 🌟 What's New in v1.15.0 #### 🚀 New Features - feat: add additional cover art actions and settings ([#​1938](https://github.com/booklore-app/booklore/issues/1938)) by [@​CounterClops](https://github.com/CounterClops) - feat(hardcover): sync Kobo reading progress to Hardcover ([#​1926](https://github.com/booklore-app/booklore/issues/1926)) by [@​boludo00](https://github.com/boludo00) - Add sequential next/previous book navigation from library, filtered, and search views ([#​1931](https://github.com/booklore-app/booklore/issues/1931)) by [@​acx10](https://github.com/acx10) - feat(api, ui): add bookdrop bulk edit and metadata pattern extraction ([#​1846](https://github.com/booklore-app/booklore/issues/1846)) by [@​CounterClops](https://github.com/CounterClops) - Add support for fb2 books ([#​1757](https://github.com/booklore-app/booklore/issues/1757)) by [@​slonoed](https://github.com/slonoed) #### ✨ Enhancements - feat: add library sync URL generation in KoboUrlBuilder ([#​1937](https://github.com/booklore-app/booklore/issues/1937)) by [@​ripdog](https://github.com/ripdog) - feat(opds): allow user to set sorting for opds feed in settings ([#​1824](https://github.com/booklore-app/booklore/issues/1824)) by [@​WorldTeacher](https://github.com/WorldTeacher) - Feat/conversion CBX to EPUB compression configuration ([#​1844](https://github.com/booklore-app/booklore/issues/1844)) by [@​thvardhan](https://github.com/thvardhan) - feat(opds): add series hierarchy ([#​1837](https://github.com/booklore-app/booklore/issues/1837)) by [@​WorldTeacher](https://github.com/WorldTeacher) #### 🎨 UI Tweaks - fix: Bookdrop UI mobile support ([#​1911](https://github.com/booklore-app/booklore/issues/1911)) by [@​Muppetteer](https://github.com/Muppetteer) - fix: Consistent dialogs ([#​1842](https://github.com/booklore-app/booklore/issues/1842)) by [@​Muppetteer](https://github.com/Muppetteer) #### 🐛 Bug Fixes - fix: Library icon name bug ([#​1934](https://github.com/booklore-app/booklore/issues/1934)) by [@​Muppetteer](https://github.com/Muppetteer) - fix: bookdrop bulk actions not applying to uncached pages ([#​1928](https://github.com/booklore-app/booklore/issues/1928)) by [@​CounterClops](https://github.com/CounterClops) - fix: file renaming with wrong extension ([#​1929](https://github.com/booklore-app/booklore/issues/1929)) by [@​CounterClops](https://github.com/CounterClops) - fix(FileService): update User-Agent header for ComicVine to let the Parser through ([#​1880](https://github.com/booklore-app/booklore/issues/1880)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(ui): Force page reload on logout ([#​1870](https://github.com/booklore-app/booklore/issues/1870)) by [@​Muppetteer](https://github.com/Muppetteer) #### 🛠️ Refactoring & Maintenance - refactor(fb2, misc): Improve code quality, update to modern Java patterns, add reasonable initial values for StringBuilders ([#​1932](https://github.com/booklore-app/booklore/issues/1932)) by [@​balazs-szucs](https://github.com/balazs-szucs) #### 📦 Dependencies - Upgrade Angular from v20 to v21 and update other dependencies ([#​1916](https://github.com/booklore-app/booklore/issues/1916)) by [@​acx10](https://github.com/acx10) - chore(deps): bump docker/login-action from 2 to 3 ([#​1908](https://github.com/booklore-app/booklore/issues/1908)) by @​[dependabot\[bot\]](https://github.com/apps/dependabot) - chore(deps): update actions/setup-java action to v5 ([#​1871](https://github.com/booklore-app/booklore/issues/1871)) by @​[renovate\[bot\]](https://github.com/apps/renovate) - chore(deps): update actions/upload-artifact action to v6 ([#​1872](https://github.com/booklore-app/booklore/issues/1872)) by @​[renovate\[bot\]](https://github.com/apps/renovate) - chore(deps): update actions/checkout action to v6 ([#​1869](https://github.com/booklore-app/booklore/issues/1869)) by @​[renovate\[bot\]](https://github.com/apps/renovate) - chore(deps): update dependency org.flywaydb:flyway-mysql to v11.19.0 ([#​1868](https://github.com/booklore-app/booklore/issues/1868)) by @​[renovate\[bot\]](https://github.com/apps/renovate) - chore(deps): update dependency org.apache.commons:commons-text to v1.15.0 ([#​1865](https://github.com/booklore-app/booklore/issues/1865)) by @​[renovate\[bot\]](https://github.com/apps/renovate) - chore(deps): update lscr.io/linuxserver/mariadb docker tag to v11.4.8 ([#​1862](https://github.com/booklore-app/booklore/issues/1862)) by @​[renovate\[bot\]](https://github.com/apps/renovate) - chore(deps): update dependency org.freemarker:freemarker to v2.3.34 ([#​1861](https://github.com/booklore-app/booklore/issues/1861)) by @​[renovate\[bot\]](https://github.com/apps/renovate) - chore(deps): update dependency org.assertj:assertj-core to v3.27.6 ([#​1859](https://github.com/booklore-app/booklore/issues/1859)) by @​[renovate\[bot\]](https://github.com/apps/renovate) - chore(deps): update dependency gradle to v8.14.3 ([#​1858](https://github.com/booklore-app/booklore/issues/1858)) by @​[renovate\[bot\]](https://github.com/apps/renovate) #### ⚙️ CI/CD - Add Flyway migration conflict detection in CI ([#​1888](https://github.com/booklore-app/booklore/issues/1888)) by [@​acx10](https://github.com/acx10) - Speed up CI builds by introducing dependency caching ([#​1874](https://github.com/booklore-app/booklore/issues/1874)) by [@​acx10](https://github.com/acx10) - Add Flyway migration version conflict check in GitHub Actions ([#​1863](https://github.com/booklore-app/booklore/issues/1863)) by [@​acx10](https://github.com/acx10) ##### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v1.15.0` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v1.15.0` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.14.1...v1.15.0> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2735 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| 451793e158 |
Update volsync-target Docker tag to v0.6.0 (#2695)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [volsync-target](https://github.com/backube/volsync) | minor | `0.5.0` -> `0.6.0` | --- ### Release Notes <details> <summary>backube/volsync (volsync-target)</summary> ### [`v0.6.0`](https://github.com/backube/volsync/blob/HEAD/CHANGELOG.md#060) [Compare Source](https://github.com/backube/volsync/compare/v0.5.0...v0.6.0) ##### Added - restic - allow passing in GOOGLE\_APPLICATION\_CREDENTIALS as a file ##### Changed - ⚠️ Breaking change ⚠️ - Helm chart now manages VolSync CRDs directly.\ Upgrading the VolSync Helm chart from an earlier version will produce the following error: ``` Error: UPGRADE FAILED: rendered manifests contain a resource that already exists. Unable to continue with update: CustomResourceDefinition "replicationdestinations.volsync.backube" in namespace "" exists and cannot be imported into the current release: invalid ownership metadata; label validation error: missing key "app.kubernetes.io/managed-by": must be set to "Helm"; annotation validation error: missing key "meta.helm.sh/release-name": must be set to "volsync"; annotation validation error: missing key "meta.helm.sh/release-namespace": must be set to "volsync-system" ``` To fix, apply the missing labels and annotations as mentioned in the error message (your values may differ), then retry the upgrade: ```console $ kubectl label crd/replicationdestinations.volsync.backube app.kubernetes.io/managed-by=Helm customresourcedefinition.apiextensions.k8s.io/replicationdestinations.volsync.backube labeled $ kubectl label crd/replicationsources.volsync.backube app.kubernetes.io/managed-by=Helm customresourcedefinition.apiextensions.k8s.io/replicationsources.volsync.backube labeled $ kubectl annotate crd/replicationdestinations.volsync.backube meta.helm.sh/release-name=volsync customresourcedefinition.apiextensions.k8s.io/replicationdestinations.volsync.backube annotated $ kubectl annotate crd/replicationsources.volsync.backube meta.helm.sh/release-name=volsync customresourcedefinition.apiextensions.k8s.io/replicationsources.volsync.backube annotated $ kubectl annotate crd/replicationdestinations.volsync.backube meta.helm.sh/release-namespace=volsync-system customresourcedefinition.apiextensions.k8s.io/replicationdestinations.volsync.backube annotated $ kubectl annotate crd/replicationsources.volsync.backube meta.helm.sh/release-namespace=volsync-system customresourcedefinition.apiextensions.k8s.io/replicationsources.volsync.backube annotated ``` - VolSync privileged mover SCC installed at startup on OpenShift - Syncthing upgraded to 1.22.1 - Updates to build with golang 1.19 ##### Fixed - ReplicationSource fixes for rsync, rclone and restic to enable mounting ROX source PVCs as read-only ##### Security - rclone mover updated to run with reduced privileges by default - restic mover updated to run with reduced privileges by default - syncthing mover updated to run with reduced privileges by default - kube-rbac-proxy upgraded to 0.13.1 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: #2695 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| 08a3c21d30 |
Update ghcr.io/booklore-app/booklore Docker tag to v1.14.1 (#2665)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/booklore-app/booklore](https://github.com/booklore-app/booklore) | minor | `v1.13.2` -> `v1.14.1` | --- ### Release Notes <details> <summary>booklore-app/booklore (ghcr.io/booklore-app/booklore)</summary> ### [`v1.14.1`](https://github.com/booklore-app/booklore/releases/tag/v1.14.1) [Compare Source](https://github.com/booklore-app/booklore/compare/v1.13.2...v1.14.1) #### 🌟 What's New in v1.14.1 The v1.14.1 release is packed with lots upgrades, brand-new capabilities, and a long list of quality-of-life improvements. Here are the headline features you’ll notice right away: 1. **Custom SVG Icons**: Libraries, shelves, and magic shelves can now have fully custom SVG icons, giving users complete creative freedom and a far richer visual experience. 2. **Personal Book Ratings**: Ratings are now truly personal. Each user has their own individual rating for every book. (Thanks to [@​Muppetteer](https://github.com/Muppetteer)) 3. **EPUB Reader Bookmarks**: The EPUB reader now supports bookmarks, making it easier than ever to mark important passages and jump back to them later. (Thanks to [@​balazs-szucs](https://github.com/balazs-szucs)) 4. **Automatic Kobo Shelf Sync**: Newly added books can now be automatically added to your Kobo shelf, no more manual syncing or missed additions. (Thanks to [@​armandocerna](https://github.com/armandocerna)) 5. **OPDS Author Hierarchy**: OPDS feeds now offer a complete author hierarchy, letting you quickly explore and navigate books by your favorite authors. (Thanks to [@​shiggsy365](https://github.com/shiggsy365)) #### 🚀 New Features - Add support for uploading and assigning custom SVG icons to libraries… ([#​1788](https://github.com/booklore-app/booklore/issues/1788)) by [@​adityachandelgit](https://github.com/adityachandelgit) - Automatically add newly added books to Kobo shelf ([#​1826](https://github.com/booklore-app/booklore/issues/1826)) by [@​adityachandelgit](https://github.com/adityachandelgit) - Per user personal ratings ([#​1820](https://github.com/booklore-app/booklore/issues/1820)) by [@​Muppetteer](https://github.com/Muppetteer) - Random sort option for libraries and shelves ([#​1817](https://github.com/booklore-app/booklore/issues/1817)) by [@​Muppetteer](https://github.com/Muppetteer) - feat(bookmark): implement bookmark management with CRUD operations ([#​1795](https://github.com/booklore-app/booklore/issues/1795)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Add authors hierarchy and series metadata to OPDS feed ([#​1777](https://github.com/booklore-app/booklore/issues/1777)) by [@​shiggsy365](https://github.com/shiggsy365) #### ✨ Enhancements - feat(search): Add denormalized search\_text column for better book search ([#​1791](https://github.com/booklore-app/booklore/issues/1791)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Enable java remote debug on dev docker stack ([#​1808](https://github.com/booklore-app/booklore/issues/1808)) by [@​Muppetteer](https://github.com/Muppetteer) - fix(book-card): add menu toggle events and update styles for open state ([#​1813](https://github.com/booklore-app/booklore/issues/1813)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Allow uploading multiple SVG icons and render them directly as inline… ([#​1796](https://github.com/booklore-app/booklore/issues/1796)) by [@​adityachandelgit](https://github.com/adityachandelgit) - fix(book-card): indicate collapse series number on the library tooltip ([#​1800](https://github.com/booklore-app/booklore/issues/1800)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Feat: Improve metadata edit UI ([#​1792](https://github.com/booklore-app/booklore/issues/1792)) by [@​Muppetteer](https://github.com/Muppetteer) - fix(epub): fix and improve cover image extraction from EPUB files (specifically support for: EPUB 3 specification) ([#​1773](https://github.com/booklore-app/booklore/issues/1773)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Add OIDC mobile redirect support for mobile apps ([#​1767](https://github.com/booklore-app/booklore/issues/1767)) by [@​rmellmer](https://github.com/rmellmer) - Improve bookdrop UI ([#​1768](https://github.com/booklore-app/booklore/issues/1768)) by [@​Muppetteer](https://github.com/Muppetteer) - Feat: Hide empty filter categories from sidebar ([#​1759](https://github.com/booklore-app/booklore/issues/1759)) by [@​Muppetteer](https://github.com/Muppetteer) #### 🐛 Bug Fixes - fix(bookdrop): fix 'Select All' query logic and improve filename fallback for missing metadata ([#​1828](https://github.com/booklore-app/booklore/issues/1828)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix vertical overflow on metadata edit form dialog: part deux ([#​1816](https://github.com/booklore-app/booklore/issues/1816)) by [@​Muppetteer](https://github.com/Muppetteer) - Fix issues with library scans and file moves with a focus on SMB usage ([#​1744](https://github.com/booklore-app/booklore/issues/1744)) by [@​CounterClops](https://github.com/CounterClops) - Fix vertical overflow on metadata edit form dialog ([#​1810](https://github.com/booklore-app/booklore/issues/1810)) by [@​Muppetteer](https://github.com/Muppetteer) - fix(metadata): Fix genre/category disappearing bug in metadata updates ([#​1807](https://github.com/booklore-app/booklore/issues/1807)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix: locking fields discards unsaved changes ([#​1799](https://github.com/booklore-app/booklore/issues/1799)) by [@​Muppetteer](https://github.com/Muppetteer) - fix(path): remove trailing dots from path components for Windows compatibility ([#​1786](https://github.com/booklore-app/booklore/issues/1786)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(bookdrop): improve file filtering to ignore .caltrash (calibre generated trash file) ([#​1785](https://github.com/booklore-app/booklore/issues/1785)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Fix: Assign Books to Shelves popup visually broken ([#​1783](https://github.com/booklore-app/booklore/issues/1783)) by [@​adityachandelgit](https://github.com/adityachandelgit) - Fix: script error preventing clearing of multi-select fields ([#​1756](https://github.com/booklore-app/booklore/issues/1756)) by [@​Muppetteer](https://github.com/Muppetteer) - hotfix(auth): add missing EC algo for Authentik, manually increase timeout limit ([#​1747](https://github.com/booklore-app/booklore/issues/1747)) by [@​balazs-szucs](https://github.com/balazs-szucs) #### 🛠️ Refactoring & Maintenance - refactor(api): minor QOL updates, code modernization ([#​1802](https://github.com/booklore-app/booklore/issues/1802)) by [@​balazs-szucs](https://github.com/balazs-szucs) - delete broken (legacy?) github discussions link in contributing.md ([#​1805](https://github.com/booklore-app/booklore/issues/1805)) by [@​JuergenFleiss](https://github.com/JuergenFleiss) - docs: update license information from MIT to GPL-3.0 in CONTRIBUTING.md ([#​1803](https://github.com/booklore-app/booklore/issues/1803)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Add loader for long running operations ([#​1790](https://github.com/booklore-app/booklore/issues/1790)) by [@​adityachandelgit](https://github.com/adityachandelgit) - Configureable delimiter for remote auth groups ([#​1782](https://github.com/booklore-app/booklore/issues/1782)) by [@​aroberts](https://github.com/aroberts) - Add missing field for Kobo OverDrive expiration check ([#​1774](https://github.com/booklore-app/booklore/issues/1774)) by [@​jose-elias-alvarez](https://github.com/jose-elias-alvarez) - fix(bookdrop): ignore dot and underscore files during monitoring ([#​1771](https://github.com/booklore-app/booklore/issues/1771)) by [@​balazs-szucs](https://github.com/balazs-szucs) #### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v1.14.0` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v1.14.0` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.13.2...v1.14.0> #### 📸 Screenshots:       </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2665 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |
|||
| 16fb812cff | add priv | |||
| 6d3b4cc8b8 | enable tls | |||
| f8c08da14e | keep only the most recent job | |||
| 4c26f42d22 | add remote backup | |||
| 40ee5b3833 | move volsync to chart | |||
| dcc30342b8 | update appVersion | |||
| 15071cdb96 |
Update ghcr.io/booklore-app/booklore Docker tag to v1.13.2 (#2291)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/booklore-app/booklore](https://github.com/booklore-app/booklore) | patch | `v1.13.1` -> `v1.13.2` | --- ### Release Notes <details> <summary>booklore-app/booklore (ghcr.io/booklore-app/booklore)</summary> ### [`v1.13.2`](https://github.com/booklore-app/booklore/releases/tag/v1.13.2) [Compare Source](https://github.com/booklore-app/booklore/compare/v1.13.1...v1.13.2) #### 🌟 What's New in v1.13.2 #### 🚀 New Features - Add sort preference option for Magic Shelf names in the left sidebar ([#​1749](https://github.com/booklore-app/booklore/issues/1749)) by [@​adityachandelgit](https://github.com/adityachandelgit) - Feature: filter mode preference ([#​1739](https://github.com/booklore-app/booklore/issues/1739)) by [@​Muppetteer](https://github.com/Muppetteer) - Add a user-facing option to enable or disable series view ([#​1748](https://github.com/booklore-app/booklore/issues/1748)) by [@​adityachandelgit](https://github.com/adityachandelgit) #### ✨ Enhancements - fix(metadata): disable merging of moods and tags during metadata updates ([#​1743](https://github.com/booklore-app/booklore/issues/1743)) by [@​balazs-szucs](https://github.com/balazs-szucs) - fix(epub): improve date parsing to support year-only formats and add tests ([#​1735](https://github.com/booklore-app/booklore/issues/1735)) by [@​balazs-szucs](https://github.com/balazs-szucs) - feat(opds): Sort OPDS Feed by addedOn Desc ([#​1691](https://github.com/booklore-app/booklore/issues/1691)) by [@​WorldTeacher](https://github.com/WorldTeacher) - refactor(metadata): consider locked, but empty or null metadata valid ([#​1729](https://github.com/booklore-app/booklore/issues/1729)) by [@​balazs-szucs](https://github.com/balazs-szucs) #### 🎨 UI Tweaks - Visually indicate the active menu item in the left sidebar ([#​1738](https://github.com/booklore-app/booklore/issues/1738)) by [@​adityachandelgit](https://github.com/adityachandelgit) - Align the layout to be consistent throughout all dialogs ([#​1737](https://github.com/booklore-app/booklore/issues/1737)) by [@​adityachandelgit](https://github.com/adityachandelgit) #### 🐛 Bug Fixes - fix(amazon): improve localization of Amazon Parser ([#​1706](https://github.com/booklore-app/booklore/issues/1706)) by [@​balazs-szucs](https://github.com/balazs-szucs) - Add filter mode to querystring ([#​1728](https://github.com/booklore-app/booklore/issues/1728)) by [@​Muppetteer](https://github.com/Muppetteer) - Fix race conditions between Bookdrop and Monitoring Service when importing multiple files ([#​1709](https://github.com/booklore-app/booklore/issues/1709)) by [@​piffio](https://github.com/piffio) - Re-add "description" to epub metadata extraction ([#​1727](https://github.com/booklore-app/booklore/issues/1727)) by [@​beedaddy](https://github.com/beedaddy) ##### 🐳 Docker Images - **Docker Hub:** `booklore/booklore:v1.13.2` - **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v1.13.2` **Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.13.1...v1.13.2> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiYXV0b21lcmdlIiwiaW1hZ2UiXX0=--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2291 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net> |