typescript-eslint icon indicating copy to clipboard operation
typescript-eslint copied to clipboard

feat(eslint-plugin): [no-unnecessary-condition] check type predicates based on assignability

Open kirkwaiblinger opened this issue 3 weeks ago β€’ 4 comments

PR Checklist

  • [x] Addresses an existing open issue: fixes #11798
  • [x] That issue was marked as accepting prs
  • [x] Steps in Contributing were taken

Overview

TODO

kirkwaiblinger avatar Nov 26 '25 10:11 kirkwaiblinger

Thanks for the PR, @kirkwaiblinger!

typescript-eslint is a 100% community driven project, and we are incredibly grateful that you are contributing to that community.

The core maintainers work on this in their personal time, so please understand that it may not be possible for them to review your work immediately.

Thanks again!


πŸ™ Please, if you or your company is finding typescript-eslint valuable, help us sustain the project by sponsoring it transparently on https://opencollective.com/typescript-eslint.

typescript-eslint[bot] avatar Nov 26 '25 10:11 typescript-eslint[bot]

Deploy Preview for typescript-eslint ready!

Name Link
Latest commit c17df5c62ccffe425ed3fefc17fffec2c72597d0
Latest deploy log https://app.netlify.com/projects/typescript-eslint/deploys/6926d57e05bf6b00083a9b99
Deploy Preview https://deploy-preview-11799--typescript-eslint.netlify.app
Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

Lighthouse
1 paths audited
Performance: 96 (πŸ”΄ down 2 from production)
Accessibility: 97 (no change from production)
Best Practices: 100 (no change from production)
SEO: 92 (no change from production)
PWA: 80 (no change from production)
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify project configuration.

netlify[bot] avatar Nov 26 '25 10:11 netlify[bot]

πŸ€– Nx Cloud AI Fix Eligible

An automatically generated fix could have helped fix failing tasks for this run, but Self-healing CI is disabled for this workspace. Visit workspace settings to enable it and get automatic fixes in future runs.

To disable these notifications, a workspace admin can disable them in workspace settings.


View your CI Pipeline Execution β†— for commit c17df5c62ccffe425ed3fefc17fffec2c72597d0

Command Status Duration Result
nx run-many -t lint ❌ Failed 3m 12s View β†—
nx test eslint-plugin --coverage=false βœ… Succeeded 5m 13s View β†—
nx run-many -t typecheck βœ… Succeeded 2m 10s View β†—
nx test eslint-plugin-internal --coverage=false βœ… Succeeded 10s View β†—
nx test typescript-estree --coverage=false βœ… Succeeded 2s View β†—
nx run types:build βœ… Succeeded 2s View β†—
nx run generate-configs βœ… Succeeded 6s View β†—
nx run integration-tests:test βœ… Succeeded 3s View β†—
Additional runs (29) βœ… Succeeded ... View β†—

☁️ Nx Cloud last updated this comment at 2025-11-26 10:40:13 UTC

nx-cloud[bot] avatar Nov 26 '25 10:11 nx-cloud[bot]

Codecov Report

:x: Patch coverage is 89.13043% with 5 lines in your changes missing coverage. Please review. :white_check_mark: Project coverage is 90.49%. Comparing base (17601fc) to head (c17df5c).

Files with missing lines Patch % Lines
...slint-plugin/src/rules/no-unnecessary-condition.ts 85.29% 4 Missing and 1 partial :warning:

:x: Your patch check has failed because the patch coverage (89.13%) is below the target coverage (90.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #11799      +/-   ##
==========================================
- Coverage   90.49%   90.49%   -0.01%     
==========================================
  Files         522      523       +1     
  Lines       53357    53385      +28     
  Branches     8909     8919      +10     
==========================================
+ Hits        48284    48309      +25     
- Misses       5057     5059       +2     
- Partials       16       17       +1     
Flag Coverage Ξ”
unittest 90.49% <89.13%> (-0.01%) :arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Ξ”
.../eslint-plugin/src/rules/class-methods-use-this.ts 100.00% <100.00%> (ΓΈ)
...plugin/src/rules/no-unnecessary-type-parameters.ts 97.08% <ΓΈ> (ΓΈ)
...slint-plugin/src/rules/no-unsafe-type-assertion.ts 100.00% <100.00%> (ΓΈ)
packages/eslint-plugin/src/util/isObjectType.ts 100.00% <100.00%> (ΓΈ)
...ckages/rule-tester/src/utils/flat-config-schema.ts 40.65% <ΓΈ> (ΓΈ)
...slint-plugin/src/rules/no-unnecessary-condition.ts 98.90% <85.29%> (-0.67%) :arrow_down:

... and 1 file with indirect coverage changes

:rocket: New features to boost your workflow:
  • :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • :package: JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

codecov[bot] avatar Nov 26 '25 10:11 codecov[bot]