Skip to content

CI Updates and Modernization - #2548

Draft
spentacular wants to merge 13 commits into
mainfrom
ci-workflow-updates
Draft

spentacular wants to merge 13 commits into
mainfrom
ci-workflow-updates

Conversation

@spentacular

@spentacular spentacular commented Oct 17, 2026 •

Copy link
Copy Markdown
Collaborator

- Added a new GitHub Actions workflow for PR lookup to identify associated pull requests.
- Updated dependencies for actions/cache and actions/setup-node to specific versions.
- Modified build workflow to utilize the new PR lookup action instead of an external action.
- Enhanced dependabot configuration to include GitHub Actions updates on a weekly schedule.
Prefactor for the pnpm move. These only resolve today because yarn
hoists everything.

- Unify tslib on ^2.8.1 in every package (and the plugin template), and
  add it to package-json-utils, whose compiled output requires it.
- Root devDependencies: fast-glob, requireg, semver and signale, which
  root scripts and the jest setup load.
- CLI devDependencies: dotenv, for scripts/inject-version.js.

Published runtime dependencies change only in tslib.
- Add .nvmrc naming Node 24; the install action reads it via node-version-file.
- Declare engines.node >=24 in the private root manifest. Published packages' engines are unchanged.
- Upgrade mock-fs to ^5.5.0, fixing the 59 tests that fail on Node 24.
- Run ignite with the legacy OpenSSL provider so the docs site builds on Node 24.

The CLI bundle step still fails on Node 24 (pkg 5.8.0 has no node24 base binary) until the bundler is chosen.
- Pin pnpm 12.14.0 through packageManager and add pnpm-workspace.yaml.
  pnpm-lock.yaml is imported from yarn.lock, so resolved versions are
  unchanged. Isolated layout, no hoisting overrides. Unneeded dependency
  build scripts are denied explicitly.
- Internal dependencies use workspace:* in every package and the plugin
  template. The 8 plugins the repo's auto config loads by name are root
  devDependencies.
- Replace patch-package with pnpm patchedDependencies (same two patches).
  Point the registry at npmjs.
- lerna stays the publishing engine at 7.1.4, now with npmClient pnpm.
- Rewrite the clean, install-mac, docs, lint-staged and CLI bundle
  scripts for pnpm, without lerna.
- CI: set up pnpm from the manifest, cache the pnpm store through
  setup-node, and install with a frozen lockfile. The release job turns
  caching off. build-cache now carries only build output.
- Declare the @types packages (and env-ci for upload-assets' tests) that
  strict isolation exposed, as devDependencies.
- Annotate the return types of 13 Git methods in core. Under pnpm, tsc
  can't name the inferred type through the undeclared transitive
  @octokit/plugin-paginate-rest (TS2742). The annotations are the same
  types, named through @octokit/rest.
- README development setup describes pnpm and Node 24.

Known issue: PR canaries fail in lerna's lockfile refresh after the
npm plugin renames packages to @auto-canary/*, because the root's
workspace:* plugin devDependencies no longer match a workspace package.
Kept as specified and recorded for follow-up.

This branch has not been deployed

No deployments
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