Skip to content

Upgrade npm-check-updates to v17 in build-cli#26732

Open
frankmueller-msft wants to merge 1 commit intomainfrom
fix/ncu-v17-upgrade
Open

Upgrade npm-check-updates to v17 in build-cli#26732
frankmueller-msft wants to merge 1 commit intomainfrom
fix/ncu-v17-upgrade

Conversation

@frankmueller-msft
Copy link
Contributor

Summary

  • Upgrades npm-check-updates from v16 to v17 in @fluid-tools/build-cli
  • ncu@17 is fully bundled with zero dependencies, eliminating the transitive tar 6.x chain (ncu@16 → pacote → cacache → tar 6.x)
  • Removes deep type imports (build/src/types/) that no longer exist in v17, replaces Index<VersionSpec> cast with Record<string, string>

Context

This is split from #26707. The tar override fix is in #26731 (pure config, no code changes). This PR contains the ncu upgrade which has a minor code change in build-cli/src/library/package.ts.

Once this is published in the next build-cli release, the tar overrides in non-root workspaces (which exist because they depend on the published @fluid-tools/build-cli@0.63.0 that still ships ncu@16) can be removed.

Test plan

  • CI passes — build-tools workspace builds and tests successfully
  • Verify pnpm why tar --filter @fluid-tools/build-cli returns no results (ncu@17 has no tar dependency)
  • Verify build-cli commands that use ncu (e.g., flub check policy) still work correctly

🤖 Generated with Claude Code

ncu@17 is fully bundled with zero dependencies, eliminating the
transitive tar 6.x chain (ncu@16 → pacote → cacache → tar 6.x).

Code changes:
- Bump npm-check-updates from ^16.14.20 to ^17.1.18
- Remove deep type imports (build/src/types/) that no longer exist in v17
- Replace Index<VersionSpec> cast with equivalent Record<string, string>

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Upgrades npm-check-updates to v17 for @fluid-tools/build-cli, updating the lockfile and adjusting the one call site that relied on v16’s internal type paths.

Changes:

  • Bump npm-check-updates dependency from ^16.14.20 to ^17.1.18 for @fluid-tools/build-cli
  • Update the build-tools workspace lockfile to include npm-check-updates@17.1.18
  • Remove v16 deep type imports and update the result type assertion in npmCheckUpdates

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated 1 comment.

File Description
build-tools/pnpm-lock.yaml Updates the lockfile to resolve npm-check-updates@17.1.18 for the build-cli importer.
build-tools/packages/build-cli/src/library/package.ts Removes deep type imports from ncu v16 and adjusts the typing of the ncu.run() result.
build-tools/packages/build-cli/package.json Bumps the npm-check-updates dependency to ^17.1.18.
Files not reviewed (1)
  • build-tools/pnpm-lock.yaml: Language not supported

You can also share your feedback on Copilot code review. Take the survey.

Comment on lines 150 to +160
const result = (await ncu.run({
filter: depsToUpdate,
cwd: repoPath,
packageFile: glob === "" ? "package.json" : `${glob}/package.json`,
target: depUpdateType,
pre: prerelease,
upgrade: writeChanges,
jsonUpgraded: true,
silent: true,
peer: true,
})) as Index<VersionSpec>;
})) as Record<string, string>;
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