Skip to content

docs(licensing): #905 §7.1 RESOLVED — the last flagged item is closed on master (#955) - #956

Merged
jsboige merged 1 commit into
masterfrom
docs/955-licensing-flag-resolved
Jul 27, 2026
Merged

docs(licensing): #905 §7.1 RESOLVED — the last flagged item is closed on master (#955)#956
jsboige merged 1 commit into
masterfrom
docs/955-licensing-flag-resolved

Conversation

@jsboige

@jsboige jsboige commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

What

Rectify five stale references to FluentAssertions in the licence inventory. After #955 (6d0bfda9) the document is wrong about master in two independent ways:

  1. it still asks jsboige to arbitrate an item he has already arbitrated, and
  2. it names 7.2.0 as "the last Apache-2.0 release" — the measured answer is 7.2.2, which is what actually shipped.

This is the #905 §7.1 flag-removal that was part of #955's DoD and did not fit in a dependency PR.

Why it matters more than a docs tidy

docs/licensing/dependency-license-inventory.md is the release licence gate. It is the artefact presented at v0.9.0 to show the gate is met. A gate document that lists an open arbitration reads as "one thing still unresolved" to whoever reviews it — when in fact nothing is.

Measured firsthand, not taken on faith

The bot review on #955 explicitly scoped out re-fetching the nuspecs ("did not independently re-fetch … the direction is not in doubt"). Since the whole PR rests on that claim, I measured it:

version <license> <licenseUrl> <authors> requireLicenseAcceptance
7.2.2 type="expression"Apache-2.0 licenses.nuget.org/Apache-2.0 Dennis Doomen, Jonas Nyrup absent
8.5.0 type="file"LICENSE aka.ms/deprecateLicenseUrl Dennis Doomen, Jonas Nyrup, Xceed true

Two details neither #955 nor its review cited:

  • <authors> gains Xceed at 8.x. The commercial takeover is legible in the authorship line, not only in the licence field — a second, independent signal for the same event.
  • requireLicenseAcceptance is absent in 7.2.2, not declared false. NuGet's default is false, so the effect is the same — but on a licence document "absent" and "declared false" are not interchangeable, and I corrected my own first wording of this line before committing.

Changes

Five call-sites, following the RESOLVED pattern §7.2 already established in this same file for the PdfPig swap (keep the original finding as the audit record, prepend a dated resolution block):

  • headline — "One non-release item remains flagged" → dated RESOLVED update; zero flagged items remain
  • §3 table8.5.0 | commercial (Xceed) — FLAG §7.17.2.2 | Apache-2.0
  • §5 — no longer lists FluentAssertions as the commercial exception among requireLicenseAcceptance packages (with the measured nuance above)
  • §7.1 — retitled RESOLVED + resolution block + the nuspec table; the three options are kept as the record of what was weighed, with downgrade marked CHOSEN and the 7.2.0→7.2.2 figure corrected in place
  • §8 gate status — the "awareness item" caveat is gone

Scope discipline

The §8 claim is deliberately bounded to what this audit measured — the 24 direct deps of the shipping binary plus their transitive closure (§1/§2), and the test project's direct deps (§3) — rather than asserting a universal over the whole repository. The audit never enumerated, say, vendored npm trees; the document should not imply it did.

Docs only. 0 prod-CSV write, 0 OWL path touched (publication-safe, #133). No code, no config.

… on master (#955)

The inventory still told jsboige to arbitrate FluentAssertions, and still named
7.2.0 as the last Apache-2.0 release. Both are now false on master: the
arbitration was made (downgrade) and #955 (6d0bfda) implemented it at 7.2.2.

Five stale references rectified (headline, §3 table, §5, §7.1, §8), following
the RESOLVED pattern §7.2 already established in this file for PdfPig.

Measured firsthand on the restored nuspecs (2026-07-27), not taken on faith:
  7.2.2  license type="expression" -> Apache-2.0, licenseUrl licenses.nuget.org
  8.5.0  license type="file"       -> LICENSE,    licenseUrl aka.ms/deprecate...
and two details the PR body did not cite:
  - <authors> gains "Xceed" at 8.x: the takeover is legible in the authorship
    line, not only in the licence field;
  - requireLicenseAcceptance is ABSENT in 7.2.2 (NuGet default false), against
    true in 8.5.0 - "absent" is not "declared false", and on a licence document
    that distinction is the whole point.

The §8 claim is scoped to the surface this audit covers (24 direct deps of the
shipping binary + transitive closure, and the test project's direct deps),
rather than asserting a universal over the whole repo.

Docs only. 0 prod-CSV write, 0 OWL path touched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant