- Polling will also be used when NETWORK_SHARE_MODE is enabled as it has better reliability with shares and using polling over inotify can be activated manually by passing the CWA_WATCH_MODE: "poll" env variable
- If the user reaches max_user_watches limit, the cwa-ingest-service & metadata-change-detector processes will now dynamically fallback to polling
[bug] Synology - hitting inotify.max_user_watches limit
Fixes#311
[Feature Request] Skip actions on read-only data
Fixes#229
- Added connection timeouts everywhere:
SQLAlchemy engines: connect_args={'timeout': 30}
sqlite3 direct connects: timeout=30 across scripts
- Enabled WAL mode on local disks and made it conditional via an environment flag.
-Added small retry/backoff in read-only UI probes to tolerate transient “database is locked.”
Increased Network share support (NFS/SMB):
- Introduced NETWORK_SHARE_MODE to disable WAL and suppress permission-changing operations that can break on network filesystems.
- Suppressed recursive chown when NETWORK_SHARE_MODE is true:
Python:
scripts/auto_library.py: skip chown for /config and /calibre-library during app.db/new library setup
scripts/ingest_processor.py: skip chown of library in set_library_permissions
scripts/convert_library.py: skip chown of convert-library.log; skip library chown
scripts/kindle_epub_fixer.py: skip chown of epub-fixer.log
cps/updater.py: disable os.chown during updates when flag is enabled
Shell:
scripts/setup-cwa.sh: guard chown of /etc/s6-overlay
root/etc/s6-overlay/s6-rc.d/cwa-init/run: guard initial chown of /config and cps/cache; guard requiredDirs loop
Documentation and configuration:
- README: Added “Network shares and SQLite WAL mode” section; documented that NETWORK_SHARE_MODE disables WAL and chown behavior for safety on network shares.
- docker-compose.yml and docker-compose.yml.dev: Exposed NETWORK_SHARE_MODE (default false) in environment.
Fixed a minor YAML indentation issue during compose edits.
Impacts on the Project:
- Fewer “database is locked” errors due to timeouts, gentle retries, and WAL on local disks.
- Safer behavior on NFS/SMB: WAL disabled and chown suppressed when NETWORK_SHARE_MODE=true.
- Clearer guidance for users via README and compose templates.
[bug] chown failed
Fixes#175
Calibre-Web-automated [bug]
Fixes#530
Instead, future images will once again be built with the tags, providing users running modern kernels full functionality and during cwa-init, the user's kernel version will be checked and if its below the minimum required, the tags will THEN be dynamically removed and a warning served so that they can continue to use CWA, albeit with reduced functionality.
Fixes [bug] PDFs can get deleted while trying to save Fetch metadata
Fixes#407
- The CWA repo now contains all of the core required files it needs & no longer directly uses the latest Calibre-Web releases & linuxserver/docker-calibre-web repo to build it's images
- This change should hopefully make contributing to the project much more intuitive for those interested as well making CWA easier to develop for in general
Bugfixes:
- Fixed typo in amazonjp.py preventing it from working
the earlier commit was only working for changed date time values due to wrong intended ion
Hopefully i now covered all problems with saving date time in custom columns
Fixed list of metadata providers not being alphabetized
Fixed filter buttons overlapping pagination elements on homepage
Fixed auto-ingest setting options not displaying properly
Fixed star ratings being wiped when fetching metadata
Fixed Enable Hardcover checkbox being unchecked regardless of whether the feature was enabled or not.
Fixed issue of existing ratings or previously enter ratings being wiped after fetching metadata