Skip to content

BowEcho v0.28.1

Choose a tag to compare

@github-actions github-actions released this 02 Jul 03:02
· 855 commits to main since this release

BowEcho v0.28.1 — The Fast One

A quick performance release, one day after v0.28.0. Every fix here was
diagnosed to a specific line by the engineering audit and shipped with a
regression test.

The headline fix

Dragging the map with the mPING or SPC reports layer on no longer
lags.
The cause was never the number of reports: every report's
visibility check recomputed the loop-timeline reference time, which
re-hashes every loaded loop frame — about a hundred full-history hashes
per repaint while dragging. The reference time is now computed once per
frame. If you gave up on the reports layers, try them again.

More speed

  • The loop-timeline cache no longer re-hashes your loop history at all:
    history mutations bump a generation counter that the compiler forces
    every mutation path to go through, and the cache is per-pane so panes
    stop evicting each other's entries.
  • GLM lightning on long loops: finding the flashes for a frame is now a
    binary search instead of a scan of the whole loop window — week-long
    loops stop iterating millions of flashes per repaint.
  • Several radars watching the same site (main view + panes + overlays)
    now share one realtime chunk listing instead of each issuing their
    own, with a sub-second cap so live freshness is untouched.
  • Plain model soundings skip a parcel-physics computation whose result
    was only ever used by the hail-environment panel.

QOL

  • Scroll zoom speed is now yours to set (Settings → map section,
    50–300%). The new default zooms half again faster than before; 100%
    restores the classic feel exactly. Cursor-anchored zoom unchanged.

Validation

  • cargo test --workspace — 1,259 tests, 0 failures
  • cargo fmt --all --check / cargo clippy --workspace --all-targets -- -D warnings
  • Cache invalidation is mutation-tested: removing a generation bump
    makes the suite fail.

Credits

  • Radar data: NOAA NEXRAD; EUMETNET OPERA and participating
    national meteorological services (ORD, CC BY 4.0); SMHI; FMI; DWD;
    DMI; CHMI; SHMÚ; GeoSphere Austria; Estonian Environment Agency; JMA;
    Italy DPC with ARPA Piemonte and ARPA Lombardia; Taiwan CWA;
    Australia BOM (via NCI). mPING reports courtesy NOAA NSSL and the
    University of Oklahoma.
  • GURT V3 color tables by ambient330 (MIT). GBW Overlay by
    grayskieswx (YouTube).

Every asset ships with a .sha256 checksum; Windows binaries are
code-signed.