eslint-plugin-package-json 0.74.0 → 0.76.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
@@ -1,11 +1,25 @@
1
1
  # Changelog
2
2
 
3
- # [0.74.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.73.0...v0.74.0) (2025-11-14)
3
+ # [0.76.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.75.0...v0.76.0) (2025-11-15)
4
+
5
+
6
+ ### Features
7
+
8
+ * **valid-engines:** add new rule for validating `engines` ([#1397](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1397)) ([ba834f0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/ba834f00651b64f2bc0cf58cf41d768bd6cee5eb)), closes [#826](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/826)
4
9
 
10
+ # [0.75.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.73.0...v0.75.0) (2025-11-15)
11
+
12
+ ### Features
13
+
14
+ - **valid-man:** add new rule for validating `man` ([#1392](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1392)) ([3f1ffc5](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/3f1ffc57a924c080892dd66bc5ce7a011ca70451)), closes [#832](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/832)
15
+ - **valid-publishConfig:** add new rule for validating `publishConfig` ([#1388](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1388)) ([6d1fab4](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/6d1fab4e4b6c59e7bcfc582ef75a0e07a5c8ea08)), closes [#841](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/841)
16
+ - **valid-workspaces:** add new rule for validating `workspaces` ([#1396](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1396)) ([2eeca42](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/2eeca42701a8636704e3d6b896cf3eec21531779)), closes [#843](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/843)
17
+
18
+ # [0.74.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.73.0...v0.74.0) (2025-11-14)
5
19
 
6
20
  ### Features
7
21
 
8
- * **valid-publishConfig:** add new rule for validating `publishConfig` ([#1388](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1388)) ([6d1fab4](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/6d1fab4e4b6c59e7bcfc582ef75a0e07a5c8ea08)), closes [#841](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/841)
22
+ - **valid-publishConfig:** add new rule for validating `publishConfig` ([#1388](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1388)) ([6d1fab4](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/6d1fab4e4b6c59e7bcfc582ef75a0e07a5c8ea08)), closes [#841](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/841)
9
23
 
10
24
  # [0.73.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.72.0...v0.73.0) (2025-11-13)
11
25
 
package/README.md CHANGED
@@ -221,6 +221,7 @@ The default settings don't conflict, and Prettier plugins can quickly fix up ord
221
221
  | [valid-description](docs/rules/valid-description.md) | Enforce that the `description` property is valid. | ✔️ ✅ | | | |
222
222
  | [valid-devDependencies](docs/rules/valid-devDependencies.md) | Enforce that the `devDependencies` property is valid. | ✔️ ✅ | | | |
223
223
  | [valid-directories](docs/rules/valid-directories.md) | Enforce that the `directories` property is valid. | ✔️ ✅ | | | |
224
+ | [valid-engines](docs/rules/valid-engines.md) | Enforce that the `engines` property is valid. | ✔️ ✅ | | | |
224
225
  | [valid-exports](docs/rules/valid-exports.md) | Enforce that the `exports` property is valid. | ✔️ ✅ | | | |
225
226
  | [valid-files](docs/rules/valid-files.md) | Enforce that the `files` property is valid. | ✔️ ✅ | | | |
226
227
  | [valid-homepage](docs/rules/valid-homepage.md) | Enforce that the `homepage` property is valid. | ✔️ ✅ | | | |
@@ -228,6 +229,7 @@ The default settings don't conflict, and Prettier plugins can quickly fix up ord
228
229
  | [valid-license](docs/rules/valid-license.md) | Enforce that the `license` property is valid. | ✔️ ✅ | | | |
229
230
  | [valid-local-dependency](docs/rules/valid-local-dependency.md) | Checks existence of local dependencies in the package.json | | | | ❌ |
230
231
  | [valid-main](docs/rules/valid-main.md) | Enforce that the `main` property is valid. | ✔️ ✅ | | | |
232
+ | [valid-man](docs/rules/valid-man.md) | Enforce that the `man` property is valid. | ✔️ ✅ | | | |
231
233
  | [valid-name](docs/rules/valid-name.md) | Enforce that package names are valid npm package names | ✔️ ✅ | | | |
232
234
  | [valid-optionalDependencies](docs/rules/valid-optionalDependencies.md) | Enforce that the `optionalDependencies` property is valid. | ✔️ ✅ | | | |
233
235
  | [valid-os](docs/rules/valid-os.md) | Enforce that the `os` property is valid. | ✔️ ✅ | | | |
@@ -239,6 +241,7 @@ The default settings don't conflict, and Prettier plugins can quickly fix up ord
239
241
  | [valid-scripts](docs/rules/valid-scripts.md) | Enforce that the `scripts` property is valid. | ✔️ ✅ | | | |
240
242
  | [valid-type](docs/rules/valid-type.md) | Enforce that the `type` property is valid. | ✔️ ✅ | | | |
241
243
  | [valid-version](docs/rules/valid-version.md) | Enforce that package versions are valid semver specifiers | ✔️ ✅ | | | |
244
+ | [valid-workspaces](docs/rules/valid-workspaces.md) | Enforce that the `workspaces` property is valid. | ✔️ ✅ | | | |
242
245
 
243
246
  <!-- end auto-generated rules list -->
244
247
  <!-- prettier-ignore-end -->
@@ -1,5 +1,5 @@
1
1
  import { createSimpleValidPropertyRule } from "../utils/createSimpleValidPropertyRule.mjs";
2
- import { validateAuthor, validateBin, validateBundleDependencies, validateConfig, validateContributors, validateCpu, validateDependencies, validateDescription, validateDirectories, validateExports, validateFiles, validateHomepage, validateKeywords, validateLicense, validateMain, validateOs, validatePrivate, validatePublishConfig, validateScripts, validateType } from "package-json-validator";
2
+ import { validateAuthor, validateBin, validateBundleDependencies, validateConfig, validateContributors, validateCpu, validateDependencies, validateDescription, validateDirectories, validateEngines, validateExports, validateFiles, validateHomepage, validateKeywords, validateLicense, validateMain, validateMan, validateOs, validatePrivate, validatePublishConfig, validateScripts, validateType, validateWorkspaces } from "package-json-validator";
3
3
 
4
4
  //#region src/rules/valid-properties.ts
5
5
  const properties = [
@@ -16,19 +16,22 @@ const properties = [
16
16
  ["dependencies", validateDependencies],
17
17
  ["devDependencies", validateDependencies],
18
18
  ["directories", validateDirectories],
19
+ ["engines", validateEngines],
19
20
  ["exports", validateExports],
20
21
  ["files", validateFiles],
21
22
  ["homepage", validateHomepage],
22
23
  ["keywords", validateKeywords],
23
24
  ["license", validateLicense],
24
25
  ["main", validateMain],
26
+ ["man", validateMan],
25
27
  ["optionalDependencies", validateDependencies],
26
28
  ["os", validateOs],
27
29
  ["peerDependencies", validateDependencies],
28
30
  ["private", validatePrivate],
29
31
  ["publishConfig", validatePublishConfig],
30
32
  ["scripts", validateScripts],
31
- ["type", validateType]
33
+ ["type", validateType],
34
+ ["workspaces", validateWorkspaces]
32
35
  ];
33
36
  /** All basic valid- flavor rules */
34
37
  const rules = Object.fromEntries(properties.map(([propertyName, validationFunctionOrOptions]) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-plugin-package-json",
3
- "version": "0.74.0",
3
+ "version": "0.76.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": {
@@ -90,7 +90,7 @@
90
90
  "jiti": "2.6.0",
91
91
  "json-schema-to-ts": "3.1.1",
92
92
  "jsonc-eslint-parser": "2.4.1",
93
- "knip": "5.67.0",
93
+ "knip": "5.68.0",
94
94
  "lint-staged": "16.2.0",
95
95
  "markdownlint": "0.39.0",
96
96
  "markdownlint-cli": "0.45.0",