feat(linter): add typescript/no-unnecessary-type-parameters rule#19450
Merged
graphite-app[bot] merged 1 commit intomainfrom Feb 16, 2026
Conversation
This was referenced Feb 16, 2026
Contributor
Author
This was referenced Feb 16, 2026
Merging this PR will not alter performance
Comparing Footnotes
|
881312d to
9036d0d
Compare
7dd13b8 to
80631f1
Compare
9036d0d to
9d2cbc5
Compare
7756d74 to
f8c2f04
Compare
9d2cbc5 to
127a4df
Compare
f8c2f04 to
6f652d5
Compare
127a4df to
418c214
Compare
Contributor
Author
Merge activity
|
6f652d5 to
780d135
Compare
418c214 to
292fc6f
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
Adds a new TypeScript (type-aware/tsgolint-backed) lint rule entry to oxlint: typescript/no-unnecessary-type-parameters, along with fixture coverage to ensure it’s exercised in the tsgolint snapshot suite.
Changes:
- Introduce the new
NoUnnecessaryTypeParametersrule metadata and register it under the TypeScript rules module. - Wire the rule into generated rule registries (
RuleEnum, runner impls) so it can be configured and surfaced in CLI output. - Add a tsgolint fixture + snapshot updates and enable the rule in the tsgolint fixtures config.
Reviewed changes
Copilot reviewed 8 out of 10 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| crates/oxc_linter/src/rules/typescript/no_unnecessary_type_parameters.rs | Adds the rule definition + documentation via declare_oxc_lint! (tsgolint-backed rule). |
| crates/oxc_linter/src/rules.rs | Registers the new TypeScript rule module. |
| crates/oxc_linter/src/generated/rules_enum.rs | Adds the rule to the generated rule enum, IDs, config plumbing, and rule list. |
| crates/oxc_linter/src/generated/rule_runner_impls.rs | Adds generated RuleRunner impl entry for the new rule. |
| apps/oxlint/src/snapshots/[email protected] | Updates snapshot output to include the new rule’s diagnostic and updated totals. |
| apps/oxlint/fixtures/tsgolint/no-unnecessary-type-parameters.ts | Adds a fixture file that triggers the rule. |
| apps/oxlint/fixtures/tsgolint/.oxlintrc.json | Enables typescript/no-unnecessary-type-parameters for the tsgolint fixture suite. |
292fc6f to
919db6a
Compare
780d135 to
9a2bea6
Compare
919db6a to
37da9a1
Compare
9a2bea6 to
1907da6
Compare
4c92026 to
a16f25e
Compare
1907da6 to
b8f7584
Compare
b8f7584 to
c948090
Compare
a16f25e to
31c3a93
Compare
Base automatically changed from
c/02-14-feat_linter_add_typescript_consistent-return_rule
to
main
February 16, 2026 20:16
OskarLebuda
pushed a commit
to OskarLebuda/oxc
that referenced
this pull request
Feb 17, 2026
camc314
added a commit
that referenced
this pull request
Feb 19, 2026
# Oxlint ### 💥 BREAKING CHANGES - 4315594 oxlint: [**BREAKING**] Deprecate `"always"` and `"as-needed"` options of the radix rule (#19408) (Sysix) - d4c7af3 linter: [**BREAKING**] Remove `allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing` option (#19451) (camc314) ### 🚀 Features - 82ca5c3 linter: Add typescript/dot-notation rule (#19442) (camc314) - 6db0811 linter: Implement eslint-plugin-vitest/no-importing-vitest-globals (#18694) (Said Atrahouch) - c7fe8ae linter: Implement eslint-plugin-vitest/prefer-import-in-mock (#17966) (Said Atrahouch) - 0abb39a linter: Implement eslint-vitest-jest-plugin/prefer-mock-return-shorthand (#18002) (Said Atrahouch) - 2b95537 linter: Implement `n/no-path-concat` rule (#19502) (Mikhail Baev) - 735d0e4 linter: Implement typescript/no-useless-default-assignment (#19488) (camc314) - 31c3a93 linter: Add typescript/no-unnecessary-type-parameters rule (#19450) (camc314) - c948090 linter: Add typescript/consistent-return rule (#19449) (camc314) - 9f87df0 linter: Add typescript/prefer-string-starts-ends-with rule (#19448) (camc314) - 04536be linter: Add typescript/prefer-regexp-exec rule (#19447) (camc314) - 56a7feb linter: Add typescript/prefer-readonly rule (#19446) (camc314) - a1cea63 linter: Add typescript/no-unnecessary-qualifier rule (#19445) (camc314) - e3144d2 linter: Add typescript/prefer-find rule (#19444) (camc314) - 13c7408 linter: Add typescript/prefer-readonly-parameter-types rule (#19443) (camc314) - 9b17d44 linter: Add typescript/strict-void-return rule (#19441) (camc314) - ed821b4 linter: Add typescript/consistent-type-exports rule (#19440) (camc314) ### 🐛 Bug Fixes - daad7bc linter/array-callback-return: Check `allowVoid` option (#19506) (Said Atrahouch) - 638cf94 linter: Add help text to eslint rule diagnostics (#19508) (Kyle Tse) - 79fc6d7 linter: Move no-use-before-define to eslint plugin (#19438) (camc314) - c832a9f linter: Add `onScrollEnd` and `onScrollEndCapture` to `react/no-unknown-property`. (#19536) (connorshea) - 999a0db linter: Add help text to `symbol-description` diagnostics (#19538) (Anthony Amaro) - f064482 linter: Add help text to eslint rule diagnostics (#19539) (Anthony Amaro) - fd11073 linter/react/no-unknown-property: Add missing `fetchPriority` prop (#19525) (João Pedro Schmitz) - a9bb604 linter/no-shadow: Align initializer shadow handling with typescript-eslint (#19462) (camc314) - 32e6eb9 linter: Handle typed arrays/array buffers in `prefer-spread` rule. (#19478) (connorshea) - e309f84 linter: Handle additional cases in `typescript/consistent-generic-constructors` rule. (#19477) (connorshea) - 71db91a linter/array-callback-return: Check `fromAsync`, update test cases (#19483) (Said Atrahouch) - 2a12d74 linter: Handle optional chaining in `no-array-method-this-argument` rule. (#19476) (connorshea) - f65310b linter: Handle optional chaining in `prefer-object-from-entries` rule. (#19475) (connorshea) - 840acf4 linter: Handle optional chain in `no-unnecessary-array-flat-depth` rule. (#19471) (connorshea) - 85a19e9 linter: Skip string literal imports in `consistent-assert` rule. (#19474) (connorshea) ### ⚡ Performance - 6155ac4 linter/constructor-super: Use node_id over nodes loop (#19489) (camc314) - a02496d linter/consistent-index-object-style: Resolve circular type refs semantically (#19490) (camc314) # Oxfmt ### 🚀 Features - 652c346 oxfmt/lsp: Support `untitled://` schema (#19287) (Sysix) ### 🐛 Bug Fixes - 6c61b70 oxfmt: Fix outdated `sortImports.groups` doc comments (#19513) (leaysgur) Co-authored-by: camc314 <[email protected]>
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.

No description provided.