github Screenly/Anthias v2026.09.0
2026.09.0

20 hours ago

Highlights

The device-facing changes worth knowing before you upgrade:

  • Uploads — large assets now transfer in chunks so they clear a proxy body limit (#3310), uploads and asset content stream instead of buffering (#3346), you can drop a file anywhere on the schedule page (#3334), and a failed upload shows a real reason (#3302).
  • /ws now requires a logged-in session when auth is enabled (#3324). This is the one change most likely to be felt: any client that connected to the websocket unauthenticated will stop working.
  • Backup/restore is scoped to a runtime whitelist behind a version guard (#3343).
  • OOM handling marks the right victim and points systemd's watchdog at a device that actually resets (#3337).
  • Upgrades purge superseded images (#3292); non-Pi SBCs are labelled by board name (#3330); black screen after a video is reduced (#3275).
  • Django 5.2.17, plus the usual grouped dependency bumps.

Validated with a pre-release burn-in across the full hardware matrix (Pi 2/3/4/5, x86, Rock Pi 4, NanoPi R3S) on this exact commit before tagging.


What's Changed

Other Changes 🔧

  • fix(upgrade): purge superseded Anthias images after an upgrade by @vpetersson-bot in #3292
  • feat(website): add free-software and Yodeck pages, expand the Raspberry Pi landing pages by @vpetersson-bot in #3294
  • chore(deps): bump sqlparse from 0.5.5 to 0.6.0 by @dependabot[bot] in #3295
  • feat(website): add a piSignage comparison page by @vpetersson-bot in #3296
  • feat(website): add updates and base-OS section to the Yodeck page by @vpetersson-bot in #3297
  • feat(emails): add MJML newsletter template built on the design tokens by @vpetersson-bot in #3293
  • fix(emails): stop the newsletter's design living in its own mj-head, and ship the MJML source by @vpetersson-bot in #3298
  • fix(emails): stop the newsletter's design living in its own mj-head by @vpetersson-bot in #3299
  • chore(deps): bump Django to 5.2.17 by @vpetersson-bot in #3301
  • feat(website): link the Screenly shop so visitors can buy a player by @vpetersson-bot in #3300
  • fix(upload): tell the operator why an asset upload failed by @mickzijdel in #3302
  • chore(deps): bump the github-actions group with 5 updates by @dependabot[bot] in #3305
  • chore(deps): bump alpinejs from 3.15.12 to 3.16.1 in the bun group by @dependabot[bot] in #3303
  • chore(deps): bump the github-actions group with 3 updates by @dependabot[bot] in #3314
  • chore(deps-dev): bump the python group across 1 directory with 13 updates by @dependabot[bot] in #3313
  • chore(deps): bump the bun group with 4 updates by @dependabot[bot] in #3312
  • chore(deps): bump the github-actions group with 4 updates by @dependabot[bot] in #3318
  • chore(deps-dev): bump the python group with 7 updates by @dependabot[bot] in #3317
  • chore(deps): bump the bun group with 3 updates by @dependabot[bot] in #3316
  • chore(deps): bump the github-actions group with 2 updates by @dependabot[bot] in #3323
  • chore(deps-dev): bump the python group with 2 updates by @dependabot[bot] in #3322
  • chore(deps): bump the bun group with 4 updates by @dependabot[bot] in #3321
  • feat(upload): send large assets in chunks so they clear a proxy body limit by @mickzijdel in #3310
  • fix(ansible): read gathered facts via ansible_facts by @vpetersson-bot in #3327
  • fix(ui): reset the Add asset modal on every open by @vpetersson-bot in #3329
  • Size the asset table's actions column from its content by @vpetersson-bot in #3333
  • feat(ws): require a logged-in session for /ws when auth is enabled by @vpetersson-bot in #3324
  • fix(device): label non-Pi SBCs by board name instead of "Generic aarch64 Device" by @vpetersson-bot in #3330
  • chore(deps): bump the bun group with 4 updates by @dependabot[bot] in #3338
  • chore(deps): bump the github-actions group with 5 updates by @dependabot[bot] in #3340
  • chore(deps): bump anyio from 4.13.0 to 4.14.2 by @dependabot[bot] in #3342
  • fix(backup): scope backup/restore to a runtime whitelist with a version guard by @vpetersson-bot in #3343
  • chore(deps-dev): bump the python group, keeping djangorestframework-stubs by @vpetersson-bot in #3341
  • chore(deps-dev): bump the python group across 1 directory with 7 updates by @dependabot[bot] in #3344
  • fix(oom): mark the right OOM victim, and point systemd's watchdog at a device that actually resets by @vpetersson-bot in #3337
  • fix(api): stream file uploads and asset content instead of buffering them by @vpetersson-bot in #3346
  • fix(webview): reduce black screen during image-fetch after video by @Glassto in #3275
  • feat(upload): take a file dropped anywhere on the schedule page by @vpetersson-bot in #3334
  • fix(processing): correct the board-identification message and the codec-map claims by @vpetersson-bot in #3335
  • fix(upload): answer a refused file drop, and leave an open Add modal alone by @vpetersson-bot in #3347
  • chore(release): bump version metadata to 2026.09.0 by @vpetersson-bot in #3348

New Contributors

Full Changelog: v2026.08.2...v2026.09.0

Don't miss a new Anthias release

NewReleases is sending notifications on new releases.