eslint-plugin-reliability 3.0.0 โ 3.0.2
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/README.md +48 -37
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -3,33 +3,40 @@
|
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
5
|
<p align="center">
|
|
6
|
-
|
|
6
|
+
Security-focused ESLint plugin.
|
|
7
7
|
</p>
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
10
|
<a href="https://www.npmjs.com/package/eslint-plugin-reliability" target="_blank"><img src="https://img.shields.io/npm/v/eslint-plugin-reliability.svg" alt="NPM Version" /></a>
|
|
11
11
|
<a href="https://www.npmjs.com/package/eslint-plugin-reliability" target="_blank"><img src="https://img.shields.io/npm/dm/eslint-plugin-reliability.svg" alt="NPM Downloads" /></a>
|
|
12
12
|
<a href="https://opensource.org/licenses/MIT" target="_blank"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="Package License" /></a>
|
|
13
|
+
<a href="https://app.codecov.io/gh/ofri-peretz/eslint/components?components%5B0%5D=reliability" target="_blank"><img src="https://codecov.io/gh/ofri-peretz/eslint/graph/badge.svg?component=reliability" alt="Codecov" /></a>
|
|
14
|
+
<a href="https://github.com/ofri-peretz/eslint" target="_blank"><img src="https://img.shields.io/badge/Since-Dec_2025-blue?logo=rocket&logoColor=white" alt="Since Dec 2025" /></a>
|
|
13
15
|
</p>
|
|
14
16
|
|
|
15
17
|
## Description
|
|
16
18
|
|
|
17
|
-
This plugin
|
|
19
|
+
This plugin provides Security-focused ESLint plugin.
|
|
20
|
+
By using this plugin, you can proactively identify and mitigate security risks across your entire codebase.
|
|
18
21
|
|
|
19
22
|
## Philosophy
|
|
20
23
|
|
|
21
|
-
**Interlace** fosters **strength through integration**.
|
|
24
|
+
**Interlace** fosters **strength through integration**. Instead of stacking isolated rules, we **interlace** security directly into your workflow to create a resilient fabric of code. We believe tools should **guide rather than gatekeep**, providing educational feedback that strengthens the developer with every interaction.
|
|
22
25
|
|
|
23
26
|
## Getting Started
|
|
24
27
|
|
|
25
|
-
- To check out the [guide](https://eslint.interlace.tools/docs/reliability), visit [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
28
|
+
- To check out the [guide](https://eslint.interlace.tools/docs/quality/plugin-reliability), visit [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
29
|
+
- ่ฆๆฅ็ไธญๆ [ๆๅ](https://eslint.interlace.tools/docs/quality/plugin-reliability), ่ฏท่ฎฟ้ฎ [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
30
|
+
- [๊ฐ์ด๋](https://eslint.interlace.tools/docs/quality/plugin-reliability) ๋ฌธ์๋ [eslint.interlace.tools](https://eslint.interlace.tools)์์ ํ์ธํ์ค ์ ์์ต๋๋ค. ๐
|
|
31
|
+
- [ใฌใคใ](https://eslint.interlace.tools/docs/quality/plugin-reliability)ใฏ [eslint.interlace.tools](https://eslint.interlace.tools)ใงใ็ขบ่ชใใ ใใใ ๐
|
|
32
|
+
- Para ver la [guรญa](https://eslint.interlace.tools/docs/quality/plugin-reliability), visita [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
33
|
+
- ููุงุทูุงุน ุนูู [ุงูุฏููู](https://eslint.interlace.tools/docs/quality/plugin-reliability)ุ ูู
ุจุฒูุงุฑุฉ [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
26
34
|
|
|
27
35
|
```bash
|
|
28
36
|
npm install eslint-plugin-reliability --save-dev
|
|
29
37
|
```
|
|
30
38
|
|
|
31
39
|
## โ๏ธ Configuration Presets
|
|
32
|
-
|
|
33
40
|
| Preset | Description |
|
|
34
41
|
| :------------ | :-------------------------------------------- |
|
|
35
42
|
| `recommended` | Balanced reliability checks for most projects |
|
|
@@ -37,7 +44,6 @@ npm install eslint-plugin-reliability --save-dev
|
|
|
37
44
|
---
|
|
38
45
|
|
|
39
46
|
## ๐ข Usage Example
|
|
40
|
-
|
|
41
47
|
```js
|
|
42
48
|
// eslint.config.js
|
|
43
49
|
import reliability from 'eslint-plugin-reliability';
|
|
@@ -47,32 +53,7 @@ export default [reliability.configs.recommended];
|
|
|
47
53
|
|
|
48
54
|
---
|
|
49
55
|
|
|
50
|
-
## Rules
|
|
51
|
-
|
|
52
|
-
### Error Handling
|
|
53
|
-
|
|
54
|
-
| Rule | Description | ๐ผ | โ ๏ธ |
|
|
55
|
-
| :------------------------------------------------------------------- | :-------------------------------------------- | :-: | :-: |
|
|
56
|
-
| [no-unhandled-promise](./docs/rules/no-unhandled-promise.md) | Detect unhandled promise rejections | | |
|
|
57
|
-
| [no-silent-errors](./docs/rules/no-silent-errors.md) | Detect empty catch blocks that swallow errors | ๐ผ | โ ๏ธ |
|
|
58
|
-
| [no-missing-error-context](./docs/rules/no-missing-error-context.md) | Require error context when re-throwing | | |
|
|
59
|
-
| [error-message](./docs/rules/error-message.md) | Require meaningful error messages | | |
|
|
60
|
-
|
|
61
|
-
### Runtime Safety
|
|
62
|
-
|
|
63
|
-
| Rule | Description | ๐ผ | โ ๏ธ |
|
|
64
|
-
| :------------------------------------------------------------------- | :--------------------------------------------- | :-: | :-: |
|
|
65
|
-
| [no-missing-null-checks](./docs/rules/no-missing-null-checks.md) | Detect potential null/undefined dereferences | ๐ผ | โ ๏ธ |
|
|
66
|
-
| [no-unsafe-type-narrowing](./docs/rules/no-unsafe-type-narrowing.md) | Detect unsafe type narrowing patterns | | |
|
|
67
|
-
| [require-network-timeout](./docs/rules/require-network-timeout.md) | Require timeouts on network requests | ๐ผ | |
|
|
68
|
-
| [no-await-in-loop](./docs/rules/no-await-in-loop.md) | Detect sequential await in loops (performance) | | |
|
|
69
|
-
|
|
70
|
-
**Legend**: ๐ผ Recommended | โ ๏ธ Warns (not error)
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
56
|
## Why These Rules?
|
|
75
|
-
|
|
76
57
|
### `no-silent-errors`
|
|
77
58
|
|
|
78
59
|
Empty catch blocks hide errors, making debugging impossible.
|
|
@@ -145,15 +126,45 @@ const results = await Promise.all(userIds.map((id) => fetchUser(id)));
|
|
|
145
126
|
|
|
146
127
|
---
|
|
147
128
|
|
|
148
|
-
##
|
|
129
|
+
## Rules
|
|
130
|
+
|
|
131
|
+
**Legend**
|
|
149
132
|
|
|
150
|
-
|
|
133
|
+
| Icon | Description |
|
|
134
|
+
| :---: | :--- |
|
|
135
|
+
| ๐ผ | **Recommended**: Included in the recommended preset. |
|
|
136
|
+
| โ ๏ธ | **Warns**: Set towarn in recommended preset. |
|
|
137
|
+
| ๐ง | **Auto-fixable**: Automatically fixable by the `--fix` CLI option. |
|
|
138
|
+
| ๐ก | **Suggestions**: Providing code suggestions in IDE. |
|
|
139
|
+
| ๐ซ | **Deprecated**: This rule is deprecated. |
|
|
151
140
|
|
|
152
|
-
|
|
|
153
|
-
|
|
|
154
|
-
| [
|
|
155
|
-
| [
|
|
141
|
+
| Rule | CWE | OWASP | CVSS | Description | ๐ผ | โ ๏ธ | ๐ง | ๐ก | ๐ซ |
|
|
142
|
+
| :--- | :---: | :---: | :---: | :--- | :---: | :---: | :---: | :---: | :---: |
|
|
143
|
+
| [error-handling](https://eslint.interlace.tools/docs/quality/plugin-reliability/rules/error-handling) | | | | Enforce error handling | | | | | |
|
|
144
|
+
| [reliability](https://eslint.interlace.tools/docs/quality/plugin-reliability/rules/reliability) | | | | Enforce reliability | | | | | |
|
|
145
|
+
|
|
146
|
+
## ๐ Related ESLint Plugins
|
|
147
|
+
|
|
148
|
+
Part of the **Interlace ESLint Ecosystem** โ AI-native security plugins with LLM-optimized error messages:
|
|
149
|
+
|
|
150
|
+
| Plugin | Downloads | Description |
|
|
151
|
+
| :--- | :---: | :--- |
|
|
152
|
+
| [`eslint-plugin-secure-coding`](https://www.npmjs.com/package/eslint-plugin-secure-coding) | [](https://www.npmjs.com/package/eslint-plugin-secure-coding) | General security rules & OWASP guidelines. |
|
|
153
|
+
| [`eslint-plugin-pg`](https://www.npmjs.com/package/eslint-plugin-pg) | [](https://www.npmjs.com/package/eslint-plugin-pg) | PostgreSQL security & best practices. |
|
|
154
|
+
| [`eslint-plugin-crypto`](https://www.npmjs.com/package/eslint-plugin-crypto) | [](https://www.npmjs.com/package/eslint-plugin-crypto) | NodeJS Cryptography security rules. |
|
|
155
|
+
| [`eslint-plugin-jwt`](https://www.npmjs.com/package/eslint-plugin-jwt) | [](https://www.npmjs.com/package/eslint-plugin-jwt) | JWT security & best practices. |
|
|
156
|
+
| [`eslint-plugin-browser-security`](https://www.npmjs.com/package/eslint-plugin-browser-security) | [](https://www.npmjs.com/package/eslint-plugin-browser-security) | Browser-specific security & XSS prevention. |
|
|
157
|
+
| [`eslint-plugin-express-security`](https://www.npmjs.com/package/eslint-plugin-express-security) | [](https://www.npmjs.com/package/eslint-plugin-express-security) | Express.js security hardening rules. |
|
|
158
|
+
| [`eslint-plugin-lambda-security`](https://www.npmjs.com/package/eslint-plugin-lambda-security) | [](https://www.npmjs.com/package/eslint-plugin-lambda-security) | AWS Lambda security best practices. |
|
|
159
|
+
| [`eslint-plugin-nestjs-security`](https://www.npmjs.com/package/eslint-plugin-nestjs-security) | [](https://www.npmjs.com/package/eslint-plugin-nestjs-security) | NestJS security rules & patterns. |
|
|
160
|
+
| [`eslint-plugin-mongodb-security`](https://www.npmjs.com/package/eslint-plugin-mongodb-security) | [](https://www.npmjs.com/package/eslint-plugin-mongodb-security) | MongoDB security best practices. |
|
|
161
|
+
| [`eslint-plugin-vercel-ai-security`](https://www.npmjs.com/package/eslint-plugin-vercel-ai-security) | [](https://www.npmjs.com/package/eslint-plugin-vercel-ai-security) | Vercel AI SDK security hardening. |
|
|
162
|
+
| [`eslint-plugin-import-next`](https://www.npmjs.com/package/eslint-plugin-import-next) | [](https://www.npmjs.com/package/eslint-plugin-import-next) | Next-gen import sorting & architecture. |
|
|
156
163
|
|
|
157
164
|
## ๐ License
|
|
158
165
|
|
|
159
166
|
MIT ยฉ [Ofri Peretz](https://github.com/ofri-peretz)
|
|
167
|
+
|
|
168
|
+
<p align="center">
|
|
169
|
+
<a href="https://eslint.interlace.tools/docs/quality/plugin-reliability"><img src="https://eslint.interlace.tools/images/og-reliability.png" alt="ESLint Interlace Plugin" width="100%" /></a>
|
|
170
|
+
</p>
|