linter-bundle 2.17.0 → 2.18.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.
package/CHANGELOG.md CHANGED
@@ -6,13 +6,38 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
- [Show all code changes](https://github.com/jens-duttke/linter-bundle/compare/v2.17.0...HEAD)
9
+ [Show all code changes](https://github.com/jens-duttke/linter-bundle/compare/v2.18.0...HEAD)
10
+
11
+ ## [2.18.0] - 2022.08.19
12
+
13
+ ### Changed
14
+
15
+ - [eslint] Updated `@typescript-eslint/eslint-plugin` from `5.33.0` to `5.33.1`
16
+ - [eslint] Updated `eslint` from `8.21.0` to `8.22.0`
17
+ - [eslint] Updated `eslint-import-resolver-typescript` from `3.4.0` to `3.4.2`
18
+ - [eslint] Updated `eslint-plugin-jest` from `26.8.2` to `26.8.3`
19
+ - [stylelint] Updated `stylelint` from `14.9.1` to `14.10.0`
20
+ - [eslint/overrides-react] Activate [`allowExpressions`](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-no-useless-fragment.md#allowexpressions) for
21
+ [`react/jsx-no-useless-fragment`](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-no-useless-fragment.md) rule, to fill the React type definitions
22
+ requirement that when a component returns only children (a ReactNode), the return value is a ReactElement by wrapping children in a React.Fragment
23
+
24
+ ### Added
25
+
26
+ - [stylelint] Make use of [`annotation-no-unknown`](https://github.com/stylelint/stylelint/tree/main/lib/rules/annotation-no-unknown) rule
27
+ - [stylelint] Make use of [`keyframe-selector-notation`](https://github.com/stylelint/stylelint/tree/main/lib/rules/keyframe-selector-notation) rule, with option `percentage`
28
+
29
+ [Show all code changes](https://github.com/jens-duttke/linter-bundle/compare/v2.17.0...v2.18.0)
10
30
 
11
31
  ## [2.17.0] - 2022.08.10
12
32
 
33
+ ### Changed
34
+
13
35
  - [eslint] Updated `@typescript-eslint/eslint-plugin` from `5.32.0` to `5.33.0`
14
36
  - [eslint] Updated `eslint-plugin-jest` from `26.7.0` to `26.8.2`
15
37
  - [eslint] Updated `eslint-plugin-jsdoc` from `39.3.4` to `39.3.6`
38
+
39
+ ### Fixed
40
+
16
41
  - [eslint/overrides-react] Disable [`react/jsx-no-leaked-render`](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-no-leaked-render.md) rule, as this should be covered by types in TypeScript to prevent unnecessary type castings from boolean to boolean
17
42
  - [stylelint] Add `except` for `"margin"` and `"padding"` in `stylelint-use-logical-spec` rule, to prevent [unnecessary warnings](https://github.com/Jordan-Hall/stylelint-use-logical-spec/issues/33) for usages like `margin: 10px 20px;`
18
43
 
@@ -20,6 +45,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
20
45
 
21
46
  ## [2.16.0] - 2022.08.05
22
47
 
48
+ ### Changed
49
+
23
50
  - [eslint] Updated `eslint` from `8.14.0` to `8.21.0`
24
51
  - [eslint] Updated `eslint-import-resolver-typescript` from `2.7.1` to `3.4.0`
25
52
  - [eslint] Updated `eslint-plugin-functional` from `4.2.1` to `4.2.2`
@@ -30,7 +57,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
30
57
  - [eslint] Updated `eslint-plugin-react-hooks` from `4.5.0` to `4.6.0`
31
58
  - [eslint] Updated `eslint-plugin-unicorn` from `42.0.0` to `43.0.2`
32
59
  - [eslint] Updated `@typescript-eslint` from `5.22.0` to `5.32.0`
33
- - [eslint] Remove deprecated `@typescript-eslint/no-duplicate-imports` rule
60
+ - [markdownlint] Updated `markdownlint-cli` from `0.31.1` to `0.32.1`
61
+ - [stylelint] Updated `stylelint` from `14.8.2` to `14.9.1`
62
+ - [stylelint] Updated `stylelint-scss` from `4.2.0` to `4.3.0`
63
+ - [stylelint] Updated `stylelint-selector-no-empty` from `1.0.8` to `1.0.9`
64
+ - [stylelint] Updated `stylelint-use-logical-spec` from `3.2.2` to `4.1.0`
65
+
66
+ ### Added
67
+
34
68
  - [eslint] Make use of [`@typescript-eslint/no-restricted-imports`](https://typescript-eslint.io/rules/no-restricted-imports/) rule
35
69
  - [eslint] Make use of [`@typescript-eslint/space-infix-ops`](https://typescript-eslint.io/rules/space-infix-ops/) rule
36
70
  - [eslint] Make use of [`@typescript-eslint/consistent-generic-constructors`](https://typescript-eslint.io/rules/consistent-generic-constructors/) rule
@@ -40,21 +74,20 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
40
74
  - [eslint/overrides-react] Make use of [`react/jsx-no-leaked-render`](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-no-leaked-render.md) rule
41
75
  - [eslint] Added but disable [`unicorn/prefer-event-target`](https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/prefer-event-target.md) rule
42
76
  - [eslint] Make use of [`unicorn/prefer-logical-operator-over-ternary`](https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/prefer-logical-operator-over-ternary.md) rule
43
- - [eslint] Remove deprecated `unicorn/import-index` rule
44
- - [markdownlint] Updated `markdownlint-cli` from `0.31.1` to `0.32.1`
45
- - [stylelint] Updated `stylelint` from `14.8.2` to `14.9.1`
46
- - [stylelint] Updated `stylelint-scss` from `4.2.0` to `4.3.0`
47
- - [stylelint] Updated `stylelint-selector-no-empty` from `1.0.8` to `1.0.9`
48
- - [stylelint] Updated `stylelint-use-logical-spec` from `3.2.2` to `4.1.0`
49
77
  - [stylelint] Added but disable [`import-notation`](https://github.com/stylelint/stylelint/tree/main/lib/rules/import-notation) rule
50
78
 
79
+ ### Removed
80
+
81
+ - [eslint] Remove deprecated `@typescript-eslint/no-duplicate-imports` rule
82
+ - [eslint] Remove deprecated `unicorn/import-index` rule
83
+
51
84
  [Show all code changes](https://github.com/jens-duttke/linter-bundle/compare/v2.15.0...v2.16.0)
52
85
 
53
86
  [Show all code changes](https://github.com/jens-duttke/linter-bundle/compare/v2.15.0...v2.16.0)
54
87
 
55
88
  ## [2.15.0] - 2022.05.05
56
89
 
57
- ### Changed
90
+ ### Fixed
58
91
 
59
92
  - [stylelint] Disabled `declaration-property-max-values` rule because of false-positives.
60
93
  - [stylelint] Disabled `selector-not-notation` for now, because it depends on the project if modern Selectors Level 4 CSS can be used.
@@ -73,14 +106,20 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
73
106
 
74
107
  ### Changed
75
108
 
76
- - [general] Remove files from npm package which are only necessary for development
77
109
  - [eslint] Updated `@typescript-eslint` from `5.21.0` to `5.22.0`
78
110
  - [eslint] Updated `eslint-plugin-jsdoc` from `39.2.8` to `39.2.9`
79
111
  - [eslint] Updated `eslint-plugin-react-hooks` from `4.4.0` to `4.5.0`
80
112
  - [stylelint] Updated `stylelint` from `14.7.1` to `14.8.2`
113
+
114
+ ### Added
115
+
81
116
  - [eslint] Make use of new [`@typescript-eslint/no-duplicate-enum-values`](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-duplicate-enum-values.md) rule
82
117
  - [stylelint] Make use of new [`keyframe-block-no-duplicate-selectors`](https://github.com/stylelint/stylelint/blob/main/lib/rules/keyframe-block-no-duplicate-selectors/README.md) rule
83
118
  - [stylelint] In the deployment process, ensure that the used Stylelint options are valid
119
+
120
+ ### Fixed
121
+
122
+ - [general] Remove files from npm package which are only necessary for development
84
123
  - [stylelint] Fix invalid configuration of [`declaration-property-max-values`](https://github.com/stylelint/stylelint/blob/main/lib/rules/declaration-property-max-values/README.md) rule
85
124
 
86
125
  [Show all code changes](https://github.com/jens-duttke/linter-bundle/compare/v2.13.0...v2.14.0)
@@ -89,7 +128,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
89
128
 
90
129
  ### Changed
91
130
 
92
- - [eslint] Activate `allowExpressions` option of [`@typescript-eslint/explicit-function-return-type`](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/explicit-function-return-type.md) rule
93
131
  - [eslint] Updated `@typescript-eslint` from `5.17.0` to `5.21.0`
94
132
  - [eslint] Updated `eslint` from `8.12.0` to `8.14.0`
95
133
  - [eslint] Updated `eslint-import-resolver-typescript` from `2.7.0` to `2.7.1`
@@ -100,14 +138,17 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
100
138
  - [eslint] Updated `eslint-plugin-unicorn` from `41.0.1` to `42.0.0`
101
139
  - [stylelint] Updated `postcss-scss` from `4.0.3` to `4.0.4`
102
140
  - [stylelint] Updated `stylelint` from `14.6.1` to `14.7.1`
103
- - [eslint] Activate `allowExpressions` option of [`@typescript-eslint/explicit-function-return-type`](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/explicit-function-return-type.md) rule
104
141
  - [eslint/overrides-jsdoc] Set [`minLineCount` option to 2](https://github.com/gajus/eslint-plugin-jsdoc/issues/870) for `require-jsdoc` rule
142
+ - [stylelint] Set [`selector-not-notation`](https://github.com/stylelint/stylelint/blob/main/lib/rules/selector-not-notation/README.md) rule to `"complex"`
143
+
144
+ ### Added
145
+
146
+ - [eslint] Activate `allowExpressions` option of [`@typescript-eslint/explicit-function-return-type`](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/explicit-function-return-type.md) rule
105
147
  - [eslint] Reactivated the [`import/no-relative-packages`](https://github.com/import-js/eslint-plugin-import/blob/master/docs/rules/no-relative-packages.md) rule
106
148
  - [eslint] Make use of new [`unicorn/no-useless-switch-case`](https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/no-useless-switch-case.md) rule
107
149
  - [eslint] Make use of new [`unicorn/prefer-modern-math-apis`](https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/prefer-modern-math-apis.md) rule
108
150
  - [eslint] Make use of new [`unicorn/no-unreadable-iife`](https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/no-unreadable-iife.md) rule
109
151
  - [eslint] Add but disable [`unicorn/prefer-native-coercion-functions`](https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/prefer-native-coercion-functions.md) rule, because this would produce inconsistency in the code and is harder to read
110
- - [stylelint] Set [`selector-not-notation`](https://github.com/stylelint/stylelint/blob/main/lib/rules/selector-not-notation/README.md) rule to `"complex"`
111
152
 
112
153
  [Show all code changes](https://github.com/jens-duttke/linter-bundle/compare/v2.12.0...v2.13.0)
113
154
 
@@ -126,9 +167,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
126
167
  - [stylelint] Updated `stylelint` from `14.5.3` to `14.6.1`
127
168
  - [stylelint] Updated `stylelint-scss` from `4.1.0` to `4.2.0`
128
169
  - [general] Updated `micromatch` from `4.0.4` to `4.0.5`
170
+ - [stylelint] Replace `function-no-unknown` by `scss/function-no-unknown`
171
+
172
+ ### Added
173
+
129
174
  - [eslint] Make use of [`destructuredArrayIgnorePattern`](https://eslint.org/docs/rules/no-unused-vars#destructuredarrayignorepattern) of `@typescript-eslint/no-unused-vars` rule, to ignore variables with leading underscore.
130
175
  - [stylelint] Make use of [`declaration-property-max-values`](https://stylelint.io/user-guide/rules/list/declaration-property-max-values/) rule, and set `unprefixed-property-name` to `4`
131
- - [stylelint] Replace `function-no-unknown` by `scss/function-no-unknown`
132
176
 
133
177
  [Show all code changes](https://github.com/jens-duttke/linter-bundle/compare/v2.11.1...v2.12.0)
134
178
 
@@ -155,7 +155,7 @@ module.exports = {
155
155
  'react/jsx-no-script-url': 'error',
156
156
  'react/jsx-no-target-blank': ['error', { allowReferrer: true, forms: true }],
157
157
  'react/jsx-no-undef': 'error',
158
- 'react/jsx-no-useless-fragment': 'error',
158
+ 'react/jsx-no-useless-fragment': ['error', { allowExpressions: true }],
159
159
  'react/jsx-one-expression-per-line': ['off', { allow: 'single-child' }], // @todo Doesn't work with something like "Text <a href="...">Link</a> More Text", which should be valid
160
160
  'react/jsx-curly-brace-presence': ['error', { propElementValues: 'always' }],
161
161
  'react/jsx-fragments': ['error', 'element'],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "linter-bundle",
3
- "version": "2.17.0",
3
+ "version": "2.18.0",
4
4
  "description": "Ready-to use bundle of linting tools, containing configurations for ESLint, stylelint and markdownlint.",
5
5
  "keywords": [
6
6
  "eslint",
@@ -40,15 +40,15 @@
40
40
  "check-outdated": "npx --yes -- check-outdated --ignore-pre-releases"
41
41
  },
42
42
  "dependencies": {
43
- "@typescript-eslint/eslint-plugin": "5.33.0",
44
- "@typescript-eslint/parser": "5.33.0",
45
- "eslint": "8.21.0",
46
- "eslint-import-resolver-typescript": "3.4.0",
43
+ "@typescript-eslint/eslint-plugin": "5.33.1",
44
+ "@typescript-eslint/parser": "5.33.1",
45
+ "eslint": "8.22.0",
46
+ "eslint-import-resolver-typescript": "3.4.2",
47
47
  "eslint-import-resolver-webpack": "0.13.2",
48
48
  "eslint-plugin-eslint-comments": "3.2.0",
49
49
  "eslint-plugin-functional": "4.2.2",
50
50
  "eslint-plugin-import": "2.26.0",
51
- "eslint-plugin-jest": "26.8.2",
51
+ "eslint-plugin-jest": "26.8.3",
52
52
  "eslint-plugin-jsdoc": "39.3.6",
53
53
  "eslint-plugin-jsx-a11y": "6.6.1",
54
54
  "eslint-plugin-node": "11.1.0",
@@ -59,7 +59,7 @@
59
59
  "markdownlint-cli": "0.32.1",
60
60
  "micromatch": "4.0.5",
61
61
  "postcss-scss": "4.0.4",
62
- "stylelint": "14.9.1",
62
+ "stylelint": "14.10.0",
63
63
  "stylelint-declaration-block-no-ignored-properties": "2.5.0",
64
64
  "stylelint-order": "5.0.0",
65
65
  "stylelint-scss": "4.3.0",
@@ -71,9 +71,9 @@
71
71
  "typescript": "^4.0.0"
72
72
  },
73
73
  "devDependencies": {
74
- "@types/eslint": "8.4.5",
74
+ "@types/eslint": "8.4.6",
75
75
  "@types/micromatch": "4.0.2",
76
- "@types/node": "18.6.5",
76
+ "@types/node": "18.7.6",
77
77
  "stylelint-find-new-rules": "4.0.0",
78
78
  "typescript": "4.7.4"
79
79
  }
@@ -68,6 +68,7 @@ module.exports = {
68
68
  * @see https://github.com/stylelint/stylelint/tree/master/lib/rules
69
69
  */
70
70
  'alpha-value-notation': 'number', // @todo change that to 'percentage'?
71
+ 'annotation-no-unknown': true,
71
72
  'at-rule-allowed-list': null,
72
73
  'at-rule-disallowed-list': null,
73
74
  'at-rule-empty-line-before': [
@@ -197,6 +198,7 @@ module.exports = {
197
198
  'indentation': 'tab',
198
199
  'keyframe-block-no-duplicate-selectors': true,
199
200
  'keyframe-declaration-no-important': true,
201
+ 'keyframe-selector-notation': 'percentage',
200
202
  'keyframes-name-pattern': '^[a-z]+(-[a-z]+)*\\d*$',
201
203
  'length-zero-no-unit': true,
202
204
  'linebreaks': 'unix',