• v1.31.0 8d079a2766

    v1.31.0
    All checks were successful
    CI / Rust clippy (push) Successful in 1m51s
    CI / Rust fmt (push) Successful in 1m16s
    CI / Rust test (push) Successful in 6m13s
    CI / UI (SvelteKit) (push) Successful in 1m16s
    CI / Security Audit (push) Successful in 1m21s
    docs / build (push) Successful in 36s
    Release / Docker Multi-Arch (push) Successful in 23m39s
    Release / Binary aarch64-unknown-linux-gnu (push) Successful in 11m45s
    Release / Binary x86_64-unknown-linux-gnu (push) Successful in 10m12s
    Release / Linux .deb + .rpm (amd64) (push) Successful in 2m7s
    Release / Linux .deb + .rpm (arm64) (push) Successful in 1m56s
    Release / Linux AppImage (aarch64) (push) Successful in 27s
    Release / Linux AppImage (x86_64) (push) Successful in 26s
    Release / Cosign sign artifacts (push) Successful in 28s
    Release / Forgejo Release (push) Successful in 36s
    Stable

    dvb-projekt released this 2026-09-16 11:55:46 +00:00 | 249 commits to main since this release

    The dvb-WarpTune items marked ¹ were already part of the 1.30.1 build (that
    patch release documented only its security fix); this is their first
    changelog entry.

    Security

    • Dependencies: rustls 0.23.41 → 0.23.45 (RUSTSEC-2026-0285: TLS 1.3
      handshake messages were accepted across encryption-level boundaries; the
      transcript stayed authenticated, so no handshake could be forged) together
      with rustls-webpki 0.103.15 and aws-lc-rs 1.18.1 / aws-lc-sys 0.45.0;
      chacha20 0.10.0 → 0.10.2 (0.10.0 was yanked).

    Added

    • dvb-WarpTune: Avalon Q ¹ (kind = "avalon"). Telemetry over the
      cgminer API (estats / summary / pools): chip average and maximum
      temperature, the MM's fan target, the mode's power cap, headline watts,
      hashrate, shares and stratum user, presented as an AxeOS-style device
      whose operating point is the reported work mode. The ladder is the three
      work modes Eco / Standard / Super and the only write is ascset workmode;
      failsafe 100 °C, write verification 60 s, settle 180 s, judged on the
      15-minute hashrate. dvb-warppool-tune probe <host> --kind avalon shows
      mode, temperatures, power and the mode table.
    • dvb-WarpTune ships in every release format ¹: .deb/.rpm (usr/bin),
      AppImage, the Docker image (/usr/local/bin) and the macOS tarball and
      .app (Contents/Resources/). v1.28.0–v1.30.0 carried it as source only.
      Nothing starts it by itself; scripts/setup-warptune.sh --binary <path>
      installs it from a release tarball without a Rust toolchain.
    • dvb-WarpTune: any ASIC model works when the device publishes its own
      option list (NerdOS /api/system/asic): the ladder is built from the
      device's frequencies and default point, and the expected hashrate uses
      the firmware's reported smallCoreCount instead of a table on our side
      (the BM1370 factor stays as the fallback for older firmwares). First
      target: the BM1373 boards NerdOS v1.1.0 supports. The vendor table is
      still BM1370-only, so ESP-Miner boards with other chips keep their
      "unsupported ASIC" message, now naming the missing option list.

    Changed

    • dvb-WarpTune: a point changed outside the regulator ¹ — an Avalon
      work-mode switch, a frequency edit in the AxeOS web UI — now restarts the
      settle and judge windows like the regulator's own writes do, is journaled
      at once and clears the proposal memory. Before, the hashrate-vs-expected
      guard compared the new point against the old point's averaged hashrate;
      four minutes after a manual Standard → Super switch the dry run booked
      "87 % of expected (urgent)" and live control would have taken every
      manual change straight back. A freshly started regulator also waits one
      judge window before its first hashrate verdict.
    • scripts/setup-warptune.sh ¹ signs the binary ad hoc with the fixed
      identifier com.dvb.warptune (macOS keys its Local Network grant on the
      code identity; a rebuild used to leave the agent with "No route to host"
      for every miner until re-allowed) and probes each miner with its
      configured kind, so an Avalon no longer shows as "not reachable".
    • dvb-WarpTune: a target_temp_c below the firmware's own fan target + 2 °C
      is now clamped to that floor (in every mode, Eco's extra margin included)
      instead of only warned about. Below it the fan PID holds the chip at its
      own target by slowing the fan while the regulator throttles, so the chip
      never cools and the regulator walks the whole ladder down; a live Gamma
      with fan target 60 °C against a 58 °C config went 640 → 500 MHz at a
      constant 60 °C before the test was stopped. The floor never exceeds the
      overheat clamp (overheat − 3 °C); when the fan target leaves less room
      than that, a note asks for a lower fan target on the device.

    Fixed

    • Build: proc macros and build scripts are no longer stripped in the release
      profile ([profile.release.build-override] strip = false). macOS 27's
      dyld refuses a stripped proc-macro dylib ("mis-aligned LINKEDIT string
      pool", seen on sqlx-macros), which broke every release build on a
      Mac after the OS update. Shipped binaries stay stripped; the Linux
      reproducible build is unaffected.
    • Admin → Health node card and /api/health: network.headers and the
      initial-block-download flag ¹ were read once at daemon start and never
      again — after two days both reference pools showed the header count 270
      blocks behind the height while the nodes were at the tip. The 30-second
      node poll now refreshes both.
    • dvb-WarpTune (Avalon) ¹: the hashrate guard judged steps on cgminer's
      since-boot average, which lags for hours after a mode switch (twelve hours
      of Super followed by Eco still read 89 TH/s; an Eco → Super step would have
      shown 59 % of expected and been taken back). Steps are judged on the
      15-minute window now; the since-boot figure is only shown by probe.

    dvb-WarpPool v1.31.0 — Downloads

    Docker

    git.warppool.org/dvb-projekt/dvb-warppool:v1.31.0 (multi-arch amd64+arm64, ohne v-Präfix)

    Native packages

    • Linux .deb: amd64 + arm64 → apt install ./dvb-warppool_*.deb
    • Linux .rpm: amd64 + arm64 → dnf install ./dvb-warppool-*.rpm
    • Linux AppImage: x86_64 + aarch64 portable
    • Linux tarballs: x86_64 + aarch64 for manual installs
    • macOS .dmg: added shortly after publish (built separately) — or build from source
    • Windows .msi: paused since the forge migration (no Windows runner yet)

    Signatures

    • SHA256SUMS + cosign bundle (SHA256SUMS.bundle, project key)
    • SBOM (SPDX) for all dependencies

    Verify (project public key cosign.pub in the repo root):

    cosign verify-blob \
      --key cosign.pub \
      --bundle SHA256SUMS.bundle \
      SHA256SUMS
    sha256sum --check SHA256SUMS
    

    First-time setup: run dvb-warppool-setup for the first-run wizard.

    Downloads