What's new
Schedules page redesign (#225)
Replaces the per-hour load histogram with a duration-driven horizontal timeline, where each block's width tracks the estimated backup duration. Day view gets a "concrete" treatment for the already-completed portion of each job, a bright current-time line, larger tooltips, uppercase job/client labels, and a unified blue palette to match the dashboard. Big thanks to @c0dr1ver for the design and implementation.
Bug fixes
- Branding upload broken (#238) — uploading a navbar icon, login logo, or app icon failed with
Data too long for column 'value'. Migratedsettings.valuefromTEXT(65 KiB) toMEDIUMTEXT(16 MiB). - CentOS / RHEL agent stuck offline (#237) — Cloudflare's bot rules block Python's default
Python-urllibUser-Agent, so a BBS install fronted by Cloudflare returned 403 to every agent request. Agent now sendsUser-Agent: BBS-Agent/<version>. If you have stricter Cloudflare WAF/Bot-Fight rules, add a Page Rule (or WAF skip rule) for/api/agent/*. - Windows / macOS backups always flagged "completed with warnings" (#236) — agents tripped
had_warningson every backup because OS-level lockouts on system files (NTUSER.DAT, SIP-protected caches, iCloud Mobile Documents) were treated as actionable warnings. Added the locale-independent error codes ([WinError 5],[Errno 13],[Errno 1],[Errno 11]) to the agent's routine-warnings list. - Dashboard "Errors (24h)" tile out of sync with linked log page (#235) — the count summed log errors + failed jobs + alerts but the linked
/logpage only shows server-log entries, so the count and the linked page could disagree. Count now matches what/logshows. Operational alerts remain visible on/notificationsand the navbar bell.
Other
- Server-side job finalize-race logging (#227 follow-up) — when the agent's stall detector marks a running server-side job as failed mid-flight, the scheduler now writes a
warningrow toserver_logso admins can see it in the activity log, not just injournalctl. Credit @SAY-5 (PR #228) for the diagnostic improvement. - Trimmed dead histogram computation from
ScheduleControllerafter the timeline view replaced it.
Versions
- Server: 2.52.0
- Agent: 2.29.11
Migration
Adds migration 082_settings_value_mediumtext.sql. Runs automatically via bbs-update.