🌟 What's New in v2.1.0
🚀 New Features
- Add bulk ISBN import from file (#3239) (#3244) by @acx10
- Allow importing and exporting magic shelf JSON from the UI (#3183) (#3210) by @acx10
✨ Enhancements
- Allow physical and digital book states to coexist (#3043) (#3238) by @acx10
- Add ASIN lookup to author search (#3162) (#3228) by @acx10
- Add option to regenerate only missing covers (#3181) (#3227) by @acx10
- Fall back to folder cover images when embedded cover extraction fails (#3212) by @acx10
- Add magnifying glass to CBX reader (#3190) (#3209) by @acx10
🐛 Bug Fixes
- Fix cover download failing when CDN redirects to raw IP (#3149) (#3247) by @acx10
- Fix DST-related datetime rejection on TIMESTAMP columns (#3240) (#3241) (#3245) by @acx10
- Add groups scope to OIDC authorization request (#3211) (#3226) by @acx10
- Add Hardcover Book ID to custom metadata fetch (#3214) (#3224) by @acx10
- Fix organize files preview missing subtitle (#3217) (#3223) by @acx10
- Fix metadata center dialog mode being ignored on book card info button (#3218) (#3222) by @acx10
- fix(opds): sort libraries by name in OPDS feed (#3220) by @berb
- Fix shelf view overrides not being respected (#2603) (#3206) by @acx10
🛠️ Refactoring & Maintenance
- Translations update from Hosted Weblate (#3200) by @acx10
- Pin footer buttons in metadata review dialog (#3053) (#3235) by @acx10
- Persist metadata search provider selection across book switches (#3107) (#3234) by @acx10
- Fix untranslatable UI strings, broken pluralization, and translation reactivity (#3108) (#3233) by @acx10
- Fix npm audit vulnerabilities (#3229) by @acx10
- Rename "Book Type" label to "File Format" (#3204) (#3225) by @acx10
- Increase minimum password length to 8 characters (#3185) (#3207) by @acx10
- Include physical books in the Book Type filter (#3205) by @acx10
🐳 Docker Images
- Docker Hub:
booklore/booklore:v2.1.0 - GitHub Container Registry:
ghcr.io/booklore-app/booklore:v2.1.0
Full Changelog: v2.0.6...v2.1.0

