Skip to content

Releases: FahrenheitResearch/rusty-weather

Rusty Weather v0.4.1

Choose a tag to compare

@FahrenheitResearch FahrenheitResearch released this 16 Jul 09:52

Sounding Studio

  • Fully movable and resizable SHARPpy panels, with persistent Stretch/Fit sizing and Dock/Float presentation.
  • Customize the three diagnostic boards cell by cell: reorder, replace, remove, split sections, or insert the current Formula Lab result.
  • Independent sounding typography with Space Grotesk, clean sans, and technical mono presets plus adjustable text scale.
  • One shared presentation workspace across model, observation-adjusted, RAOB, and imported-file soundings; layout and table choices survive restarts.

Science and reliability

  • Updated to the corrected native sharppyrs renderer, including native MPL support, broader SHARPpy numerical parity, and the corrected squared streamwiseness formulation (ratio² × 100).
  • Formula Lab table entries now retain content-aware formula identity and exact store provenance, so renamed outputs or reused labels cannot silently change the science.
  • Sounding layout persistence preserves unknown future settings across upgrades and downgrades.

All six platform bundles are built by the signed release workflow and include SHA-256 checksum files.

Rusty Weather v0.4.0

Choose a tag to compare

@github-actions github-actions released this 14 Jul 18:08
d656e5b

What's Changed

Full Changelog: v0.3.0...v0.4.0

Rusty Weather v0.3.0

Choose a tag to compare

@github-actions github-actions released this 11 Jul 01:01
8e70a88

Rusty Weather v0.3.0 expands the desktop app from a forecast-store viewer into a broader model-processing and research workflow.

Highlights

Formula Lab

  • Build safe, unit-aware custom diagnostics from equations.
  • Evaluate against any compatible model in rw-store or directly against raw WRF files.
  • Raw WRF mode exposes geometry, map factors, physical heights, and exact time axes for horizontal, vertical, and temporal calculus.
  • Formula results immediately become plot-ready in-memory fields with a fitted neutral color scale; recolor or rescale without rerunning.

Expanded model and archive ingest

  • Import raw or postprocessed WRF NetCDF, ordinary NetCDF, and GRIB Edition 1.
  • Browse NSF NCAR GDEX/THREDDS catalogs in-app with lazy navigation, cancellation, caching, resumable downloads, NCSS subsetting, and importer handoff.
  • All-Rust ERA-20C/GRIB1 streaming import includes ECMWF table 128, Gaussian latitude, scan normalization, and global longitude handling.

WRF processing and exact time axes

  • Pins WRF-Rust v0.2.37 at 2550d4e2, retaining the designated v0.2.36 science line while adding Formula Lab and reader fixes.
  • Adds fast-core, default, heavy/ECAPE, raw-extra, and custom processing profiles.
  • Preserves minute, sub-hour, and irregular WRF lead times through browsing, maps, soundings, Formula Lab, and exports.
  • Fixes NetCDF4/HDF5 scalar fixed-string START_DATE decoding and adds a validated XTIME recovery path.
  • Rotates projected WRF winds before earth-relative canonical or kinematic use and withholds ambiguous products when required metadata is absent.

Plotting and UI

  • Adds bounded native batch rendering with product/timestep/domain selection, progress, cancellation, and per-item errors.
  • Adds common pressure-level maps backed by stored isobaric volumes.
  • Color Tables now supports colors-only application, full-preset application, and fitting a palette scale to the finite displayed range.
  • Persists WRF product settings, custom domains, storage paths, and color-table bindings.

Reliability

  • Multi-file imports are staged, validated, and published only after the complete run succeeds.
  • Source identity and revision are checked before publication to prevent mixed or partially written runs.
  • Import, Formula Lab, batch-render, and diagnostic work is bounded and isolated from the egui thread.
  • Satellite manifest/path validation and worker-start failure handling are hardened.

Storage and compatibility

  • The .rws binary codec remains version 1, and existing rw-store.run.v1 stores remain readable without migration.
  • Exact-time runs use additive rw-store.run.v2 and rw-store.hour.v2 metadata. Older v0.2.3 readers intentionally reject those runs rather than displaying incorrect forecast hours.
  • Source builds require Rust 1.92.

Current limitations

  • Generic local GRIB import currently supports GRIB1, not GRIB2.
  • GRIB-backed GDEX NCSS responses cannot yet be auto-imported; download the supported full GRIB1 file instead.
  • Production batch rendering is not yet enabled for exact-time v2 runs; direct viewing, Native Plot, soundings, and Formula Lab remain available.
  • Store-backed Formula Lab rejects calculus requiring missing geometry; use raw WRF mode for the complete calculus feature set.

Rusty Weather v0.2.3

Choose a tag to compare

@github-actions github-actions released this 04 Jul 21:51

Full Changelog: v0.2.2...v0.2.3

Rusty Weather v0.2.2

Choose a tag to compare

@github-actions github-actions released this 29 Jun 21:04

Full Changelog: v0.2.1...v0.2.2

Rusty Weather v0.2.1

Choose a tag to compare

@github-actions github-actions released this 29 Jun 19:56

Full Changelog: v0.2.0...v0.2.1

Rusty Weather v0.2.0

Choose a tag to compare

@github-actions github-actions released this 29 Jun 19:29

Full Changelog: v0.1.0...v0.2.0

rusty-weather v0.1.0

Choose a tag to compare

@FahrenheitResearch FahrenheitResearch released this 11 Jun 01:44

First public release of the all-Rust weather platform.

What's here

  • rw-store — per-hour self-contained store: windowed 2D tile reads, column-chunked 3D volumes (0.19 ms warm soundings), build-hash provenance in every file
  • rw-ingest — HRRR GRIB -> store: ~14 s/hour (all 29 derived products precomputed), ECAPE family behind --heavy; peak RAM <4 GB; typed progress events + cancel tokens; profile presets (full|sounding|view) with calibrated size estimates (±5%)
  • rw-sat — continuous GOES ABI ingest: live follow with rolling time-window store, 8 composite recipes + 16 band palettes, pure-Rust NetCDF/HDF5 (no C deps)
  • rw-ui — embeddable egui panels (run browser, field viewer with production colortables, sharprs skew-T soundings, download panel with live estimates, satellite follow + loop player); no eframe dependency, panels mount into any host Ui
  • rusty-weather-ui — the desktop app over those panels
  • Benchmarked: 3 forecast hours x ~250 products rendered + stored in ~57 s warm-cache (pixel-identical to the original rustwx render lane)

Consumers note: rw-sat dependents MUST add the [patch.crates-io] hdf5-reader line — see README.

983 tests. MIT.