github new-usemame/Calibre-Web-NextGen v4.0.96
v4.0.96 — preview-cache sweeper now actually runs

latest releases: v4.0.100, v4.0.99, v4.0.98...
6 hours ago

What's new

docker pull ghcr.io/new-usemame/calibre-web-nextgen:v4.0.96

(or :latest)

Cover-preview cache no longer grows unbounded

If your library has heavy cover-preview traffic, you may have noticed /config/.cwa-preview-cache/ slowly eating disk despite the CWA_PREVIEW_CACHE_MAX_MB cap. The hourly LRU sweeper that's supposed to enforce that cap never executed a single sweep — every iteration died with ModuleNotFoundError: No module named 'cps' and the supervisor's || echo WARNING... clause swallowed the failure silently. v4.0.96 fixes the sweeper.

The s6 longrun was exec'ing python3 -m cps.services.cover_preview_cache_sweeper from the supervisor's default CWD of /. python3 -m only adds the current directory to sys.path[0], so the cps package living under /app/calibre-web-automated/cps/ was unreachable. The fix cds into the app dir before the sweep loop — matching the pattern already used by the main calibre-web and init services. After the fix, the sweeper logs the canonical before=… after=… evicted=… cap=… root=… summary every hour.

Credits

Thanks @ikerios for the report, diagnosis, fix, and live verification on the podman/NixOS host. PR #261. Regression tests pinning the cd guard added in PR #263.

Don't miss a new Calibre-Web-NextGen release

NewReleases is sending notifications on new releases.