Skip to content

v5.1.1

Choose a tag to compare

@clarkbw clarkbw released this 03 Sep 20:13
· 3 commits to main since this release
3c45a73

Two releases' worth of change, cut together: 5.1.0 was merged without a tag.

Tide coverage: 3,823 → 5,842 slugs (#34)

Allocates a permanent slug for the 2,017 NOAA subordinate tide stations that openwatersio/slackwater-ios#229 admits, plus chs-cap-des-rosiers and chs-riviere-madeleine. Nothing moved and nothing was tombstoned; every existing slug is unchanged. 1,907 of the new slugs took the bare name, 112 the region rung, none the station-id rung.

Three same-name pairs sit about a kilometre apart, each a NOAA row beside an existing CHS or TICON station: Mill Bay, Kumeon Bay and Pointe-à-Pitre. They are left as allocated. Merging any of them onto the existing slug is a formerSlugs change later.

The shared-slug contract, stated and checked (#36)

Four slugs are held by two ids each on purpose: tide point-atkinson, vancouver, victoria and current boundary-pass. Each is a curated identity beside the provider's own row for the same water, merged in 4.1.0 so the pair is one URL. That contract lived only in registry comments, so it kept being re-reported as a bug.

  • A test in seed-registry.test.js now holds the shape in CI, against the committed table: a slug held by two ids must have exactly one registry-owned id, and that record must carry the retired slug in formerSlugs.
  • The catalogue-backed resolver test lost an assertion that had been failing on main since 4.1.0, unseen, because it needs the provider catalogues and CI has none. It reported the deliberate merges as slug theft.
  • The 100 m sweep in slugs can see registry-only stations again. They were merged into the catalogue without a position, so the pair finder skipped them, which hid the curated half of every pair.
  • CONTRIBUTING.md regains its allocation section and gains "Two ids may share one slug". The stale data/slugs.lock.json references are gone from both YAML headers.

Upgrading

data/slugs.json grows to roughly 6,709 rows and loads eagerly with the package root. Consumers that route /tide/<slug> get 2,019 new tide pages; a consumer with hard-coded station counts will need them updated.