Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--node_modules/@npmcli/arborist/CHANGELOG.md19
-rw-r--r--node_modules/@npmcli/arborist/bin/license.js2
-rw-r--r--node_modules/@npmcli/arborist/lib/add-rm-pkg-deps.js2
-rw-r--r--node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js6
-rw-r--r--node_modules/@npmcli/arborist/lib/arborist/load-virtual.js4
-rw-r--r--node_modules/@npmcli/arborist/lib/arborist/rebuild.js2
-rw-r--r--node_modules/@npmcli/arborist/lib/audit-report.js2
-rw-r--r--node_modules/@npmcli/arborist/lib/printable.js8
-rw-r--r--node_modules/@npmcli/arborist/lib/shrinkwrap.js2
-rw-r--r--node_modules/@npmcli/arborist/lib/update-root-package-json.js2
-rw-r--r--node_modules/@npmcli/arborist/lib/vuln.js6
-rw-r--r--node_modules/@npmcli/arborist/lib/yarn-lock.js12
-rw-r--r--node_modules/@npmcli/arborist/package.json13
-rw-r--r--node_modules/json-stringify-nice/index.js2
-rw-r--r--node_modules/json-stringify-nice/package.json17
-rw-r--r--package-lock.json30
-rw-r--r--package.json2
17 files changed, 63 insertions, 68 deletions
diff --git a/node_modules/@npmcli/arborist/CHANGELOG.md b/node_modules/@npmcli/arborist/CHANGELOG.md
deleted file mode 100644
index 3cd36d027..000000000
--- a/node_modules/@npmcli/arborist/CHANGELOG.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# CHANGELOG
-
-## 2.0
-
-* BREAKING CHANGE: root node is now included in inventory
-* All parent/target/fsParent/etc. references set in `root` setter, rather
- than the hodgepodge of setters that existed before.
-* `treeCheck` function added, to enforce strict correctness guarantees when
- `ARBORIST_DEBUG=1` in the environment (on by default in Arborist tests).
-
-## 1.0
-
-* Release for npm v7 beta
-* Fully functional
-
-## 0.0
-
-* Proof of concept
-* Before this, it was [`read-package-tree`](http://npm.im/read-package-tree)
diff --git a/node_modules/@npmcli/arborist/bin/license.js b/node_modules/@npmcli/arborist/bin/license.js
index 4083ddc69..89d0d8790 100644
--- a/node_modules/@npmcli/arborist/bin/license.js
+++ b/node_modules/@npmcli/arborist/bin/license.js
@@ -22,7 +22,7 @@ a.loadVirtual().then(tree => {
set.push([tree.inventory.query('license', license).size, license])
for (const [count, license] of set.sort((a, b) =>
- a[1] && b[1] ? b[0] - a[0] || a[1].localeCompare(b[1])
+ a[1] && b[1] ? b[0] - a[0] || a[1].localeCompare(b[1], 'en')
: a[1] ? -1
: b[1] ? 1
: 0))
diff --git a/node_modules/@npmcli/arborist/lib/add-rm-pkg-deps.js b/node_modules/@npmcli/arborist/lib/add-rm-pkg-deps.js
index 25113cbed..f78a43319 100644
--- a/node_modules/@npmcli/arborist/lib/add-rm-pkg-deps.js
+++ b/node_modules/@npmcli/arborist/lib/add-rm-pkg-deps.js
@@ -75,7 +75,7 @@ const addSingle = ({pkg, spec, saveBundle, saveType, log}) => {
// keep it sorted, keep it unique
const bd = new Set(pkg.bundleDependencies || [])
bd.add(spec.name)
- pkg.bundleDependencies = [...bd].sort((a, b) => a.localeCompare(b))
+ pkg.bundleDependencies = [...bd].sort((a, b) => a.localeCompare(b, 'en'))
}
}
diff --git a/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js b/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js
index 6176707c3..ade9bbf1a 100644
--- a/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js
+++ b/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js
@@ -764,7 +764,7 @@ This is a one-time fix-up, please be patient...
// sort physically shallower deps up to the front of the queue,
// because they'll affect things deeper in, then alphabetical
this[_depsQueue].sort((a, b) =>
- (a.depth - b.depth) || a.path.localeCompare(b.path))
+ (a.depth - b.depth) || a.path.localeCompare(b.path, 'en'))
const node = this[_depsQueue].shift()
const bd = node.package.bundleDependencies
@@ -902,7 +902,7 @@ This is a one-time fix-up, please be patient...
}
const placed = tasks
- .sort((a, b) => a.edge.name.localeCompare(b.edge.name))
+ .sort((a, b) => a.edge.name.localeCompare(b.edge.name, 'en'))
.map(({ edge, dep }) => this[_placeDep](dep, node, edge))
const promises = []
@@ -1147,7 +1147,7 @@ This is a one-time fix-up, please be patient...
// we typically only install non-optional peers, but we have to
// factor them into the peerSet so that we can avoid conflicts
.filter(e => e.peer && !(e.valid && e.to))
- .sort(({name: a}, {name: b}) => a.localeCompare(b))
+ .sort(({name: a}, {name: b}) => a.localeCompare(b, 'en'))
for (const edge of peerEdges) {
// already placed this one, and we're happy with it.
diff --git a/node_modules/@npmcli/arborist/lib/arborist/load-virtual.js b/node_modules/@npmcli/arborist/lib/arborist/load-virtual.js
index 2a222249d..a98ed23b2 100644
--- a/node_modules/@npmcli/arborist/lib/arborist/load-virtual.js
+++ b/node_modules/@npmcli/arborist/lib/arborist/load-virtual.js
@@ -159,12 +159,12 @@ module.exports = cls => class VirtualLoader extends cls {
...depsToEdges('peerOptional', peerOptional),
...lockWS,
].sort(([atype, aname], [btype, bname]) =>
- atype.localeCompare(btype) || aname.localeCompare(bname))
+ atype.localeCompare(btype, 'en') || aname.localeCompare(bname, 'en'))
const rootEdges = [...root.edgesOut.values()]
.map(e => [e.type, e.name, e.spec])
.sort(([atype, aname], [btype, bname]) =>
- atype.localeCompare(btype) || aname.localeCompare(bname))
+ atype.localeCompare(btype, 'en') || aname.localeCompare(bname, 'en'))
if (rootEdges.length !== lockEdges.length) {
// something added or removed
diff --git a/node_modules/@npmcli/arborist/lib/arborist/rebuild.js b/node_modules/@npmcli/arborist/lib/arborist/rebuild.js
index 390d3ce42..7cba1da00 100644
--- a/node_modules/@npmcli/arborist/lib/arborist/rebuild.js
+++ b/node_modules/@npmcli/arborist/lib/arborist/rebuild.js
@@ -14,7 +14,7 @@ const {
} = require('@npmcli/node-gyp')
const boolEnv = b => b ? '1' : ''
-const sortNodes = (a, b) => (a.depth - b.depth) || a.path.localeCompare(b.path)
+const sortNodes = (a, b) => (a.depth - b.depth) || a.path.localeCompare(b.path, 'en')
const _build = Symbol('build')
const _resetQueues = Symbol('resetQueues')
diff --git a/node_modules/@npmcli/arborist/lib/audit-report.js b/node_modules/@npmcli/arborist/lib/audit-report.js
index 9a0178c59..76387cde1 100644
--- a/node_modules/@npmcli/arborist/lib/audit-report.js
+++ b/node_modules/@npmcli/arborist/lib/audit-report.js
@@ -78,7 +78,7 @@ class AuditReport extends Map {
}
obj.vulnerabilities = vulnerabilities
- .sort(([a], [b]) => a.localeCompare(b))
+ .sort(([a], [b]) => a.localeCompare(b, 'en'))
.reduce((set, [name, vuln]) => {
set[name] = vuln
return set
diff --git a/node_modules/@npmcli/arborist/lib/printable.js b/node_modules/@npmcli/arborist/lib/printable.js
index e611f55a4..ce764071d 100644
--- a/node_modules/@npmcli/arborist/lib/printable.js
+++ b/node_modules/@npmcli/arborist/lib/printable.js
@@ -46,14 +46,14 @@ class ArboristNode {
// edgesOut sorted by name
if (tree.edgesOut.size) {
this.edgesOut = new Map([...tree.edgesOut.entries()]
- .sort(([a], [b]) => a.localeCompare(b))
+ .sort(([a], [b]) => a.localeCompare(b, 'en'))
.map(([name, edge]) => [name, new EdgeOut(edge)]))
}
// edgesIn sorted by location
if (tree.edgesIn.size) {
this.edgesIn = new Set([...tree.edgesIn]
- .sort((a, b) => a.from.location.localeCompare(b.from.location))
+ .sort((a, b) => a.from.location.localeCompare(b.from.location, 'en'))
.map(edge => new EdgeIn(edge)))
}
@@ -65,14 +65,14 @@ class ArboristNode {
// fsChildren sorted by path
if (tree.fsChildren.size) {
this.fsChildren = new Set([...tree.fsChildren]
- .sort(({path: a}, {path: b}) => a.localeCompare(b))
+ .sort(({path: a}, {path: b}) => a.localeCompare(b, 'en'))
.map(tree => printableTree(tree, path)))
}
// children sorted by name
if (tree.children.size) {
this.children = new Map([...tree.children.entries()]
- .sort(([a], [b]) => a.localeCompare(b))
+ .sort(([a], [b]) => a.localeCompare(b, 'en'))
.map(([name, tree]) => [name, printableTree(tree, path)]))
}
}
diff --git a/node_modules/@npmcli/arborist/lib/shrinkwrap.js b/node_modules/@npmcli/arborist/lib/shrinkwrap.js
index d9065ffa0..cff9f0963 100644
--- a/node_modules/@npmcli/arborist/lib/shrinkwrap.js
+++ b/node_modules/@npmcli/arborist/lib/shrinkwrap.js
@@ -844,7 +844,7 @@ class Shrinkwrap {
/* istanbul ignore next - sort calling order is indeterminate */
return aloc.length > bloc.length ? 1
: bloc.length > aloc.length ? -1
- : aloc[aloc.length - 1].localeCompare(bloc[bloc.length - 1])
+ : aloc[aloc.length - 1].localeCompare(bloc[bloc.length - 1], 'en')
})[0]
const res = consistentResolve(node.resolved, this.path, this.path, true)
diff --git a/node_modules/@npmcli/arborist/lib/update-root-package-json.js b/node_modules/@npmcli/arborist/lib/update-root-package-json.js
index 4a88707b9..57ec41424 100644
--- a/node_modules/@npmcli/arborist/lib/update-root-package-json.js
+++ b/node_modules/@npmcli/arborist/lib/update-root-package-json.js
@@ -18,7 +18,7 @@ const orderDeps = (pkg) => {
for (const type of depTypes) {
if (pkg && pkg[type]) {
pkg[type] = Object.keys(pkg[type])
- .sort((a, b) => a.localeCompare(b))
+ .sort((a, b) => a.localeCompare(b, 'en'))
.reduce((res, key) => {
res[key] = pkg[type][key]
return res
diff --git a/node_modules/@npmcli/arborist/lib/vuln.js b/node_modules/@npmcli/arborist/lib/vuln.js
index 2561bc806..5b1d1dc1a 100644
--- a/node_modules/@npmcli/arborist/lib/vuln.js
+++ b/node_modules/@npmcli/arborist/lib/vuln.js
@@ -106,12 +106,12 @@ class Vuln {
vulnerableVersions: undefined,
id: undefined,
}).sort((a, b) =>
- String(a.source || a).localeCompare(String(b.source || b))),
+ String(a.source || a).localeCompare(String(b.source || b, 'en'))),
effects: [...this.effects].map(v => v.name)
- .sort(/* istanbul ignore next */(a, b) => a.localeCompare(b)),
+ .sort(/* istanbul ignore next */(a, b) => a.localeCompare(b, 'en')),
range: this.simpleRange,
nodes: [...this.nodes].map(n => n.location)
- .sort(/* istanbul ignore next */(a, b) => a.localeCompare(b)),
+ .sort(/* istanbul ignore next */(a, b) => a.localeCompare(b, 'en')),
fixAvailable: this[_fixAvailable],
}
}
diff --git a/node_modules/@npmcli/arborist/lib/yarn-lock.js b/node_modules/@npmcli/arborist/lib/yarn-lock.js
index 14c7691f1..e237cc5c6 100644
--- a/node_modules/@npmcli/arborist/lib/yarn-lock.js
+++ b/node_modules/@npmcli/arborist/lib/yarn-lock.js
@@ -34,7 +34,7 @@ const {breadth} = require('treeverse')
// sort a key/value object into a string of JSON stringified keys and vals
const sortKV = obj => Object.keys(obj)
- .sort((a, b) => a.localeCompare(b))
+ .sort((a, b) => a.localeCompare(b, 'en'))
.map(k => ` ${JSON.stringify(k)} ${JSON.stringify(obj[k])}`)
.join('\n')
@@ -165,7 +165,7 @@ class YarnLock {
toString () {
return prefix + [...new Set([...this.entries.values()])]
.map(e => e.toString())
- .sort((a, b) => a.localeCompare(b)).join('\n\n') + '\n'
+ .sort((a, b) => a.localeCompare(b, 'en')).join('\n\n') + '\n'
}
fromTree (tree) {
@@ -175,7 +175,7 @@ class YarnLock {
tree,
visit: node => this.addEntryFromNode(node),
getChildren: node => [...node.children.values(), ...node.fsChildren]
- .sort((a, b) => a.depth - b.depth || a.name.localeCompare(b.name)),
+ .sort((a, b) => a.depth - b.depth || a.name.localeCompare(b.name, 'en')),
})
return this
}
@@ -183,7 +183,7 @@ class YarnLock {
addEntryFromNode (node) {
const specs = [...node.edgesIn]
.map(e => `${node.name}@${e.spec}`)
- .sort((a, b) => a.localeCompare(b))
+ .sort((a, b) => a.localeCompare(b, 'en'))
// Note:
// yarn will do excessive duplication in a case like this:
@@ -309,7 +309,7 @@ class YarnLockEntry {
toString () {
// sort objects to the bottom, then alphabetical
return ([...this[_specs]]
- .sort((a, b) => a.localeCompare(b))
+ .sort((a, b) => a.localeCompare(b, 'en'))
.map(JSON.stringify).join(', ') +
':\n' +
Object.getOwnPropertyNames(this)
@@ -318,7 +318,7 @@ class YarnLockEntry {
(a, b) =>
/* istanbul ignore next - sort call order is unpredictable */
(typeof this[a] === 'object') === (typeof this[b] === 'object')
- ? a.localeCompare(b)
+ ? a.localeCompare(b, 'en')
: typeof this[a] === 'object' ? 1 : -1)
.map(prop =>
typeof this[prop] !== 'object'
diff --git a/node_modules/@npmcli/arborist/package.json b/node_modules/@npmcli/arborist/package.json
index ebc84f6fc..7f70198cc 100644
--- a/node_modules/@npmcli/arborist/package.json
+++ b/node_modules/@npmcli/arborist/package.json
@@ -1,6 +1,6 @@
{
"name": "@npmcli/arborist",
- "version": "2.4.2",
+ "version": "2.4.3",
"description": "Manage node_modules trees",
"dependencies": {
"@npmcli/installed-package-contents": "^1.0.7",
@@ -14,7 +14,7 @@
"cacache": "^15.0.3",
"common-ancestor-path": "^1.0.1",
"json-parse-even-better-errors": "^2.3.1",
- "json-stringify-nice": "^1.1.2",
+ "json-stringify-nice": "^1.1.4",
"mkdirp-infer-owner": "^2.0.0",
"npm-install-checks": "^4.0.0",
"npm-package-arg": "^8.1.0",
@@ -40,9 +40,8 @@
"eslint-plugin-promise": "^4.2.1",
"eslint-plugin-standard": "^4.0.1",
"minify-registry-metadata": "^2.1.0",
- "mutate-fs": "^2.1.1",
- "tap": "^15.0.4",
- "tcompare": "^3.0.4"
+ "tap": "^15.0.9",
+ "tcompare": "^5.0.6"
},
"scripts": {
"test": "npm run test-only --",
@@ -74,11 +73,13 @@
"bin": {
"arborist": "bin/index.js"
},
+ "//": "sk test-env locale to catch locale-specific sorting",
"tap": {
"after": "test/fixtures/cleanup.js",
"coverage-map": "map.js",
"test-env": [
- "NODE_OPTIONS=--no-warnings"
+ "NODE_OPTIONS=--no-warnings",
+ "LC_ALL=sk"
],
"node-arg": [
"--no-warnings",
diff --git a/node_modules/json-stringify-nice/index.js b/node_modules/json-stringify-nice/index.js
index 2c722a752..36557bb05 100644
--- a/node_modules/json-stringify-nice/index.js
+++ b/node_modules/json-stringify-nice/index.js
@@ -5,7 +5,7 @@ const compare = (ak, bk, prefKeys) =>
: prefKeys.includes(bk) && !prefKeys.includes(ak) ? 1
: prefKeys.includes(ak) && prefKeys.includes(bk)
? prefKeys.indexOf(ak) - prefKeys.indexOf(bk)
- : ak.localeCompare(bk)
+ : ak.localeCompare(bk, 'en')
const sort = (replacer, seen) => (key, val) => {
const prefKeys = Array.isArray(replacer) ? replacer : []
diff --git a/node_modules/json-stringify-nice/package.json b/node_modules/json-stringify-nice/package.json
index ea4f486c5..c9663290e 100644
--- a/node_modules/json-stringify-nice/package.json
+++ b/node_modules/json-stringify-nice/package.json
@@ -1,21 +1,34 @@
{
"name": "json-stringify-nice",
- "version": "1.1.3",
+ "version": "1.1.4",
"description": "Stringify an object sorting scalars before objects, and defaulting to 2-space indent",
"author": "Isaac Z. Schlueter <i@izs.me> (https://izs.me)",
"license": "ISC",
"scripts": {
"test": "tap",
+ "posttest": "npm run lint",
"snap": "tap",
+ "postsnap": "npm run lintfix",
+ "eslint": "eslint",
+ "lint": "npm run eslint -- index.js test/**/*.js",
+ "lintfix": "npm run lint -- --fix",
"preversion": "npm test",
"postversion": "npm publish",
"postpublish": "git push origin --follow-tags"
},
"tap": {
+ "test-env": [
+ "LC_ALL=sk"
+ ],
"check-coverage": true
},
"devDependencies": {
- "tap": "^14.9.2"
+ "eslint": "^7.25.0",
+ "eslint-plugin-import": "^2.22.1",
+ "eslint-plugin-node": "^11.1.0",
+ "eslint-plugin-promise": "^5.1.0",
+ "eslint-plugin-standard": "^5.0.0",
+ "tap": "^15.0.6"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
diff --git a/package-lock.json b/package-lock.json
index 43634305a..22a7c8763 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -78,7 +78,7 @@
],
"license": "Artistic-2.0",
"dependencies": {
- "@npmcli/arborist": "^2.4.2",
+ "@npmcli/arborist": "^2.4.3",
"@npmcli/ci-detect": "^1.2.0",
"@npmcli/config": "^2.2.0",
"@npmcli/run-script": "^1.8.5",
@@ -712,9 +712,9 @@
}
},
"node_modules/@npmcli/arborist": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-2.4.2.tgz",
- "integrity": "sha512-QrsMrRWzO1D2EmPQheyPz1yRnnmln6vPe4SujV4cRF0v9qIAQbD8M0dMH6K3y+w/2X3t7vg5lx20LHXsbcu7lw==",
+ "version": "2.4.3",
+ "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-2.4.3.tgz",
+ "integrity": "sha512-8BJKsRXfJ+Ie9QxIJjQbjGysWRQF5rTR32jKlZYYR+O//GcoYkBdlklytQg1OBSECojAAbZY8glMEmW/HhElBA==",
"inBundle": true,
"dependencies": {
"@npmcli/installed-package-contents": "^1.0.7",
@@ -728,7 +728,7 @@
"cacache": "^15.0.3",
"common-ancestor-path": "^1.0.1",
"json-parse-even-better-errors": "^2.3.1",
- "json-stringify-nice": "^1.1.2",
+ "json-stringify-nice": "^1.1.4",
"mkdirp-infer-owner": "^2.0.0",
"npm-install-checks": "^4.0.0",
"npm-package-arg": "^8.1.0",
@@ -4495,9 +4495,9 @@
"dev": true
},
"node_modules/json-stringify-nice": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.3.tgz",
- "integrity": "sha512-w8+cZZFgcPtFkZTmkA1UpRH0GXXfpeuc/cClNkQjLt9JoQd8cBFSyB8J1WWjJrthIYViHobwnh3jA4z5X2LdGA==",
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz",
+ "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==",
"inBundle": true,
"funding": {
"url": "https://github.com/sponsors/isaacs"
@@ -10823,9 +10823,9 @@
"dev": true
},
"@npmcli/arborist": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-2.4.2.tgz",
- "integrity": "sha512-QrsMrRWzO1D2EmPQheyPz1yRnnmln6vPe4SujV4cRF0v9qIAQbD8M0dMH6K3y+w/2X3t7vg5lx20LHXsbcu7lw==",
+ "version": "2.4.3",
+ "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-2.4.3.tgz",
+ "integrity": "sha512-8BJKsRXfJ+Ie9QxIJjQbjGysWRQF5rTR32jKlZYYR+O//GcoYkBdlklytQg1OBSECojAAbZY8glMEmW/HhElBA==",
"requires": {
"@npmcli/installed-package-contents": "^1.0.7",
"@npmcli/map-workspaces": "^1.0.2",
@@ -10838,7 +10838,7 @@
"cacache": "^15.0.3",
"common-ancestor-path": "^1.0.1",
"json-parse-even-better-errors": "^2.3.1",
- "json-stringify-nice": "^1.1.2",
+ "json-stringify-nice": "^1.1.4",
"mkdirp-infer-owner": "^2.0.0",
"npm-install-checks": "^4.0.0",
"npm-package-arg": "^8.1.0",
@@ -13595,9 +13595,9 @@
"dev": true
},
"json-stringify-nice": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.3.tgz",
- "integrity": "sha512-w8+cZZFgcPtFkZTmkA1UpRH0GXXfpeuc/cClNkQjLt9JoQd8cBFSyB8J1WWjJrthIYViHobwnh3jA4z5X2LdGA=="
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz",
+ "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw=="
},
"json-stringify-safe": {
"version": "5.0.1",
diff --git a/package.json b/package.json
index 887ac1f7a..f3f242ca1 100644
--- a/package.json
+++ b/package.json
@@ -42,7 +42,7 @@
"./package.json": "./package.json"
},
"dependencies": {
- "@npmcli/arborist": "^2.4.2",
+ "@npmcli/arborist": "^2.4.3",
"@npmcli/ci-detect": "^1.2.0",
"@npmcli/config": "^2.2.0",
"@npmcli/run-script": "^1.8.5",