@nfq/eslint-config 1.2.8 → 2.0.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 ADDED
@@ -0,0 +1,28 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
+
5
+ ## 2.0.0 (2022-02-24)
6
+
7
+
8
+ ### ⚠ BREAKING CHANGES
9
+
10
+ * **Babel:** New peer dependency
11
+
12
+ ### Features
13
+
14
+ * **@nfq/no-magic-numbers:** Add also arrays for ignore ([#5](https://github.com/nfqde/eslint-config-nfq/issues/5)) ([10a8c6e](https://github.com/nfqde/eslint-config-nfq/commit/10a8c6ece0841e85f4bcbfb3451c259cc0cf016b))
15
+ * **Babel:** Changed babel-eslint parser to @babel/eslint-parser ([#9](https://github.com/nfqde/eslint-config-nfq/issues/9)) ([66eb90f](https://github.com/nfqde/eslint-config-nfq/commit/66eb90f95b8e0ee7ad7352d3760b962f13e6f375))
16
+ * **import/order:** Add new imports ([#4](https://github.com/nfqde/eslint-config-nfq/issues/4)) ([10b708c](https://github.com/nfqde/eslint-config-nfq/commit/10b708cf228772328094607ca3c5a8ca97d16063))
17
+ * **no-param-reassign:** Add key and value to ignore list for objects ([#6](https://github.com/nfqde/eslint-config-nfq/issues/6)) ([6adf418](https://github.com/nfqde/eslint-config-nfq/commit/6adf41817d439c27046f7ab68585c96e504ff5df))
18
+ * **Plugins:** Changed peerdependency to scooped nfq package ([#1](https://github.com/nfqde/eslint-config-nfq/issues/1)) ([eba532b](https://github.com/nfqde/eslint-config-nfq/commit/eba532be70748c55b83878c0ed9b85ba07da0679))
19
+ * **React:** Change react in scope rule for react 17 ([#10](https://github.com/nfqde/eslint-config-nfq/issues/10)) ([3a163bc](https://github.com/nfqde/eslint-config-nfq/commit/3a163bcfdfeac65ff319634f3305c2d5cf834f35))
20
+ * **ReDOS:** Add redos checker ([#11](https://github.com/nfqde/eslint-config-nfq/issues/11)) ([ede6dce](https://github.com/nfqde/eslint-config-nfq/commit/ede6dcea975f4ebd01933f093f3a842a0de24140))
21
+
22
+
23
+ ### Bug Fixes
24
+
25
+ * **Import/extensions:** Add font extensions. ([#2](https://github.com/nfqde/eslint-config-nfq/issues/2)) ([c2971a1](https://github.com/nfqde/eslint-config-nfq/commit/c2971a1de1406348ac340cd012b22417bf267674))
26
+ * **import/order:** Fix image import ([#7](https://github.com/nfqde/eslint-config-nfq/issues/7)) ([37df73c](https://github.com/nfqde/eslint-config-nfq/commit/37df73c6f1d39fbe265fb591d89b839430ee5667))
27
+ * **no-empty-func:** fixed async methods ([#3](https://github.com/nfqde/eslint-config-nfq/issues/3)) ([441fa2a](https://github.com/nfqde/eslint-config-nfq/commit/441fa2a6d890e4cec5f224951990a552be9cc644))
28
+ * **Snyk:** upgrade confusing-browser-globals from 1.0.9 to 1.0.10 ([#8](https://github.com/nfqde/eslint-config-nfq/issues/8)) ([d3a23d0](https://github.com/nfqde/eslint-config-nfq/commit/d3a23d01dc449ea870e8ba36d83920d0f56e7159))
package/config/plugins.js CHANGED
@@ -11,6 +11,7 @@ module.exports = [
11
11
  'react',
12
12
  'react-hooks',
13
13
  'react-hooks-ssr',
14
+ 'redos',
14
15
  'security',
15
16
  'sort-destructure-keys'
16
17
  ];
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "@nfq/eslint-config",
3
- "version": "1.2.8",
3
+ "version": "2.0.0",
4
4
  "engines": {
5
5
  "node": ">= 12.0.0"
6
6
  },
7
7
  "description": "Eslint configuration for all nfq projects",
8
8
  "main": "index.js",
9
9
  "scripts": {
10
+ "deploy": "standard-version && git push --follow-tags origin master",
10
11
  "test": "echo \"Error: no test specified\" && exit 1"
11
12
  },
12
13
  "keywords": [
@@ -31,6 +32,7 @@
31
32
  "eslint-plugin-react": ">= 7",
32
33
  "eslint-plugin-react-hooks": ">= 4",
33
34
  "eslint-plugin-react-hooks-ssr": ">= 0.1.5",
35
+ "eslint-plugin-redos": ">= 4",
34
36
  "eslint-plugin-security": ">= 1",
35
37
  "eslint-plugin-sort-destructure-keys": ">= 1"
36
38
  },
@@ -54,6 +56,7 @@
54
56
  "eslint-plugin-react": "^7.26.1",
55
57
  "eslint-plugin-react-hooks": "^4.2.0",
56
58
  "eslint-plugin-react-hooks-ssr": "^0.1.5",
59
+ "eslint-plugin-redos": "^4.3.0",
57
60
  "eslint-plugin-security": "^1.4.0",
58
61
  "eslint-plugin-sort-destructure-keys": "^1.3.5"
59
62
  },
package/pnpm-lock.yaml CHANGED
@@ -18,6 +18,7 @@ specifiers:
18
18
  eslint-plugin-react: ^7.26.1
19
19
  eslint-plugin-react-hooks: ^4.2.0
20
20
  eslint-plugin-react-hooks-ssr: ^0.1.5
21
+ eslint-plugin-redos: ^4.3.0
21
22
  eslint-plugin-security: ^1.4.0
22
23
  eslint-plugin-sort-destructure-keys: ^1.3.5
23
24
 
@@ -41,6 +42,7 @@ devDependencies:
41
42
  eslint-plugin-react: 7.26.1_eslint@8.0.0
42
43
  eslint-plugin-react-hooks: 4.2.0_eslint@8.0.0
43
44
  eslint-plugin-react-hooks-ssr: 0.1.5_eslint@8.0.0
45
+ eslint-plugin-redos: 4.3.0_eslint@8.0.0
44
46
  eslint-plugin-security: 1.4.0
45
47
  eslint-plugin-sort-destructure-keys: 1.3.5_eslint@8.0.0
46
48
 
@@ -869,6 +871,15 @@ packages:
869
871
  string.prototype.matchall: 4.0.5
870
872
  dev: true
871
873
 
874
+ /eslint-plugin-redos/4.3.0_eslint@8.0.0:
875
+ resolution: {integrity: sha512-m8wNdabRK/KNt8pcVmxy2mOzTGodIV8xIIyx25/ub/Nbip2CIMCbmQfeO3OBwsgOhefblRoULAYCqYPm/aLvaA==}
876
+ peerDependencies:
877
+ eslint: '>= 3'
878
+ dependencies:
879
+ eslint: 8.0.0
880
+ recheck: 4.3.0
881
+ dev: true
882
+
872
883
  /eslint-plugin-security/1.4.0:
873
884
  resolution: {integrity: sha512-xlS7P2PLMXeqfhyf3NpqbvbnW04kN8M9NtmhpR3XGyOvt/vNKS7XPXT5EDbwKW9vCjWH4PpfQvgD/+JgN0VJKA==}
874
885
  dependencies:
@@ -1605,6 +1616,45 @@ packages:
1605
1616
  resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
1606
1617
  dev: true
1607
1618
 
1619
+ /recheck-jar/4.3.0:
1620
+ resolution: {integrity: sha512-Z1ValtlVKZXoM71gMKRi+RH7vaVn7YvDKxC+1V2BVdKHsei/F9jcaZGp47q6rep9YPFhHYZ2tOKuqzfar+L1dw==}
1621
+ requiresBuild: true
1622
+ dev: true
1623
+ optional: true
1624
+
1625
+ /recheck-linux-x64/4.3.0:
1626
+ resolution: {integrity: sha512-W4vBHzrflvx1y6aU6iLDme0grp+pHGSYXgOhtNMl0YkrzYBQ5TeF/eaM5o9f3ZZuVfjxr73CRWAm9B2Qx4XpYw==}
1627
+ cpu: [x64]
1628
+ os: [linux]
1629
+ requiresBuild: true
1630
+ dev: true
1631
+ optional: true
1632
+
1633
+ /recheck-macos-x64/4.3.0:
1634
+ resolution: {integrity: sha512-ikmmDRRk6w+wunwNVSwKMwxJnXYWv7DlHkDxij5dw6bauJ9YqpfxHCa603G+K6zcRfB5OiMWz6EI7x2mNnSDeA==}
1635
+ cpu: [x64]
1636
+ os: [darwin]
1637
+ requiresBuild: true
1638
+ dev: true
1639
+ optional: true
1640
+
1641
+ /recheck-windows-x64/4.3.0:
1642
+ resolution: {integrity: sha512-6ut79YbjkXxbpouu1PyzIhyOEkmMyYDBzstihxa62XTrwiyRl0A6BDGvy3o2mHzQ355T5UmsbcTYIsoav3UEyA==}
1643
+ cpu: [x64]
1644
+ os: [win32]
1645
+ requiresBuild: true
1646
+ dev: true
1647
+ optional: true
1648
+
1649
+ /recheck/4.3.0:
1650
+ resolution: {integrity: sha512-Tja4wYd3Vk929QkmwvIyAowtg7RbUvM1mAIVhZo8idUq4nzit6FiMyIH2Tp5+8qaAl3Akem/GJDE4+Q2oVYLUA==}
1651
+ optionalDependencies:
1652
+ recheck-jar: 4.3.0
1653
+ recheck-linux-x64: 4.3.0
1654
+ recheck-macos-x64: 4.3.0
1655
+ recheck-windows-x64: 4.3.0
1656
+ dev: true
1657
+
1608
1658
  /regenerator-runtime/0.13.9:
1609
1659
  resolution: {integrity: sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==}
1610
1660
  dev: true
package/rules/security.js CHANGED
@@ -2,6 +2,15 @@
2
2
 
3
3
  module.exports = {
4
4
  rules: {
5
+ 'redos/no-vulnerable': [
6
+ 'error',
7
+ {
8
+ checker: 'auto',
9
+ ignoreErrors: true,
10
+ permittableComplexities: ['polynomial', 'exponential'],
11
+ timeout: 10000
12
+ }
13
+ ], // Detects regexes vulnerable to ReDOS attacks https://makenowjust-labs.github.io/recheck/docs/usage/as-eslint-plugin/
5
14
  'security/detect-buffer-noassert': 'error', // Detects calls to buffer with noAssert flag set https://github.com/nodesecurity/eslint-plugin-security
6
15
  'security/detect-child-process': 'error', // Detects instances of child_process & non-literal exec() https://github.com/nodesecurity/eslint-plugin-security/blob/master/docs/avoid-command-injection-node.md
7
16
  'security/detect-disable-mustache-escape': 'error', // Detects object.escapeMarkup = false, which can be used with some template engines to disable escaping of HTML entities. This can lead to Cross-Site Scripting (XSS) vulnerabilities. https://github.com/nodesecurity/eslint-plugin-security