Skip to content

chore(*): replace 'typescript-eslint' with '@typescript-eslint/parser' in preact packages and remove redundant eslint options - #11791

Merged
sukvvon merged 2 commits into
mainfrom
chore/preact-query-eslint-typescript-parser
Oct 1, 2026
Merged

sukvvon merged 2 commits into
mainfrom
chore/preact-query-eslint-typescript-parser

Conversation

@sukvvon

@sukvvon sukvvon commented Oct 1, 2026 •

Copy link
Copy Markdown
Member

🎯 Changes

In preact-query, preact-query-devtools, and preact-query-persist-client:

  • Import the parser from @typescript-eslint/parser instead of typescript-eslint, and replace the typescript-eslint devDependency with @typescript-eslint/parser (catalog:). The typescript-eslint catalog entry is removed since nothing else in the workspace uses it through the catalog.
  • Remove the typescript-eslint plugin registration. No rule uses the typescript-eslint/ prefix, and the @typescript-eslint plugin is already registered by the root config.
  • Remove parserOptions.project, which the root config already sets, and the files glob, since src only contains TypeScript files.
  • Keep languageOptions.parser, because eslint-config-preact sets @babel/eslint-parser after the root config.
  • Add a blank line after // @ts-check and remove the blank line between imports to match the other eslint.config.js files.

The resolved ESLint config (parser, parser options, rules, plugins) for every file in src and the lint results are the same as on main.

✅ Checklist

  • I have followed the steps in the Contributing guide.
  • I have tested code changes locally with pnpm run test:pr, or these tests do not apply to this pull request.
  • I have followed the AI contribution policy and fully understand the code in this pull request, including any code generated with AI assistance.

🚀 Release Impact

  • This change affects published code, and I have generated a changeset.
  • This change is docs/CI/dev-only (no release).

Summary by CodeRabbit

  • Chores
    • Updated development linting configuration across the Preact packages, including how TypeScript files are parsed.
    • These changes affect development checks only; they do not change package features or public interfaces. No user-facing functionality changes are included in this update.

…' in preact packages and remove redundant eslint options
@sukvvon sukvvon self-assigned this Oct 1, 2026
@nx-cloud

nx-cloud Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

View your CI Pipeline Execution ↗ for commit 1922e96

