Skip to content

Fix dependency auditing failures in documentation CI - #473

Merged
roji merged 1 commit into
mainfrom
roji-documentation-ci-dependency-failure
Oct 15, 2026
Merged

roji merged 1 commit into
mainfrom
roji-documentation-ci-dependency-failure

Conversation

@roji

@roji roji commented Oct 15, 2026

Copy link
Copy Markdown
Member

Summary

Set NuGetAudit=false only on the documentation build job. This covers the two source builds and docfx's metadata restores without changing either source submodule, provider dependencies, or warning/error handling.

Root cause

The failed documentation run stops during Build Npgsql, before EFCore.PG or docfx:

  • Microsoft.Build.Tasks.Git 8.0.0, pulled in by Microsoft.SourceLink.GitHub, triggers NU1902 promoted to an error for GHSA-23fw-v26w-5fgq.
  • The four System.Security.Cryptography.Pkcs NU1902/NU1903 messages are benchmark-project warnings, not the fatal error.
  • The pinned EFCore.PG snapshot also fails on the same advisory for Microsoft.Build.Tasks.Git 10.0.200, so a Npgsql-only workaround would leave the workflow broken.

These builds extract API documentation from fixed source snapshots; they do not ship the provider packages. The tradeoff is that this docs job no longer reports dependency vulnerability findings. It does not remediate those dependencies; their audit/remediation belongs in the source repositories. All other build errors and docfx warnings-as-errors remain enabled.

Validation

  • Reproduced the original Npgsql failure: 4 Pkcs warnings, 1 fatal NU1902.
  • Confirmed EFCore.PG's additional fatal NU1902.
  • With the job environment, both original dotnet build -c Release commands succeed with 0 warnings and 0 errors.
  • The pinned docfx 2.78.5 completes docfx --warningsAsErrors with 0 warnings and 0 errors, including metadata extraction for both repositories.
  • Both submodule pins are unchanged. No package-version override is needed: initial local NU1603/NU1605 restore failures were caused by this machine's package proxy and disappeared when restoring with the repository's NuGet.config.

Separate from #472; no changes to that PR.

Build the pinned Npgsql and EFCore.PG snapshots for API documentation without failing on newly published dependency advisories. Keep this setting scoped to the documentation build job, including docfx metadata restore.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: cf2cf862-ca6f-4cf0-8ea4-467b158df3b5
Copilot AI balanced review requested due to automatic review settings October 15, 2026 13:11

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The narrowly scoped change addresses the reported audit failures without changing dependencies or other build checks.

0 open findings

What changed in this PR

Scopes the dependency-audit workaround to the documentation build job so pinned source snapshots can build for API documentation.

Changes:

  • Sets job-level NuGetAudit=false for source builds and docfx restores.
  • Leaves dependencies, submodule pins, and other warning/error handling unchanged.
File Description
.github/​workflows/​build-documentation.yml Disables dependency auditing only for the documentation build job.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@roji
roji merged commit 42059b0 into main Oct 15, 2026
3 checks passed
@roji
roji deleted the roji-documentation-ci-dependency-failure branch October 15, 2026 13:24
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.

2 participants