v1.11.0-rc.2 (Release Candidate)
Pre-releaseSecond release candidate for 1.11.0. Everything below is new since rc.1.
Logs you can actually diagnose from. Two bug reports on Discord stalled for
weeks because an attached sublarr.log said nothing about where it came from.
Every log file now opens with a line naming version, platform, container, DB
backend, deployment mode and rotation window — re-written on every rotation, so a
rotated file explains itself too. The request id now appears in ordinary log
lines, not only on the error line, so what a request did before failing is
findable.
The log rotation setting works. Size and backup count could be saved and the
API promised they applied on restart, but nothing read them — the handler was
pinned to 5 MB x 3. With debug logging that window reached back about twenty
minutes, so "enable DEBUG, reproduce, send the log" often lost the incident
before it was fetched.
BREAKING — GET /api/v1/logs/download now returns the anonymised support
bundle (ZIP) instead of the raw log. The raw file leaks paths, IPs and the
hostname, and arrives without the context needed to act on it. Pass ?raw=1 for
the old behaviour; scripted callers need that parameter.
The foreign-tracks sweep runs in batches and resumes. It keeps progress in its
own table keyed to a hash of the resolved config, streams file enumeration instead
of loading everything, and prunes excluded folders while walking. Ships disabled.
Quieter warnings. An unconfigured provider is INFO, not WARNING — in one real
user log 91% of all WARNING lines were that single benign class.
Also fixed: the support bundle omitted rotated log files beyond the third, and the
Gunicorn worker timeout sat below the longest scheduler job's runtime.
Full backend suite: 6181 passed, 0 failed. Multi-arch (amd64 + arm64).