Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,32 @@ updates:
update-types: ["version-update:semver-major"]
- dependency-name: "OWLSharp.Extensions"
update-types: ["version-update:semver-major"]
# Humanizer 2.14.1 -> 3.0.10 changes the OWL IRI fragments we PUBLISH. MEASURED on #949
# (run 89854763158, `build (Release)`): 643 tests, 636 passed, 2 failed, both of them the
# GetId contract tests, and nothing else --
# VirtueOwlGenerationContractTests.GetId_StripsApostrophesHyphensCommas [40 ms]
# OwlGetIdPureContractTests.FrenchFallacyName_ProducesFragment_AccentsPreserved [1 ms]
# Both assert GetId("Appel à l'autorité") == "appelÀLautorité"; both pass on master
# (verified locally 2026-07-27, 10/10 on the filtered run). `GetId` is `Camelize` plus a
# Replace chain, i.e. Humanizer IS the transform -- and v3 is a declared breaking major
# (its own release notes ship a Roslyn analyzer for the "v3 namespace migration").
#
# Why this is more than a red test: those fragments are the IDENTITY of the published
# ontology -- 1 408 fallacy IRIs in docs/ontology/argumentum.owl and 223 virtue IRIs in
# argumentum_virtues.owl are built by this function. A silent Camelize change renames
# every accented term's IRI on the next regeneration, breaking external consumers
# (#133 publication, the CoursIA import) with a green build and no diff in our own code.
# Same shape as the licence findings above, one axis over: a package can change
# identity-bearing OUTPUT without any tool announcing it.
#
# Majors only -- and here that filter is NOT the no-op it was for Playwright: Humanizer's
# break IS at the major boundary (2.x -> 3.x). The general rule the two cases share is
# that the right filter depends on where the package puts its break, so measure the
# package's versioning before choosing the update-types.
# Deferred work this pin accompanies: issue #951 (deliberate v3 migration + an explicit
# decision on whether published IRIs may change, which is jsboige's, not ours).
- dependency-name: "Humanizer"
update-types: ["version-update:semver-major"]
# NOT pinned, on purpose: dotNetRdf. The #945 review first attributed the OwlAdapter
# break to dotNetRdf 3.3.2 -> 3.5.2; re-measured, that is wrong. dotNetRdf supplies
# VDS.RDF (parsing, used elsewhere in the same file), its bump is a MINOR, and
Expand Down
Loading