Uh oh!
There was an error while loading. Please reload this page.
refactor(data-index): drop the retired Jekyll _config.yml machinery - #74
Merged
Conversation
support#58 (relaton/relaton#83) replaced the Jekyll Pages build with `relaton index`, which reads each data repo's own `data/` folder. The generator, its committed snapshot and the keys that fed them have had no consumer since. Checked all 30 relaton-data-* repos with `gh api .../contents/_config.yml`: none has ever carried a committed `_config.yml`, so `data-index/generated/` never reached a target either. Removed: - bin/gen-data-index-config and the 30-file data-index/generated/ snapshot - spec/generated_configs_spec.rb, its drift guard - DataIndexConfig#render / #render_repo and the private pubid_class, pubid_require and sq helpers - the `paginate` and `pubid_require` defaults, and every row's `pubid_class` configs.yml now carries only what its two live consumers read: bin/index-branding (branding for the `relaton index` Pages build) and bin/check-data-pages (the site + raw-index 200 gate). `branch` also stays cross-checked against cimas.yml by spec/cimas_data_pages_spec.rb. The specs move onto that public surface — #branding and #raw_index_url — and a new guard block keeps the removed keys from creeping back in dead. The one example in spec/index_branding_spec.rb that cross-checked #branding against the renderer goes with it; there is nothing left to drift against. Branding output is byte-identical for iana, w3c (which loses a pubid_require override) and ietf (the no-row fallback). The old pubid_class values stay in git history; the live ones are in each flavor's lib/relaton/<flavor>/data_fetcher.rb in relaton/relaton. Also: point the iana row at index-v2 This delivers the remaining half of HANDOFFS/relaton__support__iana-index-v2-config.md. Its `pubid_class` and regenerate-the-snapshot asks are retired by the removal above; this is the `source:` ask. `Relaton::Iana::INDEXFILE` is index-v2 in relaton/relaton@main, so the row names index-v2 too. relaton-data-iana@v2 has NOT published it yet (measured 2026-08-22: index-v2.yaml and index-v2.zip both 404, index-v1.yaml is 200), so this is the one row whose `source` leads its data repo's publish. The cost is that bin/check-data-pages reports a known 404 for iana until relaton-data-iana's crawler emits index-v2. Nothing automated is affected: no workflow runs that script, no spec makes a live request, and data-deploy.yml reads only branding from configs.yml. The expected failure is called out in configs.yml, data-index/README.adoc and the script's own header, so an operator can tell it from a real regression.
Uh oh!
There was an error while loading. Please reload this page.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
support#58 (relaton/relaton#83) replaced the Jekyll Pages build with
relaton index, which reads each data repo's owndata/folder. The generator, its committed snapshot and the keys that fed them have had no consumer since —data-index/README.adocalready listed retiring them as follow-up work.Two measurements settle the scope:
gh api repos/relaton/relaton-data-<r>/contents/_config.ymlreturns 404 for all 30 repos inconfigs.yml. None has ever carried a committed_config.yml, andcimas-config/maps none either.sourceandbranchare still live.DataIndexConfig#raw_index_urljoinsbaseurl+source, andbin/check-data-pagesrequires a 200 from it.branchis additionally cross-checked againstcimas.ymlbyspec/cimas_data_pages_spec.rb. Both stay.What changed
Removed
bin/gen-data-index-configand the 30-filedata-index/generated/snapshotspec/generated_configs_spec.rb, its drift guardDataIndexConfig#render/#render_repoand the privatepubid_class,pubid_require,sqpaginateandpubid_requiredefaults, and every row'spubid_classconfigs.ymlnow carries only what its two live consumers read —bin/index-branding(branding for the Pages build) andbin/check-data-pages(the 200 gate):- { repo: ccsds, display: CCSDS, source: index-v2.yaml, branch: v2 }Specs move onto that public surface (
#branding,#raw_index_url). A new guard block keeps the removed keys from creeping back in dead. The one example inspec/index_branding_spec.rbthat cross-checked#brandingagainst the renderer goes with it — there is nothing left to drift against.The old
pubid_classvalues stay in git history; the live ones are in each flavor'slib/relaton/<flavor>/data_fetcher.rbinrelaton/relaton.Also: iana points at index-v2
This delivers the remaining half of
relaton__support__iana-index-v2-config.md. Itspubid_classand regenerate-the-snapshot asks are retired by the removal above; this is thesource:ask.Relaton::Iana::INDEXFILEisindex-v2inrelaton/relaton@main, so the row namesindex-v2too.Warning
relaton-data-iana@v2has not published it yet (measured 2026-08-22:index-v2.yamlandindex-v2.zipboth 404,index-v1.yamlis 200). This is the one row whosesourceleads its data repo's publish, sobin/check-data-pagesreports a known 404 for iana until that repo's crawler emitsindex-v2. Any other repo's non-200 is a real regression.Nothing automated is affected: no workflow runs that script, no spec makes a live request, and
data-deploy.ymlreads only branding fromconfigs.yml. The expected failure is called out inconfigs.yml,data-index/README.adocand the script's own header, so an operator can tell it apart from a regression.Verification
bundle exec rake— 321 examples, 0 failuresbin/index-brandingoutput byte-identical foriana,w3c(which loses apubid_requireoverride) andietf(the no-row fallback path)bin/check-data-pages ccsds iso --raw-only→ 200;iana→ the expected 404asciidoctorparses bothREADME.adocfiles cleanNotes
code-revieweragent: no lost coverage, no orphaned private methods, no stale reference that reads as current, balanced AsciiDoc blocks, valid 30-rowconfigs.yml.bin/index-branding:13says Cimas copiesdeploy.yml"for 29 repos", but thedatagroup incimas.ymlholds 31 entries.