Skip to content

Remove vcpkg-artifacts. - #2032

Draft
Billy O'Neal (BillyONeal) wants to merge 1 commit into
microsoft:mainfrom
BillyONeal:remove-artifacts
Draft

Remove vcpkg-artifacts.#2032
Billy O'Neal (BillyONeal) wants to merge 1 commit into
microsoft:mainfrom
BillyONeal:remove-artifacts

Conversation

@BillyONeal

Copy link
Copy Markdown
Member

This must not be committed until after July 1 2026.

This must not be committed until after July 1 2026.
Copilot AI review requested due to automatic review settings May 27, 2026 02:45
@BillyONeal
Billy O'Neal (BillyONeal) marked this pull request as draft May 27, 2026 02:45
Comment thread vcpkg-init/vcpkg-init.ps1
:: If there were any arguments, also invoke vcpkg with them
IF "%1"=="" GOTO fin
CALL "%VCPKG_ROOT%\vcpkg-cmd.cmd" %*
"%VCPKG_ROOT%\vcpkg.exe" %*

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I need to do some smoke testing after inserting into VS to confirm that vcpkg still works from the developer command prompt.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Removes the entire vcpkg-artifacts TypeScript implementation along with the C++ command shims that forwarded into it, the shell wrappers that supported the artifacts postscript mechanism, and CI/build plumbing for the Node-based artifacts pipeline. Artifact-invoking commands now exit early with a new localized "vcpkg artifacts has been removed" error. Note that some artifact-adjacent surfaces (JSON schemas, vcpkg-cmd.cmd, Z_VCPKG_POSTSCRIPT env allowlist, configuration parsing for kind: artifact) remain in the tree.

Changes:

  • Delete the vcpkg-artifacts/ TypeScript project, test resources, and CI/lint setup for Node.
  • Remove C++ artifact-forwarding commands (acquire, acquire-project, activate, deactivate, generate-msbuild-props, use, x-regenerate, x-update-registry, z-ce) and the configure-environment helper; intercept these names and add/find artifact to error out with msgVcpkgArtifactsHasBeenRemoved.
  • Simplify vcpkg-init shell wrappers and standalone bundle to invoke vcpkg directly, drop vcpkg-artifacts.mjs packaging/signing, and prune related metrics, message-map merging, autocomplete entries, and docs.

Reviewed changes

Copilot reviewed 240 out of 243 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
vcpkg-artifacts/** (deleted) Removes the TypeScript artifacts implementation, tests, fixtures, eslint/tsconfig/package metadata.
src/vcpkg.cpp, include/vcpkg/commands.h Adds early-exit check for removed artifact command names before command dispatch.
src/vcpkg/commands.{add,find}.cpp Drops artifact-specific code paths and now errors when selector is artifact.
src/vcpkg/commands.{acquire,acquire-project,activate,deactivate,generate-msbuild-props,regenerate,update-registry,use,z-ce}.cpp + headers Deletes the C++ forwarders that invoked the artifacts process.
src/vcpkg/commands.z-generate-message-map.cpp No longer merges vcpkg-artifacts/locales/messages.json; now takes a single argument.
src/vcpkg/metrics.cpp, include/vcpkg/metrics.h Removes AcquiredArtifacts/ActivatedArtifacts StringMetric entries.
include/vcpkg/configure-environment.h Removes the configure-environment header used by the deleted forwarders.
scripts/verifyMessages.ps1 Stops subtracting artifact message keys when validating message usage.
vcpkg-init/vcpkg-init, vcpkg-init/vcpkg-init.ps1, vcpkg-init/mint-standalone-bundle.ps1 Wrappers invoke vcpkg directly; bundle no longer ships vcpkg-artifacts.mjs.
src/vcpkg-in-development.ps1 (deleted) Removes the dev-mode PowerShell shim that managed the postscript flow.
azure-pipelines/{end-to-end-tests.ps1,end-to-end-tests-prelude.ps1,end-to-end-tests-dir/bundles.ps1,Create-PRDiff.ps1,arch-independent-signing.signproj,e2e-specs/autocomplete-posh-vcpkg.Tests.ps1} Drops -RunArtifactsTests, $VcpkgPs1, artifact signing, and autocomplete entries for removed commands.
.github/workflows/{build,pr}.yaml Removes Node setup, restricts CodeQL to c-cpp, renames the unit-test step.
.github/copilot-instructions.md, docs/vcpkg_tool_release_process.md, .gitignore Removes guidance/cleanup steps for artifacts and the WithArtifacts presets.

Comment thread vcpkg-init/vcpkg-init.ps1

if ($args.Count -ne 0) {
return vcpkg-shell @args
return & $VCPKG @args
Comment thread vcpkg-init/vcpkg-init.ps1
:: If there were any arguments, also invoke vcpkg with them
IF "%1"=="" GOTO fin
CALL "%VCPKG_ROOT%\vcpkg-cmd.cmd" %*
"%VCPKG_ROOT%\vcpkg.exe" %*
@BillyONeal

Copy link
Copy Markdown
Member Author

Some ARM folks contacted me out of band who are interested in taking this over because ARM is the only entity that ended up using this stuff, so we're going to hold off from landing this for a bit.

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