Skip to content

Releases

v0.0.6

Choose a tag to compare

@github-actions github-actions released this 30 Oct 03:13

v0.0.6 — irreversible JPEG 2000 (9/7)

  • GRIB2 5.40 now decodes both reversible 5/3 and irreversible 9/7: accepts
    qmfbid=0 and QCD scalar-derived/explicit styles (1/2), applies the reference
    decoder's half-LSB tier-1 reconstruction and 0.5*stepsize dequantization,
    then a float32 inverse 9/7 transform
  • output matches OpenJPEG sample for sample: fixtures generated via Pillow
    (8/16-bit, 0-3 decomposition levels, odd sizes) plus 82 local codestreams;
    unknown transforms/quantization styles still fail loudly
  • lifting is architecture-deterministic: explicit float32 rounding and
    math.Ldexp for the power-of-two step factor; the macOS arm64 CI job that
    caught a one-LSB FMA difference is green again

Verification: go build/vet/test ./... and the wasm suite pass on go1.27.1 with
CGO_ENABLED=0; CI (ubuntu/windows/macos, wasm target, generated files) and
CodeQL are green on this commit. Release assets: gribdump for linux/amd64,
linux/arm64, linux/loong64, windows/amd64 and darwin/arm64.

v0.0.5

Choose a tag to compare

@github-actions github-actions released this 25 Oct 02:55

v0.0.5 — PNG 5.41 reader/writer, wasm tests in CI, error-text cleanup

  • PNG 5.41: grayscale 1/2/4/8/16-bit decoding (exact sub-byte inversion), and
    gribw.SetPNG encoding at the same depths; pre-encoded payloads still go
    through SetDataSection
  • PNG cross-checks: encoder-independent fixtures from pypng, Pillow and the
    sister library simple-png, plus 500 randomized SetPNG outputs decoded by
    simple-png; FuzzPNG added
  • wasm: coordinate anchors are per platform (bit-exact on recorded
    amd64/darwin-arm64, sampled 1e-9 degree checks elsewhere) and CI now runs the
    whole wasm suite under Node instead of only building
  • error text: wrapped sentinels no longer print "grib: grib:"; truncated phase
    labels and "the the" comments repaired

Verification: go build / go vet / go test ./... green on go1.27.1 with
CGO_ENABLED=0; wasm suite green in CI. Release assets: gribdump for
linux/amd64, linux/arm64, linux/loong64, windows/amd64 and darwin/arm64.

v0.0.4

Choose a tag to compare

@github-actions github-actions released this 24 Oct 11:50

v0.0.4 — WebP image payloads, cleaner errors, gribdump -webp

  • new local-use template 5.49152 carries a WebP image payload verbatim:
    Message.WebP / WebPInfo / WebPImage on the reader, gribw.SetWebP on the
    writer and gribdump -webp to extract; Values reports pack.ErrNotNumeric
  • dependency: pure-Go simple-webp v0.2.7 (no cgo); go.mod now requires 1.27.1
  • error text: wrapped sentinels no longer double the "grib: grib:" prefix;
    truncated phase labels and "the the" comments repaired
  • docs: bilingual README covers the WebP payload, the JPEG 2000 subset and the
    WebP extractor; docs/eccodes-5.0-evidence.md title restored

Verification: go build / go vet / go test ./... green on go1.27.1 with
CGO_ENABLED=0; GOOS=js GOARCH=wasm build clean; gribdump round-trips a WebP
payload byte for byte. Release assets: gribdump for linux/amd64, linux/arm64,
linux/loong64, windows/amd64 and darwin/arm64.

v0.0.1-rc1 - first release candidate

Choose a tag to compare

@XC-Zero XC-Zero released this 19 Oct 15:30
Pure-Go GRIB edition 1 + 2 reader/writer: multi-template Walk engine generated
from the official WMO CSVs, pack decoders 5.0/5.2/5.3/5.4/5.40(JPEG 2000)/5.42,
grid coordinates (incl. 3.20 polar stereographic and 3.30 Lambert conformal),
section 6 bitmap, gribw/gribw1 writers, gribdump CLI and a WASM viewer build.
Verified bit-level against eccodes on real corpora.