eslint-plugin-package-json 0.78.0 → 0.80.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 +14 -2
- package/README.md +2 -1
- package/lib/index.d.mts +2 -6
- package/lib/plugin.d.mts +2 -6
- package/lib/plugin.mjs +1 -5
- package/lib/rules/require-properties.mjs +1 -0
- package/lib/rules/valid-package-definition.mjs +2 -2
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,11 +1,23 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
# [0.
|
|
3
|
+
# [0.80.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.79.0...v0.80.0) (2025-11-17)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* **require-exports:** add new rule to require `exports` ([#1410](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1410)) ([c8fd152](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/c8fd1525b4d25c4d1fbdb488a7a604037e352361)), closes [#1409](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1409)
|
|
4
9
|
|
|
10
|
+
# [0.79.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.78.0...v0.79.0) (2025-11-15)
|
|
11
|
+
|
|
12
|
+
### Features
|
|
13
|
+
|
|
14
|
+
- deprecate `valid-package-definition` ([#1400](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1400)) ([dca815a](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/dca815ae441d7d0667fcd54933eee868197b31d7)), closes [#1399](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1399)
|
|
15
|
+
|
|
16
|
+
# [0.78.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.77.0...v0.78.0) (2025-11-15)
|
|
5
17
|
|
|
6
18
|
### Features
|
|
7
19
|
|
|
8
|
-
|
|
20
|
+
- **valid-repository:** add new rule for validating `repository` ([#1393](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1393)) ([2b38e88](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/2b38e881f60d357f9f73ad7a1aff159682542c42)), closes [#838](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/838)
|
|
9
21
|
|
|
10
22
|
# [0.77.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.76.0...v0.77.0) (2025-11-15)
|
|
11
23
|
|
package/README.md
CHANGED
|
@@ -197,6 +197,7 @@ The default settings don't conflict, and Prettier plugins can quickly fix up ord
|
|
|
197
197
|
| [require-description](docs/rules/require-description.md) | Requires the `description` property to be present. | ✔️ ✅ | | | |
|
|
198
198
|
| [require-devDependencies](docs/rules/require-devDependencies.md) | Requires the `devDependencies` property to be present. | | | | |
|
|
199
199
|
| [require-engines](docs/rules/require-engines.md) | Requires the `engines` property to be present. | | | | |
|
|
200
|
+
| [require-exports](docs/rules/require-exports.md) | Requires the `exports` property to be present. | | | | |
|
|
200
201
|
| [require-files](docs/rules/require-files.md) | Requires the `files` property to be present. | | | | |
|
|
201
202
|
| [require-keywords](docs/rules/require-keywords.md) | Requires the `keywords` property to be present. | | | | |
|
|
202
203
|
| [require-license](docs/rules/require-license.md) | Requires the `license` property to be present. | ✔️ ✅ | | | |
|
|
@@ -233,7 +234,7 @@ The default settings don't conflict, and Prettier plugins can quickly fix up ord
|
|
|
233
234
|
| [valid-name](docs/rules/valid-name.md) | Enforce that package names are valid npm package names | ✔️ ✅ | | | |
|
|
234
235
|
| [valid-optionalDependencies](docs/rules/valid-optionalDependencies.md) | Enforce that the `optionalDependencies` property is valid. | ✔️ ✅ | | | |
|
|
235
236
|
| [valid-os](docs/rules/valid-os.md) | Enforce that the `os` property is valid. | ✔️ ✅ | | | |
|
|
236
|
-
| [valid-package-definition](docs/rules/valid-package-definition.md) | Enforce that package.json has all properties required by the npm spec |
|
|
237
|
+
| [valid-package-definition](docs/rules/valid-package-definition.md) | Enforce that package.json has all properties required by the npm spec | | | | ❌ |
|
|
237
238
|
| [valid-peerDependencies](docs/rules/valid-peerDependencies.md) | Enforce that the `peerDependencies` property is valid. | ✔️ ✅ | | | |
|
|
238
239
|
| [valid-private](docs/rules/valid-private.md) | Enforce that the `private` property is valid. | ✔️ ✅ | | | |
|
|
239
240
|
| [valid-publishConfig](docs/rules/valid-publishConfig.md) | Enforce that the `publishConfig` property is valid. | ✔️ ✅ | | | |
|
package/lib/index.d.mts
CHANGED
|
@@ -10,9 +10,7 @@ declare const configs: {
|
|
|
10
10
|
"legacy-recommended": {
|
|
11
11
|
plugins: string[];
|
|
12
12
|
rules: {
|
|
13
|
-
|
|
14
|
-
ignoreProperties: string[];
|
|
15
|
-
}];
|
|
13
|
+
[k: string]: "error";
|
|
16
14
|
};
|
|
17
15
|
};
|
|
18
16
|
recommended: {
|
|
@@ -25,9 +23,7 @@ declare const configs: {
|
|
|
25
23
|
readonly "package-json": eslint0.ESLint.Plugin;
|
|
26
24
|
};
|
|
27
25
|
rules: {
|
|
28
|
-
|
|
29
|
-
ignoreProperties: string[];
|
|
30
|
-
}];
|
|
26
|
+
[k: string]: "error";
|
|
31
27
|
};
|
|
32
28
|
};
|
|
33
29
|
stylistic: {
|
package/lib/plugin.d.mts
CHANGED
|
@@ -10,9 +10,7 @@ declare const plugin: {
|
|
|
10
10
|
"legacy-recommended": {
|
|
11
11
|
plugins: string[];
|
|
12
12
|
rules: {
|
|
13
|
-
|
|
14
|
-
ignoreProperties: string[];
|
|
15
|
-
}];
|
|
13
|
+
[k: string]: "error";
|
|
16
14
|
};
|
|
17
15
|
};
|
|
18
16
|
recommended: {
|
|
@@ -25,9 +23,7 @@ declare const plugin: {
|
|
|
25
23
|
readonly "package-json": ESLint.Plugin;
|
|
26
24
|
};
|
|
27
25
|
rules: {
|
|
28
|
-
|
|
29
|
-
ignoreProperties: string[];
|
|
30
|
-
}];
|
|
26
|
+
[k: string]: "error";
|
|
31
27
|
};
|
|
32
28
|
};
|
|
33
29
|
stylistic: {
|
package/lib/plugin.mjs
CHANGED
|
@@ -43,11 +43,7 @@ const rules$2 = {
|
|
|
43
43
|
"valid-repository-directory": rule$15,
|
|
44
44
|
"valid-version": rule$16
|
|
45
45
|
};
|
|
46
|
-
const
|
|
47
|
-
const recommendedRules = {
|
|
48
|
-
...baseRecommendedRules,
|
|
49
|
-
"package-json/valid-package-definition": ["error", { ignoreProperties: Object.entries(baseRecommendedRules).filter(([name$1]) => name$1.startsWith("package-json/valid-") && name$1 !== "package-json/valid-package-definition").map(([name$1]) => name$1.replace("package-json/valid-", "")) }]
|
|
50
|
-
};
|
|
46
|
+
const recommendedRules = { ...Object.fromEntries(Object.entries(rules$2).filter(([, rule$17]) => rule$17.meta.docs?.recommended).map(([name$1]) => ["package-json/" + name$1, "error"])) };
|
|
51
47
|
const stylisticRules = { ...Object.fromEntries(Object.entries(rules$2).filter(([, rule$17]) => rule$17.meta.docs?.category === "Stylistic").map(([name$1]) => ["package-json/" + name$1, "error"])) };
|
|
52
48
|
const plugin = {
|
|
53
49
|
configs: {
|
|
@@ -23,10 +23,10 @@ const rule = createRule({
|
|
|
23
23
|
},
|
|
24
24
|
meta: {
|
|
25
25
|
defaultOptions: [{ ignoreProperties: [] }],
|
|
26
|
+
deprecated: true,
|
|
26
27
|
docs: {
|
|
27
28
|
category: "Best Practices",
|
|
28
|
-
description: "Enforce that package.json has all properties required by the npm spec"
|
|
29
|
-
recommended: true
|
|
29
|
+
description: "Enforce that package.json has all properties required by the npm spec"
|
|
30
30
|
},
|
|
31
31
|
schema: [{
|
|
32
32
|
additionalProperties: false,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eslint-plugin-package-json",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.80.0",
|
|
4
4
|
"description": "Rules for consistent, readable, and valid package.json files. 🗂️",
|
|
5
5
|
"homepage": "https://github.com/JoshuaKGoldberg/eslint-plugin-package-json#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"eslint": ">=8.0.0",
|
|
110
110
|
"jsonc-eslint-parser": "^2.0.0"
|
|
111
111
|
},
|
|
112
|
-
"packageManager": "pnpm@10.
|
|
112
|
+
"packageManager": "pnpm@10.21.0",
|
|
113
113
|
"engines": {
|
|
114
114
|
"node": "^20.19.0 || >=22.12.0"
|
|
115
115
|
},
|