Command Status Duration Result
nx affected --targets=test:sherif,test:knip,tes... ✅ Succeeded 2m 41s View ↗
nx run-many --target=build --exclude=examples/*... ✅ Succeeded 3s View ↗

☁️ Nx Cloud last updated this comment at 2026-10-01 01:45:27 UTC

@github-actions

github-actions Bot commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

🚀 Changeset Version Preview

No changeset entries found. Merging this PR will not cause a version bump for any packages.

@coderabbitai

coderabbitai Bot commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: TanStack/query/.coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 37ebf49f-56b3-4f1f-b9f6-2c62b05ce20b

📥 Commits

Reviewing files that changed from the base of the PR and between 4c8d15f and 1922e96.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (7)
  • packages/preact-query-devtools/eslint.config.js
  • packages/preact-query-devtools/package.json
  • packages/preact-query-persist-client/eslint.config.js
  • packages/preact-query-persist-client/package.json
  • packages/preact-query/eslint.config.js
  • packages/preact-query/package.json
  • pnpm-workspace.yaml
💤 Files with no reviewable changes (1)
  • pnpm-workspace.yaml

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 8 remain after this review.


📝 Walkthrough

Walkthrough

Three Preact packages now use @typescript-eslint/parser directly in their ESLint configurations. Their development dependencies and the workspace catalog no longer use typescript-eslint.

Changes

Preact ESLint parser configuration

Layer / File(s) Summary
Parser configuration and dependency update
pnpm-workspace.yaml, packages/preact-query-devtools/eslint.config.js, packages/preact-query-devtools/package.json, packages/preact-query-persist-client/eslint.config.js, packages/preact-query-persist-client/package.json, packages/preact-query/eslint.config.js, packages/preact-query/package.json
The three package ESLint configurations use the directly imported @typescript-eslint/parser. They remove the TypeScript-only override, project: true parser option, and plugin registration. The packages add @typescript-eslint/parser to development dependencies, and the workspace catalog removes typescript-eslint.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Other

Suggested reviewers: tkdodo

Merge Risk: ⚪ Minimal · up to 1922e

This is a dev-tooling-only change that swaps the lint parser dependency, with no runtime or published-package behavior change. No merge-blocking risk was identified.

Architecture Summary

Architecture risk: 🔵 Low · up to 1922e

The change affects 4 systems.

Changed systems: packages/preact-query, packages/preact-query-devtools, packages/preact-query-persist-client, pnpm-workspace.yaml

Architecture concerns
No architecture-level concerns identified.

Review details

Systems and components

  • observed — packages/preact-query (library) was modified; 2 changed files map to changed impact.
  • observed — packages/preact-query-devtools (library) was modified; 2 changed files map to changed impact.
  • observed — packages/preact-query-persist-client (library) was modified; 2 changed files map to changed impact.
  • observed — pnpm-workspace.yaml (service) was modified; 1 changed file maps to changed impact.

Before / after behavior

  • observed — Modified behavior in packages/preact-query-devtools/eslint.config.js: The configuration switches from tseslint.parser to @typescript-eslint/parser. It removes the TypeScript-specific file glob, project: true parser option, and typescript-eslint plugin registration.
  • observed — Modified behavior in packages/preact-query-devtools/package.json: The development dependencies add @typescript-eslint/parser and remove typescript-eslint; the existing eslint-config-preact, preact, and typescript dependencies remain.
  • observed — Modified behavior in packages/preact-query-persist-client/eslint.config.js: Removed the typescript-eslint package import and its comment; added the direct @typescript-eslint/parser import.
  • observed — Modified behavior in packages/preact-query-persist-client/eslint.config.js: Added the parser import used by the configuration.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 3…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly identifies the dependency replacement and redundant ESLint option removal across the affected Preact packages.
Description check ✅ Passed The description includes the required Changes, Checklist, and Release Impact sections. It explains the motivation, records completed checks, and identifies the change as development-only.
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@pkg-pr-new

pkg-pr-new Bot commented Oct 1, 2026 •

Copy link
Copy Markdown
More templates

@tanstack/angular-query-experimental

npm i https://pkg.pr.new/@tanstack/angular-query-experimental@11791

@tanstack/eslint-plugin-query

npm i https://pkg.pr.new/@tanstack/eslint-plugin-query@11791

@tanstack/lit-query

npm i https://pkg.pr.new/@tanstack/lit-query@11791

@tanstack/preact-query

npm i https://pkg.pr.new/@tanstack/preact-query@11791

@tanstack/preact-query-devtools

npm i https://pkg.pr.new/@tanstack/preact-query-devtools@11791

@tanstack/preact-query-persist-client

npm i https://pkg.pr.new/@tanstack/preact-query-persist-client@11791

@tanstack/query-async-storage-persister

npm i https://pkg.pr.new/@tanstack/query-async-storage-persister@11791

@tanstack/query-broadcast-client-experimental

npm i https://pkg.pr.new/@tanstack/query-broadcast-client-experimental@11791

@tanstack/query-core

npm i https://pkg.pr.new/@tanstack/query-core@11791

@tanstack/query-devtools

npm i https://pkg.pr.new/@tanstack/query-devtools@11791

@tanstack/query-persist-client-core

npm i https://pkg.pr.new/@tanstack/query-persist-client-core@11791

@tanstack/query-sync-storage-persister

npm i https://pkg.pr.new/@tanstack/query-sync-storage-persister@11791

@tanstack/react-query

npm i https://pkg.pr.new/@tanstack/react-query@11791

@tanstack/react-query-devtools

npm i https://pkg.pr.new/@tanstack/react-query-devtools@11791

@tanstack/react-query-next-experimental

npm i https://pkg.pr.new/@tanstack/react-query-next-experimental@11791

@tanstack/react-query-persist-client

npm i https://pkg.pr.new/@tanstack/react-query-persist-client@11791

@tanstack/solid-query

npm i https://pkg.pr.new/@tanstack/solid-query@11791

@tanstack/solid-query-devtools

npm i https://pkg.pr.new/@tanstack/solid-query-devtools@11791

@tanstack/solid-query-persist-client

npm i https://pkg.pr.new/@tanstack/solid-query-persist-client@11791

@tanstack/svelte-query

npm i https://pkg.pr.new/@tanstack/svelte-query@11791

@tanstack/svelte-query-devtools

npm i https://pkg.pr.new/@tanstack/svelte-query-devtools@11791

@tanstack/svelte-query-persist-client

npm i https://pkg.pr.new/@tanstack/svelte-query-persist-client@11791

@tanstack/vue-query

npm i https://pkg.pr.new/@tanstack/vue-query@11791

@tanstack/vue-query-devtools

npm i https://pkg.pr.new/@tanstack/vue-query-devtools@11791

commit: 1922e96

@github-actions

github-actions Bot commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

size-limit report 📦

Path Size
react full 11.73 KB (0%)
react minimal 8.58 KB (0%)

@sukvvon
sukvvon merged commit 381e254 into main Oct 1, 2026
9 checks passed
@sukvvon
sukvvon deleted the chore/preact-query-eslint-typescript-parser branch October 1, 2026 01:48
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