testing(vite-ecosystem-ci): add vite as direct dev depencency#6709
testing(vite-ecosystem-ci): add vite as direct dev depencency#6709
Conversation
📝 WalkthroughWalkthroughBumped Node engine constraints to ">=20.19" and added or relaxed Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
View your CI Pipeline Execution ↗ for commit ff1b934
☁️ Nx Cloud last updated this comment at |
There was a problem hiding this comment.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (3)
packages/react-router/package.json (1)
95-97:⚠️ Potential issue | 🟡 Minor
"node": ">=12"is inconsistent with Vite 7's Node.js requirement.Vite 7 requires Node.js 20.19+ or 22.12+, as Node.js 18 was dropped after reaching EOL in April 2025. With
vitenow an explicit direct devDependency, this inconsistency becomes more visible — any developer or CI job running Node.js < 20.19 will fail thevite buildscript. This engines field was pre-existing but is worth updating alongside this change.🛠️ Proposed fix
- "node": ">=12" + "node": ">=20.19.0"🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/react-router/package.json` around lines 95 - 97, The engines field currently specifies "node": ">=12" which is inconsistent with Vite 7's requirement; update the package.json "engines" entry to require a Node version compatible with Vite 7 (for example "node": ">=20.19" or ">=22.12" or a range that covers both, e.g., ">=20.19 || >=22.12") so CI and local builds won't fail when running npm/yarn scripts that invoke vite; locate the "engines" object in package.json and replace the node constraint accordingly.packages/router-ssr-query-core/package.json (1)
63-65:⚠️ Potential issue | 🟡 MinorSame
engines.node/ Vite 7 Node.js requirement mismatch asrouter-generator
"node": ">=12"(Line 64) is incompatible with Vite 7's Node.js requirement of 20.19+, 22.12+. Recommendation is the same as forpackages/router-generator: raise the engine constraint to>=20.19to accurately reflect the build-time requirement.🛠️ Suggested fix
"engines": { - "node": ">=12" + "node": ">=20.19" },Also applies to: 68-69
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/router-ssr-query-core/package.json` around lines 63 - 65, Update the package.json engines.node constraint to match Vite 7's minimum Node.js requirement: change the "engines": { "node": ">=12" } entry to "node": ">=20.19" (and update any duplicate engines.node entries elsewhere in this package, e.g., the other occurrence referenced around lines 68-69) so the build-time Node requirement is accurately represented.packages/router-generator/package.json (1)
64-65:⚠️ Potential issue | 🟡 Minor
engines.nodeis inconsistent with Vite 7's Node.js requirementThe package declares
"node": ">=12"(Line 65), but Vite 7 requires Node.js version 20.19+, 22.12+. Addingviteexplicitly todevDependenciessharpens this contradiction: any contributor (or CI runner) on Node 12–19 will fail atvite buildeven though the engine field advertises compatibility.Since Vite is build-time only, published package consumers are not affected, but the engine constraint should either be narrowed to
>=20.19or the Vite requirement should be noted in contributing docs.🛠️ Suggested fix
"engines": { - "node": ">=12" + "node": ">=20.19" },Also applies to: 78-79
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/router-generator/package.json` around lines 64 - 65, The engines.node field currently says ">=12" but Vite 7 (added to devDependencies) requires Node 20.19+ (and 22.12+), so update the package metadata to reflect the build-time Node requirement: change the engines.node constraint to a minimum compatible version (e.g., ">=20.19") and/or add a clear note in CONTRIBUTING.md that contributors and CI must use Node 20.19+ for local builds (reference the engines.node field and the vite devDependency to locate where to change and document).
🧹 Nitpick comments (2)
packages/react-router-ssr-query/package.json (1)
70-70: Consider upgrading@vitejs/plugin-reactto^5.x.The latest published version of
@vitejs/plugin-reactis5.1.4. The current^4.3.4range will resolve to the latest 4.x release, which is fine —@vitejs/plugin-react4.x explicitly added Vite 7 compatibility — but since you're now pinning Vite 7 directly, aligning the plugin to the current major (^5.x) keeps the dependency surface consistent.♻️ Proposed update
- "@vitejs/plugin-react": "^4.3.4", + "@vitejs/plugin-react": "^5.1.4",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/react-router-ssr-query/package.json` at line 70, Update the "@vitejs/plugin-react" dependency in package.json from "^4.3.4" to a 5.x range (e.g. "^5.1.4") by editing the "@vitejs/plugin-react" entry, then run your package manager install to refresh node_modules and the lockfile and verify the build/tests (the targeted symbol is the "@vitejs/plugin-react" dependency in package.json).packages/router-vite-plugin/package.json (1)
68-71: AddvitetopeerDependenciesfor this Vite plugin package.The package
@tanstack/router-vite-pluginis explicitly a Vite-specific wrapper, and establishing convention for Vite plugin packages is to declareviteinpeerDependenciesso consumers receive package-manager warnings if they use an incompatible Vite version. While the underlying@tanstack/router-pluginalready declaresviteas an optional peer dependency, this wrapper should also declare it to be explicit about its bundler target.🔧 Suggested addition
"devDependencies": { "vite": "^7.3.1" - } + }, + "peerDependencies": { + "vite": ">=5.0.0 || >=6.0.0 || >=7.0.0" + }🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/router-vite-plugin/package.json` around lines 68 - 71, Update the package manifest for the Vite plugin package by adding "vite" with an appropriate semver range to the peerDependencies section of packages/router-vite-plugin/package.json (so consumers get warnings for incompatible Vite versions); keep "vite" in devDependencies for local dev tooling but ensure the peerDependencies entry mirrors the supported range (e.g., same major range used by `@tanstack/router-plugin`) and include it under the "peerDependencies" key alongside any existing peers.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@packages/history/package.json`:
- Around line 58-60: The package.json "engines" entry currently pins "node":
">=12" which is incompatible with Vite 7; update the "engines" -> "node" field
(replacing the existing "node": ">=12" value) to require a modern Node runtime
that satisfies Vite 7 (e.g. ">=20.19.0") and ensure the change is applied
consistently across related packages (same "engines" field in other package.json
files if present).
In `@packages/valibot-adapter/package.json`:
- Line 73: The package.json declares "engines": {"node": ">=12"} but you added
"vite": "^7.3.1" which requires Node >=20.19 (or 22.12+), so update the
engines.node constraint to match Vite 7 (for example ">=20.19") in this
package.json and the sibling packages mentioned (valibot-adapter, e2e/e2e-utils,
packages/router-cli, packages/router-utils, packages/arktype-adapter) so the
engines field aligns with the vite devDependency and avoids a contradictory Node
requirement.
---
Outside diff comments:
In `@packages/react-router/package.json`:
- Around line 95-97: The engines field currently specifies "node": ">=12" which
is inconsistent with Vite 7's requirement; update the package.json "engines"
entry to require a Node version compatible with Vite 7 (for example "node":
">=20.19" or ">=22.12" or a range that covers both, e.g., ">=20.19 || >=22.12")
so CI and local builds won't fail when running npm/yarn scripts that invoke
vite; locate the "engines" object in package.json and replace the node
constraint accordingly.
In `@packages/router-generator/package.json`:
- Around line 64-65: The engines.node field currently says ">=12" but Vite 7
(added to devDependencies) requires Node 20.19+ (and 22.12+), so update the
package metadata to reflect the build-time Node requirement: change the
engines.node constraint to a minimum compatible version (e.g., ">=20.19") and/or
add a clear note in CONTRIBUTING.md that contributors and CI must use Node
20.19+ for local builds (reference the engines.node field and the vite
devDependency to locate where to change and document).
In `@packages/router-ssr-query-core/package.json`:
- Around line 63-65: Update the package.json engines.node constraint to match
Vite 7's minimum Node.js requirement: change the "engines": { "node": ">=12" }
entry to "node": ">=20.19" (and update any duplicate engines.node entries
elsewhere in this package, e.g., the other occurrence referenced around lines
68-69) so the build-time Node requirement is accurately represented.
---
Duplicate comments:
In `@e2e/e2e-utils/package.json`:
- Line 38: The package.json currently depends on "vite" ^7.3.1 which requires a
newer Node than the repo's "engines" declaration; update this package's
package.json to resolve the mismatch by either bumping the "engines" Node
version to meet Vite 7's requirement or pinning/downgrading "vite" to a version
compatible with the current "engines". Edit the package.json "vite" dependency
entry and the "engines" field so they are consistent (mirror the change made in
packages/valibot-adapter), ensuring the "vite" version and Node engine spec
align.
In `@packages/arktype-adapter/package.json`:
- Line 73: The package.json in packages/arktype-adapter declares "vite":
"^7.3.1" but the package's "engines" field does not match Vite v7's Node
requirement (same mismatch flagged for packages/valibot-adapter); update the
package.json "engines" to the same Node version range used for
packages/valibot-adapter (or alternatively pin Vite to a version compatible with
the current "engines") so Node requirements are consistent across adapters and
satisfy Vite v7; locate the package.json entry with "vite": "^7.3.1" and adjust
either the "engines" field or the Vite version accordingly.
In `@packages/router-cli/package.json`:
- Line 75: The package.json in packages/router-cli lists "vite": "^7.3.1" but
its "engines" Node version is inconsistent with Vite 7's Node requirement;
update the "engines" field in packages/router-cli/package.json to match the same
Node engine constraint used in packages/valibot-adapter (i.e., set engines.node
to the same version/range that supports Vite 7) so the Node requirement is
consistent across packages and satisfies Vite's minimum Node version.
In `@packages/router-utils/package.json`:
- Line 80: The package.json declares "vite": "^7.3.1" but the "engines" field
does not match Vite 7's Node requirement; update the package.json "engines"
entry so the "node" requirement is aligned (e.g., set "node": ">=18" to match
Vite 7 and the other package `valibot-adapter`) so all packages use the same
Node engine baseline.
---
Nitpick comments:
In `@packages/react-router-ssr-query/package.json`:
- Line 70: Update the "@vitejs/plugin-react" dependency in package.json from
"^4.3.4" to a 5.x range (e.g. "^5.1.4") by editing the "@vitejs/plugin-react"
entry, then run your package manager install to refresh node_modules and the
lockfile and verify the build/tests (the targeted symbol is the
"@vitejs/plugin-react" dependency in package.json).
In `@packages/router-vite-plugin/package.json`:
- Around line 68-71: Update the package manifest for the Vite plugin package by
adding "vite" with an appropriate semver range to the peerDependencies section
of packages/router-vite-plugin/package.json (so consumers get warnings for
incompatible Vite versions); keep "vite" in devDependencies for local dev
tooling but ensure the peerDependencies entry mirrors the supported range (e.g.,
same major range used by `@tanstack/router-plugin`) and include it under the
"peerDependencies" key alongside any existing peers.
e4b5f93 to
c3669ac
Compare
There was a problem hiding this comment.
Actionable comments posted: 9
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
packages/vue-router-devtools/package.json (1)
59-62:⚠️ Potential issue | 🟠 Major
vitemust move fromdependenciestodevDependencies.
viteis a build-time tool. Placing it underdependencies(rather thandevDependencies) causes every consumer of@tanstack/vue-router-devtoolsto transitively install Vite at runtime, which is incorrect and inflates install cost for end users. The PR's stated goal is explicitly to add Vite as a dev dependency to allow CI overrides — this file has it in the wrong section. This appears to be a pre-existing misplacement that should be corrected as part of this PR.🔧 Proposed fix
"dependencies": { - "@tanstack/router-devtools-core": "workspace:*", - "vite": "^7.3.1" + "@tanstack/router-devtools-core": "workspace:*" }, "devDependencies": { "@vitejs/plugin-vue-jsx": "^4.1.2", + "vite": "^7.3.1", "vue": "^3.5.13" },🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/vue-router-devtools/package.json` around lines 59 - 62, Move the "vite" entry out of the "dependencies" object and add it into "devDependencies" for the `@tanstack/vue-router-devtools` package; specifically remove "vite": "^7.3.1" from the dependencies section and place the same key/value under devDependencies so Vite is only a build-time/dev tool and not transitively installed by consumers.packages/router-plugin/package.json (1)
121-125:⚠️ Potential issue | 🟠 MajorMissing
vitedevDependency in devDependenciesThe
@tanstack/router-pluginpackage runsvite buildin its build script and declaresviteas an optional peer dependency, yetviteis not listed in its devDependencies. Every other package in the monorepo with avite buildscript includes"vite": "^7.3.1"in devDependencies. Adding it here ensures consistency and allows build-time overrides to function correctly.Proposed fix
"devDependencies": { "@types/babel__core": "^7.20.5", "@types/babel__template": "^7.4.4", - "@types/babel__traverse": "^7.28.0" + "@types/babel__traverse": "^7.28.0", + "vite": "^7.3.1" },🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/router-plugin/package.json` around lines 121 - 125, The package.json for `@tanstack/router-plugin` is missing vite in devDependencies even though its build script runs "vite build" and other packages include "vite": "^7.3.1"; update the package.json devDependencies block to add "vite": "^7.3.1" so the build script has a local devDependency available and matches the monorepo convention (edit the devDependencies entry in package.json for the package referenced in this PR).
🧹 Nitpick comments (4)
packages/router-vite-plugin/package.json (1)
64-64:>=20engine field is imprecise relative to Vite 7's actual minimum.
vite7 requires Node.js20.19+or22.12+, having dropped Node 18 at its EOL. The engine field here is set to>=20, which permits Node 20.0.0–20.18.x — a range that will fail when Vite 7 is actually installed or invoked. Sinceviteis adevDependency, this only affects contributors and CI rather than package consumers, and Vite 7.3.1's ownenginesfield will enforce the constraint transitively. Still, the advisory value of this package'senginesfield is weakened by the imprecision.Consider tightening to
>=20.19to faithfully document the actual minimum required by thedevDependencies.🔧 Suggested fix
- "node": ">=20" + "node": ">=20.19"🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/router-vite-plugin/package.json` at line 64, Update the package.json engines field to accurately reflect Vite 7's minimum Node requirement: change the "node" value from ">=20" to ">=20.19" so contributors/CI are warned about the actual minimum; locate the "engines" entry in package.json and replace the existing "node": ">=20" with "node": ">=20.19".packages/solid-router-devtools/package.json (2)
17-25:"react"keyword in a SolidJS packageLine 18 includes
"react"in the keywords array for@tanstack/solid-router-devtools. This is a copy-paste artifact from the React devtools package and may cause unwanted search/discovery noise.♻️ Proposed fix
"keywords": [ - "react", "location", "router", ... ]🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/solid-router-devtools/package.json` around lines 17 - 25, The package.json for `@tanstack/solid-router-devtools` contains an incorrect "react" keyword (copy-paste artifact); open the package.json and remove "react" from the "keywords" array and replace/add the appropriate SolidJS keyword(s) such as "solid" or "solidjs" so the keywords accurately reflect the package (look for the "keywords" array entry in the package.json to update).
77-79: Peer dependencies should useworkspace:*instead ofworkspace:^
@tanstack/router-coreand@tanstack/solid-routerare internal workspace packages but useworkspace:^. Based on learnings, internal dependencies should use theworkspace:*protocol.♻️ Proposed fix
"peerDependencies": { "@tanstack/router-core": "workspace:^", + "@tanstack/router-core": "workspace:*", "@tanstack/solid-router": "workspace:^", + "@tanstack/solid-router": "workspace:*", "solid-js": "^1.9.10" }🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/solid-router-devtools/package.json` around lines 77 - 79, Update the peerDependencies entries for the internal workspace packages to use the workspace:* protocol instead of workspace:^; specifically change "@tanstack/router-core" and "@tanstack/solid-router" in package.json from "workspace:^" to "workspace:*" so they resolve to the local workspace packages reliably.packages/vue-router/package.json (1)
69-71:>=20is slightly loose relative to what Vite 7 actually requires at runtime.Vite 7 requires Node.js 20.19+, 22.12+ (to enable native
require(esm)). Setting the engine floor to>=20means a contributor on Node 20.0–20.18 would satisfy this package'senginesconstraint but still fail when Vite 7 tries to run. Sinceviteis adevDependencythis doesn't affect package consumers, but it can produce confusing build failures in CI or local setups. Consider tightening to">=20.19"(or">=20.19 || >=22.12") to match Vite 7's actual minimum.🛠️ Proposed fix
"engines": { - "node": ">=20" + "node": ">=20.19" },🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/vue-router/package.json` around lines 69 - 71, The engines entry in package.json currently says "node": ">=20" which is too loose for Vite 7; update the "engines" -> "node" value in packages/vue-router/package.json to match Vite 7's runtime minimum (for example use ">=20.19" or the range ">=20.19 || >=22.12") so contributors running Node 20.0–20.18 won't encounter mysterious Vite failures; change the string in the engines object and run the dev/test/CI commands that use the devDependency vite to verify the new constraint works as expected.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@e2e/e2e-utils/package.json`:
- Line 33: The package.json's engines.node currently uses ">=20" which allows
Node 20.0.0–20.18.x where Vite 7 fails; update the engines.node field to a
semver range that enforces Vite's minima (for example: ">=20.19.0 <21 ||
>=22.12.0") so CI and local installs reject unsupported Node versions—edit the
engines.node entry in package.json accordingly.
In `@packages/history/package.json`:
- Around line 58-60: Update the engines constraint in package.json so the "node"
field requires Node.js 20.19.0 or newer (e.g., change "node": ">=20" to "node":
">=20.19.0") to ensure compatibility with Vite 7; locate the "engines" object in
packages/history/package.json and replace the existing value accordingly.
In `@packages/react-router-devtools/package.json`:
- Line 62: The engines entry "node": ">=20" is too loose for the pinned
devDependency vite@^7.3.1 which requires Node 20.19+ (or 22.12+); update the
package.json engines field to "node": ">=20.19.0" so the constraint matches Vite
7's minimum Node.js requirement and prevents installing on unsupported 20.x
releases.
In `@packages/router-devtools-core/package.json`:
- Line 62: Update the package.json engines.node constraint to require the Vite 7
minimums: replace the loose ">=20" value for engines.node with ">=20.19 ||
>=22.12" so Node 20.0.0–20.18.x are excluded; apply the same change to other
affected packages (e.g., react-router-devtools, solid-router-devtools,
router-vite-plugin) to avoid CI/developer build failures when running the
"build" script that invokes vite.
In `@packages/router-devtools/package.json`:
- Line 62: The engines.node range in package.json is too permissive ("node":
">=20") and allows unsupported Node 20.0–20.18; update the engines.node entry to
require Node versions compatible with Vite 7 (for example set "engines.node" to
">=20.19.0 || >=22.12.0") so CI and developers on older 20.x patch releases are
excluded.
In `@packages/router-generator/package.json`:
- Line 65: Update the engines.node constraint in packages/router-generator's
package.json: replace the loose ">=20" with a semver range that matches Vite 7's
requirements (e.g. ">=20.19.0 || >=22.12.0") so that running the existing
scripts.build (vite build) won't pick an unsupported Node 20.x subpatch; edit
the engines.node field accordingly.
In `@packages/router-plugin/package.json`:
- Around line 103-105: The package.json change raises the Node engine constraint
("engines.node" in package.json) from ">=12" to ">=20", which is a
semver-breaking change for downstream consumers; either (A) keep the
engines.node >=20 but ensure the next published release is a major release (bump
the package version major according to your release tooling) or (B) if you
intend a non-major release, roll back the engines.node change to the previous
constraint (e.g., ">=12") and add a clear changelog entry calling out that Node
support was tightened and will be a breaking change in the next major; reference
the engines.node field in package.json and the project changelog entry when
making the change.
In `@packages/solid-router-devtools/package.json`:
- Line 66: The "node" engine constraint in packages/solid-router-devtools's
package.json is too broad (">=20") and permits Node 20.0–20.18 which are
incompatible with Vite 7; update the package.json engines.node field to require
Node 20.19+ or 22.12+ (for example ">=20.19 || >=22.12") so
installs/environments are prevented from using older 20.x releases.
In `@packages/virtual-file-routes/package.json`:
- Around line 54-56: The engines.node constraint in package.json is too loose
versus the Vite 7 devDependency (vite@^7.3.1); update the "engines": { "node":
... } entry to require Node versions compatible with Vite 7 (for example
">=20.19.0 || >=22.12.0") so Node 20.0–20.18 won't satisfy the package but will
avoid install-time failures with vite@^7.3.1.
---
Outside diff comments:
In `@packages/router-plugin/package.json`:
- Around line 121-125: The package.json for `@tanstack/router-plugin` is missing
vite in devDependencies even though its build script runs "vite build" and other
packages include "vite": "^7.3.1"; update the package.json devDependencies block
to add "vite": "^7.3.1" so the build script has a local devDependency available
and matches the monorepo convention (edit the devDependencies entry in
package.json for the package referenced in this PR).
In `@packages/vue-router-devtools/package.json`:
- Around line 59-62: Move the "vite" entry out of the "dependencies" object and
add it into "devDependencies" for the `@tanstack/vue-router-devtools` package;
specifically remove "vite": "^7.3.1" from the dependencies section and place the
same key/value under devDependencies so Vite is only a build-time/dev tool and
not transitively installed by consumers.
---
Nitpick comments:
In `@packages/router-vite-plugin/package.json`:
- Line 64: Update the package.json engines field to accurately reflect Vite 7's
minimum Node requirement: change the "node" value from ">=20" to ">=20.19" so
contributors/CI are warned about the actual minimum; locate the "engines" entry
in package.json and replace the existing "node": ">=20" with "node": ">=20.19".
In `@packages/solid-router-devtools/package.json`:
- Around line 17-25: The package.json for `@tanstack/solid-router-devtools`
contains an incorrect "react" keyword (copy-paste artifact); open the
package.json and remove "react" from the "keywords" array and replace/add the
appropriate SolidJS keyword(s) such as "solid" or "solidjs" so the keywords
accurately reflect the package (look for the "keywords" array entry in the
package.json to update).
- Around line 77-79: Update the peerDependencies entries for the internal
workspace packages to use the workspace:* protocol instead of workspace:^;
specifically change "@tanstack/router-core" and "@tanstack/solid-router" in
package.json from "workspace:^" to "workspace:*" so they resolve to the local
workspace packages reliably.
In `@packages/vue-router/package.json`:
- Around line 69-71: The engines entry in package.json currently says "node":
">=20" which is too loose for Vite 7; update the "engines" -> "node" value in
packages/vue-router/package.json to match Vite 7's runtime minimum (for example
use ">=20.19" or the range ">=20.19 || >=22.12") so contributors running Node
20.0–20.18 won't encounter mysterious Vite failures; change the string in the
engines object and run the dev/test/CI commands that use the devDependency vite
to verify the new constraint works as expected.
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
packages/vue-router-devtools/package.json (1)
59-66:⚠️ Potential issue | 🔴 Critical
viteis mis-placed underdependenciesinstead ofdevDependencies.The PR's stated intent is to add Vite as a dev dependency so the vite-ecosystem-ci workflow can override it. However, in the current diff
"vite": "*"sits in thedependenciesblock (Line 61), not indevDependencies(Lines 63–66). Publishing withviteindependencieswill force every consumer of@tanstack/vue-router-devtoolsto install Vite and all of its transitive dependencies as a runtime dep, significantly bloating installs. The AI summary for this file also confirms the original entry was indevDependencies.🐛 Proposed fix
"dependencies": { "@tanstack/router-devtools-core": "workspace:*", - "vite": "*" }, "devDependencies": { "@vitejs/plugin-vue-jsx": "^4.1.2", - "vue": "^3.5.13" + "vue": "^3.5.13", + "vite": "*" },🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/vue-router-devtools/package.json` around lines 59 - 66, The package.json currently lists "vite": "*" under "dependencies" which wrongly makes Vite a runtime dependency; move the "vite": "*" entry from the "dependencies" object into the "devDependencies" object (alongside "@vitejs/plugin-vue-jsx" and "vue") so Vite is only a dev-time dependency for `@tanstack/vue-router-devtools` and can be overridden by the vite-ecosystem-ci workflow.
🧹 Nitpick comments (2)
packages/solid-start/package.json (1)
116-120: Consider aligningdevDependencies.vitewith thepeerDependenciesrange.
devDependenciesuses"*"(any version, including pre-7) whilepeerDependenciesdeclares">=7.0.0". The vite-ecosystem-ci override works equally well with">=7.0.0", which also documents the minimum supported version clearly and avoids accidentally resolving a very old Vite in environments without a lockfile.♻️ Proposed alignment
"devDependencies": { "@tanstack/router-utils": "workspace:*", - "vite": "*" + "vite": ">=7.0.0" }, "peerDependencies": { "solid-js": ">=1.0.0", "vite": ">=7.0.0" }🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/solid-start/package.json` around lines 116 - 120, Update devDependencies.vite from "*" to the same minimum range as peerDependencies (">=7.0.0") so the package declares a consistent supported Vite baseline; edit the package.json entry for devDependencies.vite to ">=7.0.0" to match the peerDependencies.vite range and avoid resolving older Vite versions.packages/react-start-client/package.json (1)
70-71: Upgrade@vitejs/plugin-reactto ^5.0.0 for Vite ecosystem-ci compatibility.The current pin of
"^4.3.4"limits Vite support to v6.0.0, while@vitejs/plugin-react@5.xsupports up to v7.0.0. When vite-ecosystem-ci overrides Vite to v8,@vitejs/plugin-react@4.xwill produce unmet peer dependency warnings or failures that may obscure whether incompatibility stems from the TanStack code or just the plugin's peer constraint.Upgrading to
"^5.0.0"ensures you're on the actively maintained branch (latest is 5.1.4), which will be the first to support Vite 8 when it ships. The v4.x line appears to be winding down (latest patch is 4.7.0).♻️ Proposed update
- "@vitejs/plugin-react": "^4.3.4", + "@vitejs/plugin-react": "^5.0.0",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/react-start-client/package.json` around lines 70 - 71, The package.json currently pins "@vitejs/plugin-react" at "^4.3.4", which can produce peer dependency warnings with newer Vite versions; update the dependency version specifier for "@vitejs/plugin-react" to "^5.0.0" (or a later 5.x like "^5.1.4") in packages/react-start-client's package.json to ensure compatibility with Vite 7/8; run npm/yarn install afterwards and verify build/start scripts still work and no peer dependency warnings remain.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Outside diff comments:
In `@packages/vue-router-devtools/package.json`:
- Around line 59-66: The package.json currently lists "vite": "*" under
"dependencies" which wrongly makes Vite a runtime dependency; move the "vite":
"*" entry from the "dependencies" object into the "devDependencies" object
(alongside "@vitejs/plugin-vue-jsx" and "vue") so Vite is only a dev-time
dependency for `@tanstack/vue-router-devtools` and can be overridden by the
vite-ecosystem-ci workflow.
---
Duplicate comments:
In `@packages/valibot-adapter/package.json`:
- Around line 63-73: The engines.node constraint in package.json has been
updated to ">=20.19" to match Vite 7's minimum; ensure the "engines" object
(key: "node") in packages/valibot-adapter/package.json is set to ">=20.19" and
that devDependencies entries (notably "vite") remain compatible with Node
>=20.19—no further change required other than confirming package.json now
contains the updated "engines": {"node":"=>20.19"} value and that CI/test
configs (if any) reflect the new Node minimum.
In `@packages/virtual-file-routes/package.json`:
- Around line 54-59: Update the Node engine constraint to satisfy Vite 7 by
setting "engines".node to ">=20.19" in packages/virtual-file-routes/package.json
(the current diff already shows this change) and ensure devDependencies still
lists "vite"; also propagate the same minimum Node constraint to any other
package.json files that reference "vite" to avoid engine mismatches, then run
the build/CI to confirm Vite's engine check passes.
---
Nitpick comments:
In `@packages/react-start-client/package.json`:
- Around line 70-71: The package.json currently pins "@vitejs/plugin-react" at
"^4.3.4", which can produce peer dependency warnings with newer Vite versions;
update the dependency version specifier for "@vitejs/plugin-react" to "^5.0.0"
(or a later 5.x like "^5.1.4") in packages/react-start-client's package.json to
ensure compatibility with Vite 7/8; run npm/yarn install afterwards and verify
build/start scripts still work and no peer dependency warnings remain.
In `@packages/solid-start/package.json`:
- Around line 116-120: Update devDependencies.vite from "*" to the same minimum
range as peerDependencies (">=7.0.0") so the package declares a consistent
supported Vite baseline; edit the package.json entry for devDependencies.vite to
">=7.0.0" to match the peerDependencies.vite range and avoid resolving older
Vite versions.
This fixes the vite-ecosystem-ci which will override the vite verison from vite 7 to vite 8, but it can't do that unless we have vite in the dev dependencies of each package.
Vite was declared in the root package.json, but that's not sufficient to override e.g. when a package has "vite-plugin-dts" which has vite as a peer dependency. Adding vite as a dev dependency in the same package does allow for the override.
Since we use Vite 7, set node >= 20, because vite 7 doesn't support node 18.
Summary by CodeRabbit