Repository navigation
Combine Dependabot PRs and raise CI Node to 22.20.0 - #19
Merged
Merged
Conversation
Removes [esbuild](https://github.com/evanw/esbuild). It's no longer used after updating ancestor dependencies [esbuild](https://github.com/evanw/esbuild), [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) and [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite). These dependencies need to be updated together. Removes `esbuild` Updates `@vitejs/plugin-react` from 5.1.2 to 5.2.0 - [Release notes](https://github.com/vitejs/vite-plugin-react/releases) - [Changelog](https://github.com/vitejs/vite-plugin-react/blob/plugin-react@5.2.0/packages/plugin-react/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@5.2.0/packages/plugin-react) Updates `vite` from 7.3.1 to 8.0.16 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v8.0.16/packages/vite) --- updated-dependencies: - dependency-name: esbuild dependency-version: dependency-type: indirect - dependency-name: "@vitejs/plugin-react" dependency-version: 5.2.0 dependency-type: direct:development - dependency-name: vite dependency-version: 8.0.16 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) to 5.0.9 and updates ancestor dependencies [brace-expansion](https://github.com/juliangruber/brace-expansion), [eslint](https://github.com/eslint/eslint) and [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint). These dependencies need to be updated together. Updates `brace-expansion` from 2.0.2 to 5.0.9 - [Release notes](https://github.com/juliangruber/brace-expansion/releases) - [Commits](juliangruber/brace-expansion@v2.0.2...v5.0.9) Updates `eslint` from 9.39.2 to 10.8.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Commits](eslint/eslint@v9.39.2...v10.8.0) Updates `typescript-eslint` from 8.54.0 to 8.65.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.65.0/packages/typescript-eslint) --- updated-dependencies: - dependency-name: brace-expansion dependency-version: 5.0.9 dependency-type: indirect - dependency-name: eslint dependency-version: 10.8.0 dependency-type: direct:development - dependency-name: typescript-eslint dependency-version: 8.65.0 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.6 to 8.5.25. - [Release notes](https://github.com/postcss/postcss/releases) - [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md) - [Commits](postcss/postcss@8.5.6...8.5.25) --- updated-dependencies: - dependency-name: postcss dependency-version: 8.5.25 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.1 to 4.3.1. - [Changelog](https://github.com/nodeca/js-yaml/blob/4.3.1/CHANGELOG.md) - [Commits](nodeca/js-yaml@4.1.1...4.3.1) --- updated-dependencies: - dependency-name: js-yaml dependency-version: 4.3.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps and [brace-expansion](https://github.com/juliangruber/brace-expansion). These dependencies needed to be updated together. Updates `brace-expansion` from 1.1.12 to 1.1.21 - [Release notes](https://github.com/juliangruber/brace-expansion/releases) - [Commits](juliangruber/brace-expansion@v1.1.12...v1.1.21) Updates `brace-expansion` from 2.0.2 to 2.1.7 - [Release notes](https://github.com/juliangruber/brace-expansion/releases) - [Commits](juliangruber/brace-expansion@v1.1.12...v1.1.21) --- updated-dependencies: - dependency-name: brace-expansion dependency-version: 1.1.21 dependency-type: indirect - dependency-name: brace-expansion dependency-version: 2.1.7 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [source-map-js](https://github.com/7rulnik/source-map-js) from 1.2.1 to 1.2.2. - [Release notes](https://github.com/7rulnik/source-map-js/releases) - [Changelog](https://github.com/7rulnik/source-map-js/blob/main/CHANGELOG.md) - [Commits](7rulnik/source-map-js@v1.2.1...v1.2.2) --- updated-dependencies: - dependency-name: source-map-js dependency-version: 1.2.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
…ap-js-1.2.2' into combined-dependabot-test
…4dc22ff7' into combined-dependabot-test
…4.3.1' into combined-dependabot-test
…8.5.25' into combined-dependabot-test # Conflicts: # package-lock.json
…2f75782b' into combined-dependabot-test
…52c55c59' into combined-dependabot-test # Conflicts: # package-lock.json # package.json
Merges the six open Dependabot PRs (#9, #12, #13, #14, #17, #18) onto main and resolves the package-lock.json conflicts by re-resolving the tree from the merged package.json. Dependency updates: - eslint 9.39.2 -> 10.12.0 (+ @eslint/js 10.0.1) - vite 7.3.1 -> 8.3.4 (+ @vitejs/plugin-react 5.2.0) - typescript-eslint 8.54.0 -> 8.71.2 - postcss, nanoid, source-map-js, brace-expansion to current patches ESLint 10 drops the peer range that eslint-plugin-react-hooks 7.0.1 declared, so that plugin is bumped to 7.1.1 (the first release accepting ^10). Without it `npm ci` fails outright with ERESOLVE. PRs #14 (js-yaml) and #9 (esbuild) are satisfied incidentally: ESLint 10 no longer depends on @eslint/eslintrc (js-yaml) and Vite 8 bundles rolldown instead of esbuild, so both packages leave the tree. CI ran Node 18.13.0, which is below the ^20.19.0 || ^22.13.0 || >=24 floor that ESLint 10 and Vite 8 declare; all workflows now pin 22.20.0. Also bumps the deprecated actions/checkout@v2,v3 and actions/setup-node@v2 to v4. constructorio-ui-plp is held at 1.8.0. Allowing it to float to 1.20.0 pulls in @constructor-io/constructorio-ui-components, which depends on @tailwindcss/vite and thus lightningcss (MPL-2.0) as a production dependency, failing npm run check-license. Verified locally on Node 22.20.0: npm ci, lint, tsc --noEmit, build, and cspell all pass, npm audit reports 0 vulnerabilities, and the built IIFE evaluates and exposes the CioPlp global. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Raising this job to 22.20.0 made `diffend npm install` fail with "npm error s.warn is not a function" -- diffend's npm wrapper does not support the npm that ships with Node 22. The job only runs npm install for the supply-chain scan and never invokes eslint or vite, so it does not need the newer runtime. The lint, license-check and spell-check jobs stay on 22.20.0, which is what ESLint 10 and Vite 8 require. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
HHHindawy
approved these changes
Oct 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Combines the six open Dependabot PRs onto
mainand raises CI's Node version so the upgraded tooling can actually run.Supersedes #9, #12, #13, #14, #17, #18. Dependabot's original commits are preserved in the history; the
package-lock.jsonconflicts between them were resolved by re-resolving the tree from the mergedpackage.json.Dependency updates
eslint@eslint/jsvite@vitejs/plugin-reacttypescript-eslinteslint-plugin-react-hookspostcssnanoidsource-map-jsbrace-expansionThree things reviewers should know
1.
eslint-plugin-react-hooks7.0.1 → 7.1.1 was mandatory, not opportunistic. ESLint 10 falls outside the peer range 7.0.1 declares, sonpm cifails outright withERESOLVE. 7.1.1 is the first release accepting^10.0.0. This is why #12 could not have merged green on its own.2. CI's Node was below its own dependencies' floor. All workflows pinned
18.13.0, but ESLint 10 and Vite 8 declare^20.19.0 || ^22.13.0 || >=24. Workflows now pin22.20.0. The deprecatedactions/checkout@v2,v3andactions/setup-node@v2are bumped tov4in the same pass.Worth noting: CI reported no checks at all on #9 and #12, so none of this surfaced upstream.
3. #14 and #9 are satisfied incidentally and can be closed rather than merged. ESLint 10 no longer depends on
@eslint/eslintrc(which brought injs-yaml), and Vite 8 bundlesrolldowninstead ofesbuild— both target packages leave the tree entirely.Deliberate exclusion:
constructorio-ui-plpheld at 1.8.0No Dependabot PR asked to move it, and letting it float to 1.20.0 has two side effects worth their own PR:
@constructor-io/constructorio-ui-components→@tailwindcss/vite→lightningcss(MPL-2.0) as a production dependency, which failsnpm run check-license— MPL-2.0 is not on the allowlist.@constructor-io/constructorio-client-javascript2.73.1 → 2.94.0, i.e. 21 minor versions of the live API client — a runtime behaviour change that shouldn't ride along in a lockfile merge.With it pinned, the production dependency tree is unchanged from
mainapart fromreact/react-dom19.2.4 → 19.3.0.Verification (local, Node 22.20.0)
npm cinpm run linttsc --noEmitnpm run build:plpcspellnpm auditCioPlpglobalnpm run check-licensePre-existing:
check-licensefails onmaintoolicense-checkerreads the root package asUNLICENSED(private: true, no resolvablelicensefield), so the job exits non-zero. I confirmed this fails identically on a cleanmainworktree — it is not caused by these upgrades, but it does mean the job is currently red on every PR. Every dependency license passes the allowlist. Happy to fix it here or separately.New Vite 8 build warnings (non-fatal)
Both build fine today but will matter in a future Vite major. Left alone to keep this PR to dependencies.
🤖 Generated with Claude Code