Skip to content

Upgrade test dependencies carrying known vulnerabilities - #2094

Draft
NickJosevski wants to merge 1 commit into
mainfrom
nj/deps-cve-test-tooling
Draft

Upgrade test dependencies carrying known vulnerabilities#2094
NickJosevski wants to merge 1 commit into
mainfrom
nj/deps-cve-test-tooling

Conversation

@NickJosevski

@NickJosevski NickJosevski commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Background

Five transitive advisories exist on main today. One is critical.

.NET 10's transitive package auditing surfaced the advisories. Auditing did not create them. The net8 SDK does not audit transitives at restore.

Pulled out of the .NET 10 migration branch so the work lands on its own merits.

Results

Upgrades three test-project dependencies.

Project Change Clears
Calamari.Tests WireMock.Net 1.6.9 to 2.13.0 Scriban.Signed 5.5.0 with 13 advisories, System.Linq.Dynamic.Core 1.3.12, RestSharp 110.2.0
Calamari.Tests System.DirectoryServices.AccountManagement 4.7.0 to 10.0.10 System.DirectoryServices.Protocols 4.7.0
Calamari.Testing RestSharp pinned to 112.1.0 RestSharp 110.2.0 via Octopus.1Password.Sdk

Scope is build-time exposure only. Nuke packs Calamari.Contracts and Calamari.ConsolidateCalamariPackages* and nothing else. Calamari.Testing declares a PackageId but nothing packs it. No shipped artifact changes. Please do not triage as a customer-facing security fix.

Two advisories are deliberately left in place. SharpCompress 0.37.2 is pre-existing and already suppressed. System.Text.RegularExpressions 4.3.0 needs Octostache and Sprache to move forward. That work deserves its own change.

Reducing risk

  • WireMock 1.x to 2.x is a major bump. All 13 call sites were exercised behaviourally rather than just compiled. 9 tests pass across GitHttpSmartSubTransportTests and AwsEnvironmentGenerationFixture.
  • Before and after baselines taken from a clean origin/main worktree using dotnet list package --vulnerable --include-transitive.
  • Clean rebuild of source/Calamari.sln at 164 warnings and 0 errors.

How to review this PR

General quality.

⚠️ Does this change require a corresponding Server Change?
⚠️ If so - please add a "Requires Server Change" label to this PR!

Five transitive advisories exist on main today. One is critical.

.NET 10's transitive package auditing surfaced the advisories. Auditing did not
create them. The net8 SDK does not audit transitives at restore.

WireMock.Net goes to 2.13.0. That clears Scriban.Signed 5.5.0 with 13 advisories,
System.Linq.Dynamic.Core 1.3.12 and RestSharp 110.2.0.
System.DirectoryServices.AccountManagement goes to 10.0.10, clearing
System.DirectoryServices.Protocols 4.7.0. RestSharp is pinned to 112.1.0 in
Calamari.Testing, clearing the version reached through Octopus.1Password.Sdk.

Scope is build-time exposure only. Nuke packs Calamari.Contracts and
Calamari.ConsolidateCalamariPackages and nothing else. Calamari.Testing declares a
PackageId but nothing packs it. No shipped artifact changes.

Two advisories are deliberately left in place. SharpCompress 0.37.2 is pre-existing
and already suppressed. System.Text.RegularExpressions 4.3.0 needs Octostache and
Sprache to move forward. That work deserves its own change.

WireMock 1.x to 2.x is a major bump. All 13 call sites were exercised behaviourally
rather than just compiled. 9 tests pass. Clean rebuild at 164 warnings and 0 errors.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@NickJosevski
NickJosevski force-pushed the nj/deps-cve-test-tooling branch from 1b88535 to e47255c Compare August 4, 2026 07:51
NickJosevski added a commit that referenced this pull request Aug 4, 2026
Serilog.Extensions.Logging 8.0.0 targets Microsoft.Extensions.Logging 8.0.0. Leaving
it behind after raising Microsoft.Extensions.Logging produces a version spread across
the graph.

Serilog.Extensions.Logging goes to 10.0.0 in Calamari.Testing. Serilog goes to 4.4.0
in Calamari.Testing, Calamari.ConsolidateCalamariPackages and
Calamari.AzureWebApp.NetCoreShim. 4.4.0 is the minimum Serilog.Extensions.Logging
10.0.0 accepts.

Split out of the original combined dependency commit. The vulnerability remediations
in that commit are test-only and landed separately in #2094. These Serilog bumps
touch Calamari.ConsolidateCalamariPackages. That project is packed and shipped.

Verified: clean rebuild of source/Calamari.sln at 165 warnings and 0 errors on net8.0.

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