Skip to content

Add catalog signing for XML content files#19832

Draft
jesuszarate wants to merge 1 commit into
dotnet:mainfrom
jesuszarate:sign-xml-catalog-files
Draft

Add catalog signing for XML content files#19832
jesuszarate wants to merge 1 commit into
dotnet:mainfrom
jesuszarate:sign-xml-catalog-files

Conversation

@jesuszarate
Copy link
Copy Markdown

XML files (IntelliSense docs, item templates) are non-PE and cannot carry Authenticode signatures directly. Adding FileExtensionSignInfo for .xml tells Arcade to generate a .cat catalog file covering them, signed with Microsoft400.

Fixes VS signing scan violations for fsharp.core_13.xml (F# SDK VSIX) and xmlfile.xml (VisualFSharpDebug VSIX).

The signing allow list (ExternalWhiteList.csv) in the VS repo will be zeroed out on June 8th. Files that are currently exempted will start failing the signing scan after that date.

Bug: https://devdiv.visualstudio.com/DevDiv/_workitems/edit/3008042

@github-actions
Copy link
Copy Markdown
Contributor

✅ No release notes required

Non-PE files (XML docs, templates) cannot carry Authenticode signatures.
This adds catalog signing infrastructure:

1. eng/Signing.props: Add FileExtensionSignInfo for .cat so Arcade
   signs the generated catalog with Microsoft400
2. eng/generate-catalog.ps1: Script to generate CDF and run makecat.exe
3. VisualFSharpDebug.csproj: GenerateCatalogFiles target that runs after
   VSIX assembly to produce a .cat covering xmlfile.xml

Fixes VS signing scan violations for xmlfile.xml (VisualFSharpDebug VSIX).
The fsharp.core_13.xml fix for the SDK Swix package is tracked separately
(requires VS-repo catalog signing).

Bug: https://devdiv.visualstudio.com/DevDiv/_workitems/edit/3008042
@jesuszarate jesuszarate force-pushed the sign-xml-catalog-files branch from a6f22a1 to ded207d Compare May 27, 2026 21:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: New

Development

Successfully merging this pull request may close these issues.

1 participant