-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
chore: update query to consistent 5.90 #5634
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
View your CI Pipeline Execution ↗ for commit 170adaf
☁️ Nx Cloud last updated this comment at |
WalkthroughWidespread dependency bumps of TanStack Query packages to 5.90.0 across manifests; minor Solid Start code edits: QueryClient instantiation simplified, several route loaders now return query promises and add Changes
Sequence Diagram(s)sequenceDiagram
participant Client
participant Router
participant Loader
participant QueryClient
Note over Router,QueryClient #f0f7ff: Solid Start SSR integration (updated)
Client->>Router: request route (sync)
Router->>Loader: invoke loader({ context, params })
alt Before
Loader->>QueryClient: ensureQueryData(queryKey) (await + return data)
QueryClient-->>Loader: data
Loader-->>Router: return data
else After
Loader->>QueryClient: fetchQuery/ensureQueryData(queryKey) -> Promise
QueryClient-->>Loader: Promise
Loader-->>Router: return Promise (route ssr: 'data-only')
end
Router->>Client: render (SSR consumes returned data/promise)
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes
Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ 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 |
More templates
@tanstack/arktype-adapter
@tanstack/directive-functions-plugin
@tanstack/eslint-plugin-router
@tanstack/history
@tanstack/nitro-v2-vite-plugin
@tanstack/react-router
@tanstack/react-router-devtools
@tanstack/react-router-ssr-query
@tanstack/react-start
@tanstack/react-start-client
@tanstack/react-start-server
@tanstack/router-cli
@tanstack/router-core
@tanstack/router-devtools
@tanstack/router-devtools-core
@tanstack/router-generator
@tanstack/router-plugin
@tanstack/router-ssr-query-core
@tanstack/router-utils
@tanstack/router-vite-plugin
@tanstack/server-functions-plugin
@tanstack/solid-router
@tanstack/solid-router-devtools
@tanstack/solid-router-ssr-query
@tanstack/solid-start
@tanstack/solid-start-client
@tanstack/solid-start-server
@tanstack/start-client-core
@tanstack/start-plugin-core
@tanstack/start-server-core
@tanstack/start-static-server-functions
@tanstack/start-storage-context
@tanstack/valibot-adapter
@tanstack/virtual-file-routes
@tanstack/zod-adapter
commit: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
🧹 Nitpick comments (1)
e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsx (1)
20-27: Loader return shape clarity and minor perf nit.Current logic returns the fetch promise only for 'sync' and otherwise yields undefined. That’s fine, but:
- Optional: make the 'async' branch explicit (return undefined) to document intent and help TS inference.
- Optional: in 'data-only' SSR, starting fetchQuery without returning it for 'async' does server work that isn’t hydrated; consider skipping the fetch in that branch.
Example tweak:
loader: ({ context, params }) => { - const queryPromise = context.queryClient.fetchQuery(context.queryOptions) - if (params.type === 'sync') { - return queryPromise - } + if (params.type === 'sync') { + return context.queryClient.fetchQuery(context.queryOptions) + } + return undefined },
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (37)
e2e/react-router/basic-react-query-file-based/package.json(1 hunks)e2e/react-router/basic-react-query/package.json(1 hunks)e2e/react-start/basic-react-query/package.json(1 hunks)e2e/react-start/query-integration/package.json(1 hunks)e2e/react-start/server-functions/package.json(1 hunks)e2e/react-start/server-routes/package.json(1 hunks)e2e/solid-start/basic-solid-query/package.json(1 hunks)e2e/solid-start/query-integration/package.json(1 hunks)e2e/solid-start/query-integration/src/router.tsx(1 hunks)e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsx(1 hunks)e2e/solid-start/query-integration/src/routes/useQuery.tsx(2 hunks)e2e/solid-start/server-routes/src/routes/methods/only-any.tsx(2 hunks)examples/react/basic-default-search-params/package.json(1 hunks)examples/react/basic-react-query-file-based/package.json(1 hunks)examples/react/basic-react-query/package.json(1 hunks)examples/react/kitchen-sink-react-query-file-based/package.json(1 hunks)examples/react/kitchen-sink-react-query/package.json(1 hunks)examples/react/large-file-based/package.json(1 hunks)examples/react/location-masking/package.json(1 hunks)examples/react/navigation-blocking/package.json(1 hunks)examples/react/router-monorepo-react-query/package.json(1 hunks)examples/react/router-monorepo-react-query/packages/app/package.json(1 hunks)examples/react/router-monorepo-react-query/packages/post-feature/package.json(1 hunks)examples/react/router-monorepo-react-query/packages/post-query/package.json(1 hunks)examples/react/router-monorepo-react-query/packages/router/package.json(1 hunks)examples/react/router-monorepo-simple-lazy/packages/post-feature/package.json(1 hunks)examples/react/search-validator-adapters/package.json(1 hunks)examples/react/start-basic-react-query/package.json(1 hunks)examples/react/start-convex-trellaux/package.json(1 hunks)examples/react/start-large/package.json(1 hunks)examples/react/start-trellaux/package.json(1 hunks)examples/react/with-trpc-react-query/package.json(1 hunks)examples/solid/start-basic-solid-query/package.json(1 hunks)package.json(1 hunks)packages/react-router-ssr-query/package.json(1 hunks)packages/router-ssr-query-core/package.json(1 hunks)packages/solid-router-ssr-query/package.json(1 hunks)
🧰 Additional context used
📓 Path-based instructions (5)
**/package.json
📄 CodeRabbit inference engine (AGENTS.md)
Use workspace:* protocol for internal dependencies in package.json files
Files:
e2e/react-router/basic-react-query-file-based/package.jsonexamples/react/start-large/package.jsonexamples/react/router-monorepo-react-query/package.jsonexamples/react/navigation-blocking/package.jsonexamples/react/start-convex-trellaux/package.jsone2e/react-router/basic-react-query/package.jsonexamples/react/router-monorepo-react-query/packages/router/package.jsone2e/react-start/basic-react-query/package.jsonexamples/react/kitchen-sink-react-query/package.jsone2e/react-start/server-routes/package.jsonexamples/react/router-monorepo-simple-lazy/packages/post-feature/package.jsonexamples/react/router-monorepo-react-query/packages/app/package.jsone2e/solid-start/query-integration/package.jsonexamples/react/router-monorepo-react-query/packages/post-feature/package.jsone2e/react-start/query-integration/package.jsonexamples/react/location-masking/package.jsonexamples/react/start-trellaux/package.jsonexamples/react/router-monorepo-react-query/packages/post-query/package.jsone2e/solid-start/basic-solid-query/package.jsonpackage.jsonpackages/router-ssr-query-core/package.jsone2e/react-start/server-functions/package.jsonexamples/react/basic-react-query-file-based/package.jsonexamples/react/large-file-based/package.jsonexamples/react/with-trpc-react-query/package.jsonpackages/solid-router-ssr-query/package.jsonexamples/react/start-basic-react-query/package.jsonexamples/solid/start-basic-solid-query/package.jsonexamples/react/basic-default-search-params/package.jsonexamples/react/search-validator-adapters/package.jsonexamples/react/basic-react-query/package.jsonpackages/react-router-ssr-query/package.jsonexamples/react/kitchen-sink-react-query-file-based/package.json
e2e/**
📄 CodeRabbit inference engine (AGENTS.md)
Store end-to-end tests under the e2e/ directory
Files:
e2e/react-router/basic-react-query-file-based/package.jsone2e/react-router/basic-react-query/package.jsone2e/react-start/basic-react-query/package.jsone2e/react-start/server-routes/package.jsone2e/solid-start/query-integration/package.jsone2e/react-start/query-integration/package.jsone2e/solid-start/basic-solid-query/package.jsone2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsxe2e/solid-start/query-integration/src/router.tsxe2e/react-start/server-functions/package.jsone2e/solid-start/query-integration/src/routes/useQuery.tsxe2e/solid-start/server-routes/src/routes/methods/only-any.tsx
examples/{react,solid}/**
📄 CodeRabbit inference engine (AGENTS.md)
Keep example applications under examples/react/ and examples/solid/
Files:
examples/react/start-large/package.jsonexamples/react/router-monorepo-react-query/package.jsonexamples/react/navigation-blocking/package.jsonexamples/react/start-convex-trellaux/package.jsonexamples/react/router-monorepo-react-query/packages/router/package.jsonexamples/react/kitchen-sink-react-query/package.jsonexamples/react/router-monorepo-simple-lazy/packages/post-feature/package.jsonexamples/react/router-monorepo-react-query/packages/app/package.jsonexamples/react/router-monorepo-react-query/packages/post-feature/package.jsonexamples/react/location-masking/package.jsonexamples/react/start-trellaux/package.jsonexamples/react/router-monorepo-react-query/packages/post-query/package.jsonexamples/react/basic-react-query-file-based/package.jsonexamples/react/large-file-based/package.jsonexamples/react/with-trpc-react-query/package.jsonexamples/react/start-basic-react-query/package.jsonexamples/solid/start-basic-solid-query/package.jsonexamples/react/basic-default-search-params/package.jsonexamples/react/search-validator-adapters/package.jsonexamples/react/basic-react-query/package.jsonexamples/react/kitchen-sink-react-query-file-based/package.json
**/*.{ts,tsx}
📄 CodeRabbit inference engine (AGENTS.md)
Use TypeScript in strict mode with extensive type safety across the codebase
Files:
e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsxe2e/solid-start/query-integration/src/router.tsxe2e/solid-start/query-integration/src/routes/useQuery.tsxe2e/solid-start/server-routes/src/routes/methods/only-any.tsx
**/src/routes/**
📄 CodeRabbit inference engine (AGENTS.md)
Place file-based routes under src/routes/ directories
Files:
e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsxe2e/solid-start/query-integration/src/routes/useQuery.tsxe2e/solid-start/server-routes/src/routes/methods/only-any.tsx
🧬 Code graph analysis (1)
e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsx (2)
e2e/solid-start/query-integration/src/routes/useQuery.tsx (1)
Route(7-13)e2e/solid-start/query-integration/src/routes/__root.tsx (1)
Route(13-25)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: Test
- GitHub Check: Preview
🔇 Additional comments (32)
e2e/react-router/basic-react-query-file-based/package.json (1)
15-16: Version bumps align with repository-wide TanStack Query 5.90.0 update.Dependency versions updated to ^5.90.0. Internal dependencies correctly use
workspace:*protocol. File placement follows coding guidelines.e2e/react-start/basic-react-query/package.json (1)
14-15: Version bumps align with repository-wide TanStack Query 5.90.0 update.Dependency versions updated to ^5.90.0. Internal dependencies correctly use
workspace:*protocol. File placement follows coding guidelines.examples/react/basic-default-search-params/package.json (1)
13-13: Version bump aligns with repository-wide TanStack Query 5.90.0 update.@tanstack/react-query updated to ^5.90.0. File placement follows coding guidelines for example applications.
e2e/react-router/basic-react-query/package.json (1)
15-16: Version bumps align with repository-wide TanStack Query 5.90.0 update.Dependency versions updated to ^5.90.0. Internal dependencies correctly use
workspace:*protocol. File placement follows coding guidelines.e2e/react-start/query-integration/package.json (1)
14-15: Version bumps align with repository-wide TanStack Query 5.90.0 update.Dependency versions updated to ^5.90.0. Internal dependencies correctly use
workspace:*protocol. File placement follows coding guidelines.The AI summary mentions code adjustments in this directory, but only the package.json file was provided for review. Please ensure any application code changes leveraging the new TanStack Query 5.90.0 API have been tested.
examples/react/start-basic-react-query/package.json (1)
12-13: Version bumps align with repository-wide TanStack Query 5.90.0 update.Dependency versions updated to ^5.90.0. File placement follows coding guidelines for example applications.
examples/react/router-monorepo-react-query/packages/app/package.json (1)
12-12: LGTM!Version bump is consistent with the PR objective and workspace dependencies follow the correct protocol.
examples/react/start-large/package.json (1)
14-14: LGTM!Version bump aligns with the PR objective to update query packages to 5.90.0.
examples/react/router-monorepo-react-query/packages/post-feature/package.json (1)
11-11: LGTM!Version bump is consistent with the broader PR changes and workspace dependencies are correctly configured.
e2e/react-start/server-functions/package.json (1)
14-14: Version verified as valid; update is appropriate.The @tanstack/react-query version 5.90.0 is available in the npm registry, and the upgrade from 5.66.0 is valid. The change follows the caret constraint pattern, allowing patch and minor version updates within the 5.x range.
e2e/solid-start/server-routes/src/routes/methods/only-any.tsx (1)
2-2: Migration complete and correct.The change from
createQuerytouseQueryrepresents the standard Solid Query v5 API evolution. Codebase-wide verification confirms:
- No remaining
createQueryusages exist- File correctly implements the accessor pattern:
useQuery(() => ({queryKey, queryFn, ...}))- All Solid Query files follow this consistent pattern
The migration is complete and aligns with TanStack Solid Query v5 requirements for reactivity.
package.json (1)
42-43: Version 5.90.0 exists and is stable; no breaking changes to address.v5.90.0 was released Sep 20, 2025 with no breaking changes listed. The codebase updates are safe to proceed with.
Regarding the API concern: createQuery is a framework-specific API used by non-React frameworks like Svelte/Vue, while useQuery is the React hook. These are not interchangeable or a breaking change within React—they serve different frameworks by design.
examples/react/kitchen-sink-react-query/package.json (1)
13-14: Version bump approved.Consistent update to @tanstack/react-query and devtools (^5.66.0 → ^5.90.0). File location complies with guidelines.
examples/react/search-validator-adapters/package.json (1)
15-15: Version bump approved.Consistent update to @tanstack/react-query (^5.66.0 → ^5.90.0). File location and dependencies are correct for this example.
examples/react/location-masking/package.json (1)
14-14: Version bump approved.Consistent update to @tanstack/react-query (^5.66.0 → ^5.90.0). File location complies with guidelines.
examples/react/router-monorepo-react-query/packages/post-query/package.json (1)
11-11: Version bump approved.Consistent update to @tanstack/react-query (^5.66.0 → ^5.90.0) in monorepo subpackage. File organization complies with guidelines.
examples/react/kitchen-sink-react-query-file-based/package.json (1)
13-14: Version bump approved.Consistent update to @tanstack/react-query and devtools (^5.66.0 → ^5.90.0). File-based variant properly aligned with other examples.
examples/react/basic-react-query/package.json (1)
13-14: Version bump approved.Consistent update to @tanstack/react-query and devtools (^5.66.0 → ^5.90.0). Core example properly aligned with broader update.
e2e/solid-start/basic-solid-query/package.json (1)
14-15: Version bump and workspace protocol usage approved.Consistent update to @tanstack/solid-query and devtools (^5.66.0 → ^5.90.0). File correctly uses
workspace:^for internal dependencies while preserving explicit versions for external packages. File location complies with e2e guidelines.examples/solid/start-basic-solid-query/package.json (1)
12-13: Version bump approved.Consistent update to @tanstack/solid-query and devtools (^5.66.0 → ^5.90.0) for Solid Start example. File location complies with guidelines.
packages/solid-router-ssr-query/package.json (1)
71-71: Version bumps look good!The update from >=5.66.x to >=5.90.0 aligns with the PR objective to standardize on TanStack Query 5.90. Using the
>=range for peer dependencies is appropriate for a library package.Also applies to: 77-78
examples/react/start-trellaux/package.json (1)
12-13: LGTM!Version bumps to ^5.90.0 are consistent with the PR objective.
e2e/react-start/server-routes/package.json (1)
14-14: LGTM!Using an exact version (5.90.0) for e2e tests ensures predictable test behavior.
examples/react/router-monorepo-react-query/packages/router/package.json (1)
12-12: LGTM!Version bump to ^5.90.0 is consistent with the PR objective.
examples/react/start-convex-trellaux/package.json (1)
15-16: LGTM!Version bumps to ^5.90.0 are consistent with the PR objective.
examples/react/with-trpc-react-query/package.json (1)
14-15: LGTM!Version bumps to ^5.90.0 are consistent with the PR objective.
examples/react/router-monorepo-simple-lazy/packages/post-feature/package.json (1)
19-19: LGTM!Version bump to ^5.90.0 is consistent with the PR objective.
e2e/solid-start/query-integration/src/router.tsx (1)
7-7: QueryClient configuration change is valid for TanStack Query 5.90.0.Instantiating QueryClient() with no options uses built-in defaults, which is the correct approach. This aligns with the SSR setup via
setupRouterSsrQueryIntegration(). The e2e test infrastructure has unrelated build failures (missing workspace package dist files), so verification through the automated test runner is not possible in this environment.Confirm this change was tested locally with the SSR query integration before merging, as the e2e tests cannot be run in this build context.
packages/router-ssr-query-core/package.json (1)
68-73: Aligned dev/peer to >=5.90.0 — good.Matches the repo-wide bump; no issues spotted.
examples/react/router-monorepo-react-query/package.json (1)
13-14: Example deps updated to ^5.90.0 — looks good.No additional changes needed.
e2e/solid-start/query-integration/src/routes/useQuery.tsx (1)
12-16: SSR enabled + per-query gcTime: 0 — confirm hydration behavior.ssr: true with ensureQueryData is fine. Setting gcTime: 0 is okay for fast cleanup, but double-check it doesn’t drop the query before dehydration in SSR.
Consider running the e2e for this route and verify the server-rendered HTML contains the expected data-testid="query-data" content post-hydration.
e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsx (1)
31-33: Route context usage with Solid Query — looks correct.Using Route.useRouteContext() and passing context().queryOptions to useQuery aligns with Solid patterns.
| "@tanstack/solid-query": "^5.90.0", | ||
| "@tanstack/solid-query-devtools": "^5.90.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
Version bump coordinates with code changes; verify Solid Query 5.90 compatibility.
The AI summary mentions related code changes in this package (QueryClient setup, route loader modifications), suggesting the version bump may involve API changes. The change from createQuery to useQuery seen elsewhere in this PR reinforces this.
🏁 Script executed:
#!/bin/bash
# Verify @tanstack/solid-query 5.90.0 exists and check release notes
echo "Checking @tanstack/solid-query 5.90.0:"
curl -s https://registry.npmjs.org/@tanstack/solid-query | jq '.versions["5.90.0"]' | head -3
echo -e "\nChecking @tanstack/solid-query-devtools 5.90.0:"
curl -s https://registry.npmjs.org/@tanstack/solid-query-devtools | jq '.versions["5.90.0"]' | head -3Length of output: 97
🌐 Web query:
TanStack Solid Query 5.90.0 release notes breaking changes
💡 Result:
Short answer: There are no Solid‑Query–specific breaking changes introduced in the 5.90.0 release itself — v5.90.0 is a small/packaging release (published Sep 20, 2025) that did not add breaking changes for @tanstack/solid-query. For breaking changes you should instead consult the v5 migration/breaking-changes guide (the major v5 migration contains the notable breaking changes that affect Solid users upgrading from v4). (newreleases.io)
Key references:
- v5.90.0 release listing (shows packages included). (newreleases.io)
- Migrating to TanStack Query v5 — full list of v5 breaking changes (useQuery signature, renamed fields like cacheTime→gcTime, loading→pending/isPending, removed callbacks, etc.). (tanstack.com)
If you want, I can list the specific v5 breaking changes that matter to Solid (with example code fixes).
Citations:
- 1: https://newreleases.io/project/github/TanStack/query/release/v5.90.0?utm_source=openai
- 2: https://newreleases.io/project/github/TanStack/query/release/v5.90.0?utm_source=openai
- 3: https://tanstack.com/query/latest/docs/react/guides/migrating-to-v5?utm_source=openai
I need to verify what versions actually exist in the npm registry, as the results are conflicting.
Critical version incompatibility: @tanstack/solid-query-devtools@5.90.0 does not exist.
The latest version of @tanstack/solid-query is 5.90.6, but @tanstack/solid-query-devtools latest version is 5.40.0. The devtools package does not have a 5.90.x release. Installing @tanstack/solid-query-devtools@^5.90.0 will fail.
Update line 15 to use the correct devtools version (5.40.0) or verify the intended version constraint.
🤖 Prompt for AI Agents
In e2e/solid-start/query-integration/package.json around lines 14 to 15, the
devtools dependency uses a non-existent version constraint
"@tanstack/solid-query-devtools": "^5.90.0"; change that to a valid published
version such as "5.40.0" (or the exact intended compatible version) so
installation won't fail, and ensure the version range matches the installed
@tanstack/solid-query (for example set "@tanstack/solid-query-devtools":
"^5.40.0" if you want a caret range).
| "@tanstack/react-query": "^5.90.0", | ||
| "@tanstack/react-query-devtools": "^5.90.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
Version alignment is good; verify package availability.
Both @tanstack/react-query and @tanstack/react-query-devtools are updated to ^5.90.0, maintaining version consistency between the main library and its devtools.
🏁 Script executed:
#!/bin/bash
# Verify both packages exist at version 5.90.0
echo "Checking @tanstack/react-query 5.90.0:"
curl -s https://registry.npmjs.org/@tanstack/react-query | jq '.versions["5.90.0"]' | head -3
echo -e "\nChecking @tanstack/react-query-devtools 5.90.0:"
curl -s https://registry.npmjs.org/@tanstack/react-query-devtools | jq '.versions["5.90.0"]' | head -3Length of output: 97
🌐 Web query:
@tanstack/react-query latest version npm
💡 Result:
Latest on npm (as of October 26, 2025): @tanstack/react-query v5.87.1. Install: npm i @tanstack/react-query. [1][2]
Sources:
[1] npm package page for @tanstack/react-query (shows v5.87.1).
[2] TanStack Query React docs (installation).
🌐 Web query:
@tanstack/react-query-devtools latest version npm
💡 Result:
The latest @tanstack/react-query-devtools on npm is version 5.87.1. (npmjs.com)
Citations:
Update @tanstack/react-query and devtools to available versions.
Version 5.90.0 does not exist on npm for either package; the latest available version for both @tanstack/react-query and @tanstack/react-query-devtools is 5.87.1. The current versions will fail during installation.
"@tanstack/react-query": "^5.87.1",
"@tanstack/react-query-devtools": "^5.87.1",
🤖 Prompt for AI Agents
In examples/react/basic-react-query-file-based/package.json around lines 13 to
14, the package versions for @tanstack/react-query and
@tanstack/react-query-devtools reference 5.90.0 which does not exist on npm;
update both dependencies to the latest available version (5.87.1) in
package.json so installs succeed, i.e., change the version specifiers to ^5.87.1
for both entries and run npm install to verify.
| "@tanstack/react-query": ">=5.90.0" | ||
| }, | ||
| "peerDependencies": { | ||
| "react": ">=18.0.0 || >=19.0.0", | ||
| "react-dom": ">=18.0.0 || >=19.0.0", | ||
| "@tanstack/query-core": ">=5.66.0", | ||
| "@tanstack/query-core": ">=5.90.0", | ||
| "@tanstack/react-router": ">=1.127.0", | ||
| "@tanstack/react-query": ">=5.66.2" | ||
| "@tanstack/react-query": ">=5.90.0" | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
Version bump looks consistent with PR intent.
dev and peer ranges for @tanstack/react-query/@tanstack/query-core set to >=5.90.0; internal deps use workspace:*. LGTM. Please confirm the choice of >= here vs ^ in examples is intentional.
Run a quick repo audit to catch any stragglers:
🏁 Script executed:
#!/bin/bash
# Find any TanStack Query-related versions not at 5.90.x or >=5.90.0
rg -nP --glob '**/package.json' '"@tanstack/(react-query|solid-query|query-core|react-query-devtools)"\s*:\s*"([^"]+)"' -r '$0' \
| rg -nPv '(\^5\.90\.|>=5\.90\.0)'Length of output: 1029
🏁 Script executed:
#!/bin/bash
# List all package.json files with their TanStack Query/Solid Query versions
# to understand the full scope and what's been changed
echo "=== All TanStack versions in repo ==="
rg -nP --glob '**/package.json' '"@tanstack/(react-query|solid-query|query-core|react-query-devtools)"\s*:\s*"([^"]+)"' -A 0 -B 0 | head -30
echo ""
echo "=== Summary by path category ==="
rg --glob '**/package.json' '"@tanstack/(react-query|solid-query|query-core|react-query-devtools)"\s*:\s*"' | sed 's/:.*/:/' | sort | uniq -cLength of output: 5350
🏁 Script executed:
#!/bin/bash
# Check if this is a workspace structure and what the intent is
# Look for workspace configurations
find . -name 'pnpm-workspace.yaml' -o -name 'package.json' -maxdepth 1 2>/dev/null | head -5Length of output: 36
🏁 Script executed:
#!/bin/bash
# Identify which files in the PR differ from main to understand scope
git diff --name-only origin/main...HEAD 2>/dev/null | grep -E 'package\.json|examples|e2e' | head -20Length of output: 1039
🏁 Script executed:
#!/bin/bash
# Also show what changed in the reviewed file specifically
git show HEAD:packages/react-router-ssr-query/package.json 2>/dev/null | grep -A 20 'devDependencies\|peerDependencies' || echo "Could not retrieve file history"Length of output: 427
🏁 Script executed:
#!/bin/bash
# Check workspace root package.json for workspace definition
cat package.json 2>/dev/null | grep -A 30 '"workspaces"'Length of output: 0
🏁 Script executed:
#!/bin/bash
# Spot-check a few outlier files from audit to see their current state
echo "=== Checking outlier files mentioned in audit ==="
echo "1. examples/solid/basic-solid-query/package.json:"
rg '"@tanstack/solid-query"' examples/solid/basic-solid-query/package.json || echo "Not found"
echo ""
echo "2. examples/react/basic-devtools-panel/package.json:"
rg '"@tanstack/react-query-devtools"' examples/react/basic-devtools-panel/package.json || echo "Not found"
echo ""
echo "3. e2e/react-start/server-routes/package.json:"
rg '"@tanstack/react-query"' e2e/react-start/server-routes/package.json || echo "Not found"
echo ""
echo "=== Count of TanStack versions across examples/e2e by version ==="
rg --glob '(examples|e2e)/**/package.json' '"@tanstack/(react-query|solid-query|query-core|react-query-devtools)"\s*:\s*"([^"]+)"' | \
sed -E 's/.*"\s*:\s*"([^"]+)".*/\1/' | sort | uniq -c | sort -rnLength of output: 545
🏁 Script executed:
#!/bin/bash
# Spot-check a few outlier files from audit to see their current state
echo "=== Checking outlier files mentioned in audit ==="
echo "1. examples/solid/basic-solid-query/package.json:"
rg '"@tanstack/solid-query"' examples/solid/basic-solid-query/package.json
echo ""
echo "2. examples/react/basic-devtools-panel/package.json:"
rg '"@tanstack/react-query-devtools"' examples/react/basic-devtools-panel/package.json
echo ""
echo "3. e2e/react-start/server-routes/package.json:"
rg '"@tanstack/react-query"' e2e/react-start/server-routes/package.json
echo ""
echo "=== Count of version ranges in examples/e2e ==="
rg --glob '(examples|e2e)/**/package.json' '"@tanstack/(react-query|solid-query|query-core|react-query-devtools)"\s*:\s*"([^"]+)"' | \
sed -E 's/.*"([^"]+)".*/\1/' | sort | uniq -c | sort -rnLength of output: 527
Core packages aligned but examples/e2e TanStack versions are inconsistent and need alignment.
The reviewed file's version bumps to >=5.90.0 are correct. However, the PR-wide audit reveals misalignment in examples and e2e tests modified by this PR:
examples/solid/basic-solid-query/package.json: still at ^5.71.9 (should align to >=5.90.0 or ^5.90.0)examples/react/basic-devtools-panel/package.json: still at ^5.67.2 (outdated)e2e/react-start/server-routes/package.json: exact 5.90.0 (should use >=5.90.0 or ^5.90.0 for consistency)- Multiple examples use mixed ranges (^5.90.0 vs exact versions)
Examples demonstrate best practices; inconsistent versions undermine this. Standardize all examples/e2e to either >=5.90.0 (matching core packages) or ^5.90.0 (matching root), then pick one consistently.
🤖 Prompt for AI Agents
packages/react-router-ssr-query/package.json lines 74-82: examples and e2e
packages referenced in the PR use inconsistent TanStack version ranges; update
all example and e2e package.json files to use the same versioning strategy — set
"@tanstack/react-query" (and any "@tanstack/*" TanStack deps) to ">=5.90.0"
consistently. Specifically change examples/solid/basic-solid-query/package.json
from ^5.71.9 to >=5.90.0, examples/react/basic-devtools-panel/package.json from
^5.67.2 to >=5.90.0, e2e/react-start/server-routes/package.json from 5.90.0 to
>=5.90.0, and replace any other mixed ^5.90.0 or exact versions across
examples/e2e with >=5.90.0; then run install and update lockfiles to reflect the
unified range.
8f772ab to
170adaf
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
♻️ Duplicate comments (1)
e2e/solid-start/query-integration/package.json (1)
14-15: Critical: @tanstack/solid-query-devtools@5.90.0 does not exist in the npm registry.As flagged in the previous review, @tanstack/solid-query-devtools does not have a 5.90.x release. The latest available version is 5.40.0. Installing
^5.90.0will fail during dependency resolution.Update line 15 to use a valid version:
- "@tanstack/solid-query-devtools": "^5.90.0", + "@tanstack/solid-query-devtools": "^5.40.0",
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (42)
e2e/react-router/basic-react-query-file-based/package.json(1 hunks)e2e/react-router/basic-react-query/package.json(1 hunks)e2e/react-start/basic-react-query/package.json(1 hunks)e2e/react-start/query-integration/package.json(1 hunks)e2e/react-start/server-functions/package.json(1 hunks)e2e/react-start/server-routes/package.json(1 hunks)e2e/solid-router/basic-solid-query-file-based/package.json(1 hunks)e2e/solid-router/basic-solid-query/package.json(1 hunks)e2e/solid-start/basic-solid-query/package.json(1 hunks)e2e/solid-start/query-integration/package.json(1 hunks)e2e/solid-start/query-integration/src/router.tsx(1 hunks)e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsx(1 hunks)e2e/solid-start/query-integration/src/routes/useQuery.tsx(1 hunks)e2e/solid-start/server-routes/package.json(1 hunks)e2e/solid-start/server-routes/src/routes/methods/only-any.tsx(2 hunks)examples/react/basic-default-search-params/package.json(1 hunks)examples/react/basic-react-query-file-based/package.json(1 hunks)examples/react/basic-react-query/package.json(1 hunks)examples/react/kitchen-sink-react-query-file-based/package.json(1 hunks)examples/react/kitchen-sink-react-query/package.json(1 hunks)examples/react/large-file-based/package.json(1 hunks)examples/react/location-masking/package.json(1 hunks)examples/react/navigation-blocking/package.json(1 hunks)examples/react/router-monorepo-react-query/package.json(1 hunks)examples/react/router-monorepo-react-query/packages/app/package.json(1 hunks)examples/react/router-monorepo-react-query/packages/post-feature/package.json(1 hunks)examples/react/router-monorepo-react-query/packages/post-query/package.json(1 hunks)examples/react/router-monorepo-react-query/packages/router/package.json(1 hunks)examples/react/router-monorepo-simple-lazy/packages/post-feature/package.json(1 hunks)examples/react/search-validator-adapters/package.json(1 hunks)examples/react/start-basic-react-query/package.json(1 hunks)examples/react/start-convex-trellaux/package.json(1 hunks)examples/react/start-large/package.json(1 hunks)examples/react/start-trellaux/package.json(1 hunks)examples/react/with-trpc-react-query/package.json(1 hunks)examples/solid/basic-solid-query-file-based/package.json(1 hunks)examples/solid/basic-solid-query/package.json(1 hunks)examples/solid/start-basic-solid-query/package.json(1 hunks)package.json(1 hunks)packages/react-router-ssr-query/package.json(1 hunks)packages/router-ssr-query-core/package.json(1 hunks)packages/solid-router-ssr-query/package.json(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (30)
- packages/router-ssr-query-core/package.json
- e2e/solid-start/server-routes/package.json
- examples/solid/basic-solid-query/package.json
- examples/react/navigation-blocking/package.json
- examples/solid/basic-solid-query-file-based/package.json
- e2e/react-router/basic-react-query/package.json
- examples/react/router-monorepo-react-query/packages/app/package.json
- examples/react/location-masking/package.json
- examples/react/start-basic-react-query/package.json
- e2e/solid-start/server-routes/src/routes/methods/only-any.tsx
- examples/solid/start-basic-solid-query/package.json
- e2e/react-start/query-integration/package.json
- examples/react/basic-react-query/package.json
- examples/react/router-monorepo-simple-lazy/packages/post-feature/package.json
- e2e/solid-start/query-integration/src/router.tsx
- examples/react/router-monorepo-react-query/packages/router/package.json
- packages/solid-router-ssr-query/package.json
- examples/react/basic-react-query-file-based/package.json
- examples/react/search-validator-adapters/package.json
- e2e/react-router/basic-react-query-file-based/package.json
- examples/react/large-file-based/package.json
- packages/react-router-ssr-query/package.json
- e2e/react-start/server-routes/package.json
- examples/react/kitchen-sink-react-query/package.json
- examples/react/start-convex-trellaux/package.json
- examples/react/with-trpc-react-query/package.json
- examples/react/start-large/package.json
- examples/react/start-trellaux/package.json
- examples/react/basic-default-search-params/package.json
- e2e/solid-router/basic-solid-query-file-based/package.json
🧰 Additional context used
📓 Path-based instructions (5)
**/package.json
📄 CodeRabbit inference engine (AGENTS.md)
Use workspace:* protocol for internal dependencies in package.json files
Files:
examples/react/kitchen-sink-react-query-file-based/package.jsone2e/solid-start/query-integration/package.jsone2e/react-start/basic-react-query/package.jsone2e/react-start/server-functions/package.jsone2e/solid-router/basic-solid-query/package.jsonpackage.jsonexamples/react/router-monorepo-react-query/packages/post-feature/package.jsonexamples/react/router-monorepo-react-query/package.jsonexamples/react/router-monorepo-react-query/packages/post-query/package.jsone2e/solid-start/basic-solid-query/package.json
examples/{react,solid}/**
📄 CodeRabbit inference engine (AGENTS.md)
Keep example applications under examples/react/ and examples/solid/
Files:
examples/react/kitchen-sink-react-query-file-based/package.jsonexamples/react/router-monorepo-react-query/packages/post-feature/package.jsonexamples/react/router-monorepo-react-query/package.jsonexamples/react/router-monorepo-react-query/packages/post-query/package.json
e2e/**
📄 CodeRabbit inference engine (AGENTS.md)
Store end-to-end tests under the e2e/ directory
Files:
e2e/solid-start/query-integration/package.jsone2e/react-start/basic-react-query/package.jsone2e/react-start/server-functions/package.jsone2e/solid-router/basic-solid-query/package.jsone2e/solid-start/basic-solid-query/package.jsone2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsxe2e/solid-start/query-integration/src/routes/useQuery.tsx
**/*.{ts,tsx}
📄 CodeRabbit inference engine (AGENTS.md)
Use TypeScript in strict mode with extensive type safety across the codebase
Files:
e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsxe2e/solid-start/query-integration/src/routes/useQuery.tsx
**/src/routes/**
📄 CodeRabbit inference engine (AGENTS.md)
Place file-based routes under src/routes/ directories
Files:
e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsxe2e/solid-start/query-integration/src/routes/useQuery.tsx
🧬 Code graph analysis (2)
e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsx (2)
e2e/solid-start/query-integration/src/routes/useQuery.tsx (1)
Route(7-11)e2e/solid-start/basic-solid-query/src/routes/deferred.tsx (1)
Route(18-24)
e2e/solid-start/query-integration/src/routes/useQuery.tsx (3)
e2e/solid-start/query-integration/src/queryOptions.ts (1)
makeQueryOptions(3-16)e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsx (1)
Route(6-27)e2e/solid-start/basic-solid-query/src/routes/posts.$postId.tsx (1)
Route(5-11)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: Preview
- GitHub Check: Test
🔇 Additional comments (8)
e2e/solid-router/basic-solid-query/package.json (1)
15-16: Verify intentionality of inconsistent devtools versioning.Line 15 updates @tanstack/solid-query to ^5.90.0, but line 16 keeps @tanstack/solid-query-devtools at ^5.71.9. This version mismatch differs from the pattern in e2e/solid-start packages (which update both together).
Clarify whether:
- This is intentional due to devtools availability constraints, or
- Devtools should also be updated (though note: @tanstack/solid-query-devtools@5.90.0 does not exist per the npm registry—consider using 5.40.0 or later stable version instead).
examples/react/router-monorepo-react-query/packages/post-query/package.json (1)
11-11: LGTM! Version update is consistent.The version update aligns with the parent package and the broader PR objective.
e2e/solid-start/query-integration/src/routes/useQuery.tsx (2)
8-8: LGTM! Loader pattern correctly returns the query promise.The synchronous loader returning the promise from
ensureQueryDatais the correct pattern for SSR withssr: 'data-only'. The framework will await this promise before rendering.
10-10: LGTM! SSR configuration is appropriate.The
ssr: 'data-only'option correctly enables server-side data hydration, ensuring the query data is fetched on the server and available during SSR.e2e/solid-start/query-integration/src/routes/loader-fetchQuery/$type.tsx (3)
20-25: LGTM! Loader correctly handles sync vs async fetch patterns.The loader implementation properly differentiates between synchronous and asynchronous loading:
- sync: Returns the query promise, forcing the framework to await it before rendering
- async: Initiates prefetch without blocking, allowing background data fetching
This pattern is appropriate for testing different query loading strategies in SSR.
26-26: LGTM! SSR configuration is consistent.The
ssr: 'data-only'option aligns with the SSR pattern used in other routes and enables proper server-side data hydration.
31-32: LGTM! Component correctly uses route context.Accessing
queryOptionsfromuseRouteContext()ensures the component uses the same query options instance defined in the route context, avoiding unnecessary reconstruction and maintaining consistency.examples/react/router-monorepo-react-query/package.json (1)
13-14: No breaking changes in this update—v5.90.0 is compatible.v5.90.0 contains only minor package updates and does not introduce new breaking changes. Since the application is already on v5.66.0 within the v5 release family, the bump to v5.90.0 is a safe minor version upgrade with no compatibility concerns.
| "@tanstack/solid-query": "^5.90.0", | ||
| "@tanstack/solid-query-devtools": "^5.90.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Critical: @tanstack/solid-query-devtools@5.90.0 does not exist in the npm registry.
Like the issue in e2e/solid-start/query-integration/package.json, the latest available version of @tanstack/solid-query-devtools is 5.40.0. Installing ^5.90.0 will fail.
Update line 15 to use the correct version:
- "@tanstack/solid-query-devtools": "^5.90.0",
+ "@tanstack/solid-query-devtools": "^5.40.0",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "@tanstack/solid-query": "^5.90.0", | |
| "@tanstack/solid-query-devtools": "^5.90.0", | |
| "@tanstack/solid-query": "^5.90.0", | |
| "@tanstack/solid-query-devtools": "^5.40.0", |
🤖 Prompt for AI Agents
In e2e/solid-start/basic-solid-query/package.json around lines 14 to 15, the
dependency "@tanstack/solid-query-devtools" is pinned to "^5.90.0" which does
not exist in the npm registry; change that version to the latest published
5.40.0 (e.g., "@tanstack/solid-query-devtools": "^5.40.0") so installation
succeeds.
the version of tanstack/config we use are on 5.90, so this aligns that
Summary by CodeRabbit