You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

npm-package-json-lint

Package Overview
Dependencies
Maintainers
1
Versions
91
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

npm-package-json-lint - npm Package Compare versions

Comparing version

to
9.0.0

4

CONTRIBUTING.md

@@ -7,4 +7,4 @@ # Contributing

* [Node.js](https://nodejs.org/) - v18.0.0+
* [npm](https://www.npmjs.com/) - v9.0.0+
* [Node.js](https://nodejs.org/) - v20.0.0+
* [npm](https://www.npmjs.com/) - v10.0.0+

@@ -11,0 +11,0 @@ ## Install project dependencies

@@ -1,2 +0,2 @@

var Ee=Object.create;var R=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Je=Object.getOwnPropertyNames;var Le=Object.getPrototypeOf,$e=Object.prototype.hasOwnProperty;var Se=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ae=(t,e)=>{for(var r in e)R(t,r,{get:e[r],enumerable:!0})},X=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Je(e))!$e.call(t,o)&&o!==r&&R(t,o,{get:()=>e[o],enumerable:!(n=Pe(e,o))||n.enumerable});return t};var g=(t,e,r)=>(r=t!=null?Ee(Le(t)):{},X(e||!t||!t.__esModule?R(r,"default",{value:t,enumerable:!0}):r,t)),Me=t=>X(R({},"__esModule",{value:!0}),t);var Ce=Se((Ut,rt)=>{rt.exports={name:"npm-package-json-lint",version:"0.0.0",description:"Configurable linter for package.json files.",keywords:["lint","linter","package.json","audit","auditor","npm-package-json-lint"],homepage:"https://github.com/tclindner/npm-package-json-lint",bugs:{url:"https://github.com/tclindner/npm-package-json-lint/issues"},author:"Thomas Lindner",repository:{type:"git",url:"https://github.com/tclindner/npm-package-json-lint.git"},bin:{npmPkgJsonLint:"dist/cli.js"},files:["CONTRIBUTING.md","dist"],main:"dist/api.js",types:"dist/src/api.d.ts",scripts:{build:"npm run esbuild && npm run tsc",esbuild:"node esbuild.config.js",eslint:"eslint .",npmpackagejsonlint:"node dist/cli.js ./package.json",lint:"npm run eslint && npm run npmpackagejsonlint",test:"npm run build && jest","test:ci":"jest --runInBand",tsc:"tsc --project tsconfig.json"},dependencies:{ajv:"^6.12.6","ajv-errors":"^1.0.1",chalk:"^4.1.2",cosmiconfig:"^8.3.6",debug:"^4.3.4",globby:"^11.1.0",ignore:"^5.3.1","is-plain-obj":"^3.0.0","jsonc-parser":"^3.2.1","log-symbols":"^4.1.0",meow:"^9.0.0",plur:"^4.0.0",semver:"^7.6.2",slash:"^3.0.0","strip-json-comments":"^3.1.1","type-fest":"^4.20.0","validate-npm-package-name":"^5.0.1"},devDependencies:{"@types/jest":"^29.5.12","@types/node":"^20.14.2","@typescript-eslint/eslint-plugin":"^7.12.0","@typescript-eslint/parser":"^7.12.0",esbuild:"^0.21.5","esbuild-node-externals":"^1.13.1",eslint:"^8.57.0","eslint-config-tc":"^26.0.0","eslint-config-typescript-tc":"^9.0.0","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.29.1","eslint-plugin-jest":"^28.6.0","eslint-plugin-prettier":"^5.1.3","eslint-plugin-unicorn":"^53.0.0",figures:"^3.2.0",jest:"^29.7.0","npm-package-json-lint-config-default":"^7.0.0","npm-package-json-lint-config-tc":"^8.0.0",prettier:"^3.3.1","ts-jest":"^29.1.4",typescript:"^5.4.5"},engines:{node:">=18.0.0",npm:">=9.0.0"},license:"MIT"}});var pt={};Ae(pt,{LintIssue:()=>A,NpmPackageJsonLint:()=>S,Rules:()=>j,Severity:()=>b,write:()=>Fe});module.exports=Me(pt);var Re=g(require("is-plain-obj")),Y=g(require("slash"));var _=require("cosmiconfig");var Z=g(require("ajv")),ee=g(require("ajv-errors")),C=new Z.default({allErrors:!0,jsonPointers:!0});(0,ee.default)(C);var F=t=>t.map(e=>` - ${e.message}
var Ee=Object.create;var R=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Je=Object.getOwnPropertyNames;var Le=Object.getPrototypeOf,$e=Object.prototype.hasOwnProperty;var Se=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ae=(t,e)=>{for(var r in e)R(t,r,{get:e[r],enumerable:!0})},X=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Je(e))!$e.call(t,o)&&o!==r&&R(t,o,{get:()=>e[o],enumerable:!(n=Pe(e,o))||n.enumerable});return t};var g=(t,e,r)=>(r=t!=null?Ee(Le(t)):{},X(e||!t||!t.__esModule?R(r,"default",{value:t,enumerable:!0}):r,t)),Me=t=>X(R({},"__esModule",{value:!0}),t);var Ce=Se((Ut,rt)=>{rt.exports={name:"npm-package-json-lint",version:"0.0.0",description:"Configurable linter for package.json files.",keywords:["lint","linter","package.json","audit","auditor","npm-package-json-lint"],homepage:"https://github.com/tclindner/npm-package-json-lint",bugs:{url:"https://github.com/tclindner/npm-package-json-lint/issues"},author:"Thomas Lindner",repository:{type:"git",url:"https://github.com/tclindner/npm-package-json-lint.git"},bin:{npmPkgJsonLint:"dist/cli.js"},files:["CONTRIBUTING.md","dist"],main:"dist/api.js",types:"dist/src/api.d.ts",scripts:{build:"npm run esbuild && npm run tsc",esbuild:"node esbuild.config.js",eslint:"eslint .",npmpackagejsonlint:"node dist/cli.js ./package.json",lint:"npm run eslint && npm run npmpackagejsonlint",test:"npm run build && jest","test:ci":"jest --runInBand",tsc:"tsc --project tsconfig.json"},dependencies:{ajv:"^6.12.6","ajv-errors":"^1.0.1",chalk:"^4.1.2",cosmiconfig:"^8.3.6",debug:"^4.3.6",globby:"^11.1.0",ignore:"^5.3.2","is-plain-obj":"^3.0.0","jsonc-parser":"^3.3.1","log-symbols":"^4.1.0",meow:"^9.0.0",plur:"^4.0.0",semver:"^7.6.3",slash:"^3.0.0","strip-json-comments":"^3.1.1","type-fest":"^4.26.1","validate-npm-package-name":"^6.0.0"},devDependencies:{"@types/jest":"^30.0.0","@types/node":"^24.0.7","@typescript-eslint/eslint-plugin":"^8.35.0","@typescript-eslint/parser":"^8.35.0",esbuild:"^0.25.5","esbuild-node-externals":"^1.18.0",eslint:"^8.57.0","eslint-config-tc":"^27.0.0","eslint-config-typescript-tc":"^11.0.0","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.32.0","eslint-plugin-jest":"^29.0.1","eslint-plugin-prettier":"^5.5.1","eslint-plugin-unicorn":"^56.0.1",figures:"^3.2.0",jest:"^30.0.3","npm-package-json-lint-config-default":"^8.0.0","npm-package-json-lint-config-tc":"^9.0.0",prettier:"^3.6.2","ts-jest":"^29.4.0",typescript:"^5.4.5"},engines:{node:">=20.0.0",npm:">=10.0.0"},license:"MIT"}});var pt={};Ae(pt,{LintIssue:()=>A,NpmPackageJsonLint:()=>S,Rules:()=>j,Severity:()=>b,write:()=>Fe});module.exports=Me(pt);var Re=g(require("is-plain-obj")),Y=g(require("slash"));var _=require("cosmiconfig");var Z=g(require("ajv")),ee=g(require("ajv-errors")),C=new Z.default({allErrors:!0,jsonPointers:!0});(0,ee.default)(C);var F=t=>t.map(e=>` - ${e.message}
`).join(""),V={type:"string",enum:["off","warning","error"],errorMessage:{type:"severity must be a string.",enum:'severity must be either "off", "warning", or "error".'}},qe=t=>({type:"array",items:[V,{type:"array",minItems:t,uniqueItems:!0,errorMessage:{type:"the second item in an array rule config must be an array.",minItems:"the second item in an array rule config must have at least 1 item.",uniqueItems:"the second item in an array rule config must have unique items."}}],minItems:2,maxItems:2,additionalItems:!1,errorMessage:{type:'rule config must be an array, e.g. ["error", ["value1", "value2"]].',minItems:'array rules must have two items, severity and options array. e.g. ["error", ["value1", "value2"]].',maxItems:'array rules must have two items, severity and options array. e.g. ["error", ["value1", "value2"]].',additionalItems:'array rules are only allowed two items, severity and the list is values. e.g. ["error", ["value1", "value2"]].'}}),Ve={type:"array",items:[V,{type:"object",errorMessage:{type:"the second item in an object rule config must be an object."}}],minItems:2,maxItems:2,additionalItems:!1,errorMessage:{type:'rule config must be an array, e.g. ["error", {}].',minItems:'object rules must have two items, severity and options object. e.g. ["error", {}].',maxItems:'object rules must have two items, severity and options object. e.g. ["error", {}].',additionalItems:'object rules are only allowed two items, severity and options object. e.g. ["error", {}].'}},Te={type:"array",items:[{type:"string",errorMessage:{type:"each exception must be a string."}}],uniqueItems:!0,minItems:1,errorMessage:{type:"expections must be an array.",minItems:"expections must have at least 1 item.",uniqueItems:"expections must have unique items."}};var T=t=>{let e=C.compile(V);if(!e(t))throw new Error(`${F(e.errors)}`);return!0},te=(t,e)=>{let r=C.compile(qe(e));if(!r(t))throw new Error(`${F(r.errors)}`);return!0},N=t=>{let e=C.compile(Ve);if(!e(t))throw new Error(`${F(e.errors)}`);return!0},re=t=>{let e=C.compile(Te);if(!e(t))throw new Error(`${F(e.errors)}`);return!0};var De=t=>{if(typeof t=="string"&&t==="off")return!0;if(typeof t=="string"&&t!=="off")throw new Error(' - is an object type rule. It must be set to "off" if an object is not supplied.');return N(t)},He=t=>typeof t=="string"?T(t):N(t)&&t[1].hasOwnProperty("exceptions")?re(t[1].exceptions):!0,_e=(t,e)=>{if(typeof t=="string"&&t==="off")return!0;if(typeof t=="string"&&t!=="off")throw new Error(' - is an array type rule. It must be set to "off" if an array is not supplied.');return te(t,e)},Be=t=>T(t),Ue=(t,e,r,n)=>{if(t)try{switch(t.ruleType){case"array":{_e(r,t.minItems);break}case"object":{De(r);break}case"optionalObject":{He(r);break}default:Be(r)}}catch(o){let s=`Configuration for rule "${e}" is invalid:

@@ -3,0 +3,0 @@ ${o.message}`;throw typeof n=="string"?new Error(`${n}:

#!/usr/bin/env node
var Je=Object.create;var X=Object.defineProperty;var Le=Object.getOwnPropertyDescriptor;var $e=Object.getOwnPropertyNames;var Se=Object.getPrototypeOf,qe=Object.prototype.hasOwnProperty;var Ae=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var Me=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of $e(e))!qe.call(n,o)&&o!==t&&X(n,o,{get:()=>e[o],enumerable:!(r=Le(e,o))||r.enumerable});return n};var g=(n,e,t)=>(t=n!=null?Je(Se(n)):{},Me(e||!n||!n.__esModule?X(t,"default",{value:n,enumerable:!0}):t,n));var Oe=Ae((Yn,rn)=>{rn.exports={name:"npm-package-json-lint",version:"0.0.0",description:"Configurable linter for package.json files.",keywords:["lint","linter","package.json","audit","auditor","npm-package-json-lint"],homepage:"https://github.com/tclindner/npm-package-json-lint",bugs:{url:"https://github.com/tclindner/npm-package-json-lint/issues"},author:"Thomas Lindner",repository:{type:"git",url:"https://github.com/tclindner/npm-package-json-lint.git"},bin:{npmPkgJsonLint:"dist/cli.js"},files:["CONTRIBUTING.md","dist"],main:"dist/api.js",types:"dist/src/api.d.ts",scripts:{build:"npm run esbuild && npm run tsc",esbuild:"node esbuild.config.js",eslint:"eslint .",npmpackagejsonlint:"node dist/cli.js ./package.json",lint:"npm run eslint && npm run npmpackagejsonlint",test:"npm run build && jest","test:ci":"jest --runInBand",tsc:"tsc --project tsconfig.json"},dependencies:{ajv:"^6.12.6","ajv-errors":"^1.0.1",chalk:"^4.1.2",cosmiconfig:"^8.3.6",debug:"^4.3.4",globby:"^11.1.0",ignore:"^5.3.1","is-plain-obj":"^3.0.0","jsonc-parser":"^3.2.1","log-symbols":"^4.1.0",meow:"^9.0.0",plur:"^4.0.0",semver:"^7.6.2",slash:"^3.0.0","strip-json-comments":"^3.1.1","type-fest":"^4.20.0","validate-npm-package-name":"^5.0.1"},devDependencies:{"@types/jest":"^29.5.12","@types/node":"^20.14.2","@typescript-eslint/eslint-plugin":"^7.12.0","@typescript-eslint/parser":"^7.12.0",esbuild:"^0.21.5","esbuild-node-externals":"^1.13.1",eslint:"^8.57.0","eslint-config-tc":"^26.0.0","eslint-config-typescript-tc":"^9.0.0","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.29.1","eslint-plugin-jest":"^28.6.0","eslint-plugin-prettier":"^5.1.3","eslint-plugin-unicorn":"^53.0.0",figures:"^3.2.0",jest:"^29.7.0","npm-package-json-lint-config-default":"^7.0.0","npm-package-json-lint-config-tc":"^8.0.0",prettier:"^3.3.1","ts-jest":"^29.1.4",typescript:"^5.4.5"},engines:{node:">=18.0.0",npm:">=9.0.0"},license:"MIT"}});var Y=g(require("chalk")),Ee=g(require("meow"));var Fe=g(require("is-plain-obj")),z=g(require("slash"));var W=require("cosmiconfig");var Z=g(require("ajv")),ee=g(require("ajv-errors")),O=new Z.default({allErrors:!0,jsonPointers:!0});(0,ee.default)(O);var P=n=>n.map(e=>` - ${e.message}
var Je=Object.create;var X=Object.defineProperty;var Le=Object.getOwnPropertyDescriptor;var $e=Object.getOwnPropertyNames;var Se=Object.getPrototypeOf,qe=Object.prototype.hasOwnProperty;var Ae=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var Me=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of $e(e))!qe.call(n,o)&&o!==t&&X(n,o,{get:()=>e[o],enumerable:!(r=Le(e,o))||r.enumerable});return n};var g=(n,e,t)=>(t=n!=null?Je(Se(n)):{},Me(e||!n||!n.__esModule?X(t,"default",{value:n,enumerable:!0}):t,n));var Oe=Ae((Yn,rn)=>{rn.exports={name:"npm-package-json-lint",version:"0.0.0",description:"Configurable linter for package.json files.",keywords:["lint","linter","package.json","audit","auditor","npm-package-json-lint"],homepage:"https://github.com/tclindner/npm-package-json-lint",bugs:{url:"https://github.com/tclindner/npm-package-json-lint/issues"},author:"Thomas Lindner",repository:{type:"git",url:"https://github.com/tclindner/npm-package-json-lint.git"},bin:{npmPkgJsonLint:"dist/cli.js"},files:["CONTRIBUTING.md","dist"],main:"dist/api.js",types:"dist/src/api.d.ts",scripts:{build:"npm run esbuild && npm run tsc",esbuild:"node esbuild.config.js",eslint:"eslint .",npmpackagejsonlint:"node dist/cli.js ./package.json",lint:"npm run eslint && npm run npmpackagejsonlint",test:"npm run build && jest","test:ci":"jest --runInBand",tsc:"tsc --project tsconfig.json"},dependencies:{ajv:"^6.12.6","ajv-errors":"^1.0.1",chalk:"^4.1.2",cosmiconfig:"^8.3.6",debug:"^4.3.6",globby:"^11.1.0",ignore:"^5.3.2","is-plain-obj":"^3.0.0","jsonc-parser":"^3.3.1","log-symbols":"^4.1.0",meow:"^9.0.0",plur:"^4.0.0",semver:"^7.6.3",slash:"^3.0.0","strip-json-comments":"^3.1.1","type-fest":"^4.26.1","validate-npm-package-name":"^6.0.0"},devDependencies:{"@types/jest":"^30.0.0","@types/node":"^24.0.7","@typescript-eslint/eslint-plugin":"^8.35.0","@typescript-eslint/parser":"^8.35.0",esbuild:"^0.25.5","esbuild-node-externals":"^1.18.0",eslint:"^8.57.0","eslint-config-tc":"^27.0.0","eslint-config-typescript-tc":"^11.0.0","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.32.0","eslint-plugin-jest":"^29.0.1","eslint-plugin-prettier":"^5.5.1","eslint-plugin-unicorn":"^56.0.1",figures:"^3.2.0",jest:"^30.0.3","npm-package-json-lint-config-default":"^8.0.0","npm-package-json-lint-config-tc":"^9.0.0",prettier:"^3.6.2","ts-jest":"^29.4.0",typescript:"^5.4.5"},engines:{node:">=20.0.0",npm:">=10.0.0"},license:"MIT"}});var Y=g(require("chalk")),Ee=g(require("meow"));var Fe=g(require("is-plain-obj")),z=g(require("slash"));var W=require("cosmiconfig");var Z=g(require("ajv")),ee=g(require("ajv-errors")),O=new Z.default({allErrors:!0,jsonPointers:!0});(0,ee.default)(O);var P=n=>n.map(e=>` - ${e.message}
`).join(""),M={type:"string",enum:["off","warning","error"],errorMessage:{type:"severity must be a string.",enum:'severity must be either "off", "warning", or "error".'}},Te=n=>({type:"array",items:[M,{type:"array",minItems:n,uniqueItems:!0,errorMessage:{type:"the second item in an array rule config must be an array.",minItems:"the second item in an array rule config must have at least 1 item.",uniqueItems:"the second item in an array rule config must have unique items."}}],minItems:2,maxItems:2,additionalItems:!1,errorMessage:{type:'rule config must be an array, e.g. ["error", ["value1", "value2"]].',minItems:'array rules must have two items, severity and options array. e.g. ["error", ["value1", "value2"]].',maxItems:'array rules must have two items, severity and options array. e.g. ["error", ["value1", "value2"]].',additionalItems:'array rules are only allowed two items, severity and the list is values. e.g. ["error", ["value1", "value2"]].'}}),Ve={type:"array",items:[M,{type:"object",errorMessage:{type:"the second item in an object rule config must be an object."}}],minItems:2,maxItems:2,additionalItems:!1,errorMessage:{type:'rule config must be an array, e.g. ["error", {}].',minItems:'object rules must have two items, severity and options object. e.g. ["error", {}].',maxItems:'object rules must have two items, severity and options object. e.g. ["error", {}].',additionalItems:'object rules are only allowed two items, severity and options object. e.g. ["error", {}].'}},Ne={type:"array",items:[{type:"string",errorMessage:{type:"each exception must be a string."}}],uniqueItems:!0,minItems:1,errorMessage:{type:"expections must be an array.",minItems:"expections must have at least 1 item.",uniqueItems:"expections must have unique items."}};var T=n=>{let e=O.compile(M);if(!e(n))throw new Error(`${P(e.errors)}`);return!0},ne=(n,e)=>{let t=O.compile(Te(e));if(!t(n))throw new Error(`${P(t.errors)}`);return!0},V=n=>{let e=O.compile(Ve);if(!e(n))throw new Error(`${P(e.errors)}`);return!0},te=n=>{let e=O.compile(Ne);if(!e(n))throw new Error(`${P(e.errors)}`);return!0};var We=n=>{if(typeof n=="string"&&n==="off")return!0;if(typeof n=="string"&&n!=="off")throw new Error(' - is an object type rule. It must be set to "off" if an object is not supplied.');return V(n)},He=n=>typeof n=="string"?T(n):V(n)&&n[1].hasOwnProperty("exceptions")?te(n[1].exceptions):!0,_e=(n,e)=>{if(typeof n=="string"&&n==="off")return!0;if(typeof n=="string"&&n!=="off")throw new Error(' - is an array type rule. It must be set to "off" if an array is not supplied.');return ne(n,e)},Be=n=>T(n),Ue=(n,e,t,r)=>{if(n)try{switch(n.ruleType){case"array":{_e(t,n.minItems);break}case"object":{We(t);break}case"optionalObject":{He(t);break}default:Be(t)}}catch(o){let s=`Configuration for rule "${e}" is invalid:

@@ -4,0 +4,0 @@ ${o.message}`;throw typeof r=="string"?new Error(`${r}:

{
"name": "npm-package-json-lint",
"version": "8.0.0",
"version": "9.0.0",
"description": "Configurable linter for package.json files.",

@@ -46,44 +46,44 @@ "keywords": [

"cosmiconfig": "^8.3.6",
"debug": "^4.3.4",
"debug": "^4.3.6",
"globby": "^11.1.0",
"ignore": "^5.3.1",
"ignore": "^5.3.2",
"is-plain-obj": "^3.0.0",
"jsonc-parser": "^3.2.1",
"jsonc-parser": "^3.3.1",
"log-symbols": "^4.1.0",
"meow": "^9.0.0",
"plur": "^4.0.0",
"semver": "^7.6.2",
"semver": "^7.6.3",
"slash": "^3.0.0",
"strip-json-comments": "^3.1.1",
"type-fest": "^4.20.0",
"validate-npm-package-name": "^5.0.1"
"type-fest": "^4.26.1",
"validate-npm-package-name": "^6.0.0"
},
"devDependencies": {
"@types/jest": "^29.5.12",
"@types/node": "^20.14.2",
"@typescript-eslint/eslint-plugin": "^7.12.0",
"@typescript-eslint/parser": "^7.12.0",
"esbuild": "^0.21.5",
"esbuild-node-externals": "^1.13.1",
"@types/jest": "^30.0.0",
"@types/node": "^24.0.7",
"@typescript-eslint/eslint-plugin": "^8.35.0",
"@typescript-eslint/parser": "^8.35.0",
"esbuild": "^0.25.5",
"esbuild-node-externals": "^1.18.0",
"eslint": "^8.57.0",
"eslint-config-tc": "^26.0.0",
"eslint-config-typescript-tc": "^9.0.0",
"eslint-config-tc": "^27.0.0",
"eslint-config-typescript-tc": "^11.0.0",
"eslint-plugin-eslint-comments": "^3.2.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jest": "^28.6.0",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-unicorn": "^53.0.0",
"eslint-plugin-import": "^2.32.0",
"eslint-plugin-jest": "^29.0.1",
"eslint-plugin-prettier": "^5.5.1",
"eslint-plugin-unicorn": "^56.0.1",
"figures": "^3.2.0",
"jest": "^29.7.0",
"npm-package-json-lint-config-default": "^7.0.0",
"npm-package-json-lint-config-tc": "^8.0.0",
"prettier": "^3.3.1",
"ts-jest": "^29.1.4",
"jest": "^30.0.3",
"npm-package-json-lint-config-default": "^8.0.0",
"npm-package-json-lint-config-tc": "^9.0.0",
"prettier": "^3.6.2",
"ts-jest": "^29.4.0",
"typescript": "^5.4.5"
},
"engines": {
"node": ">=18.0.0",
"npm": ">=9.0.0"
"node": ">=20.0.0",
"npm": ">=10.0.0"
},
"license": "MIT"
}

@@ -65,4 +65,4 @@ # npm-package-json-lint

* [Node.js](https://nodejs.org/) - v18.0.0+
* [npm](http://npmjs.com) - v9.0.0+
* [Node.js](https://nodejs.org/) - v20.0.0+
* [npm](http://npmjs.com) - v10.0.0+

@@ -121,2 +121,10 @@ ### Use the cli

## Migrating from v8.x.x to 9.x.x
Please see the [migration guide](https://npmpackagejsonlint.org/docs/v8-to-v9).
## Migrating from v7.x.x to 8.x.x
Please see the [migration guide](https://npmpackagejsonlint.org/docs/v7-to-v8).
## Migrating from v6.x.x to 7.x.x

@@ -123,0 +131,0 @@

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet