Skip to content

v0.24.0

Latest

Choose a tag to compare

@github-actions github-actions released this 04 Oct 23:16
· 34 commits to main since this release
701db43

What's Changed

  • Accept the spec object the MCP tools return as a spec argument (#317) by @philliphoff in #641
  • Test polyline queries segment by segment, not by the vertex envelope (#555) by @philliphoff in #640
  • Map S-57 HORWID to horizontalWidth (#638) by @philliphoff in #639
  • Link a bridge collection's lights to its Bridge through StructureEquipment (#618) by @philliphoff in #642
  • Draw and query multi-part curves part by part (#643) by @philliphoff in #644
  • Fill, outline, label and query multi-surface features part by part (#643) by @philliphoff in #645
  • Emit a multi-part Bridge for bridge collections whose members don't join (#643) by @philliphoff in #646
  • Link a bridge collection's signal stations to its Bridge by @philliphoff in #647
  • Render visual-regression goldens at Standard by default (#357) by @philliphoff in #648
  • Place station glyphs in spherical Web Mercator; cover headless station rendering (#191) by @philliphoff in #649
  • Render rotated viewports on the headless composite path (#578) by @philliphoff in #651
  • Keep screen-relative symbols upright on a rotated display (#652) by @philliphoff in #653
  • Make pattern-only areas pickable (#604) by @philliphoff in #654
  • Ship XML documentation in every NuGet package (#656 chunk A) by @philliphoff in #657
  • Document the Features, Portrayals and ExchangeSets packages (#656 chunk B) by @philliphoff in #658
  • Document the remaining packages and drop every 1591 opt-out (#656 chunk C) by @philliphoff in #659
  • Publish the full API reference and package READMEs on the docs site (#656 chunk D) by @philliphoff in #662
  • Make coverage extents' native CRS explicit and reproject where degrees are needed by @philliphoff in #660
  • Fix stale type names and retired sections in the docs and READMEs (#656 chunk E) by @philliphoff in #663
  • Reject catalogues missing required elements with a clear XmlException (#656) by @philliphoff in #664
  • Open datasets and exchange sets from asset sources in the facade (#656 F-API) by @philliphoff in #665
  • Add a guide to loading datasets from files, sources and exchange sets (#656 F1) by @philliphoff in #666
  • Dataset collections: a Library of indexed datasets, map coverage, lazy loading and NOAA downloads (#655) by @philliphoff in #661
  • Add a guide to reading S-100 Part 15 protected exchange sets (#656 F2) by @philliphoff in #668
  • Remember exchange sets in File > Open Recent (#655, slice 7) by @philliphoff in #667
  • Report a wrong hardware ID as DatasetDecryptionException naming the dataset (#656) by @philliphoff in #669
  • Treat S-111 station-series speeds as knots (#656) by @philliphoff in #671
  • Add a guide to reading each product's data; lead typed models with usage (#656 F3) by @philliphoff in #672
  • Add the USACE Inland ENC feed to the Library (#670, slice 1) by @philliphoff in #673
  • Add Validate() for facade datasets and a custom catalogues and validation guide (#656 F4) by @philliphoff in #674
  • Curated known-sources list and Add Online Catalogue directory (#670, slice 2) by @philliphoff in #675
  • Replace obsolete TextBox.Watermark and fail the build on XAML warnings by @philliphoff in #677
  • Link the developer guides from the landing pages (#656 F-links) by @philliphoff in #676
  • Add community chartcatalogs lists to the Library, with bounds after download (#670, slices 3–4) by @philliphoff in #678
  • Add online catalogues by URL, recognised by their root element (#670, slice 5) by @philliphoff in #679
  • Add the S-100 feed format for publishing datasets to other machines (#680, slice 1) by @philliphoff in #681
  • Add s100 feed serve to publish datasets to other machines (#680, slice 2) by @philliphoff in #682
  • Add S-100 feeds as a Library source in the viewer (#680, slice 3) by @philliphoff in #683
  • Add s100 feed export to write a static S-100 feed (#680, slice 4) by @philliphoff in #684
  • Library panel UX refinement (vocabulary, rows as map legend, tree status, bulk bar, shared feeds) by @philliphoff in #687
  • Library panel v2: sizing and rough edges by @philliphoff in #688
  • Add online catalogue: one three-step wizard with Back by @philliphoff in #689
  • Library map taps: guard stray clicks, select without re-listing, thinner outlines by @philliphoff in #690
  • Fix pan/zoom lag that grows with the number of loaded datasets by @philliphoff in #692
  • Disk caches: enforce size caps from an in-memory LRU index by @philliphoff in #693
  • Memoise overscale-curtain regions across zoom steps by @philliphoff in #695
  • Library: local collection manifests (*.s100collection.json) by @philliphoff in #696
  • Skip coarse-cell tiles hidden by a finer cell (#691) by @philliphoff in #697
  • Make tiled base-plane caches device-scale aware; read-only off-screen captures by @philliphoff in #699
  • Library: NOAA S-102 on AWS as a remote S-100 catalogue source (#685, slice 1) by @philliphoff in #700
  • Rename the viewer to "SoundCharts: S-100 Viewer" by @philliphoff in #698
  • Library: NOAA S-102 at scale — summarised updates, update bulk action, area outlines (#685, slice 2) by @philliphoff in #701
  • Library: NOAA S-111 forecasts — model rows, new runs, Expired (#685, slice 3) by @philliphoff in #702
  • Timeline: Now marker and button for forecasts (#685, slice 4) by @philliphoff in #703
  • Library: S-111 model domains, S-104 pilot, S-102/S-111 pairing (#685, slice 5) by @philliphoff in #704
  • Timeline: per-product time limits, stepping at any sample count, Now follows the clock (#706) by @philliphoff in #714
  • MCP: Timeline state, view time, dataset state, notifications, test clock (#715 slice 1) by @philliphoff in #716
  • MCP: read the Library — sources, items, details, known sources (#715 slice 2) by @philliphoff in #717
  • MCP: change the Library — add, refresh, act, remove, await idle (#715 slice 3) by @philliphoff in #718
  • Timeline: Live/Pinned modes, now on every timeline, readout, status line, map stamp (#713) by @philliphoff in #719
  • Timeline: size-honest gaps, axis labels, zoom and presets, step menu, data jumps, keyboard (#708) by @philliphoff in #721
  • Timeline: layer time in the dataset list, loading state, no-data opens the list (#709) by @philliphoff in #722
  • Timeline: lanes per layer, In map view filter, collapse to strip (#710) by @philliphoff in #723
  • Viewing groups: hide an instruction when any of its viewing groups is hidden by @philliphoff in #724
  • Timeline: Library-known bands and Library ↔ Timeline actions (#711) by @philliphoff in #725
  • Timeline: Time HUD on the map and the dock toggle (#712) by @philliphoff in #727
  • S-111: spec-faithful, zoom-aware current arrows for grids and meshes by @philliphoff in #726
  • Timeline: forecast runs for Library tiles; issue time from the data (#720) by @philliphoff in #729
  • Timeline/Library: run times follow the user's Local/UTC setting (#730) by @philliphoff in #732
  • Viewer MCP: select_dataset picks a Datasets row and inspector tab by @philliphoff in #734
  • Render: don't seam-wrap viewports wider than one world by @philliphoff in #736
  • Validation: stop S-102/S-104/S-111 false positives on NOAA production data by @philliphoff in #737
  • S-101: normalise inverted DataCoverage display-scale pairs by @philliphoff in #739
  • S-57 validation: report source data, not translation artefacts by @philliphoff in #741
  • S-98: S-104 band over S-57 ENC fills, under line work; band partly transparent by @philliphoff in #742
  • Viewer MCP: set_viewport accepts a scale denominator (#740) by @philliphoff in #743
  • Basemap: full-resolution Natural Earth land, tiled with levels of detail (#731) by @philliphoff in #746
  • Viewer: apply zoom limits at the viewport's own latitude (#744) by @philliphoff in #747
  • Test: native S-101 cells rasterise non-empty tiles at an in-band scale by @philliphoff in #748
  • S-125: portray aids to navigation with the S-101 AtoN rules by @philliphoff in #750
  • Visual regression: ink-scaled tolerances for sparse snapshots by @philliphoff in #751
  • Label declutter: keep a feature's co-anchored labels together (S-411 egg code) by @philliphoff in #752
  • Visual regression: fix missing S-111 arrows race; ink-scaled S-111 check by @philliphoff in #753
  • Viewer: S-101 keeps its depth shading beside S-102; open S-100 5.2 exchange sets whose signatures omit dataStatus by @philliphoff in #754
  • Add the soundcharts.app landing page by @philliphoff in #755
  • S-128: draw product coverages as outlines only so they don't bury the ENC by @philliphoff in #756
  • Point docs links at soundcharts.app; add Website and Documentation to About by @philliphoff in #766
  • Pipelines tests: make overlay steady-state allocation check deterministic by @philliphoff in #765
  • Site: light-theme shot set with a theme toggle; READMEs use the site captures by @philliphoff in #767
  • CLI: clean validate summary markup; S-57 and station renders honour --basemap by @philliphoff in #769
  • S-111: put station/mesh arrows on the same S-98 plane as grid arrows by @philliphoff in #770
  • Parse S-100 date/times with the Iso8601Text grammar by @philliphoff in #771
  • S-411: fix NIC Arctic wedges (axis order, polar rings, seam crossings) by @philliphoff in #772
  • Tiles: keep a cell's line work inside its display band when the snapped band is past the cap (#761) by @philliphoff in #775
  • Viewer: draw chart data at every world copy in view (#773) by @philliphoff in #778
  • MCP set_viewport: frame continuous longitudes and seam-crossing boxes (#759) by @philliphoff in #779
  • Tests: migrate the suite to xunit v3 (#776 chunk 0) by @philliphoff in #777

Full Changelog: v0.23.0...v0.24.0