v4.6.0
What's Changed
New Features
- Novel Recommendations — the server now suggests related novels based on what you're reading
- Machine Translation — full translation service with multiple backends (Bing, Google, Lingva, Baidu) with automatic failover; translates chapter content, chapter titles, and artifacts (EPUB/etc.)
- Granular translation job types — translation tasks are now split per-resource (chapter, volume, title) instead of one monolithic
TRANSLATIONjob, giving finer progress tracking - Referral / invite system — users can invite others via email with a referral link
- Expanded browser detection — Brave, Vivaldi, Yandex, and Whale are now recognized for app-mode launching alongside Chrome/Edge
- More supported translation languages
Improvements
- Browser automation migrated from Selenium to nodriver for more reliable JS-rendered site scraping
- Switched to a custom caching layer instead of
cachetoolsfor better control - Announcement banners improved in the web UI
- Chapter body cleaning improved when downloading
- User activity tracking added (page visits, static file downloads)
- Webview fallback now shows just the terminal when no app-mode browser is found
- Tightened API access control; auth guards now use
Security()instead ofDepends() - Removed initial content when a language is pre-defined
- Invitation email subject line updated
Bug Fixes
- Fixed SQLite compatibility issue with migrations (
batch_alter_table) - Fixed Calibre-based artifact generation when using translations
- Fixed searching regression
- Fixed chapter fetch/translate functions not passing user ID correctly
- Fixed
select_descendantstypo in security module (#2966) - Fixed invalid URL exceptions crashing
fetch_chapterandfetch_image - Fixed
ensure_loadcrashing when sync thread was already cleaned up - Fixed app startup issues
Source Updates
- wtr-lab.com — multiple fixes and updates
- novelfire.py — several iterative fixes
- Chapter title tag removal extended to
<h4>elements - More sources flagged as rejected/inactive in the index
Internal / Infrastructure
lncrawl-webis no longer a git submodule; web build artifacts are bundled directly- Removed deprecated
fetch-novelAPI endpoint (replaced byfetch-novels) - Python 3.15 excluded from psycopg test matrix (not yet supported upstream)
server-compose.ymlupdated
Full diff: v4.5.0...v4.6.0