Skip to content

Release v0.9.1

Choose a tag to compare

@github-actions github-actions released this 19 Jun 18:15
· 14 commits to main since this release
f9359b8

footy-data-kit v0.9.1

Summary

  • Tightened existing generated data labels ahead of v1 by fixing reprieved-row flags and replacing generic overview tier titles with canonical league names.
  • Added verifier coverage so future releases fail when a row note says a club was reprieved but wasReprieved is not set.
  • Updated roadmap and next-work docs to reflect the post-v0.9.0 baseline and the v0.9.1 correctness scope.

Breaking Changes

None.

Data Changes

  • Rows with notes such as Reprieved from re-election or Reprieved from relegation now set wasReprieved: true.
  • Generic overview metadata titles such as League tables are replaced with canonical season/level labels including Premier League, Championship, League One, League Two, and Conference Premier.
  • Source leagueId values remain unchanged so consumers can still inspect the original Wikipedia heading identity.
  • The legacy promotion aggregate was regenerated from source and now drops several stale top-flight relegation flags/lists where the current source no longer marks those clubs as relegated: 1892:tier1, 1893:tier1, 1894:tier1, 1895:tier1, 1896:tier1, and 1987:tier1.

Bug Fixes

  • Fixed reprieve detection in the shared table parser and typed output normalizer.
  • Fixed generated tier metadata labels for overview pages whose source heading is generic but whose season/level position is unambiguous.

Validation

  • Added focused Jest coverage for reprieved row parsing, typed entry normalization, overview metadata title canonicalization, and verifier note/flag consistency.
  • Added a data verifier check for rows with reprieve notes and missing wasReprieved flags.

Consumer Notes

  • No schema shape change is included in this release.
  • wasRelegated semantics are unchanged for reprieved-from-relegation rows; this release adds the missing wasReprieved flag so consumers can distinguish those rows.
  • This is not a tier 5 or level 6 backfill release.

Known Limitations

  • The 1957-58 Third Division North/South restructure still needs a v1 decision on whether bottom-half placement into the new Fourth Division should remain represented as ordinary relegation or gain more explicit restructure-placement metadata.
  • Lower-tier historical coverage beyond the currently generated dataset remains deferred until after v1 readiness work.

Published Data

  • Season coverage: 1888-2025 (138 season records)
  • League table records: 438 tier tables
  • Club metadata records: 232
  • Club status split: 196 active, 5 historical, 31 unknown
  • Clubs with source-backed lifecycle events: 87
  • Clubs with tracked absence explanations: 117

Data Change Summary

  • Seasons before: 138
  • Seasons after: 138
  • Added seasons: 0
  • Removed seasons: 0
  • Changed seasons: 0

No season-table changes were detected after regenerating the release data.

Validation

Release data is regenerated from the Wikipedia overview pipeline and checked before publishing.

  • Jest unit tests
  • Wikipedia integration tests
  • ESLint
  • Prettier format check
  • FootballData structural validation
  • Club continuity and historical-reason validation
  • Table points-order validation, with known points-per-game and source-order exceptions explicitly exempted

Assets

  • all-seasons.json
  • all-seasons.min.json
  • wiki_overview_tables_by_season.json
  • wiki_overview_tables_by_season.min.json
  • club-metadata.json
  • release-diff.json
  • release-diff.md
  • release-notes.md

The detailed machine diff is attached as release-diff.json; the compact markdown diff is attached as release-diff.md.