Chore: Bump 15 dependencies from 3 dependabot PRs - #1059
Conversation
Updates `softprops/action-gh-release` from 3.0.1 to 3.0.2 Updates `lycheeverse/lychee-action` from 2.8.0 to 2.9.0 --- updated-dependencies: - dependency-name: softprops/action-gh-release dependency-version: 3.0.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions-minor - dependency-name: lycheeverse/lychee-action dependency-version: 2.9.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions-minor ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps actions/setup-dotnet from 5 to 6. --- updated-dependencies: - dependency-name: actions/setup-dotnet dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps dotnet-coverage from 18.7.0 to 18.9.0 Bumps dotnet-reportgenerator-globaltool from 5.3.11 to 5.5.11 Bumps Microsoft.Build.Utilities.Core from 18.7.1 to 18.8.2 Bumps Microsoft.Extensions.DependencyModel from 9.0.16 to 9.0.18 Bumps SIL.Core from 18.0.0-beta0027 to 18.0.0-beta0030 Bumps SIL.LCModel from 11.0.0-beta0173 to 11.0.0-beta0176 Bumps SIL.LCModel.Core from 11.0.0-beta0173 to 11.0.0-beta0176 Bumps SIL.LCModel.Utils from 11.0.0-beta0173 to 11.0.0-beta0176 Bumps System.Drawing.Common from 9.0.17 to 9.0.18 Bumps System.Reflection.Metadata from 10.0.9 to 10.0.10 Bumps System.Resources.Extensions from 9.0.17 to 9.0.18 Bumps System.Security.Permissions from 9.0.17 to 9.0.18 --- updated-dependencies: - dependency-name: dotnet-coverage dependency-version: 18.9.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-minor - dependency-name: dotnet-reportgenerator-globaltool dependency-version: 5.5.11 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-minor - dependency-name: Microsoft.Build.Utilities.Core dependency-version: 18.8.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-minor - dependency-name: Microsoft.Extensions.DependencyModel dependency-version: 9.0.18 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-minor - dependency-name: SIL.Core dependency-version: 18.0.0-beta0030 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-minor - dependency-name: SIL.LCModel dependency-version: 11.0.0-beta0176 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-minor - dependency-name: SIL.LCModel.Core dependency-version: 11.0.0-beta0176 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-minor - dependency-name: SIL.LCModel.Utils dependency-version: 11.0.0-beta0176 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-minor - dependency-name: System.Drawing.Common dependency-version: 9.0.18 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-minor - dependency-name: System.Reflection.Metadata dependency-version: 10.0.10 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-minor - dependency-name: System.Resources.Extensions dependency-version: 9.0.18 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-minor - dependency-name: System.Security.Permissions dependency-version: 9.0.18 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-minor ... Signed-off-by: dependabot[bot] <support@github.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1059 +/- ##
=======================================
Coverage 38.04% 38.05%
=======================================
Files 1499 1499
Lines 350117 350127 +10
Branches 40233 40239 +6
=======================================
+ Hits 133196 133229 +33
+ Misses 187634 187611 -23
Partials 29287 29287 🚀 New features to boost your workflow:
|
NUnit Tests 1 files ± 0 1 suites ±0 10m 49s ⏱️ -42s Results for commit a98a540. ± Comparison against base commit b857373. This pull request removes 10 and adds 23 tests. Note that renamed tests count towards both.♻️ This comment has been updated with latest results. |
The nuget-minor group bumped Microsoft.Extensions.DependencyModel to 9.0.18, but Directory.Packages.props pins it deliberately: 9.0.17 broke ICU initialization in the .NET Framework test host, as reproduced and investigated in PR #1000. 9.0.18 has not been retested, so this restores 9.0.16. Also refreshes the three pin comments that still named 9.0.17 for the packages that did move to 9.0.18. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
Pushed The nuget-minor group bumped it to 9.0.18, but The other 14 bumps are unchanged. Also refreshed three pin comments that still named 9.0.17 for packages that did move to 9.0.18. Checked and clean: no Follow-up worth doing separately: add |
Adds Microsoft.Extensions.DependencyModel to the nuget ignore block so the pin at 9.0.16 stops being re-proposed every month. Nothing in the package graph holds it there: every dependant declares only a floor that 9.0.18 clears, so the pin rests entirely on the runtime break found in PR #1000. Also rewrites three pin comments that described floors as though they were exact or capped requirements. Checked against the nuspec ranges under packages/: ParatextData, SIL.Machine, ProDotNetZip, icu.net, SIL.LCModel.Core and Avalonia.Skia all declare minimums only, so pinning above them is always safe and pinning below is what causes NU1109. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
Pushed I evaluated every pin in
Unbracketed The DependencyModel pin is not constraint-driven at all. Every declared range permits 9.0.18. It is held at 9.0.16 purely by the runtime break from #1000, which no manifest can express — which is why it is the only pin that needs a dependabot exclusion, and why the package graph would never have blocked it. Also worth noting: |
| ignore: | ||
| - dependency-name: "*" | ||
| update-types: ["version-update:semver-major"] | ||
| # Microsoft.Extensions.DependencyModel is held at 9.0.16 by an observed |
There was a problem hiding this comment.
Is this the best place for this information? I would imagine it is either redundant or should be moved to next to the actual dependency declaration.
There was a problem hiding this comment.
AI recommendation:
# Pinned at 9.0.16 due to TypeInitializationException on Icu.NativeMethods in
# .NET Framework test host. See Directory.Packages.props for retest procedure.
SIL.LCModel 11.0.0-beta0176 replaced StructureMap with Microsoft.Extensions.DependencyInjection, which appeared as new external references of the ILRepack-merged FwParatextLexiconPlugin.dll. Paratext loads that plugin into its own process, where FieldWorks' binding redirects do not apply and Paratext ships no copy of these assemblies, so they had to resolve from the FieldWorks directory at their exact recorded versions - any drift broke the plugin only inside Paratext, invisibly to every FieldWorks test. liblcm exposes no DI type on its public API and bootstraps the container without reflection-by-name, so the assemblies are internalized instead, along with Microsoft.Bcl.AsyncInterfaces which they pull in. Pins all three packages so the internalized copies are deterministic; Build/Src overrides Microsoft.Bcl.AsyncInterfaces to the 10.0.4 floor that Microsoft.Build.Utilities.Core's System.Text.Json chain requires. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Strips the pin comments to declarative content: the requirement each pin satisfies and, for the empirical DependencyModel pin, the failure it avoids and its retest recipe. Drops the changelog-style block note and the floor-versus-pin narration. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Replaces the eight-line note with two lines naming the failure and pointing at Directory.Packages.props for the retest procedure, per review feedback that the longer version duplicated that file. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Reduces the eight comment blocks that exceeded 200 characters, keeping the constraint each pin satisfies and dropping restatement. The Avalonia section banner is left alone: it documents four independent facts and does not fit the limit without losing one. Continuation lines use tabs rather than tab-plus-spaces so the added lines pass the indent-with-non-tab whitespace check; they render identically at the repository tab width. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
jasonleenaylor
left a comment
There was a problem hiding this comment.
@jasonleenaylor made 1 comment.
Reviewable status: 0 of 9 files reviewed, 2 unresolved discussions (waiting on johnml1135).
| ignore: | ||
| - dependency-name: "*" | ||
| update-types: ["version-update:semver-major"] | ||
| # Microsoft.Extensions.DependencyModel is held at 9.0.16 by an observed |
Combines #1035, #1036, and #1037 into one pull request, so this month's
dependency updates cost one CI cycle instead of three — then hardens the one
integration those bumps put at risk.
Each Dependabot commit is cherry-picked onto current
mainwith its author andauthor date preserved. The bodies on #1035 and #1036 fail the
Check commit messagesjob as Dependabot wrote them (markdown link lines exceedthe 80-column body limit), so those two were trimmed to satisfy
.github/commit-guidelines.md; #1037's body was already compliant and isbyte-identical to the original.
Includes
softprops/action-gh-release3.0.1 -> 3.0.2,lycheeverse/lychee-action2.8.0 -> 2.9.0actions/setup-dotnet5 -> 6 (major)SIL.Core18.0.0-beta0027 -> beta0030 andSIL.LCModel11.0.0-beta0173 -> beta0176actions/setup-dotnet5 -> 6 is the only major in the batch..github/dependabot.ymlignores nuget majors but lets github-actions majorsthrough ungrouped, which is why it arrived on its own.
Beyond the bumps
Three follow-on commits correct what the batch would otherwise have broken:
Microsoft.Extensions.DependencyModelstays pinned at 9.0.16. Thenuget-minor group proposed 9.0.18, silently reverting the deliberate pin from
Chore: Consolidate dependabot bumps (nuget-minor, actions/checkout, actions/cache, actions-minor) #1000 (9.0.17 broke ICU initialization in the net48 test host). Every
dependant declares only a floor that 9.0.18 clears, so nothing in the package
graph guards this pin — it is now also excluded in
.github/dependabot.ymlso it stops being re-proposed monthly. Pin comments that described floors as
exact requirements were corrected from the actual
.nuspecranges.plugin. SIL.LCModel beta0176 replaced StructureMap with
Microsoft.Extensions.DependencyInjection, which surfaced as new externalreferences of the ILRepack-merged
FwParatextLexiconPlugin.dll. Paratextloads that plugin into its own process, where FieldWorks' binding redirects
do not apply and Paratext ships no copy of these assemblies — any version
drift broke the plugin only inside Paratext, invisibly to every FieldWorks
test. Verified in the liblcm source that no DI type is on LCModel's public
API and the container bootstrap uses no reflection-by-name, so the assemblies
(plus
Microsoft.Bcl.AsyncInterfaces, which merging them promotes) areinternalized via
ILRepack.targetsand their packages pinned.Build/Srcoverrides
Microsoft.Bcl.AsyncInterfacesto the 10.0.4 floor thatMicrosoft.Build.Utilities.Core'sSystem.Text.Jsonchain requires.Validation
.github/commit-guidelines.mdrules andgit log --check.build.ps1 -BuildTests(native seeded,-SkipNative): 0 warnings, 0 errors.project.assets.jsonconfirms the bumped SIL versions actually restored(
SIL.Core/18.0.0-beta0030,SIL.LCModel/11.0.0-beta0176) rather than beingshadowed by local dev packages.
test.ps1(no filter) on this dependency set: 5,739 managed tests,0 failures.
Microsoft.Extensions.*/Bclentries;FwParatextLexiconPluginTests31/31.real Paratext. A manual smoke of the lexicon plugin in Paratext is
recommended before this leaves draft, since the internalized DI container's
first real execution happens there.
Note for reviewers: the three source PRs all show a red
Build Debug and run tests, but the failing step isVerify Codecov upload succeeded— DependabotPRs do not receive
secrets.CODECOV_TOKEN, so they cannot go green regardlessof the bumps. Their tests passed. This PR runs from a repository-owned branch
and does not hit that.
This change is