mirror of
https://github.com/screentinker/screentinker.git
synced 2026-08-13 13:53:12 -06:00
Changelog for 1.9.29-rc3
This commit is contained in:
parent
30a71c1319
commit
de161bf43a
52
CHANGELOG.md
52
CHANGELOG.md
|
|
@ -1,5 +1,57 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 1.9.29-rc3
|
||||||
|
|
||||||
|
### Fixed — autorun.zip could not be opened by a player
|
||||||
|
Reported from a real automated deployment: the rc2 archive reached the player and was rejected as
|
||||||
|
invalid. Two causes, both ours.
|
||||||
|
|
||||||
|
- **The archive must be STORED, not compressed.** The player bootstrap extracts `autozip.brs` by
|
||||||
|
itself before any script runs, and `roBrightPackage` supports a specific set of methods, of which
|
||||||
|
"no compression" is the universally safe one. Both builders now store — and the server-side
|
||||||
|
package builder had been using maximum deflate, so **every self-update package it produced would
|
||||||
|
have failed the same way**, silently and in the field.
|
||||||
|
- **`roBrightPackage`, not `roUnzip`**, is the supported reader. Converted in `autozip.brs` and in
|
||||||
|
the self-update path.
|
||||||
|
|
||||||
|
Both builders now assert the property instead of trusting the flag: the build script refuses a
|
||||||
|
compressed member, and a test walks the archive's local file headers. A compressed package uploads,
|
||||||
|
downloads and deploys perfectly and only then fails to open, which reads as a broken deployment
|
||||||
|
rather than a broken zip.
|
||||||
|
|
||||||
|
`autozip.brs` also adopts the shipped volume-discovery pattern — probe `USB1:`/`SD:`/`SSD:`/`FLASH:`
|
||||||
|
for the archive rather than guessing, since a player may boot from internal flash.
|
||||||
|
|
||||||
|
### Fixed — muting never reached a YouTube item
|
||||||
|
A YouTube item is a cross-origin iframe, so `el.muted` reaches nothing. The two browser-family
|
||||||
|
players failed in opposite directions: the web player consulted autoplay policy and nothing else, so
|
||||||
|
an item muted in the admin console **played with sound** and a wall follower blared alongside its
|
||||||
|
leader; Tizen hardcoded `mute=1`, so YouTube there was **permanently silent** and no toggle could
|
||||||
|
change it. Android was already correct. The rule now lives once in `server/lib/media-mute.js`, and
|
||||||
|
the unmute prompt no longer appears on an item an operator deliberately muted.
|
||||||
|
|
||||||
|
### Fixed — screenshots reported success while sending blank frames
|
||||||
|
Capture marked itself successful because the draw did not throw. On a hardware plane
|
||||||
|
`drawImage(video)` returns a fully transparent image and throws nothing, so the dashboard showed a
|
||||||
|
dead screen while the panel played perfectly. Capture is now proven by an alpha probe, so a genuine
|
||||||
|
fade-to-black still reads as captured.
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- **BrightSign native synchronisation**, wired end to end and chosen per group, reusing the existing
|
||||||
|
leader election. A group whose leader is offline falls back to the clock protocol rather than
|
||||||
|
waiting for an announcement that never comes.
|
||||||
|
- **Real telemetry and hardware identity** — temperature, player storage, model, OS version, serial
|
||||||
|
and output index — instead of a block of nulls and a `wifi_ssid` of "Web Player" on a PoE
|
||||||
|
appliance.
|
||||||
|
- **Offline content caching** with correct range-request handling, and a **package self-update**
|
||||||
|
whose version is stamped into `autorun.brs` at build time — unstamped, a player applies an update,
|
||||||
|
still reports the old version, and is offered it forever.
|
||||||
|
- **Command parity**: real `reboot`, real display blanking, and `set_volume` on BrightSign.
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
- The `user_agent` fallback in BrightSign detection. `devices` has no such column, so the branch was
|
||||||
|
unreachable and passed only in a test that fabricated the field.
|
||||||
|
|
||||||
## 1.9.29-rc2
|
## 1.9.29-rc2
|
||||||
|
|
||||||
Fixes for three things rc1 only revealed once it was deployed and pointed at real hardware.
|
Fixes for three things rc1 only revealed once it was deployed and pointed at real hardware.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue