Skip to content

Add xGRIB 0.3.4.0 with GRIB generation and Windows fixes to master - #1417

Open
pob220 wants to merge 3 commits into
OpenCPN:masterfrom
pob220:catalogue/xgrib-0.3.3-master
Open

pob220 wants to merge 3 commits into
OpenCPN:masterfrom
pob220:catalogue/xgrib-0.3.3-master

Conversation

@pob220

@pob220 pob220 commented Sep 30, 2026 •

Copy link
Copy Markdown

Purpose

Add xGRIB 0.3.4.0 to master: an optional desktop GRIB plugin whose main addition is generating combined weather, wave and current GRIBs directly within OpenCPN. This candidate also includes the Windows icon corrections and subsequent Generate fixes reported in issue #4.

Disable bundled GRIB before enabling xGRIB, then restart OpenCPN. The catalogue entries require plugin API 1.21 and a matching platform ABI; the full suite also compiled against API 1.22.

What xGRIB adds to the standard GRIB workflow

The main addition is integrated GRIB generation. xGRIB retains the familiar timeline, overlays, cursor readouts and download tools, and adds a Generate GRIB dialog which creates a combined environmental forecast for the selected area and time window, then opens the resulting file directly in OpenCPN.

  • Choose the area, UTC start, forecast duration and time step, with independent weather, wave and current sources. For example, combine a weather forecast, a wave forecast and regional currents in one GRIB instead of preparing separate files outside OpenCPN.
  • Use global or regional providers, existing GRIBs and supported local current data. Weather options include GFS, HRRR, UKV, MET Norway, ICON-EU and ECMWF IFS/AIFS; current options include RTOFS, Marine.ie, Copernicus and separately supplied offline XTD tidal-current data. Some providers require credentials or user-supplied model data.
  • Optionally extend shorter-range forecasts to 15 days using explicitly selected fallback sources. Preferred records retain priority and each source keeps its native cadence; the generator reports actual component coverage.
  • Show file/decoded-data size estimates where supported and measured totals after generation, helping users choose a practical area and forecast length.

Windows Generate changes

  • Detect helper exit on Windows so completed or failed generation releases the dialog controls.
  • Terminate the Windows console helper reliably when cancelling, and handle process ownership safely during polling and completion events.
  • Show starting/running/cancelling status, PID and elapsed time, with timestamped dialog-construction checkpoints in opencpn.log.
  • Keep Windows builds on ecCodes' CMake/vcpkg package discovery. The generator still requires ecCodes; a manually written eccodes.pc is unnecessary.
  • Add RelWithDebInfo build/test presets and preserve debugging symbols when packaging that configuration.

The reported slow dialog opening remains unconfirmed. Construction checkpoints help distinguish remembered offline-XTD inspection from later download/generation delays. Windows debugging instructions cover helper reuse and Visual Studio symbols; replace the release-tag checkout in those instructions with git switch --detach fdd5330a20bdf53d3cfcfa16e87b2e439a37831a for this revision.

The earlier 0.3.4 fixes also correct icon bitmap depth/scaling, rebuild parameter controls after reopening generated output, restore saved toolbar visibility, balance busy cursors, and support desktop resizing. Parameter controls follow the records present in the loaded GRIB.

Master platform scope

The nine proposed production packages are:

  • Debian 12 x86_64 and arm64; Debian 13 x86_64.
  • Ubuntu 22.04 wx3.2 x86_64 and Ubuntu 24.04 GTK3 x86_64.
  • Flatpak 25.08 x86_64 and aarch64.
  • macOS Apple Silicon arm64 with wx3.2.
  • Windows x86 in-process plugin, requiring a 64-bit Windows OS for its separate x64 generator.

Android and native Windows x64 remain alpha-only and are excluded from this master PR. Android stock-production-APK acceptance and native Windows x64 release qualification remain separate.

Source and validation

Fixed source: fdd5330. The publication source differs only in the CI deployment parameter default.

Full release workflow: all 22 platform/API builds passed, together with the Windows dependency job and native OpenCPN 5.14.2 UI gate. The UI gate loaded the plugin, generated/reopened a 10-message test GRIB, exercised Wind and Current selections, and confirmed clean shutdown.

Additional validation:

  • Clean local Release preflight and RelWithDebInfo builds passed all 36 tests, functional GRIB merge/reopen checks, staged-helper checks and catalogue-archive checks. The user tested the installed fix in their normal Linux OpenCPN before this release run.
  • Process tests launch a helper from a path containing spaces and Unicode, cancel it, and verify its completion event and subsequent absence. Windows configure tests exercise ecCodes CONFIG discovery without pkg-config.
  • All 22 alpha package/metadata objects were publicly downloaded and SHA-256 verified; root metadata.xml matches each adjacent XML.
  • Nine production pairs were rehosted. Only root metadata changed to the production URL and installation guidance; every other payload entry, mode, link and file hash matched its alpha source.
  • All nine metadata files and their aggregate catalogue passed XSD validation. The full catalogue retained its four baseline schema errors with no additional errors.
  • Eight release-audit tests passed. The rebuilt 0.3.4.0 packages use new immutable download URLs.

Machine-readable publication audit (SHA-256 8bff7f5950de7f1bdf4769c7d762431db681109230d079cc799a0a32588e619f).

Production repository: pob220/xgrib-prod. Experimental packages remain in pob220/xgrib-alpha.

@rgleason

rgleason commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

This is not working for windows properly and needs to be fixed. IMHO

pob220/xgrib_pi#4

@pob220
pob220 marked this pull request as draft September 30, 2026 16:35
@pob220 pob220 changed the title Add xGRIB 0.3.3.0 as an optional desktop GRIB alternative in master Add xGRIB 0.3.4.0 as an optional desktop GRIB alternative in master Sep 30, 2026
@pob220

pob220 commented Sep 30, 2026

Copy link
Copy Markdown
Author

This is not working for windows properly and needs to be fixed. IMHO

pob220/xgrib_pi#4

Fixed.

@pob220
pob220 marked this pull request as ready for review September 30, 2026 17:27
@pob220 pob220 changed the title Add xGRIB 0.3.4.0 as an optional desktop GRIB alternative in master Add xGRIB 0.3.4.0 with GRIB generation and Windows fixes to master Oct 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants