feat(registry): a package's capabilities per version, and the gain flag #406
Loading…
Reference in a new issue
No description provided.
Delete branch "loop/51-capability-summary"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #51
The remaining gap of the capability summary (section 7.8 of
docs/design/RELEASE.md), one PR, two commits.docs(tooling): the capability table-docs/tooling/package-capabilities.mdsays whichstdmodule is which capability, which names ofstd/timeandstd/osare pure and what the package page shows;torb-publish.mdlinks it. Theskills/pages are regenerated withtorb docs skill.feat(registry): capabilities per version and the gain flagreleases.capabilities, nullable, with a migration for an older database (NULL is not recorded, never none), written at publish. The names are comma-joined, because a name can have spaces (the operating system).nonefor a recorded empty set,not recordedfor NULL, everything escaped.gained: <names>marks a version that adds a capability over the nearest earlier version nobody yanked. No flag for the first version, for a loss, or when either side is not recorded.tools/registry/tests/capability-table.test.trbreads the docs tables and compares them withcapabilityOfandcapabilityOfImport, so the page and the code change together.packages.test.trbpublishes versions of one package and reads the stored sets and the pages back, and covers gain, no gain, loss, unrecorded predecessor, first version, a yanked predecessor, escaping and the migration.No API listing carries capabilities (there is none), so the page only. #51 stays open for the remainder: the table in
stditself and the transitive view over the dependency graph; this PR saysCloses #51as the loop's contract asks, reopen or split if the maintainer wants it kept open.No seed refresh is needed. Locally:
torb check tools/registry,torb format --check,torb docs check docs --no-snippets,torb docs skill docs skills --check, and the registry tests with a stand-insqlite3(47 passed inpackages.test.trb, 7 incapability-table.test.trb). The gates run in CI.Approved. Checklist for
20537f909e:packages.test.trbpublishes several versions of one package and reads back stored sets and pages (gain, no gain, loss, unrecorded predecessor, first version, yanked predecessor, escaping, old-database migration run twice);capability-table.test.trbties the docs tables tocapabilityOf/capabilityOfImport. CI green for this head (gates, tier A/B, tools/registry, pdisc).Non-blocking:
Closes #51will close the issue on merge although thestdtable and the transitive view remain. Reopen it or file those two steps, as the PR body already notes.