lint-suite 2.1.1 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +11 -2
  3. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,3 +1,25 @@
1
+ ## 2.2.0 (2026-09-23)
2
+
3
+ ### 🚀 Features
4
+
5
+ - ⚠️ **eslint-plugin:** ✨ report unread inputs, outputs, and queries ([57ab38a](https://github.com/F0rty-Tw0/lint-suite/commit/57ab38a))
6
+ - **eslint-plugin:** ✨ add `allowRxjsInteropFields` option ([faa7d90](https://github.com/F0rty-Tw0/lint-suite/commit/faa7d90))
7
+
8
+ ### ⚠️ Breaking Changes
9
+
10
+ - **eslint-plugin:** ✨ report unread inputs, outputs, and queries ([57ab38a](https://github.com/F0rty-Tw0/lint-suite/commit/57ab38a))
11
+ unread inputs, outputs, and queries are now reported
12
+ by default.
13
+ Claude-Session: https://claude.ai/code/session_01GNCvxVFjNTyt6y9q281siN
14
+
15
+ ### 🧱 Updated Dependencies
16
+
17
+ - Updated eslint-plugin-no-unused-angular-instance-fields to 1.1.0
18
+
19
+ ### ❤️ Thank You
20
+
21
+ - Artiom Tofan
22
+
1
23
  ## 2.1.1 (2026-09-11)
2
24
 
3
25
  ### 🚀 Features
package/README.md CHANGED
@@ -246,8 +246,17 @@ files and Angular templates. It requires parser services with type information:
246
246
  - `allowEffectFields` defaults to `false`. When enabled, fields holding
247
247
  auto-cleaned Angular `effect()` calls are allowed; effects configured with
248
248
  `manualCleanup: true` must still be read.
249
- - Angular signal inputs, models, outputs, and query fields are always treated
250
- as framework-managed.
249
+ - `allowRxjsInteropFields` defaults to `false`. When enabled, unread fields
250
+ holding `@angular/core/rxjs-interop` calls (`toSignal`, `toObservable`,
251
+ `outputToObservable`, `rxResource`) are allowed.
252
+ - Inputs, outputs, and queries (`input()`, `model()`, `output()`,
253
+ `viewChild()`, `viewChildren()`, `contentChild()`, `contentChildren()`, and
254
+ the matching `@Input()`, `@Output()`, `@ViewChild()`, `@ViewChildren()`,
255
+ `@ContentChild()`, and `@ContentChildren()` fields) are reported when the
256
+ class, its template, and its host metadata never read them. Parent bindings
257
+ do not count as reads. `outputFromObservable()` fields, `@Output()` fields
258
+ not initialized with `new EventEmitter()`, and inputs of classes that declare
259
+ `ngOnChanges` are always treated as framework-managed.
251
260
  - Fields typed with `ComponentRef` imported from `@angular/core` are excluded
252
261
  from unused-field reports.
253
262
  - In local mode, non-private members of `abstract` components and directives
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lint-suite",
3
- "version": "2.1.1",
3
+ "version": "2.2.0",
4
4
  "description": "Reusable ESLint, Stylelint, and Prettier configurations",
5
5
  "repository": {
6
6
  "type": "git",
@@ -43,7 +43,7 @@
43
43
  "@lint-suite/eslint-plugin-test-file-shape": "1.0.0",
44
44
  "@lint-suite/eslint-plugin-type-placement": "1.0.0",
45
45
  "@lint-suite/eslint-plugin-util-purity": "1.0.0",
46
- "@lint-suite/eslint-plugin-no-unused-angular-instance-fields": "1.0.0",
46
+ "@lint-suite/eslint-plugin-no-unused-angular-instance-fields": "1.1.0",
47
47
  "@lint-suite/eslint-plugin-no-unstyled-classes": "1.0.0",
48
48
  "@lint-suite/stylelint-no-unused-classes": "1.0.0",
49
49
  "@eslint/js": "^10.0.1",