UNPKG

59.8 kBMarkdownView Raw
1## [31.0.2](https://github.com/peerigon/eslint-config-peerigon/compare/v31.0.1...v31.0.2) (2021-08-22)
2
3
4### Bug Fixes
5
6* **typescript:** Disable "@babel/new-cap" for TypeScript projects ([aa363af](https://github.com/peerigon/eslint-config-peerigon/commit/aa363af0fd84f0e990742790803db0ddc9c7f16e))
7
8## [31.0.1](https://github.com/peerigon/eslint-config-peerigon/compare/v31.0.0...v31.0.1) (2021-08-02)
9
10
11### Bug Fixes
12
13* **TypeScript:** Disable `@typescript-eslint/method-signature-style` for `d.ts` files ([87e915b](https://github.com/peerigon/eslint-config-peerigon/commit/87e915b75fc84ca729ac3ac38efa38cd1a4cbadb))
14
15# [31.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v30.2.0...v31.0.0) (2021-07-28)
16
17
18### Features
19
20* Enable `import/no-import-module-exports` ([d4be1ce](https://github.com/peerigon/eslint-config-peerigon/commit/d4be1ce1fc354422f3e721555a0cd8b1db0253a4))
21* Enable `import/no-relative-packages` ([b44fd1c](https://github.com/peerigon/eslint-config-peerigon/commit/b44fd1cf4c92103bbcbc86d4a9cce9629f092e00))
22
23
24### BREAKING CHANGES
25
26* Prevent relative package imports in Yarn/Lerna workspaces. See https://github.com/import-js/eslint-plugin-import/blob/master/docs/rules/no-relative-packages.md
27* import and module.exports should not be mixed. See https://github.com/import-js/eslint-plugin-import/blob/master/docs/rules/no-import-module-exports.md
28
29# [30.2.0](https://github.com/peerigon/eslint-config-peerigon/compare/v30.1.0...v30.2.0) (2021-07-28)
30
31
32### Bug Fixes
33
34* **styles/prefer-arrow:** Allow class methods again ([6c7b1b8](https://github.com/peerigon/eslint-config-peerigon/commit/6c7b1b855693212b40d3c18093fc699ff0c73d82))
35
36
37### Features
38
39* **typescript:** Relax "@typescript-eslint/no-unused-vars" in d.ts files ([561b939](https://github.com/peerigon/eslint-config-peerigon/commit/561b939c01f55ac5d425f64ecdf3dfe1035a5f65))
40
41# [30.1.0](https://github.com/peerigon/eslint-config-peerigon/compare/v30.0.2...v30.1.0) (2021-05-07)
42
43
44### Features
45
46* Relax "no-constant-condition" for loops ([7337bb7](https://github.com/peerigon/eslint-config-peerigon/commit/7337bb70d14c7ea01ebb10f02ab9fdbb9cf7b3de))
47
48## [30.0.2](https://github.com/peerigon/eslint-config-peerigon/compare/v30.0.1...v30.0.2) (2021-03-05)
49
50
51### Bug Fixes
52
53* Problem with prettier/react ([dcbd28f](https://github.com/peerigon/eslint-config-peerigon/commit/dcbd28fbc45f409c1c24a7abae5abde383fc2036))
54
55## [30.0.1](https://github.com/peerigon/eslint-config-peerigon/compare/v30.0.0...v30.0.1) (2021-03-05)
56
57
58### Bug Fixes
59
60* Problem with updated eslint-config-prettier ([3108084](https://github.com/peerigon/eslint-config-peerigon/commit/3108084d43c8cadd27d3714229f90a4fee7df251))
61
62# [30.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v29.0.0...v30.0.0) (2021-01-31)
63
64
65### chore
66
67* Update dependencies ([#91](https://github.com/peerigon/eslint-config-peerigon/issues/91)) ([371ec42](https://github.com/peerigon/eslint-config-peerigon/commit/371ec4294808a48a92d9c8d625d40b8c5feae0e5)), closes [#89](https://github.com/peerigon/eslint-config-peerigon/issues/89)
68
69
70### BREAKING CHANGES
71
72* We switched to @babel/eslint-parser and @babel/eslint-plugin, see https://babel.dev/blog/2020/07/13/the-state-of-babel-eslint . If you're using Babel you should set [`requireConfigFile: true`](https://github.com/babel/babel/tree/main/eslint/babel-eslint-parser#additional-parser-configuration) in your ESLint config. ESLint will then use your `babel.config.json`.
73* You can remove TypeScript-specific ESLint dependencies, especially `@typescript-eslint/parser`. They should ship with the config.
74
75# [30.0.0-beta.1](https://github.com/peerigon/eslint-config-peerigon/compare/v29.0.0...v30.0.0-beta.1) (2021-01-31)
76
77### chore
78
79- Update dependencies ([a957c21](https://github.com/peerigon/eslint-config-peerigon/commit/a957c211fb5302dd6a7d126c7d5d7be1ed1f0477))
80
81### BREAKING CHANGES
82
83- You should have @babel/core as your project dependency now, see https://babel.dev/blog/2020/07/13/the-state-of-babel-eslint#the-present
84- You can remove TypeScript-specific ESLint dependencies, especially @typescript-eslint/parser. They should ship with the config.
85
86# [29.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v28.1.5...v29.0.0) (2021-01-31)
87
88### Bug Fixes
89
90- **JavaScript:** Remove deprecated rules ([eb52883](https://github.com/peerigon/eslint-config-peerigon/commit/eb528832d9d38289d8bc3a6bc34dea78d6023ee2))
91
92### chore
93
94- Update dependencies ([44e21b5](https://github.com/peerigon/eslint-config-peerigon/commit/44e21b5ab59783af869e93eb5d5e1a0e0f5802a0))
95
96### Features
97
98- Add prettier-typescript-node preset ([1464581](https://github.com/peerigon/eslint-config-peerigon/commit/1464581a8ec2cdf5e2479078125e283004d5d0dd))
99- **JavaScript:** Add "no-loss-of-precision" rule as warning ([5fd2828](https://github.com/peerigon/eslint-config-peerigon/commit/5fd2828c9489d3bf9a332aed358432bba7cd87b9))
100- **JavaScript:** Add "no-nonoctal-decimal-escape" rule as warning ([92e7aa9](https://github.com/peerigon/eslint-config-peerigon/commit/92e7aa9aaf7e71e3e97b7cfe7c46d7327635af20))
101- **JavaScript:** Add "no-promise-executor-return" rule as warning ([a679f6b](https://github.com/peerigon/eslint-config-peerigon/commit/a679f6bb22e99ce78f82c858c048e4ab00560db3))
102- **JavaScript:** Add "no-restricted-exports" rule as warning ([c1f3852](https://github.com/peerigon/eslint-config-peerigon/commit/c1f3852956f5ba4fbdfd58dbc32760d407a0f930))
103- **JavaScript:** Add "no-unreachable-loop" rule as warning ([5757b4b](https://github.com/peerigon/eslint-config-peerigon/commit/5757b4b43240905ee839a6910f19eab6f5f01728))
104- **JavaScript:** Add "no-unsafe-optional-chaining" rule as warning ([eb77e91](https://github.com/peerigon/eslint-config-peerigon/commit/eb77e91768039ffd9f83eef8c63638cec94c7094))
105- **JavaScript:** Add "no-useless-backreference" rule as warning ([1653191](https://github.com/peerigon/eslint-config-peerigon/commit/165319178dc5cd82b44bad9228a1f751e7493960))
106- **node:** Use eslint-plugin-node ([75c2ffe](https://github.com/peerigon/eslint-config-peerigon/commit/75c2ffe0d2d2fa68ae316ad8bc97964d2c0c0645))
107- **TypeScript:** Add new TypeScript rules ([199a393](https://github.com/peerigon/eslint-config-peerigon/commit/199a393e400d4c6d9ef873db28a59e5ee30730d4))
108
109### BREAKING CHANGES
110
111- **node:** We switched to eslint-plugin-node and their recommended rules
112- Change `eslint` peer dependency to `^7.15.0`
113- Update `eslint-config-prettier` to `^7.2.0`
114
115# [29.0.0-beta.1](https://github.com/peerigon/eslint-config-peerigon/compare/v28.1.5...v29.0.0-beta.1) (2021-01-31)
116
117### Bug Fixes
118
119- **JavaScript:** Remove deprecated rules ([eb52883](https://github.com/peerigon/eslint-config-peerigon/commit/eb528832d9d38289d8bc3a6bc34dea78d6023ee2))
120
121### chore
122
123- Update dependencies ([44e21b5](https://github.com/peerigon/eslint-config-peerigon/commit/44e21b5ab59783af869e93eb5d5e1a0e0f5802a0))
124
125### Features
126
127- Add prettier-typescript-node preset ([1464581](https://github.com/peerigon/eslint-config-peerigon/commit/1464581a8ec2cdf5e2479078125e283004d5d0dd))
128- **JavaScript:** Add "no-loss-of-precision" rule as warning ([5fd2828](https://github.com/peerigon/eslint-config-peerigon/commit/5fd2828c9489d3bf9a332aed358432bba7cd87b9))
129- **JavaScript:** Add "no-nonoctal-decimal-escape" rule as warning ([92e7aa9](https://github.com/peerigon/eslint-config-peerigon/commit/92e7aa9aaf7e71e3e97b7cfe7c46d7327635af20))
130- **JavaScript:** Add "no-promise-executor-return" rule as warning ([a679f6b](https://github.com/peerigon/eslint-config-peerigon/commit/a679f6bb22e99ce78f82c858c048e4ab00560db3))
131- **JavaScript:** Add "no-restricted-exports" rule as warning ([c1f3852](https://github.com/peerigon/eslint-config-peerigon/commit/c1f3852956f5ba4fbdfd58dbc32760d407a0f930))
132- **JavaScript:** Add "no-unreachable-loop" rule as warning ([5757b4b](https://github.com/peerigon/eslint-config-peerigon/commit/5757b4b43240905ee839a6910f19eab6f5f01728))
133- **JavaScript:** Add "no-unsafe-optional-chaining" rule as warning ([eb77e91](https://github.com/peerigon/eslint-config-peerigon/commit/eb77e91768039ffd9f83eef8c63638cec94c7094))
134- **JavaScript:** Add "no-useless-backreference" rule as warning ([1653191](https://github.com/peerigon/eslint-config-peerigon/commit/165319178dc5cd82b44bad9228a1f751e7493960))
135- **node:** Use eslint-plugin-node ([75c2ffe](https://github.com/peerigon/eslint-config-peerigon/commit/75c2ffe0d2d2fa68ae316ad8bc97964d2c0c0645))
136- **TypeScript:** Add new TypeScript rules ([199a393](https://github.com/peerigon/eslint-config-peerigon/commit/199a393e400d4c6d9ef873db28a59e5ee30730d4))
137
138### BREAKING CHANGES
139
140- **node:** We switched to eslint-plugin-node and their recommended rules
141- Change `eslint` peer dependency to `^7.15.0`
142- Update `eslint-config-prettier` to `^7.2.0`
143
144## [28.1.5](https://github.com/peerigon/eslint-config-peerigon/compare/v28.1.4...v28.1.5) (2020-11-30)
145
146### Bug Fixes
147
148- **TypeScript:** Disable @typescript-eslint/no-throw-literal ([1b8aa70](https://github.com/peerigon/eslint-config-peerigon/commit/1b8aa70555ab625ed4aca7b288bd223ee74d8b1f))
149
150## [28.1.4](https://github.com/peerigon/eslint-config-peerigon/compare/v28.1.3...v28.1.4) (2020-07-16)
151
152### Bug Fixes
153
154- **typescript:** Disable @typescript-eslint/consistent-type-assertions in tests ([938a733](https://github.com/peerigon/eslint-config-peerigon/commit/938a73396dfb687704a8885d128f59ae4866ae5a))
155- **typescript:** Disable @typescript-eslint/no-unsafe-call ([60fd344](https://github.com/peerigon/eslint-config-peerigon/commit/60fd34420829afea96f71c888147dcb88bf7e970))
156
157## [28.1.3](https://github.com/peerigon/eslint-config-peerigon/compare/v28.1.2...v28.1.3) (2020-07-09)
158
159### Bug Fixes
160
161- **base:** Disable accessor-pairs ([e9ca31d](https://github.com/peerigon/eslint-config-peerigon/commit/e9ca31dc264f3834764d50886f769df33a8e86c3))
162
163## [28.1.2](https://github.com/peerigon/eslint-config-peerigon/compare/v28.1.1...v28.1.2) (2020-07-09)
164
165### Bug Fixes
166
167- Missing preset files in published package ([0b79df1](https://github.com/peerigon/eslint-config-peerigon/commit/0b79df1404e48777bb91af739d4fde496092e961))
168
169## [28.1.1](https://github.com/peerigon/eslint-config-peerigon/compare/v28.1.0...v28.1.1) (2020-07-09)
170
171### Bug Fixes
172
173- **base:** Disable import/no-unassigned-import ([3ccf48a](https://github.com/peerigon/eslint-config-peerigon/commit/3ccf48acc02c0c6aad0343561c63aafb588c5e57))
174- **typescript:** Disable @typescript-eslint/no-unsafe-return in tests ([4ef74ab](https://github.com/peerigon/eslint-config-peerigon/commit/4ef74aba0803911d4fda4da5d2355cd07edb8889))
175
176# [28.1.0](https://github.com/peerigon/eslint-config-peerigon/compare/v28.0.0...v28.1.0) (2020-07-09)
177
178### Bug Fixes
179
180- **typescript:** Relax rules that forbid the reassignment of 'any' ([93bc5ca](https://github.com/peerigon/eslint-config-peerigon/commit/93bc5ca8ec7e909a6a4afab77adedfaae9656bcd))
181- **typescript:** Remove additional @typescript-eslint/no-unnecessary-condition options ([033011a](https://github.com/peerigon/eslint-config-peerigon/commit/033011a356902847f184f895bfff6472b4e10665))
182- **typescript:** Remove deprecated rules ([d4f0048](https://github.com/peerigon/eslint-config-peerigon/commit/d4f00484e5867ec940ba1f76979b354f61af4269))
183
184### Features
185
186- Add presets for a quick start ([326052d](https://github.com/peerigon/eslint-config-peerigon/commit/326052d92d04d7414b9d973c6df71af8aeda1c97))
187- **typescript:** Allow ts-expect-error with description ([b80c6a5](https://github.com/peerigon/eslint-config-peerigon/commit/b80c6a53aae14324a1006f859b329c6a155b3422))
188- **typescript:** Disable @typescript-eslint/no-explicit-any ([5332eb1](https://github.com/peerigon/eslint-config-peerigon/commit/5332eb184b5ab6e6cb9314c26d5d81f48a0ee0a5))
189- **typescript:** Disable @typescript-eslint/no-non-null-assertion ([94b79dd](https://github.com/peerigon/eslint-config-peerigon/commit/94b79ddc81bb3aaed7e3eae3765c246c070ff633))
190
191# [28.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v27.8.0...v28.0.0) (2020-05-16)
192
193### Features
194
195- Remove Prettier configuration ([e6c0d39](https://github.com/peerigon/eslint-config-peerigon/commit/e6c0d393f2de987e7ad33198085b2173ea9a9cd3))
196
197### BREAKING CHANGES
198
199- Based on discussion https://github.com/peerigon/eslint-config-peerigon/issues/76 we decided to remove our Prettier configuration.
200 In order to avoid useless discussions, people should format their code with thatever style Prettier uses. Configuring Prettier ultimately defeats the purpose of Prettier, see https://github.com/prettier/prettier/issues/40
201
202# [27.8.0](https://github.com/peerigon/eslint-config-peerigon/compare/v27.7.0...v27.8.0) (2020-05-16)
203
204### Features
205
206- Move jsdoc rules to separate config ([c810d1f](https://github.com/peerigon/eslint-config-peerigon/commit/c810d1f969e96ce51907a619109f9e75d4ef5733)), closes [#87](https://github.com/peerigon/eslint-config-peerigon/issues/87)
207
208# [27.7.0](https://github.com/peerigon/eslint-config-peerigon/compare/v27.6.1...v27.7.0) (2020-05-16)
209
210### Features
211
212- Increase eslint peerDependency to 7.0.0 ([45d5003](https://github.com/peerigon/eslint-config-peerigon/commit/45d5003b8ff2681b114d9ce370be5e903409da41))
213
214## [27.6.1](https://github.com/peerigon/eslint-config-peerigon/compare/v27.6.0...v27.6.1) (2020-05-13)
215
216### Bug Fixes
217
218- Disable class-methods-use-this in react rules ([a0fe36b](https://github.com/peerigon/eslint-config-peerigon/commit/a0fe36bf9578e76ef94e60a99d96f2683c512b73))
219
220# [27.6.0](https://github.com/peerigon/eslint-config-peerigon/compare/v27.5.2...v27.6.0) (2020-03-23)
221
222### Features
223
224- **typescript:** Disable @typescript-eslint/prefer-regexp-exec ([f170b8a](https://github.com/peerigon/eslint-config-peerigon/commit/f170b8ae8ab316271fccceda7eb06f70cb4bc39d))
225
226## [27.5.2](https://github.com/peerigon/eslint-config-peerigon/compare/v27.5.1...v27.5.2) (2020-03-23)
227
228### Bug Fixes
229
230- Fix security issues found by npm audit ([6501094](https://github.com/peerigon/eslint-config-peerigon/commit/6501094f33261e72db96a77c3ecbcae0936a3749))
231
232## [27.5.1](https://github.com/peerigon/eslint-config-peerigon/compare/v27.5.0...v27.5.1) (2020-03-23)
233
234### Bug Fixes
235
236- **base:** Disable no-eq-null ([df9922f](https://github.com/peerigon/eslint-config-peerigon/commit/df9922f99a948c54afccc0fe40ba1972502fe821))
237
238# [27.5.0](https://github.com/peerigon/eslint-config-peerigon/compare/v27.4.0...v27.5.0) (2020-03-09)
239
240### Features
241
242- **typescript:** Improve @typescript-eslint/naming-convention ([#85](https://github.com/peerigon/eslint-config-peerigon/issues/85)) ([86299ff](https://github.com/peerigon/eslint-config-peerigon/commit/86299fff66f6f26597ef7a82453bc2a70810a458))
243
244# [27.4.0](https://github.com/peerigon/eslint-config-peerigon/compare/v27.3.0...v27.4.0) (2020-03-09)
245
246### Features
247
248- Disable "class-methods-use-this" ([f8f03c0](https://github.com/peerigon/eslint-config-peerigon/commit/f8f03c0bf9800d140d44ecdb356c348ccd2f3846))
249
250# [27.3.0](https://github.com/peerigon/eslint-config-peerigon/compare/v27.2.0...v27.3.0) (2020-03-09)
251
252### Features
253
254- Disable "no-warning-comments" ([460f385](https://github.com/peerigon/eslint-config-peerigon/commit/460f385324d3cd17c1826b1da3cf40aef0035785))
255
256# [27.2.0](https://github.com/peerigon/eslint-config-peerigon/compare/v27.1.3...v27.2.0) (2020-03-05)
257
258### Bug Fixes
259
260- Disable "no-anonymous-default-exports" rule in tests ([#82](https://github.com/peerigon/eslint-config-peerigon/issues/82)) ([01f4cd4](https://github.com/peerigon/eslint-config-peerigon/commit/01f4cd48a1feb811ddd4c33b853e9736a20d350a))
261
262### Features
263
264- Add prefer array shorthand style option ([#81](https://github.com/peerigon/eslint-config-peerigon/issues/81)) ([fb9f50a](https://github.com/peerigon/eslint-config-peerigon/commit/fb9f50aa7f69cd74306b784fb30f3750dfccb818))
265
266## [27.1.3](https://github.com/peerigon/eslint-config-peerigon/compare/v27.1.2...v27.1.3) (2020-02-13)
267
268### Bug Fixes
269
270- **base:** Relax some promise rules ([8b357e1](https://github.com/peerigon/eslint-config-peerigon/commit/8b357e1a16f583ba68a980ef27666ab18bcba599))
271- **react:** Fix minor issue when using styles/react-jsx-no-literals ([049cac6](https://github.com/peerigon/eslint-config-peerigon/commit/049cac6997c59f6c093b750700cb72e636c0f7e1))
272- **typescript:** Disable @typescript-eslint/restrict-template-expressions ([efbb8b3](https://github.com/peerigon/eslint-config-peerigon/commit/efbb8b3728aad709b0a9d3f3461de369cf0bd8c6))
273
274## [27.1.2](https://github.com/peerigon/eslint-config-peerigon/compare/v27.1.1...v27.1.2) (2020-02-13)
275
276### Bug Fixes
277
278- **typescript:** Disable @typescript-eslint/require-array-sort-compare ([e6ac2e1](https://github.com/peerigon/eslint-config-peerigon/commit/e6ac2e1b9015504ba3dd3dcf79cb8234fbbe7a5c))
279
280## [27.1.1](https://github.com/peerigon/eslint-config-peerigon/compare/v27.1.0...v27.1.1) (2020-02-13)
281
282### Bug Fixes
283
284- **react:** Fix problem with escape hatch in styles/react-jsx-no-literals ([993568b](https://github.com/peerigon/eslint-config-peerigon/commit/993568b6884b068407e01443d8551be4467dc8d6))
285
286# [27.1.0](https://github.com/peerigon/eslint-config-peerigon/compare/v27.0.1...v27.1.0) (2020-02-13)
287
288### Features
289
290- **typescript:** Disable no-extraneous-class ([c4f49eb](https://github.com/peerigon/eslint-config-peerigon/commit/c4f49eb6a8b752322adb299b568d28526087ae0d))
291- Allow exceptions for naming conventions in TypeScript projects ([89de83b](https://github.com/peerigon/eslint-config-peerigon/commit/89de83bc54a1809de6e0a0ec7bb20cc3e0a41067))
292
293## [27.0.1](https://github.com/peerigon/eslint-config-peerigon/compare/v27.0.0...v27.0.1) (2020-02-12)
294
295### Bug Fixes
296
297- Add new example `.editorconfig` ([5891b4c](https://github.com/peerigon/eslint-config-peerigon/commit/5891b4c78b2a0007d393dd3490d350c4d8c700a5))
298
299# [27.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v26.0.0...v27.0.0) (2020-02-12)
300
301### Bug Fixes
302
303- **typescript:** Do not set tsconfig.json by default ([6b35fd4](https://github.com/peerigon/eslint-config-peerigon/commit/6b35fd420d98ae9b6837fabdb5c88d13ec1254fa))
304
305### BREAKING CHANGES
306
307- **typescript:** We don't set the tsconfig.json now by default. Every project needs to specify it explicitly. This prevents some bugs that would be otherwise hard to understand. We also added a note to the README which should help people to set it up.
308
309# [26.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v25.3.1...v26.0.0) (2020-02-12)
310
311### Bug Fixes
312
313- Remove impractical rules ([56c62a2](https://github.com/peerigon/eslint-config-peerigon/commit/56c62a26a112924548d11237ed9ae4c7d5411b9c))
314- **base:** Disable require-atomic-updates ([38cd859](https://github.com/peerigon/eslint-config-peerigon/commit/38cd859fcf112c13469fba95822549d9808e1ae0))
315- **base:** Improve padding-line-between-statements ([4b3c394](https://github.com/peerigon/eslint-config-peerigon/commit/4b3c39469b76094ff3557ac8fdde5634b49360b5))
316- **base:** Increase soft limit of complexity rule ([a78a702](https://github.com/peerigon/eslint-config-peerigon/commit/a78a702f5b5d16ff9b11237ee9c059618f80eb32))
317- **base:** Temporarily disable require-unicode-regexp ([b248df7](https://github.com/peerigon/eslint-config-peerigon/commit/b248df7736fd7a4ccf7914a418c46cd533ec052a))
318- **typescript:** Allow \_ parameter names ([c0b3779](https://github.com/peerigon/eslint-config-peerigon/commit/c0b37797012dbea18efa45c6989ec78bfe694f99))
319- **typescript:** Only require return await inside try-catch ([709751f](https://github.com/peerigon/eslint-config-peerigon/commit/709751fa7b49c507c2a8112d8625710bc71510a6))
320- **typescript:** Switch to regular camelCase and PascalCase naming convention ([182c295](https://github.com/peerigon/eslint-config-peerigon/commit/182c29553f8c021c776d66dbd15dbe9f09c91e3e))
321- Disable no-return-await ([14db3eb](https://github.com/peerigon/eslint-config-peerigon/commit/14db3eb268b4ffd1923958fb1952248ae77dbbec))
322- Fine-tune soft limits of max-lines and max-dependencies ([a123f41](https://github.com/peerigon/eslint-config-peerigon/commit/a123f41676aad7b3d56ff35512774fd4860093d9))
323
324### chore
325
326- Refactor glob-patterns module ([1db1f22](https://github.com/peerigon/eslint-config-peerigon/commit/1db1f22dedf8a9d1c6cc7342391f3774288e93dc))
327- Remove support for Node<10 ([6c45b41](https://github.com/peerigon/eslint-config-peerigon/commit/6c45b41233bdc381bbc9916193cf3b07914fc8bb))
328- Update dependencies ([b52305e](https://github.com/peerigon/eslint-config-peerigon/commit/b52305ee79c201371d876e58d57a1163ec568ed4))
329
330### Features
331
332- **react:** Allow functions created during render ([8c80148](https://github.com/peerigon/eslint-config-peerigon/commit/8c80148b27465fc896de2fdee9091a3ddcd9f736))
333- Lower severity of opinionated rules ([c0bea51](https://github.com/peerigon/eslint-config-peerigon/commit/c0bea5118cc6577d2f33bd40d93be1d94e0edce6))
334- **typescript:** Add new TypeScript rules ([9e77b24](https://github.com/peerigon/eslint-config-peerigon/commit/9e77b24ef7ff906c8a7259ba9b33ebb434dc45e7))
335- **typescript:** Disable @typescript-eslint/explicit-module-boundary-types again ([a88a683](https://github.com/peerigon/eslint-config-peerigon/commit/a88a6833367c45a85a8497fa207f4395c82fe736))
336- **typescript:** Enforce naming convention ([1fb0844](https://github.com/peerigon/eslint-config-peerigon/commit/1fb0844068673f22e6c2bcccb86852b10bb2aa8f))
337- **typescript:** Improve TypeScript support in base ESLint rules ([6763671](https://github.com/peerigon/eslint-config-peerigon/commit/6763671c22c9d5512f53294e33fcbc838fd12012))
338- Add @typescript-eslint/explicit-module-boundary-types ([3f106a0](https://github.com/peerigon/eslint-config-peerigon/commit/3f106a050bbfa2a3466fe985e1bd810856afb0b0))
339- Add bunch of JSDoc rules ([680550e](https://github.com/peerigon/eslint-config-peerigon/commit/680550e6415658081bebc89fd834081fecc61f96))
340- Add styles/no-default-export ([d8b0242](https://github.com/peerigon/eslint-config-peerigon/commit/d8b0242069d326e12c3dfb7247867c5dfd336d49))
341- Add styles/no-null ([a30511b](https://github.com/peerigon/eslint-config-peerigon/commit/a30511b1ea55dc8081375ffe0de245f34cc54e79))
342- Disable some jsdoc rules when using TypeScript ([82220fa](https://github.com/peerigon/eslint-config-peerigon/commit/82220fa862bcb2d3298a1c076b7a7c50b2794491))
343- Improve jsdoc rules ([0a6694d](https://github.com/peerigon/eslint-config-peerigon/commit/0a6694d061e4553ebde0653322b7567a69956e44))
344- Improve prettier support ([1cd6537](https://github.com/peerigon/eslint-config-peerigon/commit/1cd6537aa59fd53e9b3f40caa1f72b52a4a8dddf))
345- **base:** Add no-dupe-else-if ([0ee8136](https://github.com/peerigon/eslint-config-peerigon/commit/0ee8136bbff0e53d08def5bc818054b29bea097b))
346- **base:** Add prefer-exponentiation-operator ([fd41a01](https://github.com/peerigon/eslint-config-peerigon/commit/fd41a01e0692670375d43009f45704b02d02c1c3))
347- **base:** Add prefer-regex-literals ([01599bd](https://github.com/peerigon/eslint-config-peerigon/commit/01599bda47b1197fca321780a644c6a5693a54af))
348- **base:** Add require-atomic-updates ([69f2c36](https://github.com/peerigon/eslint-config-peerigon/commit/69f2c36d0d9b57d32a98f617c33cc407423b2904))
349- **base:** Add require-unicode-regexp ([0b44ba5](https://github.com/peerigon/eslint-config-peerigon/commit/0b44ba50add0a1a8b378c8f311000c2558fe3f54))
350- **base:** Disallow assignments of imports ([0e6af86](https://github.com/peerigon/eslint-config-peerigon/commit/0e6af861370cd95bbff8dc0f96c112cb3a26ba83))
351- **base:** Disallow return in constructors ([f9edbbc](https://github.com/peerigon/eslint-config-peerigon/commit/f9edbbcce36703d644b9ada2315e5be310ae7102))
352- **base:** Disallow return in setters ([f3f574c](https://github.com/peerigon/eslint-config-peerigon/commit/f3f574cfcff59a8e65efda84658a746246720e3d))
353- **base:** Require grouping of setters and getters ([94792f2](https://github.com/peerigon/eslint-config-peerigon/commit/94792f2a8ab22bb777fa70ba09ef96ecefee0e38))
354
355### BREAKING CHANGES
356
357- **react:** The default style now is to allow functions created during render. The style peerigon/styles/react-jsx-allow-bind has been removed and replaced by its opposite peerigon/styles/react-jsx-no-bind for applications that use memo a lot.
358
359The motivation behind this is that it's more convenient for a lot of people to create functions during render. The performance downside is usually not an issue and can be mitigated by better usage of useState().
360
361- **typescript:** There are new rules for TypeScript code:
362
363* [no-dynamic-delete](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-dynamic-delete.md)
364* [no-extra-non-null-assertion](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-non-null-assertion.md)
365* [no-floating-promises](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-floating-promises.md)
366* [no-non-null-asserted-optional-chain](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md)
367* [no-unnecessary-condition](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unnecessary-condition.md)
368* [prefer-as-con](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/prefer-as-const.md)
369* [prefer-nullish-coalescing](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.md)
370* [prefer-optional-chain](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/prefer-optional-chain.md)
371* [restrict-template-expressions](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/restrict-template-expressions.md)
372* [return-await](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/return-await.md)
373* [switch-exhaustiveness-check](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/switch-exhaustiveness-check.md)
374
375- **typescript:** The new rule enforces the consistent use of camelCase, PascalCase and UPPER_CASE for variable, property and member names. Additionally, only PascalCase is allowed for type-like structures.
376- Exported functions now need to specify an explicit return type. This enforces everyone to be explicit about the public interface of the module. This is likely to increase the developer experience because type errors will show up closer to the actual error.
377- Use param instead of arg and argument.
378- The prettier config now uses tabs instead of spaces. This is not actually breaking since Prettier will just format your code in a different way, but it will produce a lot of noise.
379- globPatterns.js has been renamed to glob-patterns.js
380- **base:** Require u flag in all regexes. The u flag adds unicode support and reports invalid regex patterns.
381- **base:** ESLint now reports a potential unsafe use of +=,-=,\*=,/= in combination with async await
382- **base:** Regex literals are now preferred over new RegExp() if the regex is not dynamic.
383- **base:** The exponentiation operator is now preferred over Math.pow()
384- Support for Node versions below 10 has been removed.
385- **base:** Setters can't return values. This is enforced with a linting rule now. See https://eslint.org/docs/rules/no-setter-return
386- **base:** Assignments of imports are now disallowed. They throw a runtime error anyway. See https://eslint.org/docs/rules/no-import-assign
387- **base:** Certain If-else usages that were an error anyway are now a linting error. See ttps://eslint.org/docs/rules/no-dupe-else-if
388- **base:** Returning values from constructors is not allowed anymore. See https://eslint.org/docs/rules/no-constructor-return
389- **base:** Setters and getters now need to be grouped together. See https://eslint.org/docs/rules/grouped-accessor-pairs
390- Remove official ESLint 5 support
391
392# [26.0.0-beta.3](https://github.com/peerigon/eslint-config-peerigon/compare/v26.0.0-beta.2...v26.0.0-beta.3) (2020-02-06)
393
394### Features
395
396- Disable some jsdoc rules when using TypeScript ([82220fa](https://github.com/peerigon/eslint-config-peerigon/commit/82220fa862bcb2d3298a1c076b7a7c50b2794491))
397
398# [26.0.0-beta.2](https://github.com/peerigon/eslint-config-peerigon/compare/v26.0.0-beta.1...v26.0.0-beta.2) (2020-02-06)
399
400### Features
401
402- Improve jsdoc rules ([0a6694d](https://github.com/peerigon/eslint-config-peerigon/commit/0a6694d061e4553ebde0653322b7567a69956e44))
403
404### BREAKING CHANGES
405
406- Use param instead of arg and argument.
407
408# [26.0.0-beta.1](https://github.com/peerigon/eslint-config-peerigon/compare/v25.3.0...v26.0.0-beta.1) (2020-02-06)
409
410### Bug Fixes
411
412- **base:** Increase soft limit of complexity rule ([a78a702](https://github.com/peerigon/eslint-config-peerigon/commit/a78a702f5b5d16ff9b11237ee9c059618f80eb32))
413- Fine-tune soft limits of max-lines and max-dependencies ([a123f41](https://github.com/peerigon/eslint-config-peerigon/commit/a123f41676aad7b3d56ff35512774fd4860093d9))
414- **typescript:** Do not "fix" 'any' to 'unknown' ([154a42b](https://github.com/peerigon/eslint-config-peerigon/commit/154a42b1de215ffa763f7da32a66588695d5dad0))
415
416### chore
417
418- Refactor glob-patterns module ([1db1f22](https://github.com/peerigon/eslint-config-peerigon/commit/1db1f22dedf8a9d1c6cc7342391f3774288e93dc))
419- Remove support for Node<10 ([6c45b41](https://github.com/peerigon/eslint-config-peerigon/commit/6c45b41233bdc381bbc9916193cf3b07914fc8bb))
420- Update dependencies ([b52305e](https://github.com/peerigon/eslint-config-peerigon/commit/b52305ee79c201371d876e58d57a1163ec568ed4))
421
422### Features
423
424- Add styles/no-default-export ([d8b0242](https://github.com/peerigon/eslint-config-peerigon/commit/d8b0242069d326e12c3dfb7247867c5dfd336d49))
425- Add styles/no-null ([a30511b](https://github.com/peerigon/eslint-config-peerigon/commit/a30511b1ea55dc8081375ffe0de245f34cc54e79))
426- Improve prettier support ([1cd6537](https://github.com/peerigon/eslint-config-peerigon/commit/1cd6537aa59fd53e9b3f40caa1f72b52a4a8dddf))
427- **base:** Add no-dupe-else-if ([0ee8136](https://github.com/peerigon/eslint-config-peerigon/commit/0ee8136bbff0e53d08def5bc818054b29bea097b))
428- **base:** Add prefer-exponentiation-operator ([fd41a01](https://github.com/peerigon/eslint-config-peerigon/commit/fd41a01e0692670375d43009f45704b02d02c1c3))
429- **base:** Add prefer-regex-literals ([01599bd](https://github.com/peerigon/eslint-config-peerigon/commit/01599bda47b1197fca321780a644c6a5693a54af))
430- **base:** Add require-atomic-updates ([69f2c36](https://github.com/peerigon/eslint-config-peerigon/commit/69f2c36d0d9b57d32a98f617c33cc407423b2904))
431- **base:** Add require-unicode-regexp ([0b44ba5](https://github.com/peerigon/eslint-config-peerigon/commit/0b44ba50add0a1a8b378c8f311000c2558fe3f54))
432- **base:** Disallow assignments of imports ([0e6af86](https://github.com/peerigon/eslint-config-peerigon/commit/0e6af861370cd95bbff8dc0f96c112cb3a26ba83))
433- **base:** Disallow return in constructors ([f9edbbc](https://github.com/peerigon/eslint-config-peerigon/commit/f9edbbcce36703d644b9ada2315e5be310ae7102))
434- **base:** Disallow return in setters ([f3f574c](https://github.com/peerigon/eslint-config-peerigon/commit/f3f574cfcff59a8e65efda84658a746246720e3d))
435- **base:** Require grouping of setters and getters ([94792f2](https://github.com/peerigon/eslint-config-peerigon/commit/94792f2a8ab22bb777fa70ba09ef96ecefee0e38))
436- Add bunch of JSDoc rules ([680550e](https://github.com/peerigon/eslint-config-peerigon/commit/680550e6415658081bebc89fd834081fecc61f96))
437
438### BREAKING CHANGES
439
440- The prettier config now uses tabs instead of spaces. This is not actually breaking since Prettier will just format your code in a different way, but it will produce a lot of noise.
441- globPatterns.js has been renamed to glob-patterns.js
442- **base:** Require u flag in all regexes. The u flag adds unicode support and reports invalid regex patterns.
443- **base:** ESLint now reports a potential unsafe use of +=,-=,\*=,/= in combination with async await
444- **base:** Regex literals are now preferred over new RegExp() if the regex is not dynamic.
445- **base:** The exponentiation operator is now preferred over Math.pow()
446- Support for Node versions below 10 has been removed.
447- **base:** Setters can't return values. This is enforced with a linting rule now. See https://eslint.org/docs/rules/no-setter-return
448- **base:** Assignments of imports are now disallowed. They throw a runtime error anyway. See https://eslint.org/docs/rules/no-import-assign
449- **base:** Certain If-else usages that were an error anyway are now a linting error. See ttps://eslint.org/docs/rules/no-dupe-else-if
450- **base:** Returning values from constructors is not allowed anymore. See https://eslint.org/docs/rules/no-constructor-return
451- **base:** Setters and getters now need to be grouped together. See https://eslint.org/docs/rules/grouped-accessor-pairs
452- Remove official ESLint 5 support
453
454# [25.3.0](https://github.com/peerigon/eslint-config-peerigon/compare/v25.2.0...v25.3.0) (2020-02-01)
455
456### Bug Fixes
457
458- **base:** Allow finally() as a replacement for catch() ([0d2b2df](https://github.com/peerigon/eslint-config-peerigon/commit/0d2b2df))
459
460### Features
461
462- **base:** Relax eqeqeq ([e8f9cd6](https://github.com/peerigon/eslint-config-peerigon/commit/e8f9cd6))
463- **react:** Relax react/require-default-props rule ([8be6c52](https://github.com/peerigon/eslint-config-peerigon/commit/8be6c52))
464- **typescript:** Relax @typescript-eslint/strict-boolean-expressions rule ([524c462](https://github.com/peerigon/eslint-config-peerigon/commit/524c462))
465
466# [25.2.0](https://github.com/peerigon/eslint-config-peerigon/compare/v25.1.1...v25.2.0) (2020-01-23)
467
468### Features
469
470- Add semantic-release ([eb3f1d4](https://github.com/peerigon/eslint-config-peerigon/commit/eb3f1d4e8f4b01377865582e4816f859c628e46f))
471
472# Changelog
473
474All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
475
476### [25.1.1](https://github.com/peerigon/eslint-config-peerigon/compare/v25.1.0...v25.1.1) (2020-01-13)
477
478### Bug Fixes
479
480- Turn off no-empty-function for TypeScript ([1c8c5ac](https://github.com/peerigon/eslint-config-peerigon/commit/1c8c5ac))
481
482## [25.1.0](https://github.com/peerigon/eslint-config-peerigon/compare/v25.0.1...v25.1.0) (2020-01-10)
483
484### Bug Fixes
485
486- Disable import/extensions for tsx files ([b13c7f6](https://github.com/peerigon/eslint-config-peerigon/commit/b13c7f6))
487
488### Features
489
490- Allow ESLint 6 as peer dependency ([e474e5e](https://github.com/peerigon/eslint-config-peerigon/commit/e474e5e))
491
492### [25.0.1](https://github.com/peerigon/eslint-config-peerigon/compare/v25.0.0...v25.0.1) (2019-12-25)
493
494### Bug Fixes
495
496- Allow template literals for Jest inline snapshots ([2b9c4e5](https://github.com/peerigon/eslint-config-peerigon/commit/2b9c4e5))
497
498## [25.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v24.0.0...v25.0.0) (2019-12-23)
499
500### Bug Fixes
501
502- Allow non-null assertions in test files ([240beec](https://github.com/peerigon/eslint-config-peerigon/commit/240beec))
503- Do not require .ts extensions in TypeScript files ([e40ffbe](https://github.com/peerigon/eslint-config-peerigon/commit/e40ffbe))
504- Turn off consistent-type-definitions in d.ts files ([1c00846](https://github.com/peerigon/eslint-config-peerigon/commit/1c00846))
505
506### Features
507
508- Don't allow loose equality checks ([8e065bf](https://github.com/peerigon/eslint-config-peerigon/commit/8e065bf))
509
510### BREAKING CHANGES
511
512- Loose equality checks are not allowed anymore.
513
514## [24.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v23.2.0...v24.0.0) (2019-08-23)
515
516### Features
517
518- Update TypeScript rules ([31fbf88](https://github.com/peerigon/eslint-config-peerigon/commit/31fbf88))
519
520### BREAKING CHANGES
521
522- You need to update `@typescript-eslint/eslint-plugin@^2.0.0` if you're using the TypeScript rules. The recommended rules changed a little bit and there have been some breaking rule changes like `@typescript-eslint/consistent-type-assertions`, `@typescript-eslint/no-unnecessary-type-arguments` and `@typescript-eslint/strict-boolean-expressions`
523
524## [23.2.0](https://github.com/peerigon/eslint-config-peerigon/compare/v23.1.0...v23.2.0) (2019-08-02)
525
526### Bug Fixes
527
528- Disable `react/jsx-no-literals` in tests ([ed93deb](https://github.com/peerigon/eslint-config-peerigon/commit/ed93deb))
529
530### Features
531
532- Disable `react/jsx-one-expression-per-line` ([136a945](https://github.com/peerigon/eslint-config-peerigon/commit/136a945))
533
534## [23.1.0](https://github.com/peerigon/eslint-config-peerigon/compare/v23.0.0...v23.1.0) (2019-08-01)
535
536### Features
537
538- Disable `react/jsx-wrap-multilines` ([2eb57e2](https://github.com/peerigon/eslint-config-peerigon/commit/2eb57e2))
539
540## [23.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v22.1.0...v23.0.0) (2019-08-01)
541
542### Bug Fixes
543
544- Add additional check for tsconfig.json resolving ([dd53d16](https://github.com/peerigon/eslint-config-peerigon/commit/dd53d16))
545
546### Features
547
548- Enable `@typescript-eslint/explicit-member-accessibility rule` ([f036659](https://github.com/peerigon/eslint-config-peerigon/commit/f036659))
549- Relax `import/order` rule ([ae8d12a](https://github.com/peerigon/eslint-config-peerigon/commit/ae8d12a))
550
551### BREAKING CHANGES
552
553- The `@typescript-eslint/explicit-member-accessibility` rule will now reports errors when someone uses the public keyword in TypeScript classes where it is not necessary.
554
555## [22.1.0](https://github.com/peerigon/eslint-config-peerigon/compare/v22.0.0...v22.1.0) (2019-07-31)
556
557### Features
558
559- Add Prettier config ([4d5e84e](https://github.com/peerigon/eslint-config-peerigon/commit/4d5e84e))
560- Disable id-length ([a8c791b](https://github.com/peerigon/eslint-config-peerigon/commit/a8c791b))
561- Relax @typescript-eslint/no-floating-promises ([ce7bf3e](https://github.com/peerigon/eslint-config-peerigon/commit/ce7bf3e))
562
563## [22.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v21.2.0...v22.0.0) (2019-07-15)
564
565### Bug Fixes
566
567- Change @typescript-eslint/member-delimiter-style ([e8dda25](https://github.com/peerigon/eslint-config-peerigon/commit/e8dda25))
568- Turn of react/prop-types for TypeScript files ([afe4ef5](https://github.com/peerigon/eslint-config-peerigon/commit/afe4ef5))
569
570### Features
571
572- Enable test rules by glob pattern ([63c023c](https://github.com/peerigon/eslint-config-peerigon/commit/63c023c))
573- Recognize @testing-library/jest-dom/extend-expect as module with side-effects ([3ff10a2](https://github.com/peerigon/eslint-config-peerigon/commit/3ff10a2))
574- Relax some import rules ([6efa5a3](https://github.com/peerigon/eslint-config-peerigon/commit/6efa5a3))
575- Relax typescript rules in tests ([c73ee22](https://github.com/peerigon/eslint-config-peerigon/commit/c73ee22))
576
577### BREAKING CHANGES
578
579- Change back to @typescript-eslint/member-delimiter-style "semi" because we want to stay consistent with classes. Sorry for the noise :(
580
581## [21.2.0](https://github.com/peerigon/eslint-config-peerigon/compare/v21.1.0...v21.2.0) (2019-07-09)
582
583### Features
584
585- Detect React version ([0b85c38](https://github.com/peerigon/eslint-config-peerigon/commit/0b85c38))
586
587## [21.1.0](https://github.com/peerigon/eslint-config-peerigon/compare/v21.0.0...v21.1.0) (2019-07-09)
588
589### Features
590
591- Introduce peerigon/styles/react-jsx-no-literals ([8c0425f](https://github.com/peerigon/eslint-config-peerigon/commit/8c0425f))
592
593## [21.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v20.0.1...v21.0.0) (2019-07-09)
594
595### Features
596
597- Add eslint-plugin-react-hooks ([6c0d0a3](https://github.com/peerigon/eslint-config-peerigon/commit/6c0d0a3))
598- Add styles/react-jsx-allow-bind ([a8e4326](https://github.com/peerigon/eslint-config-peerigon/commit/a8e4326))
599- Disable promise/prefer-await-to-then and promise/prefer-await-to-callbacks ([b715e44](https://github.com/peerigon/eslint-config-peerigon/commit/b715e44))
600- Relax import/max-dependencies and max-lines ([f692e4b](https://github.com/peerigon/eslint-config-peerigon/commit/f692e4b))
601- Relax max-lines in tests ([cd1e294](https://github.com/peerigon/eslint-config-peerigon/commit/cd1e294))
602- Relax react/jsx-no-bind ([89873c3](https://github.com/peerigon/eslint-config-peerigon/commit/89873c3))
603- Switch off react/no-multi-comp ([366636a](https://github.com/peerigon/eslint-config-peerigon/commit/366636a))
604
605### BREAKING CHANGES
606
607- There are linting rules for React hooks now.
608
609### [20.0.1](https://github.com/peerigon/eslint-config-peerigon/compare/v20.0.0...v20.0.1) (2019-07-08)
610
611### Bug Fixes
612
613- Allow jsdoc [@swagger](https://github.com/swagger) tags ([b59eb2b](https://github.com/peerigon/eslint-config-peerigon/commit/b59eb2b))
614
615## [20.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v19.0.0...v20.0.0) (2019-07-08)
616
617### Bug Fixes
618
619- Add note on @typescript-eslint/parser in README ([898abe3](https://github.com/peerigon/eslint-config-peerigon/commit/898abe3))
620- Disable import rules that are slow ([41edcb2](https://github.com/peerigon/eslint-config-peerigon/commit/41edcb2))
621- Improve options for import/no-extraneous-dependencies ([5fe07e6](https://github.com/peerigon/eslint-config-peerigon/commit/5fe07e6))
622- Reuse no-unused-vars option in TypeScript ([44464ac](https://github.com/peerigon/eslint-config-peerigon/commit/44464ac))
623
624### Features
625
626- Ignore long comments in max-len rule ([4a8d39d](https://github.com/peerigon/eslint-config-peerigon/commit/4a8d39d))
627- Increase import/max-dependencies to 20 ([f5d6c9d](https://github.com/peerigon/eslint-config-peerigon/commit/f5d6c9d))
628- Refactor TypeScript rules ([302d840](https://github.com/peerigon/eslint-config-peerigon/commit/302d840))
629- Update dependencies ([32914ef](https://github.com/peerigon/eslint-config-peerigon/commit/32914ef))
630
631### BREAKING CHANGES
632
633- Added and changed a lot of TypeScript rules. This change was necessary because a lot of new rules have been added to @typescript-eslint. Also adds some performance improvements.
634- eslint-plugin-jsdoc received a major version bump
635- The pattern for devDependencies checked by import/no-extraneous-dependencies has changed
636
637## [19.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v17.1.0...v19.0.0) (2019-05-29)
638
639### Bug Fixes
640
641- Activate TypeScript rules only for \*.tsx? files ([338d98f](https://github.com/peerigon/eslint-config-peerigon/commit/338d98f))
642- Remove JS file overrides in typescript rules ([68fc6df](https://github.com/peerigon/eslint-config-peerigon/commit/68fc6df))
643
644### chore
645
646- Update dependencies ([b28d7a4](https://github.com/peerigon/eslint-config-peerigon/commit/b28d7a4))
647
648### Features
649
650- Add lines-between-class-members rule ([b0ce663](https://github.com/peerigon/eslint-config-peerigon/commit/b0ce663))
651- Disable arrow-body-style and arrow-parens rule ([c50a7b4](https://github.com/peerigon/eslint-config-peerigon/commit/c50a7b4))
652
653### BREAKING CHANGES
654
655- eslint-plugin-jsdoc received a major version update.
656- It's now required to add a new line between multiline class members.
657- Remove sourceType = script parser option for JS files in
658 TypeScript projects. This override made the wrong
659 assumption that all JS files should be scripts in a
660 TypeScript project which is certainly not correct.
661
662# [18.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v17.1.0...v18.0.0) (2019-05-29)
663
664### Bug Fixes
665
666- Remove JS file overrides in typescript rules ([ef27f23](https://github.com/peerigon/eslint-config-peerigon/commit/ef27f23))
667
668### BREAKING CHANGES
669
670- Remove sourceType = script parser option for JS files in
671 TypeScript projects. This override made the wrong
672 assumption that all JS files should be scripts in a
673 TypeScript project which is certainly not correct.
674
675<a name="17.1.0"></a>
676
677# [17.1.0](https://github.com/peerigon/eslint-config-peerigon/compare/v17.0.0...v17.1.0) (2019-02-22)
678
679### Features
680
681- Add prefer-interface style for TypeScript apps ([#58](https://github.com/peerigon/eslint-config-peerigon/issues/58)) ([529503f](https://github.com/peerigon/eslint-config-peerigon/commit/529503f))
682
683<a name="17.0.0"></a>
684
685# [17.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v16.0.0...v17.0.0) (2019-02-21)
686
687### Features
688
689- Add new rule ([#57](https://github.com/peerigon/eslint-config-peerigon/issues/57)) ([7bde0ba](https://github.com/peerigon/eslint-config-peerigon/commit/7bde0ba))
690
691### BREAKING CHANGES
692
693- - "optimize-regex/optimize-regex": "error"
694
695<a name="16.0.0"></a>
696
697## [16.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v15.0.2...v16.0.0) (2019-02-21)
698
699### Features
700
701- Add and refactor rules ([be86a71](https://github.com/peerigon/eslint-config-peerigon/commit/be86a71))
702
703### BREAKING CHANGES
704
705- This commit adds and changes a bunch of TypeScript rules because the original plugin was deprecated.
706
707However, there were also notable changes to the base rules:
708
709- "array-func/prefer-flat-map": "error" // https://github.com/freaktechnik/eslint-plugin-array-func
710- "jsdoc/check-examples": "error"
711- "jsdoc/require-returns": "error"
712- "jsdoc/require-returns-check": "error"
713
714<a name="15.0.2"></a>
715
716## [15.0.2](https://github.com/peerigon/eslint-config-peerigon/compare/v15.0.1...v15.0.2) (2018-08-31)
717
718### Bug Fixes
719
720- Wrong rule configurations ([#49](https://github.com/peerigon/eslint-config-peerigon/issues/49)) ([58da102](https://github.com/peerigon/eslint-config-peerigon/commit/58da102))
721
722<a name="15.0.1"></a>
723
724## [15.0.1](https://github.com/peerigon/eslint-config-peerigon/compare/v15.0.0...v15.0.1) (2018-08-30)
725
726### Bug Fixes
727
728- Disable no-empty rule in tests config ([#48](https://github.com/peerigon/eslint-config-peerigon/issues/48)) ([a1a1431](https://github.com/peerigon/eslint-config-peerigon/commit/a1a1431))
729
730<a name="15.0.0"></a>
731
732# [15.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v14.0.0...v15.0.0) (2018-08-29)
733
734### Bug Fixes
735
736- Enable singular folder names ([#46](https://github.com/peerigon/eslint-config-peerigon/issues/46)) ([166eece](https://github.com/peerigon/eslint-config-peerigon/commit/166eece))
737
738### Features
739
740- Enforce eol-last ([#47](https://github.com/peerigon/eslint-config-peerigon/issues/47)) ([985d474](https://github.com/peerigon/eslint-config-peerigon/commit/985d474))
741
742### BREAKING CHANGES
743
744- Enforce [eol-last](https://eslint.org/docs/rules/eol-last)
745
746<a name="14.0.0"></a>
747
748# [14.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v13.0.0...v14.0.0) (2018-08-27)
749
750### Bug Fixes
751
752- Add eslint-plugin-babel ([#33](https://github.com/peerigon/eslint-config-peerigon/issues/33)) ([3032b19](https://github.com/peerigon/eslint-config-peerigon/commit/3032b19))
753- Disable array-func/prefer-array-from ([#35](https://github.com/peerigon/eslint-config-peerigon/issues/35)) ([69e2601](https://github.com/peerigon/eslint-config-peerigon/commit/69e2601))
754- Disable react/destructuring-assignment ([#36](https://github.com/peerigon/eslint-config-peerigon/issues/36)) ([01eaced](https://github.com/peerigon/eslint-config-peerigon/commit/01eaced))
755- Disable require-yield ([#37](https://github.com/peerigon/eslint-config-peerigon/issues/37)) ([8e7ceb7](https://github.com/peerigon/eslint-config-peerigon/commit/8e7ceb7))
756- Fix react rules ([#43](https://github.com/peerigon/eslint-config-peerigon/issues/43)) ([47b82bb](https://github.com/peerigon/eslint-config-peerigon/commit/47b82bb)), closes [/github.com/yannickcr/eslint-plugin-react/issues/1679#issuecomment-363908562](https://github.com//github.com/yannickcr/eslint-plugin-react/issues/1679/issues/issuecomment-363908562)
757- Lower the severity of some rules ([#39](https://github.com/peerigon/eslint-config-peerigon/issues/39)) ([4c4f531](https://github.com/peerigon/eslint-config-peerigon/commit/4c4f531))
758- Remove eslint-plugin-security ([#38](https://github.com/peerigon/eslint-config-peerigon/issues/38)) ([e329dc0](https://github.com/peerigon/eslint-config-peerigon/commit/e329dc0))
759- Replace deprecated experimentalObjectRestSpread option ([#42](https://github.com/peerigon/eslint-config-peerigon/issues/42)) ([6509fe8](https://github.com/peerigon/eslint-config-peerigon/commit/6509fe8))
760
761### Features
762
763- Add no-unsafe-regex plugin ([#34](https://github.com/peerigon/eslint-config-peerigon/issues/34)) ([1b17d18](https://github.com/peerigon/eslint-config-peerigon/commit/1b17d18))
764- Add TypeScript rules ([#44](https://github.com/peerigon/eslint-config-peerigon/issues/44)) ([a25ec5a](https://github.com/peerigon/eslint-config-peerigon/commit/a25ec5a))
765- Config new rules ([#32](https://github.com/peerigon/eslint-config-peerigon/issues/32)) ([fc9f007](https://github.com/peerigon/eslint-config-peerigon/commit/fc9f007))
766- Enable arrow-parens rule ([#40](https://github.com/peerigon/eslint-config-peerigon/issues/40)) ([6ef3259](https://github.com/peerigon/eslint-config-peerigon/commit/6ef3259))
767- Introduce custom style one-line arrow functions ([#41](https://github.com/peerigon/eslint-config-peerigon/issues/41)) ([3555781](https://github.com/peerigon/eslint-config-peerigon/commit/3555781))
768- Update dependencies ([#31](https://github.com/peerigon/eslint-config-peerigon/issues/31)) ([0ff4147](https://github.com/peerigon/eslint-config-peerigon/commit/0ff4147))
769
770### BREAKING CHANGES
771
772- - Switch back to jsx and tsx extension
773- Switch to multiline-multiprop in react/jsx-first-prop-new-line
774- Arrow functions shouldn't have parenthesis around
775 a single argument
776- The new rule can break tests
777- jsdoc/no-undefined-types and jsdoc/valid-types are errors
778 now. This could break tests.
779- Update peer dependency on eslint to ^5.4.0
780
781<a name="13.0.0"></a>
782
783# [13.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v12.0.1...v13.0.0) (2018-04-27)
784
785### Features
786
787- Add eslint-plugin-flowtype-errors ([fc15db3](https://github.com/peerigon/eslint-config-peerigon/commit/fc15db3))
788- Add eslint-plugin-jsx-a11y to react rules ([7d8dbdc](https://github.com/peerigon/eslint-config-peerigon/commit/7d8dbdc))
789- Add useful eslint plugins to base rules ([caf6088](https://github.com/peerigon/eslint-config-peerigon/commit/caf6088))
790- Allow nested ternaries ([15107ac](https://github.com/peerigon/eslint-config-peerigon/commit/15107ac))
791- Allow possibly undefined variables in typeof checks ([1e657c3](https://github.com/peerigon/eslint-config-peerigon/commit/1e657c3))
792- Configure new rules ([273e139](https://github.com/peerigon/eslint-config-peerigon/commit/273e139))
793- Enforce multiline ternary for long expressions ([92031d2](https://github.com/peerigon/eslint-config-peerigon/commit/92031d2))
794- Make file extensions mandatory in imports ([6ea3964](https://github.com/peerigon/eslint-config-peerigon/commit/6ea3964))
795- Refactor import rules ([53f41d4](https://github.com/peerigon/eslint-config-peerigon/commit/53f41d4))
796- Refactor node rules ([8a4e2b5](https://github.com/peerigon/eslint-config-peerigon/commit/8a4e2b5))
797- Refactor react rules ([9994d2b](https://github.com/peerigon/eslint-config-peerigon/commit/9994d2b))
798- Refactor react/jsx-wrap-multilines rules ([efe8ebd](https://github.com/peerigon/eslint-config-peerigon/commit/efe8ebd))
799- Refactor tests rules ([820124f](https://github.com/peerigon/eslint-config-peerigon/commit/820124f))
800- Remove curly and bracket spacings ([4ff321c](https://github.com/peerigon/eslint-config-peerigon/commit/4ff321c))
801- Remove eslint-plugin-flowtype-error again ([13bbca7](https://github.com/peerigon/eslint-config-peerigon/commit/13bbca7))
802- Remove fp rules ([34543bc](https://github.com/peerigon/eslint-config-peerigon/commit/34543bc))
803- Switch back to babel-eslint again ([f3ba862](https://github.com/peerigon/eslint-config-peerigon/commit/f3ba862))
804- Switch back to eslint default parser ([#18](https://github.com/peerigon/eslint-config-peerigon/issues/18)) ([5ab10a8](https://github.com/peerigon/eslint-config-peerigon/commit/5ab10a8))
805- Update peerigon/node to match node >= 6 ([c8ff737](https://github.com/peerigon/eslint-config-peerigon/commit/c8ff737))
806
807### BREAKING CHANGES
808
809- If you're using Flowtype and the flowtype rules,
810 you just need to call ESLint now to also do the typechecking.
811- You need to add babel-eslint as project dependencies in project where the peerigon/flowtype rules are used. You don't need to change anything if you're using other rules.
812- These plugins introduce new rules that might
813 cause linting errors now.
814- - Add autofixable order of imports
815
816* Discourage anonymous default exports
817
818- Changes a lot of rules that are concerned with
819 whitespace after curlies and brackets. For consistency reasons,
820 we do not write spaces after these characters.
821- Always add new line before multiline wraps. This change
822 was necessary because of the new react/jsx-closing-tag-location
823 which requires the closing tag to be on the same indentation as the
824 opening tag. In combination with the parentheses rule, it could lead
825 to an unstable state where eslint was trying to fix it
826 by switching back and forth between two states.
827- This change adds a lot of new rules which
828 help us to improve the accessibility of our applications.
829- There are new rules that might cause errors now.
830- The padded-blocks rule has been activated for tests again.
831- The fp rules where part of an experiment.
832 These overly strict rules don't make sense in JavaScript.
833- Remove node 4 support
834- - "import/extensions": ["error", "ignorePackages"],
835- - "multiline-ternary": ["error", "always-multiline"]
836- - import/no-self-import error
837
838* import/no-useless-path-segments error
839
840- A lof of rules have changed, expect some new errors.
841
842<a name="12.0.1"></a>
843
844## [12.0.1](https://github.com/peerigon/eslint-config-peerigon/compare/v12.0.0...v12.0.1) (2017-10-26)
845
846<a name="12.0.0"></a>
847
848# [12.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v11.3.1...v12.0.0) (2017-10-26)
849
850### Chores
851
852- Update eslint peer dependency ([b0c3e28](https://github.com/peerigon/eslint-config-peerigon/commit/b0c3e28))
853
854### Features
855
856- Update rules ([#14](https://github.com/peerigon/eslint-config-peerigon/issues/14)) ([47edb7e](https://github.com/peerigon/eslint-config-peerigon/commit/47edb7e))
857
858### BREAKING CHANGES
859
860- The eslint-config-peerigon now requires at least eslint@^4.9.0
861- There have been new rules added which might break your build. But they should be auto-fixable 🖖
862
863<a name="11.3.1"></a>
864
865## [11.3.1](https://github.com/peerigon/eslint-config-peerigon/compare/v11.3.0...v11.3.1) (2017-06-25)
866
867### Bug Fixes
868
869- Switch off react/no-set-state ([f4139d4](https://github.com/peerigon/eslint-config-peerigon/commit/f4139d4))
870
871<a name="11.3.0"></a>
872
873# [11.3.0](https://github.com/peerigon/eslint-config-peerigon/compare/v11.2.0...v11.3.0) (2017-06-23)
874
875### Features
876
877- Relax class-methods-use-this to warn because it should be a hint ([9af3645](https://github.com/peerigon/eslint-config-peerigon/commit/9af3645))
878- Relax react rules ([a026414](https://github.com/peerigon/eslint-config-peerigon/commit/a026414))
879
880<a name="11.2.0"></a>
881
882# [11.2.0](https://github.com/peerigon/eslint-config-peerigon/compare/v11.1.0...v11.2.0) (2017-06-22)
883
884### Features
885
886- Relax no-extraneous-dependencies rule ([50710b5](https://github.com/peerigon/eslint-config-peerigon/commit/50710b5))
887
888<a name="11.1.0"></a>
889
890# [11.1.0](https://github.com/peerigon/eslint-config-peerigon/compare/v11.0.1...v11.1.0) (2017-06-22)
891
892### Features
893
894- Relax import/no-extraneous-dependencies rule ([4c26ba0](https://github.com/peerigon/eslint-config-peerigon/commit/4c26ba0))
895
896<a name="11.0.1"></a>
897
898## [11.0.1](https://github.com/peerigon/eslint-config-peerigon/compare/v11.0.0...v11.0.1) (2017-06-22)
899
900### Bug Fixes
901
902- Missing plugin declaration in react rules ([3a39340](https://github.com/peerigon/eslint-config-peerigon/commit/3a39340))
903
904<a name="11.0.0"></a>
905
906# [11.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v10.1.1...v11.0.0) (2017-06-22)
907
908### Chores
909
910- Remove eslint-plugin-flowtype ([e99537a](https://github.com/peerigon/eslint-config-peerigon/commit/e99537a))
911
912### BREAKING CHANGES
913
914- This commit removes eslint-plugin-flowtype from the package.json. In case you're using the flowtype config, you need to add eslint-plugin-flowtype to your package.json now.
915
916<a name="10.1.1"></a>
917
918## [10.1.1](https://github.com/peerigon/eslint-config-peerigon/compare/v10.1.0...v10.1.1) (2017-04-03)
919
920### Bug Fixes
921
922- Turn off "prefer-rest" in node rules ([b0af121](https://github.com/peerigon/eslint-config-peerigon/commit/b0af121))
923
924<a name="10.1.0"></a>
925
926# [10.1.0](https://github.com/peerigon/eslint-config-peerigon/compare/v10.0.0...v10.1.0) (2017-04-03)
927
928### Features
929
930- Remove no-confusing-arrow rule ([bb20a58](https://github.com/peerigon/eslint-config-peerigon/commit/bb20a58))
931
932<a name="10.0.0"></a>
933
934# [10.0.0](https://github.com/peerigon/eslint-config-peerigon/compare/v9.0.0...v10.0.0) (2017-03-31)
935
936### Features
937
938- Refactor rules ([691bfb2](https://github.com/peerigon/eslint-config-peerigon/commit/691bfb2))
939
940### BREAKING CHANGES
941
942- This version introduces also some breaking changes:
943
944* Switch "no-alert" to "error" (a831ed4fc3b17d4a932745cdda7f31cbc00e955d)
945* Switch "no-bitwise" to "error" (e8f38b6289c6b3ae7d17dc35a445b1837143c4bd)
946* Switch "no-eq-null" to "error" (329ae4bbaf5b4fd732f899bd89cd8f152b7ac1e2)
947* Switch "no-process-exit" to "error" (850275f029ea37c85c7e766f8d976a38ea89dce3)
948* Switch "no-script-url" to "error" (5b10357db3fe6f836858066c44e740956ad3df61)
949* Switch "no-useless-call" to "error" (66ab5190f01d27d81c5d0654c303f77466c37d47)
950* Switch "no-script-url" to "error" (5b10357db3fe6f836858066c44e740956ad3df61)
951* Add dangling commas (356adb84c3d7c9ba937c4248a38e1d1cc6ba46df)
952* Add a bunch of new rules (bf343f51cba2ae93bc38dff541122705776b2259)
953* Make "no-undef" rule stricter (6ae63b3b83925ebdbcb1586f3292ef9cb93d8dc9)
954
955### 9.0.0
956
957- **Breaking:** Enforce template-curly-spacing (see a3409a3613a58e002921db8cb54db0550fbfa56d)
958
959### 8.0.0
960
961- **Breaking:** Add/change react rules based on discussion in [#5](https://github.com/peerigon/eslint-config-peerigon/issues/5)
962- **Breaking:** Add rule to prevent curly spaces in template strings (see c600bd8b71094ee972b933762d646faef091376d)
963
964### 7.0.0
965
966- Add new react rules
967
968### 6.0.1
969
970- Fix parser silently switching back to es2015 when using the es5 rules
971
972### 6.0.0
973
974- Update peer dependency eslint to ^3.0.0
975
976### 5.1.0
977
978- Increase allowed max complexity
979
980### 5.0.0
981
982- **Breaking:** Make eslint-plugin-jsdoc ^2.3.1 a peer dependency
983- Add config for eslint-plugin-react
984
985### 4.0.0
986
987- **Breaking:** Improve JSDoc validation (some rules are a bit stricter now)
988
989### 3.1.1
990
991- Fix parser options for es6 and es5
992
993### 3.1.0
994
995- Change severity of "arrow-parens" rule to 0
996
997### 3.0.0
998
999- **Breaking:** Add rule "no-labels" with severity 2
1000- Update to eslint@^2.0.0
1001- Remove obsolete rules
1002
1003### 2.0.0
1004
1005- **Breaking:** Change rule "quote-props" to "as-needed"
1006- Add mocha env to tests config
1007
1008### 1.0.0
1009
1010- Add ES2015 rules
1011- Reached stable state :)