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:
authorLuke Karrys <luke@lukekarrys.com>2022-10-19 02:34:23 +0300
committerLuke Karrys <luke@lukekarrys.com>2022-10-19 22:50:40 +0300
commit7b9254410a65e28dba3ab70ba14afbd1c3e9909e (patch)
tree38be50aaadd72b146bebf3488f57013f900f59b4
parentf6537855e1a34b84251993a49e1ee362082ada37 (diff)
chore: manually hoist latest versions of some of our deps
I manually installed `@npmcli/fs` and `minipass-fetch` to the root of our the dependency tree so that the deduped version would now live at the root of `node_modules/` and any conflicting versions would be deduped inside of its nested parent `node_modules/` directory. Once this was locked in `package-lock.json` removing them from the `package.json` does not undo the hoisting and deduping. This has no effect on the resolved versions bundled with `npm` but it does make it easier to visually scan the output of `query` commands to be sure we are not inadvertently deduping dependencies in the future.
-rw-r--r--node_modules/.gitignore13
-rw-r--r--node_modules/@npmcli/fs/lib/cp/errors.js (renamed from node_modules/@npmcli/fs/lib/errors.js)0
-rw-r--r--node_modules/@npmcli/fs/lib/cp/index.js2
-rw-r--r--node_modules/@npmcli/fs/lib/cp/polyfill.js4
-rw-r--r--node_modules/@npmcli/fs/lib/index.js17
-rw-r--r--node_modules/@npmcli/fs/lib/with-temp-dir.js10
-rw-r--r--node_modules/@npmcli/fs/package.json18
-rw-r--r--node_modules/cacache/node_modules/@npmcli/fs/lib/index.js9
-rw-r--r--node_modules/make-fetch-happen/node_modules/minipass-fetch/package.json67
-rw-r--r--node_modules/minipass-fetch/lib/body.js2
-rw-r--r--node_modules/minipass-fetch/package.json20
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/LICENSE.md (renamed from node_modules/cacache/node_modules/@npmcli/fs/LICENSE.md)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/get-options.js (renamed from node_modules/cacache/node_modules/@npmcli/fs/lib/common/get-options.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/node.js (renamed from node_modules/cacache/node_modules/@npmcli/fs/lib/common/node.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/owner-sync.js (renamed from node_modules/@npmcli/fs/lib/common/owner-sync.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/owner.js (renamed from node_modules/@npmcli/fs/lib/common/owner.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/copy-file.js (renamed from node_modules/@npmcli/fs/lib/copy-file.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/cp/LICENSE (renamed from node_modules/cacache/node_modules/@npmcli/fs/lib/cp/LICENSE)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/cp/index.js (renamed from node_modules/cacache/node_modules/@npmcli/fs/lib/cp/index.js)2
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/cp/polyfill.js (renamed from node_modules/cacache/node_modules/@npmcli/fs/lib/cp/polyfill.js)4
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/errors.js (renamed from node_modules/cacache/node_modules/@npmcli/fs/lib/cp/errors.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/fs.js (renamed from node_modules/@npmcli/fs/lib/fs.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/index.js12
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/mkdir.js (renamed from node_modules/@npmcli/fs/lib/mkdir.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/mkdtemp.js (renamed from node_modules/@npmcli/fs/lib/mkdtemp.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/rm/index.js (renamed from node_modules/@npmcli/fs/lib/rm/index.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/rm/polyfill.js (renamed from node_modules/@npmcli/fs/lib/rm/polyfill.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/with-owner-sync.js (renamed from node_modules/@npmcli/fs/lib/with-owner-sync.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/with-owner.js (renamed from node_modules/@npmcli/fs/lib/with-owner.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/with-temp-dir.js (renamed from node_modules/cacache/node_modules/@npmcli/fs/lib/with-temp-dir.js)10
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/lib/write-file.js (renamed from node_modules/@npmcli/fs/lib/write-file.js)0
-rw-r--r--node_modules/node-gyp/node_modules/@npmcli/fs/package.json (renamed from node_modules/cacache/node_modules/@npmcli/fs/package.json)18
-rw-r--r--node_modules/node-gyp/node_modules/minipass-fetch/LICENSE (renamed from node_modules/make-fetch-happen/node_modules/minipass-fetch/LICENSE)0
-rw-r--r--node_modules/node-gyp/node_modules/minipass-fetch/lib/abort-error.js (renamed from node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/abort-error.js)0
-rw-r--r--node_modules/node-gyp/node_modules/minipass-fetch/lib/blob.js (renamed from node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/blob.js)0
-rw-r--r--node_modules/node-gyp/node_modules/minipass-fetch/lib/body.js (renamed from node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/body.js)0
-rw-r--r--node_modules/node-gyp/node_modules/minipass-fetch/lib/fetch-error.js (renamed from node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/fetch-error.js)0
-rw-r--r--node_modules/node-gyp/node_modules/minipass-fetch/lib/headers.js (renamed from node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/headers.js)0
-rw-r--r--node_modules/node-gyp/node_modules/minipass-fetch/lib/index.js (renamed from node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/index.js)0
-rw-r--r--node_modules/node-gyp/node_modules/minipass-fetch/lib/request.js (renamed from node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/request.js)0
-rw-r--r--node_modules/node-gyp/node_modules/minipass-fetch/lib/response.js (renamed from node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/response.js)0
-rw-r--r--node_modules/node-gyp/node_modules/minipass-fetch/package.json (renamed from node_modules/npm-registry-fetch/node_modules/minipass-fetch/package.json)20
-rw-r--r--node_modules/npm-registry-fetch/node_modules/minipass-fetch/LICENSE28
-rw-r--r--node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/abort-error.js17
-rw-r--r--node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/blob.js97
-rw-r--r--node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/body.js350
-rw-r--r--node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/fetch-error.js32
-rw-r--r--node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/headers.js267
-rw-r--r--node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/index.js365
-rw-r--r--node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/request.js281
-rw-r--r--node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/response.js90
-rw-r--r--package-lock.json96
52 files changed, 117 insertions, 1734 deletions
diff --git a/node_modules/.gitignore b/node_modules/.gitignore
index fc263d901..feac3f375 100644
--- a/node_modules/.gitignore
+++ b/node_modules/.gitignore
@@ -55,11 +55,6 @@
!/brace-expansion
!/builtins
!/cacache
-!/cacache/node_modules/
-/cacache/node_modules/*
-!/cacache/node_modules/@npmcli/
-/cacache/node_modules/@npmcli/*
-!/cacache/node_modules/@npmcli/fs
!/chalk
!/chownr
!/cidr-regex
@@ -142,9 +137,6 @@
!/libnpmversion
!/lru-cache
!/make-fetch-happen
-!/make-fetch-happen/node_modules/
-/make-fetch-happen/node_modules/*
-!/make-fetch-happen/node_modules/minipass-fetch
!/minimatch
!/minipass-collect
!/minipass-fetch
@@ -163,6 +155,7 @@
/node-gyp/node_modules/*
!/node-gyp/node_modules/@npmcli/
/node-gyp/node_modules/@npmcli/*
+!/node-gyp/node_modules/@npmcli/fs
!/node-gyp/node_modules/@npmcli/move-file
!/node-gyp/node_modules/are-we-there-yet
!/node-gyp/node_modules/brace-expansion
@@ -176,6 +169,7 @@
!/node-gyp/node_modules/glob
!/node-gyp/node_modules/make-fetch-happen
!/node-gyp/node_modules/minimatch
+!/node-gyp/node_modules/minipass-fetch
!/node-gyp/node_modules/nopt
!/node-gyp/node_modules/npmlog
!/node-gyp/node_modules/ssri
@@ -192,9 +186,6 @@
!/npm-pick-manifest
!/npm-profile
!/npm-registry-fetch
-!/npm-registry-fetch/node_modules/
-/npm-registry-fetch/node_modules/*
-!/npm-registry-fetch/node_modules/minipass-fetch
!/npm-user-validate
!/npmlog
!/once
diff --git a/node_modules/@npmcli/fs/lib/errors.js b/node_modules/@npmcli/fs/lib/cp/errors.js
index 1cd1e05d0..1cd1e05d0 100644
--- a/node_modules/@npmcli/fs/lib/errors.js
+++ b/node_modules/@npmcli/fs/lib/cp/errors.js
diff --git a/node_modules/@npmcli/fs/lib/cp/index.js b/node_modules/@npmcli/fs/lib/cp/index.js
index 5da4739bd..972ce7aa1 100644
--- a/node_modules/@npmcli/fs/lib/cp/index.js
+++ b/node_modules/@npmcli/fs/lib/cp/index.js
@@ -1,4 +1,4 @@
-const fs = require('../fs.js')
+const fs = require('fs/promises')
const getOptions = require('../common/get-options.js')
const node = require('../common/node.js')
const polyfill = require('./polyfill.js')
diff --git a/node_modules/@npmcli/fs/lib/cp/polyfill.js b/node_modules/@npmcli/fs/lib/cp/polyfill.js
index f83ccbf57..80eb10de9 100644
--- a/node_modules/@npmcli/fs/lib/cp/polyfill.js
+++ b/node_modules/@npmcli/fs/lib/cp/polyfill.js
@@ -23,7 +23,7 @@ const {
ERR_FS_CP_UNKNOWN,
ERR_FS_EISDIR,
ERR_INVALID_ARG_TYPE,
-} = require('../errors.js')
+} = require('./errors.js')
const {
constants: {
errno: {
@@ -45,7 +45,7 @@ const {
symlink,
unlink,
utimes,
-} = require('../fs.js')
+} = require('fs/promises')
const {
dirname,
isAbsolute,
diff --git a/node_modules/@npmcli/fs/lib/index.js b/node_modules/@npmcli/fs/lib/index.js
index 3a98648ec..0dc02f8a3 100644
--- a/node_modules/@npmcli/fs/lib/index.js
+++ b/node_modules/@npmcli/fs/lib/index.js
@@ -1,12 +1,9 @@
+'use strict'
+
+const cp = require('./cp/index.js')
+const withTempDir = require('./with-temp-dir.js')
+
module.exports = {
- ...require('./fs.js'),
- copyFile: require('./copy-file.js'),
- cp: require('./cp/index.js'),
- mkdir: require('./mkdir.js'),
- mkdtemp: require('./mkdtemp.js'),
- rm: require('./rm/index.js'),
- withTempDir: require('./with-temp-dir.js'),
- withOwner: require('./with-owner.js'),
- withOwnerSync: require('./with-owner-sync.js'),
- writeFile: require('./write-file.js'),
+ cp,
+ withTempDir,
}
diff --git a/node_modules/@npmcli/fs/lib/with-temp-dir.js b/node_modules/@npmcli/fs/lib/with-temp-dir.js
index 81db59dd0..0738ac4f2 100644
--- a/node_modules/@npmcli/fs/lib/with-temp-dir.js
+++ b/node_modules/@npmcli/fs/lib/with-temp-dir.js
@@ -1,9 +1,7 @@
const { join, sep } = require('path')
const getOptions = require('./common/get-options.js')
-const mkdir = require('./mkdir.js')
-const mkdtemp = require('./mkdtemp.js')
-const rm = require('./rm/index.js')
+const { mkdir, mkdtemp, rm } = require('fs/promises')
// create a temp directory, ensure its permissions match its parent, then call
// the supplied function passing it the path to the directory. clean up after
@@ -12,10 +10,10 @@ const withTempDir = async (root, fn, opts) => {
const options = getOptions(opts, {
copy: ['tmpPrefix'],
})
- // create the directory, and fix its ownership
- await mkdir(root, { recursive: true, owner: 'inherit' })
+ // create the directory
+ await mkdir(root, { recursive: true })
- const target = await mkdtemp(join(`${root}${sep}`, options.tmpPrefix || ''), { owner: 'inherit' })
+ const target = await mkdtemp(join(`${root}${sep}`, options.tmpPrefix || ''))
let err
let result
diff --git a/node_modules/@npmcli/fs/package.json b/node_modules/@npmcli/fs/package.json
index 1512fd6e4..2eabc35da 100644
--- a/node_modules/@npmcli/fs/package.json
+++ b/node_modules/@npmcli/fs/package.json
@@ -1,6 +1,6 @@
{
"name": "@npmcli/fs",
- "version": "2.1.2",
+ "version": "3.0.0",
"description": "filesystem utilities for the npm cli",
"main": "lib/index.js",
"files": [
@@ -8,9 +8,6 @@
"lib/"
],
"scripts": {
- "preversion": "npm test",
- "postversion": "npm publish",
- "prepublishOnly": "git push origin --follow-tags",
"snap": "tap",
"test": "tap",
"npmclilint": "npmcli-lint",
@@ -33,18 +30,23 @@
"license": "ISC",
"devDependencies": {
"@npmcli/eslint-config": "^3.0.1",
- "@npmcli/template-oss": "3.5.0",
+ "@npmcli/template-oss": "4.5.1",
"tap": "^16.0.1"
},
"dependencies": {
- "@gar/promisify": "^1.1.3",
"semver": "^7.3.5"
},
"engines": {
- "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
},
"templateOSS": {
"//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
- "version": "3.5.0"
+ "version": "4.5.1"
+ },
+ "tap": {
+ "nyc-arg": [
+ "--exclude",
+ "tap-snapshots/**"
+ ]
}
}
diff --git a/node_modules/cacache/node_modules/@npmcli/fs/lib/index.js b/node_modules/cacache/node_modules/@npmcli/fs/lib/index.js
deleted file mode 100644
index 0dc02f8a3..000000000
--- a/node_modules/cacache/node_modules/@npmcli/fs/lib/index.js
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict'
-
-const cp = require('./cp/index.js')
-const withTempDir = require('./with-temp-dir.js')
-
-module.exports = {
- cp,
- withTempDir,
-}
diff --git a/node_modules/make-fetch-happen/node_modules/minipass-fetch/package.json b/node_modules/make-fetch-happen/node_modules/minipass-fetch/package.json
deleted file mode 100644
index 45bd36ae7..000000000
--- a/node_modules/make-fetch-happen/node_modules/minipass-fetch/package.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "name": "minipass-fetch",
- "version": "3.0.0",
- "description": "An implementation of window.fetch in Node.js using Minipass streams",
- "license": "MIT",
- "main": "lib/index.js",
- "scripts": {
- "test": "tap",
- "snap": "tap",
- "lint": "eslint \"**/*.js\"",
- "postlint": "template-oss-check",
- "lintfix": "npm run lint -- --fix",
- "posttest": "npm run lint",
- "template-oss-apply": "template-oss-apply --force"
- },
- "tap": {
- "coverage-map": "map.js",
- "check-coverage": true,
- "nyc-arg": [
- "--exclude",
- "tap-snapshots/**"
- ]
- },
- "devDependencies": {
- "@npmcli/eslint-config": "^3.1.0",
- "@npmcli/template-oss": "4.5.1",
- "@ungap/url-search-params": "^0.2.2",
- "abort-controller": "^3.0.0",
- "abortcontroller-polyfill": "~1.7.3",
- "encoding": "^0.1.13",
- "form-data": "^4.0.0",
- "nock": "^13.2.4",
- "parted": "^0.1.1",
- "string-to-arraybuffer": "^1.0.2",
- "tap": "^16.0.0"
- },
- "dependencies": {
- "minipass": "^3.1.6",
- "minipass-sized": "^1.0.3",
- "minizlib": "^2.1.2"
- },
- "optionalDependencies": {
- "encoding": "^0.1.13"
- },
- "repository": {
- "type": "git",
- "url": "https://github.com/npm/minipass-fetch.git"
- },
- "keywords": [
- "fetch",
- "minipass",
- "node-fetch",
- "window.fetch"
- ],
- "files": [
- "bin/",
- "lib/"
- ],
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- },
- "author": "GitHub Inc.",
- "templateOSS": {
- "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
- "version": "4.5.1"
- }
-}
diff --git a/node_modules/minipass-fetch/lib/body.js b/node_modules/minipass-fetch/lib/body.js
index 58893309e..9d1b45de3 100644
--- a/node_modules/minipass-fetch/lib/body.js
+++ b/node_modules/minipass-fetch/lib/body.js
@@ -72,8 +72,8 @@ class Body {
}
async json () {
+ const buf = await this[CONSUME_BODY]()
try {
- const buf = await this[CONSUME_BODY]()
return JSON.parse(buf.toString())
} catch (er) {
throw new FetchError(
diff --git a/node_modules/minipass-fetch/package.json b/node_modules/minipass-fetch/package.json
index b47077adc..45bd36ae7 100644
--- a/node_modules/minipass-fetch/package.json
+++ b/node_modules/minipass-fetch/package.json
@@ -1,29 +1,29 @@
{
"name": "minipass-fetch",
- "version": "2.1.1",
+ "version": "3.0.0",
"description": "An implementation of window.fetch in Node.js using Minipass streams",
"license": "MIT",
"main": "lib/index.js",
"scripts": {
"test": "tap",
"snap": "tap",
- "preversion": "npm test",
- "postversion": "npm publish",
- "postpublish": "git push origin --follow-tags",
"lint": "eslint \"**/*.js\"",
"postlint": "template-oss-check",
"lintfix": "npm run lint -- --fix",
- "prepublishOnly": "git push origin --follow-tags",
"posttest": "npm run lint",
"template-oss-apply": "template-oss-apply --force"
},
"tap": {
"coverage-map": "map.js",
- "check-coverage": true
+ "check-coverage": true,
+ "nyc-arg": [
+ "--exclude",
+ "tap-snapshots/**"
+ ]
},
"devDependencies": {
- "@npmcli/eslint-config": "^3.0.1",
- "@npmcli/template-oss": "3.5.0",
+ "@npmcli/eslint-config": "^3.1.0",
+ "@npmcli/template-oss": "4.5.1",
"@ungap/url-search-params": "^0.2.2",
"abort-controller": "^3.0.0",
"abortcontroller-polyfill": "~1.7.3",
@@ -57,11 +57,11 @@
"lib/"
],
"engines": {
- "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
},
"author": "GitHub Inc.",
"templateOSS": {
"//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
- "version": "3.5.0"
+ "version": "4.5.1"
}
}
diff --git a/node_modules/cacache/node_modules/@npmcli/fs/LICENSE.md b/node_modules/node-gyp/node_modules/@npmcli/fs/LICENSE.md
index 5fc208ff1..5fc208ff1 100644
--- a/node_modules/cacache/node_modules/@npmcli/fs/LICENSE.md
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/LICENSE.md
diff --git a/node_modules/cacache/node_modules/@npmcli/fs/lib/common/get-options.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/get-options.js
index cb5982f79..cb5982f79 100644
--- a/node_modules/cacache/node_modules/@npmcli/fs/lib/common/get-options.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/get-options.js
diff --git a/node_modules/cacache/node_modules/@npmcli/fs/lib/common/node.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/node.js
index 4d13bc037..4d13bc037 100644
--- a/node_modules/cacache/node_modules/@npmcli/fs/lib/common/node.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/node.js
diff --git a/node_modules/@npmcli/fs/lib/common/owner-sync.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/owner-sync.js
index 3704aa6d1..3704aa6d1 100644
--- a/node_modules/@npmcli/fs/lib/common/owner-sync.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/owner-sync.js
diff --git a/node_modules/@npmcli/fs/lib/common/owner.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/owner.js
index 9f02d41a5..9f02d41a5 100644
--- a/node_modules/@npmcli/fs/lib/common/owner.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/common/owner.js
diff --git a/node_modules/@npmcli/fs/lib/copy-file.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/copy-file.js
index 8888266d6..8888266d6 100644
--- a/node_modules/@npmcli/fs/lib/copy-file.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/copy-file.js
diff --git a/node_modules/cacache/node_modules/@npmcli/fs/lib/cp/LICENSE b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/cp/LICENSE
index 93546dfb7..93546dfb7 100644
--- a/node_modules/cacache/node_modules/@npmcli/fs/lib/cp/LICENSE
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/cp/LICENSE
diff --git a/node_modules/cacache/node_modules/@npmcli/fs/lib/cp/index.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/cp/index.js
index 972ce7aa1..5da4739bd 100644
--- a/node_modules/cacache/node_modules/@npmcli/fs/lib/cp/index.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/cp/index.js
@@ -1,4 +1,4 @@
-const fs = require('fs/promises')
+const fs = require('../fs.js')
const getOptions = require('../common/get-options.js')
const node = require('../common/node.js')
const polyfill = require('./polyfill.js')
diff --git a/node_modules/cacache/node_modules/@npmcli/fs/lib/cp/polyfill.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/cp/polyfill.js
index 80eb10de9..f83ccbf57 100644
--- a/node_modules/cacache/node_modules/@npmcli/fs/lib/cp/polyfill.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/cp/polyfill.js
@@ -23,7 +23,7 @@ const {
ERR_FS_CP_UNKNOWN,
ERR_FS_EISDIR,
ERR_INVALID_ARG_TYPE,
-} = require('./errors.js')
+} = require('../errors.js')
const {
constants: {
errno: {
@@ -45,7 +45,7 @@ const {
symlink,
unlink,
utimes,
-} = require('fs/promises')
+} = require('../fs.js')
const {
dirname,
isAbsolute,
diff --git a/node_modules/cacache/node_modules/@npmcli/fs/lib/cp/errors.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/errors.js
index 1cd1e05d0..1cd1e05d0 100644
--- a/node_modules/cacache/node_modules/@npmcli/fs/lib/cp/errors.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/errors.js
diff --git a/node_modules/@npmcli/fs/lib/fs.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/fs.js
index 457da10ee..457da10ee 100644
--- a/node_modules/@npmcli/fs/lib/fs.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/fs.js
diff --git a/node_modules/node-gyp/node_modules/@npmcli/fs/lib/index.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/index.js
new file mode 100644
index 000000000..3a98648ec
--- /dev/null
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/index.js
@@ -0,0 +1,12 @@
+module.exports = {
+ ...require('./fs.js'),
+ copyFile: require('./copy-file.js'),
+ cp: require('./cp/index.js'),
+ mkdir: require('./mkdir.js'),
+ mkdtemp: require('./mkdtemp.js'),
+ rm: require('./rm/index.js'),
+ withTempDir: require('./with-temp-dir.js'),
+ withOwner: require('./with-owner.js'),
+ withOwnerSync: require('./with-owner-sync.js'),
+ writeFile: require('./write-file.js'),
+}
diff --git a/node_modules/@npmcli/fs/lib/mkdir.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/mkdir.js
index 098d8d0a0..098d8d0a0 100644
--- a/node_modules/@npmcli/fs/lib/mkdir.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/mkdir.js
diff --git a/node_modules/@npmcli/fs/lib/mkdtemp.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/mkdtemp.js
index 60b12a788..60b12a788 100644
--- a/node_modules/@npmcli/fs/lib/mkdtemp.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/mkdtemp.js
diff --git a/node_modules/@npmcli/fs/lib/rm/index.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/rm/index.js
index cb81fbdf8..cb81fbdf8 100644
--- a/node_modules/@npmcli/fs/lib/rm/index.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/rm/index.js
diff --git a/node_modules/@npmcli/fs/lib/rm/polyfill.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/rm/polyfill.js
index a25c17483..a25c17483 100644
--- a/node_modules/@npmcli/fs/lib/rm/polyfill.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/rm/polyfill.js
diff --git a/node_modules/@npmcli/fs/lib/with-owner-sync.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/with-owner-sync.js
index 3597d1c81..3597d1c81 100644
--- a/node_modules/@npmcli/fs/lib/with-owner-sync.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/with-owner-sync.js
diff --git a/node_modules/@npmcli/fs/lib/with-owner.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/with-owner.js
index a67910288..a67910288 100644
--- a/node_modules/@npmcli/fs/lib/with-owner.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/with-owner.js
diff --git a/node_modules/cacache/node_modules/@npmcli/fs/lib/with-temp-dir.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/with-temp-dir.js
index 0738ac4f2..81db59dd0 100644
--- a/node_modules/cacache/node_modules/@npmcli/fs/lib/with-temp-dir.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/with-temp-dir.js
@@ -1,7 +1,9 @@
const { join, sep } = require('path')
const getOptions = require('./common/get-options.js')
-const { mkdir, mkdtemp, rm } = require('fs/promises')
+const mkdir = require('./mkdir.js')
+const mkdtemp = require('./mkdtemp.js')
+const rm = require('./rm/index.js')
// create a temp directory, ensure its permissions match its parent, then call
// the supplied function passing it the path to the directory. clean up after
@@ -10,10 +12,10 @@ const withTempDir = async (root, fn, opts) => {
const options = getOptions(opts, {
copy: ['tmpPrefix'],
})
- // create the directory
- await mkdir(root, { recursive: true })
+ // create the directory, and fix its ownership
+ await mkdir(root, { recursive: true, owner: 'inherit' })
- const target = await mkdtemp(join(`${root}${sep}`, options.tmpPrefix || ''))
+ const target = await mkdtemp(join(`${root}${sep}`, options.tmpPrefix || ''), { owner: 'inherit' })
let err
let result
diff --git a/node_modules/@npmcli/fs/lib/write-file.js b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/write-file.js
index ff900571a..ff900571a 100644
--- a/node_modules/@npmcli/fs/lib/write-file.js
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/lib/write-file.js
diff --git a/node_modules/cacache/node_modules/@npmcli/fs/package.json b/node_modules/node-gyp/node_modules/@npmcli/fs/package.json
index 2eabc35da..1512fd6e4 100644
--- a/node_modules/cacache/node_modules/@npmcli/fs/package.json
+++ b/node_modules/node-gyp/node_modules/@npmcli/fs/package.json
@@ -1,6 +1,6 @@
{
"name": "@npmcli/fs",
- "version": "3.0.0",
+ "version": "2.1.2",
"description": "filesystem utilities for the npm cli",
"main": "lib/index.js",
"files": [
@@ -8,6 +8,9 @@
"lib/"
],
"scripts": {
+ "preversion": "npm test",
+ "postversion": "npm publish",
+ "prepublishOnly": "git push origin --follow-tags",
"snap": "tap",
"test": "tap",
"npmclilint": "npmcli-lint",
@@ -30,23 +33,18 @@
"license": "ISC",
"devDependencies": {
"@npmcli/eslint-config": "^3.0.1",
- "@npmcli/template-oss": "4.5.1",
+ "@npmcli/template-oss": "3.5.0",
"tap": "^16.0.1"
},
"dependencies": {
+ "@gar/promisify": "^1.1.3",
"semver": "^7.3.5"
},
"engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
},
"templateOSS": {
"//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
- "version": "4.5.1"
- },
- "tap": {
- "nyc-arg": [
- "--exclude",
- "tap-snapshots/**"
- ]
+ "version": "3.5.0"
}
}
diff --git a/node_modules/make-fetch-happen/node_modules/minipass-fetch/LICENSE b/node_modules/node-gyp/node_modules/minipass-fetch/LICENSE
index 3c3410cdc..3c3410cdc 100644
--- a/node_modules/make-fetch-happen/node_modules/minipass-fetch/LICENSE
+++ b/node_modules/node-gyp/node_modules/minipass-fetch/LICENSE
diff --git a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/abort-error.js b/node_modules/node-gyp/node_modules/minipass-fetch/lib/abort-error.js
index b18f64326..b18f64326 100644
--- a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/abort-error.js
+++ b/node_modules/node-gyp/node_modules/minipass-fetch/lib/abort-error.js
diff --git a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/blob.js b/node_modules/node-gyp/node_modules/minipass-fetch/lib/blob.js
index efe69a344..efe69a344 100644
--- a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/blob.js
+++ b/node_modules/node-gyp/node_modules/minipass-fetch/lib/blob.js
diff --git a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/body.js b/node_modules/node-gyp/node_modules/minipass-fetch/lib/body.js
index 9d1b45de3..9d1b45de3 100644
--- a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/body.js
+++ b/node_modules/node-gyp/node_modules/minipass-fetch/lib/body.js
diff --git a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/fetch-error.js b/node_modules/node-gyp/node_modules/minipass-fetch/lib/fetch-error.js
index 85f6e98fb..85f6e98fb 100644
--- a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/fetch-error.js
+++ b/node_modules/node-gyp/node_modules/minipass-fetch/lib/fetch-error.js
diff --git a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/headers.js b/node_modules/node-gyp/node_modules/minipass-fetch/lib/headers.js
index dd6e854d5..dd6e854d5 100644
--- a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/headers.js
+++ b/node_modules/node-gyp/node_modules/minipass-fetch/lib/headers.js
diff --git a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/index.js b/node_modules/node-gyp/node_modules/minipass-fetch/lib/index.js
index b1878ac0c..b1878ac0c 100644
--- a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/index.js
+++ b/node_modules/node-gyp/node_modules/minipass-fetch/lib/index.js
diff --git a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/request.js b/node_modules/node-gyp/node_modules/minipass-fetch/lib/request.js
index e620df6de..e620df6de 100644
--- a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/request.js
+++ b/node_modules/node-gyp/node_modules/minipass-fetch/lib/request.js
diff --git a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/response.js b/node_modules/node-gyp/node_modules/minipass-fetch/lib/response.js
index 54cb52db3..54cb52db3 100644
--- a/node_modules/make-fetch-happen/node_modules/minipass-fetch/lib/response.js
+++ b/node_modules/node-gyp/node_modules/minipass-fetch/lib/response.js
diff --git a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/package.json b/node_modules/node-gyp/node_modules/minipass-fetch/package.json
index 45bd36ae7..ada5aed6d 100644
--- a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/package.json
+++ b/node_modules/node-gyp/node_modules/minipass-fetch/package.json
@@ -1,29 +1,29 @@
{
"name": "minipass-fetch",
- "version": "3.0.0",
+ "version": "2.1.2",
"description": "An implementation of window.fetch in Node.js using Minipass streams",
"license": "MIT",
"main": "lib/index.js",
"scripts": {
"test": "tap",
"snap": "tap",
+ "preversion": "npm test",
+ "postversion": "npm publish",
+ "postpublish": "git push origin --follow-tags",
"lint": "eslint \"**/*.js\"",
"postlint": "template-oss-check",
"lintfix": "npm run lint -- --fix",
+ "prepublishOnly": "git push origin --follow-tags",
"posttest": "npm run lint",
"template-oss-apply": "template-oss-apply --force"
},
"tap": {
"coverage-map": "map.js",
- "check-coverage": true,
- "nyc-arg": [
- "--exclude",
- "tap-snapshots/**"
- ]
+ "check-coverage": true
},
"devDependencies": {
- "@npmcli/eslint-config": "^3.1.0",
- "@npmcli/template-oss": "4.5.1",
+ "@npmcli/eslint-config": "^3.0.1",
+ "@npmcli/template-oss": "3.5.0",
"@ungap/url-search-params": "^0.2.2",
"abort-controller": "^3.0.0",
"abortcontroller-polyfill": "~1.7.3",
@@ -57,11 +57,11 @@
"lib/"
],
"engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
},
"author": "GitHub Inc.",
"templateOSS": {
"//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
- "version": "4.5.1"
+ "version": "3.5.0"
}
}
diff --git a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/LICENSE b/node_modules/npm-registry-fetch/node_modules/minipass-fetch/LICENSE
deleted file mode 100644
index 3c3410cdc..000000000
--- a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/LICENSE
+++ /dev/null
@@ -1,28 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) Isaac Z. Schlueter and Contributors
-Copyright (c) 2016 David Frank
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
-
----
-
-Note: This is a derivative work based on "node-fetch" by David Frank,
-modified and distributed under the terms of the MIT license above.
-https://github.com/bitinn/node-fetch
diff --git a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/abort-error.js b/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/abort-error.js
deleted file mode 100644
index b18f64326..000000000
--- a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/abort-error.js
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict'
-class AbortError extends Error {
- constructor (message) {
- super(message)
- this.code = 'FETCH_ABORTED'
- this.type = 'aborted'
- Error.captureStackTrace(this, this.constructor)
- }
-
- get name () {
- return 'AbortError'
- }
-
- // don't allow name to be overridden, but don't throw either
- set name (s) {}
-}
-module.exports = AbortError
diff --git a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/blob.js b/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/blob.js
deleted file mode 100644
index efe69a344..000000000
--- a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/blob.js
+++ /dev/null
@@ -1,97 +0,0 @@
-'use strict'
-const Minipass = require('minipass')
-const TYPE = Symbol('type')
-const BUFFER = Symbol('buffer')
-
-class Blob {
- constructor (blobParts, options) {
- this[TYPE] = ''
-
- const buffers = []
- let size = 0
-
- if (blobParts) {
- const a = blobParts
- const length = Number(a.length)
- for (let i = 0; i < length; i++) {
- const element = a[i]
- const buffer = element instanceof Buffer ? element
- : ArrayBuffer.isView(element)
- ? Buffer.from(element.buffer, element.byteOffset, element.byteLength)
- : element instanceof ArrayBuffer ? Buffer.from(element)
- : element instanceof Blob ? element[BUFFER]
- : typeof element === 'string' ? Buffer.from(element)
- : Buffer.from(String(element))
- size += buffer.length
- buffers.push(buffer)
- }
- }
-
- this[BUFFER] = Buffer.concat(buffers, size)
-
- const type = options && options.type !== undefined
- && String(options.type).toLowerCase()
- if (type && !/[^\u0020-\u007E]/.test(type)) {
- this[TYPE] = type
- }
- }
-
- get size () {
- return this[BUFFER].length
- }
-
- get type () {
- return this[TYPE]
- }
-
- text () {
- return Promise.resolve(this[BUFFER].toString())
- }
-
- arrayBuffer () {
- const buf = this[BUFFER]
- const off = buf.byteOffset
- const len = buf.byteLength
- const ab = buf.buffer.slice(off, off + len)
- return Promise.resolve(ab)
- }
-
- stream () {
- return new Minipass().end(this[BUFFER])
- }
-
- slice (start, end, type) {
- const size = this.size
- const relativeStart = start === undefined ? 0
- : start < 0 ? Math.max(size + start, 0)
- : Math.min(start, size)
- const relativeEnd = end === undefined ? size
- : end < 0 ? Math.max(size + end, 0)
- : Math.min(end, size)
- const span = Math.max(relativeEnd - relativeStart, 0)
-
- const buffer = this[BUFFER]
- const slicedBuffer = buffer.slice(
- relativeStart,
- relativeStart + span
- )
- const blob = new Blob([], { type })
- blob[BUFFER] = slicedBuffer
- return blob
- }
-
- get [Symbol.toStringTag] () {
- return 'Blob'
- }
-
- static get BUFFER () {
- return BUFFER
- }
-}
-
-Object.defineProperties(Blob.prototype, {
- size: { enumerable: true },
- type: { enumerable: true },
-})
-
-module.exports = Blob
diff --git a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/body.js b/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/body.js
deleted file mode 100644
index 9d1b45de3..000000000
--- a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/body.js
+++ /dev/null
@@ -1,350 +0,0 @@
-'use strict'
-const Minipass = require('minipass')
-const MinipassSized = require('minipass-sized')
-
-const Blob = require('./blob.js')
-const { BUFFER } = Blob
-const FetchError = require('./fetch-error.js')
-
-// optional dependency on 'encoding'
-let convert
-try {
- convert = require('encoding').convert
-} catch (e) {
- // defer error until textConverted is called
-}
-
-const INTERNALS = Symbol('Body internals')
-const CONSUME_BODY = Symbol('consumeBody')
-
-class Body {
- constructor (bodyArg, options = {}) {
- const { size = 0, timeout = 0 } = options
- const body = bodyArg === undefined || bodyArg === null ? null
- : isURLSearchParams(bodyArg) ? Buffer.from(bodyArg.toString())
- : isBlob(bodyArg) ? bodyArg
- : Buffer.isBuffer(bodyArg) ? bodyArg
- : Object.prototype.toString.call(bodyArg) === '[object ArrayBuffer]'
- ? Buffer.from(bodyArg)
- : ArrayBuffer.isView(bodyArg)
- ? Buffer.from(bodyArg.buffer, bodyArg.byteOffset, bodyArg.byteLength)
- : Minipass.isStream(bodyArg) ? bodyArg
- : Buffer.from(String(bodyArg))
-
- this[INTERNALS] = {
- body,
- disturbed: false,
- error: null,
- }
-
- this.size = size
- this.timeout = timeout
-
- if (Minipass.isStream(body)) {
- body.on('error', er => {
- const error = er.name === 'AbortError' ? er
- : new FetchError(`Invalid response while trying to fetch ${
- this.url}: ${er.message}`, 'system', er)
- this[INTERNALS].error = error
- })
- }
- }
-
- get body () {
- return this[INTERNALS].body
- }
-
- get bodyUsed () {
- return this[INTERNALS].disturbed
- }
-
- arrayBuffer () {
- return this[CONSUME_BODY]().then(buf =>
- buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength))
- }
-
- blob () {
- const ct = this.headers && this.headers.get('content-type') || ''
- return this[CONSUME_BODY]().then(buf => Object.assign(
- new Blob([], { type: ct.toLowerCase() }),
- { [BUFFER]: buf }
- ))
- }
-
- async json () {
- const buf = await this[CONSUME_BODY]()
- try {
- return JSON.parse(buf.toString())
- } catch (er) {
- throw new FetchError(
- `invalid json response body at ${this.url} reason: ${er.message}`,
- 'invalid-json'
- )
- }
- }
-
- text () {
- return this[CONSUME_BODY]().then(buf => buf.toString())
- }
-
- buffer () {
- return this[CONSUME_BODY]()
- }
-
- textConverted () {
- return this[CONSUME_BODY]().then(buf => convertBody(buf, this.headers))
- }
-
- [CONSUME_BODY] () {
- if (this[INTERNALS].disturbed) {
- return Promise.reject(new TypeError(`body used already for: ${
- this.url}`))
- }
-
- this[INTERNALS].disturbed = true
-
- if (this[INTERNALS].error) {
- return Promise.reject(this[INTERNALS].error)
- }
-
- // body is null
- if (this.body === null) {
- return Promise.resolve(Buffer.alloc(0))
- }
-
- if (Buffer.isBuffer(this.body)) {
- return Promise.resolve(this.body)
- }
-
- const upstream = isBlob(this.body) ? this.body.stream() : this.body
-
- /* istanbul ignore if: should never happen */
- if (!Minipass.isStream(upstream)) {
- return Promise.resolve(Buffer.alloc(0))
- }
-
- const stream = this.size && upstream instanceof MinipassSized ? upstream
- : !this.size && upstream instanceof Minipass &&
- !(upstream instanceof MinipassSized) ? upstream
- : this.size ? new MinipassSized({ size: this.size })
- : new Minipass()
-
- // allow timeout on slow response body, but only if the stream is still writable. this
- // makes the timeout center on the socket stream from lib/index.js rather than the
- // intermediary minipass stream we create to receive the data
- const resTimeout = this.timeout && stream.writable ? setTimeout(() => {
- stream.emit('error', new FetchError(
- `Response timeout while trying to fetch ${
- this.url} (over ${this.timeout}ms)`, 'body-timeout'))
- }, this.timeout) : null
-
- // do not keep the process open just for this timeout, even
- // though we expect it'll get cleared eventually.
- if (resTimeout && resTimeout.unref) {
- resTimeout.unref()
- }
-
- // do the pipe in the promise, because the pipe() can send too much
- // data through right away and upset the MP Sized object
- return new Promise((resolve, reject) => {
- // if the stream is some other kind of stream, then pipe through a MP
- // so we can collect it more easily.
- if (stream !== upstream) {
- upstream.on('error', er => stream.emit('error', er))
- upstream.pipe(stream)
- }
- resolve()
- }).then(() => stream.concat()).then(buf => {
- clearTimeout(resTimeout)
- return buf
- }).catch(er => {
- clearTimeout(resTimeout)
- // request was aborted, reject with this Error
- if (er.name === 'AbortError' || er.name === 'FetchError') {
- throw er
- } else if (er.name === 'RangeError') {
- throw new FetchError(`Could not create Buffer from response body for ${
- this.url}: ${er.message}`, 'system', er)
- } else {
- // other errors, such as incorrect content-encoding or content-length
- throw new FetchError(`Invalid response body while trying to fetch ${
- this.url}: ${er.message}`, 'system', er)
- }
- })
- }
-
- static clone (instance) {
- if (instance.bodyUsed) {
- throw new Error('cannot clone body after it is used')
- }
-
- const body = instance.body
-
- // check that body is a stream and not form-data object
- // NB: can't clone the form-data object without having it as a dependency
- if (Minipass.isStream(body) && typeof body.getBoundary !== 'function') {
- // create a dedicated tee stream so that we don't lose data
- // potentially sitting in the body stream's buffer by writing it
- // immediately to p1 and not having it for p2.
- const tee = new Minipass()
- const p1 = new Minipass()
- const p2 = new Minipass()
- tee.on('error', er => {
- p1.emit('error', er)
- p2.emit('error', er)
- })
- body.on('error', er => tee.emit('error', er))
- tee.pipe(p1)
- tee.pipe(p2)
- body.pipe(tee)
- // set instance body to one fork, return the other
- instance[INTERNALS].body = p1
- return p2
- } else {
- return instance.body
- }
- }
-
- static extractContentType (body) {
- return body === null || body === undefined ? null
- : typeof body === 'string' ? 'text/plain;charset=UTF-8'
- : isURLSearchParams(body)
- ? 'application/x-www-form-urlencoded;charset=UTF-8'
- : isBlob(body) ? body.type || null
- : Buffer.isBuffer(body) ? null
- : Object.prototype.toString.call(body) === '[object ArrayBuffer]' ? null
- : ArrayBuffer.isView(body) ? null
- : typeof body.getBoundary === 'function'
- ? `multipart/form-data;boundary=${body.getBoundary()}`
- : Minipass.isStream(body) ? null
- : 'text/plain;charset=UTF-8'
- }
-
- static getTotalBytes (instance) {
- const { body } = instance
- return (body === null || body === undefined) ? 0
- : isBlob(body) ? body.size
- : Buffer.isBuffer(body) ? body.length
- : body && typeof body.getLengthSync === 'function' && (
- // detect form data input from form-data module
- body._lengthRetrievers &&
- /* istanbul ignore next */ body._lengthRetrievers.length === 0 || // 1.x
- body.hasKnownLength && body.hasKnownLength()) // 2.x
- ? body.getLengthSync()
- : null
- }
-
- static writeToStream (dest, instance) {
- const { body } = instance
-
- if (body === null || body === undefined) {
- dest.end()
- } else if (Buffer.isBuffer(body) || typeof body === 'string') {
- dest.end(body)
- } else {
- // body is stream or blob
- const stream = isBlob(body) ? body.stream() : body
- stream.on('error', er => dest.emit('error', er)).pipe(dest)
- }
-
- return dest
- }
-}
-
-Object.defineProperties(Body.prototype, {
- body: { enumerable: true },
- bodyUsed: { enumerable: true },
- arrayBuffer: { enumerable: true },
- blob: { enumerable: true },
- json: { enumerable: true },
- text: { enumerable: true },
-})
-
-const isURLSearchParams = obj =>
- // Duck-typing as a necessary condition.
- (typeof obj !== 'object' ||
- typeof obj.append !== 'function' ||
- typeof obj.delete !== 'function' ||
- typeof obj.get !== 'function' ||
- typeof obj.getAll !== 'function' ||
- typeof obj.has !== 'function' ||
- typeof obj.set !== 'function') ? false
- // Brand-checking and more duck-typing as optional condition.
- : obj.constructor.name === 'URLSearchParams' ||
- Object.prototype.toString.call(obj) === '[object URLSearchParams]' ||
- typeof obj.sort === 'function'
-
-const isBlob = obj =>
- typeof obj === 'object' &&
- typeof obj.arrayBuffer === 'function' &&
- typeof obj.type === 'string' &&
- typeof obj.stream === 'function' &&
- typeof obj.constructor === 'function' &&
- typeof obj.constructor.name === 'string' &&
- /^(Blob|File)$/.test(obj.constructor.name) &&
- /^(Blob|File)$/.test(obj[Symbol.toStringTag])
-
-const convertBody = (buffer, headers) => {
- /* istanbul ignore if */
- if (typeof convert !== 'function') {
- throw new Error('The package `encoding` must be installed to use the textConverted() function')
- }
-
- const ct = headers && headers.get('content-type')
- let charset = 'utf-8'
- let res
-
- // header
- if (ct) {
- res = /charset=([^;]*)/i.exec(ct)
- }
-
- // no charset in content type, peek at response body for at most 1024 bytes
- const str = buffer.slice(0, 1024).toString()
-
- // html5
- if (!res && str) {
- res = /<meta.+?charset=(['"])(.+?)\1/i.exec(str)
- }
-
- // html4
- if (!res && str) {
- res = /<meta[\s]+?http-equiv=(['"])content-type\1[\s]+?content=(['"])(.+?)\2/i.exec(str)
-
- if (!res) {
- res = /<meta[\s]+?content=(['"])(.+?)\1[\s]+?http-equiv=(['"])content-type\3/i.exec(str)
- if (res) {
- res.pop()
- } // drop last quote
- }
-
- if (res) {
- res = /charset=(.*)/i.exec(res.pop())
- }
- }
-
- // xml
- if (!res && str) {
- res = /<\?xml.+?encoding=(['"])(.+?)\1/i.exec(str)
- }
-
- // found charset
- if (res) {
- charset = res.pop()
-
- // prevent decode issues when sites use incorrect encoding
- // ref: https://hsivonen.fi/encoding-menu/
- if (charset === 'gb2312' || charset === 'gbk') {
- charset = 'gb18030'
- }
- }
-
- // turn raw buffers into a single utf-8 buffer
- return convert(
- buffer,
- 'UTF-8',
- charset
- ).toString()
-}
-
-module.exports = Body
diff --git a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/fetch-error.js b/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/fetch-error.js
deleted file mode 100644
index 85f6e98fb..000000000
--- a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/fetch-error.js
+++ /dev/null
@@ -1,32 +0,0 @@
-'use strict'
-class FetchError extends Error {
- constructor (message, type, systemError) {
- super(message)
- this.code = 'FETCH_ERROR'
-
- // pick up code, expected, path, ...
- if (systemError) {
- Object.assign(this, systemError)
- }
-
- this.errno = this.code
-
- // override anything the system error might've clobbered
- this.type = this.code === 'EBADSIZE' && this.found > this.expect
- ? 'max-size' : type
- this.message = message
- Error.captureStackTrace(this, this.constructor)
- }
-
- get name () {
- return 'FetchError'
- }
-
- // don't allow name to be overwritten
- set name (n) {}
-
- get [Symbol.toStringTag] () {
- return 'FetchError'
- }
-}
-module.exports = FetchError
diff --git a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/headers.js b/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/headers.js
deleted file mode 100644
index dd6e854d5..000000000
--- a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/headers.js
+++ /dev/null
@@ -1,267 +0,0 @@
-'use strict'
-const invalidTokenRegex = /[^^_`a-zA-Z\-0-9!#$%&'*+.|~]/
-const invalidHeaderCharRegex = /[^\t\x20-\x7e\x80-\xff]/
-
-const validateName = name => {
- name = `${name}`
- if (invalidTokenRegex.test(name) || name === '') {
- throw new TypeError(`${name} is not a legal HTTP header name`)
- }
-}
-
-const validateValue = value => {
- value = `${value}`
- if (invalidHeaderCharRegex.test(value)) {
- throw new TypeError(`${value} is not a legal HTTP header value`)
- }
-}
-
-const find = (map, name) => {
- name = name.toLowerCase()
- for (const key in map) {
- if (key.toLowerCase() === name) {
- return key
- }
- }
- return undefined
-}
-
-const MAP = Symbol('map')
-class Headers {
- constructor (init = undefined) {
- this[MAP] = Object.create(null)
- if (init instanceof Headers) {
- const rawHeaders = init.raw()
- const headerNames = Object.keys(rawHeaders)
- for (const headerName of headerNames) {
- for (const value of rawHeaders[headerName]) {
- this.append(headerName, value)
- }
- }
- return
- }
-
- // no-op
- if (init === undefined || init === null) {
- return
- }
-
- if (typeof init === 'object') {
- const method = init[Symbol.iterator]
- if (method !== null && method !== undefined) {
- if (typeof method !== 'function') {
- throw new TypeError('Header pairs must be iterable')
- }
-
- // sequence<sequence<ByteString>>
- // Note: per spec we have to first exhaust the lists then process them
- const pairs = []
- for (const pair of init) {
- if (typeof pair !== 'object' ||
- typeof pair[Symbol.iterator] !== 'function') {
- throw new TypeError('Each header pair must be iterable')
- }
- const arrPair = Array.from(pair)
- if (arrPair.length !== 2) {
- throw new TypeError('Each header pair must be a name/value tuple')
- }
- pairs.push(arrPair)
- }
-
- for (const pair of pairs) {
- this.append(pair[0], pair[1])
- }
- } else {
- // record<ByteString, ByteString>
- for (const key of Object.keys(init)) {
- this.append(key, init[key])
- }
- }
- } else {
- throw new TypeError('Provided initializer must be an object')
- }
- }
-
- get (name) {
- name = `${name}`
- validateName(name)
- const key = find(this[MAP], name)
- if (key === undefined) {
- return null
- }
-
- return this[MAP][key].join(', ')
- }
-
- forEach (callback, thisArg = undefined) {
- let pairs = getHeaders(this)
- for (let i = 0; i < pairs.length; i++) {
- const [name, value] = pairs[i]
- callback.call(thisArg, value, name, this)
- // refresh in case the callback added more headers
- pairs = getHeaders(this)
- }
- }
-
- set (name, value) {
- name = `${name}`
- value = `${value}`
- validateName(name)
- validateValue(value)
- const key = find(this[MAP], name)
- this[MAP][key !== undefined ? key : name] = [value]
- }
-
- append (name, value) {
- name = `${name}`
- value = `${value}`
- validateName(name)
- validateValue(value)
- const key = find(this[MAP], name)
- if (key !== undefined) {
- this[MAP][key].push(value)
- } else {
- this[MAP][name] = [value]
- }
- }
-
- has (name) {
- name = `${name}`
- validateName(name)
- return find(this[MAP], name) !== undefined
- }
-
- delete (name) {
- name = `${name}`
- validateName(name)
- const key = find(this[MAP], name)
- if (key !== undefined) {
- delete this[MAP][key]
- }
- }
-
- raw () {
- return this[MAP]
- }
-
- keys () {
- return new HeadersIterator(this, 'key')
- }
-
- values () {
- return new HeadersIterator(this, 'value')
- }
-
- [Symbol.iterator] () {
- return new HeadersIterator(this, 'key+value')
- }
-
- entries () {
- return new HeadersIterator(this, 'key+value')
- }
-
- get [Symbol.toStringTag] () {
- return 'Headers'
- }
-
- static exportNodeCompatibleHeaders (headers) {
- const obj = Object.assign(Object.create(null), headers[MAP])
-
- // http.request() only supports string as Host header. This hack makes
- // specifying custom Host header possible.
- const hostHeaderKey = find(headers[MAP], 'Host')
- if (hostHeaderKey !== undefined) {
- obj[hostHeaderKey] = obj[hostHeaderKey][0]
- }
-
- return obj
- }
-
- static createHeadersLenient (obj) {
- const headers = new Headers()
- for (const name of Object.keys(obj)) {
- if (invalidTokenRegex.test(name)) {
- continue
- }
-
- if (Array.isArray(obj[name])) {
- for (const val of obj[name]) {
- if (invalidHeaderCharRegex.test(val)) {
- continue
- }
-
- if (headers[MAP][name] === undefined) {
- headers[MAP][name] = [val]
- } else {
- headers[MAP][name].push(val)
- }
- }
- } else if (!invalidHeaderCharRegex.test(obj[name])) {
- headers[MAP][name] = [obj[name]]
- }
- }
- return headers
- }
-}
-
-Object.defineProperties(Headers.prototype, {
- get: { enumerable: true },
- forEach: { enumerable: true },
- set: { enumerable: true },
- append: { enumerable: true },
- has: { enumerable: true },
- delete: { enumerable: true },
- keys: { enumerable: true },
- values: { enumerable: true },
- entries: { enumerable: true },
-})
-
-const getHeaders = (headers, kind = 'key+value') =>
- Object.keys(headers[MAP]).sort().map(
- kind === 'key' ? k => k.toLowerCase()
- : kind === 'value' ? k => headers[MAP][k].join(', ')
- : k => [k.toLowerCase(), headers[MAP][k].join(', ')]
- )
-
-const INTERNAL = Symbol('internal')
-
-class HeadersIterator {
- constructor (target, kind) {
- this[INTERNAL] = {
- target,
- kind,
- index: 0,
- }
- }
-
- get [Symbol.toStringTag] () {
- return 'HeadersIterator'
- }
-
- next () {
- /* istanbul ignore if: should be impossible */
- if (!this || Object.getPrototypeOf(this) !== HeadersIterator.prototype) {
- throw new TypeError('Value of `this` is not a HeadersIterator')
- }
-
- const { target, kind, index } = this[INTERNAL]
- const values = getHeaders(target, kind)
- const len = values.length
- if (index >= len) {
- return {
- value: undefined,
- done: true,
- }
- }
-
- this[INTERNAL].index++
-
- return { value: values[index], done: false }
- }
-}
-
-// manually extend because 'extends' requires a ctor
-Object.setPrototypeOf(HeadersIterator.prototype,
- Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())))
-
-module.exports = Headers
diff --git a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/index.js b/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/index.js
deleted file mode 100644
index b1878ac0c..000000000
--- a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/index.js
+++ /dev/null
@@ -1,365 +0,0 @@
-'use strict'
-const { URL } = require('url')
-const http = require('http')
-const https = require('https')
-const zlib = require('minizlib')
-const Minipass = require('minipass')
-
-const Body = require('./body.js')
-const { writeToStream, getTotalBytes } = Body
-const Response = require('./response.js')
-const Headers = require('./headers.js')
-const { createHeadersLenient } = Headers
-const Request = require('./request.js')
-const { getNodeRequestOptions } = Request
-const FetchError = require('./fetch-error.js')
-const AbortError = require('./abort-error.js')
-
-// XXX this should really be split up and unit-ized for easier testing
-// and better DRY implementation of data/http request aborting
-const fetch = async (url, opts) => {
- if (/^data:/.test(url)) {
- const request = new Request(url, opts)
- // delay 1 promise tick so that the consumer can abort right away
- return Promise.resolve().then(() => new Promise((resolve, reject) => {
- let type, data
- try {
- const { pathname, search } = new URL(url)
- const split = pathname.split(',')
- if (split.length < 2) {
- throw new Error('invalid data: URI')
- }
- const mime = split.shift()
- const base64 = /;base64$/.test(mime)
- type = base64 ? mime.slice(0, -1 * ';base64'.length) : mime
- const rawData = decodeURIComponent(split.join(',') + search)
- data = base64 ? Buffer.from(rawData, 'base64') : Buffer.from(rawData)
- } catch (er) {
- return reject(new FetchError(`[${request.method}] ${
- request.url} invalid URL, ${er.message}`, 'system', er))
- }
-
- const { signal } = request
- if (signal && signal.aborted) {
- return reject(new AbortError('The user aborted a request.'))
- }
-
- const headers = { 'Content-Length': data.length }
- if (type) {
- headers['Content-Type'] = type
- }
- return resolve(new Response(data, { headers }))
- }))
- }
-
- return new Promise((resolve, reject) => {
- // build request object
- const request = new Request(url, opts)
- let options
- try {
- options = getNodeRequestOptions(request)
- } catch (er) {
- return reject(er)
- }
-
- const send = (options.protocol === 'https:' ? https : http).request
- const { signal } = request
- let response = null
- const abort = () => {
- const error = new AbortError('The user aborted a request.')
- reject(error)
- if (Minipass.isStream(request.body) &&
- typeof request.body.destroy === 'function') {
- request.body.destroy(error)
- }
- if (response && response.body) {
- response.body.emit('error', error)
- }
- }
-
- if (signal && signal.aborted) {
- return abort()
- }
-
- const abortAndFinalize = () => {
- abort()
- finalize()
- }
-
- const finalize = () => {
- req.abort()
- if (signal) {
- signal.removeEventListener('abort', abortAndFinalize)
- }
- clearTimeout(reqTimeout)
- }
-
- // send request
- const req = send(options)
-
- if (signal) {
- signal.addEventListener('abort', abortAndFinalize)
- }
-
- let reqTimeout = null
- if (request.timeout) {
- req.once('socket', socket => {
- reqTimeout = setTimeout(() => {
- reject(new FetchError(`network timeout at: ${
- request.url}`, 'request-timeout'))
- finalize()
- }, request.timeout)
- })
- }
-
- req.on('error', er => {
- // if a 'response' event is emitted before the 'error' event, then by the
- // time this handler is run it's too late to reject the Promise for the
- // response. instead, we forward the error event to the response stream
- // so that the error will surface to the user when they try to consume
- // the body. this is done as a side effect of aborting the request except
- // for in windows, where we must forward the event manually, otherwise
- // there is no longer a ref'd socket attached to the request and the
- // stream never ends so the event loop runs out of work and the process
- // exits without warning.
- // coverage skipped here due to the difficulty in testing
- // istanbul ignore next
- if (req.res) {
- req.res.emit('error', er)
- }
- reject(new FetchError(`request to ${request.url} failed, reason: ${
- er.message}`, 'system', er))
- finalize()
- })
-
- req.on('response', res => {
- clearTimeout(reqTimeout)
-
- const headers = createHeadersLenient(res.headers)
-
- // HTTP fetch step 5
- if (fetch.isRedirect(res.statusCode)) {
- // HTTP fetch step 5.2
- const location = headers.get('Location')
-
- // HTTP fetch step 5.3
- const locationURL = location === null ? null
- : (new URL(location, request.url)).toString()
-
- // HTTP fetch step 5.5
- if (request.redirect === 'error') {
- reject(new FetchError('uri requested responds with a redirect, ' +
- `redirect mode is set to error: ${request.url}`, 'no-redirect'))
- finalize()
- return
- } else if (request.redirect === 'manual') {
- // node-fetch-specific step: make manual redirect a bit easier to
- // use by setting the Location header value to the resolved URL.
- if (locationURL !== null) {
- // handle corrupted header
- try {
- headers.set('Location', locationURL)
- } catch (err) {
- /* istanbul ignore next: nodejs server prevent invalid
- response headers, we can't test this through normal
- request */
- reject(err)
- }
- }
- } else if (request.redirect === 'follow' && locationURL !== null) {
- // HTTP-redirect fetch step 5
- if (request.counter >= request.follow) {
- reject(new FetchError(`maximum redirect reached at: ${
- request.url}`, 'max-redirect'))
- finalize()
- return
- }
-
- // HTTP-redirect fetch step 9
- if (res.statusCode !== 303 &&
- request.body &&
- getTotalBytes(request) === null) {
- reject(new FetchError(
- 'Cannot follow redirect with body being a readable stream',
- 'unsupported-redirect'
- ))
- finalize()
- return
- }
-
- // Update host due to redirection
- request.headers.set('host', (new URL(locationURL)).host)
-
- // HTTP-redirect fetch step 6 (counter increment)
- // Create a new Request object.
- const requestOpts = {
- headers: new Headers(request.headers),
- follow: request.follow,
- counter: request.counter + 1,
- agent: request.agent,
- compress: request.compress,
- method: request.method,
- body: request.body,
- signal: request.signal,
- timeout: request.timeout,
- }
-
- // if the redirect is to a new hostname, strip the authorization and cookie headers
- const parsedOriginal = new URL(request.url)
- const parsedRedirect = new URL(locationURL)
- if (parsedOriginal.hostname !== parsedRedirect.hostname) {
- requestOpts.headers.delete('authorization')
- requestOpts.headers.delete('cookie')
- }
-
- // HTTP-redirect fetch step 11
- if (res.statusCode === 303 || (
- (res.statusCode === 301 || res.statusCode === 302) &&
- request.method === 'POST'
- )) {
- requestOpts.method = 'GET'
- requestOpts.body = undefined
- requestOpts.headers.delete('content-length')
- }
-
- // HTTP-redirect fetch step 15
- resolve(fetch(new Request(locationURL, requestOpts)))
- finalize()
- return
- }
- } // end if(isRedirect)
-
- // prepare response
- res.once('end', () =>
- signal && signal.removeEventListener('abort', abortAndFinalize))
-
- const body = new Minipass()
- // if an error occurs, either on the response stream itself, on one of the
- // decoder streams, or a response length timeout from the Body class, we
- // forward the error through to our internal body stream. If we see an
- // error event on that, we call finalize to abort the request and ensure
- // we don't leave a socket believing a request is in flight.
- // this is difficult to test, so lacks specific coverage.
- body.on('error', finalize)
- // exceedingly rare that the stream would have an error,
- // but just in case we proxy it to the stream in use.
- res.on('error', /* istanbul ignore next */ er => body.emit('error', er))
- res.on('data', (chunk) => body.write(chunk))
- res.on('end', () => body.end())
-
- const responseOptions = {
- url: request.url,
- status: res.statusCode,
- statusText: res.statusMessage,
- headers: headers,
- size: request.size,
- timeout: request.timeout,
- counter: request.counter,
- trailer: new Promise(resolveTrailer =>
- res.on('end', () => resolveTrailer(createHeadersLenient(res.trailers)))),
- }
-
- // HTTP-network fetch step 12.1.1.3
- const codings = headers.get('Content-Encoding')
-
- // HTTP-network fetch step 12.1.1.4: handle content codings
-
- // in following scenarios we ignore compression support
- // 1. compression support is disabled
- // 2. HEAD request
- // 3. no Content-Encoding header
- // 4. no content response (204)
- // 5. content not modified response (304)
- if (!request.compress ||
- request.method === 'HEAD' ||
- codings === null ||
- res.statusCode === 204 ||
- res.statusCode === 304) {
- response = new Response(body, responseOptions)
- resolve(response)
- return
- }
-
- // Be less strict when decoding compressed responses, since sometimes
- // servers send slightly invalid responses that are still accepted
- // by common browsers.
- // Always using Z_SYNC_FLUSH is what cURL does.
- const zlibOptions = {
- flush: zlib.constants.Z_SYNC_FLUSH,
- finishFlush: zlib.constants.Z_SYNC_FLUSH,
- }
-
- // for gzip
- if (codings === 'gzip' || codings === 'x-gzip') {
- const unzip = new zlib.Gunzip(zlibOptions)
- response = new Response(
- // exceedingly rare that the stream would have an error,
- // but just in case we proxy it to the stream in use.
- body.on('error', /* istanbul ignore next */ er => unzip.emit('error', er)).pipe(unzip),
- responseOptions
- )
- resolve(response)
- return
- }
-
- // for deflate
- if (codings === 'deflate' || codings === 'x-deflate') {
- // handle the infamous raw deflate response from old servers
- // a hack for old IIS and Apache servers
- const raw = res.pipe(new Minipass())
- raw.once('data', chunk => {
- // see http://stackoverflow.com/questions/37519828
- const decoder = (chunk[0] & 0x0F) === 0x08
- ? new zlib.Inflate()
- : new zlib.InflateRaw()
- // exceedingly rare that the stream would have an error,
- // but just in case we proxy it to the stream in use.
- body.on('error', /* istanbul ignore next */ er => decoder.emit('error', er)).pipe(decoder)
- response = new Response(decoder, responseOptions)
- resolve(response)
- })
- return
- }
-
- // for br
- if (codings === 'br') {
- // ignoring coverage so tests don't have to fake support (or lack of) for brotli
- // istanbul ignore next
- try {
- var decoder = new zlib.BrotliDecompress()
- } catch (err) {
- reject(err)
- finalize()
- return
- }
- // exceedingly rare that the stream would have an error,
- // but just in case we proxy it to the stream in use.
- body.on('error', /* istanbul ignore next */ er => decoder.emit('error', er)).pipe(decoder)
- response = new Response(decoder, responseOptions)
- resolve(response)
- return
- }
-
- // otherwise, use response as-is
- response = new Response(body, responseOptions)
- resolve(response)
- })
-
- writeToStream(req, request)
- })
-}
-
-module.exports = fetch
-
-fetch.isRedirect = code =>
- code === 301 ||
- code === 302 ||
- code === 303 ||
- code === 307 ||
- code === 308
-
-fetch.Headers = Headers
-fetch.Request = Request
-fetch.Response = Response
-fetch.FetchError = FetchError
-fetch.AbortError = AbortError
diff --git a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/request.js b/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/request.js
deleted file mode 100644
index e620df6de..000000000
--- a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/request.js
+++ /dev/null
@@ -1,281 +0,0 @@
-'use strict'
-const { URL } = require('url')
-const Minipass = require('minipass')
-const Headers = require('./headers.js')
-const { exportNodeCompatibleHeaders } = Headers
-const Body = require('./body.js')
-const { clone, extractContentType, getTotalBytes } = Body
-
-const version = require('../package.json').version
-const defaultUserAgent =
- `minipass-fetch/${version} (+https://github.com/isaacs/minipass-fetch)`
-
-const INTERNALS = Symbol('Request internals')
-
-const isRequest = input =>
- typeof input === 'object' && typeof input[INTERNALS] === 'object'
-
-const isAbortSignal = signal => {
- const proto = (
- signal
- && typeof signal === 'object'
- && Object.getPrototypeOf(signal)
- )
- return !!(proto && proto.constructor.name === 'AbortSignal')
-}
-
-class Request extends Body {
- constructor (input, init = {}) {
- const parsedURL = isRequest(input) ? new URL(input.url)
- : input && input.href ? new URL(input.href)
- : new URL(`${input}`)
-
- if (isRequest(input)) {
- init = { ...input[INTERNALS], ...init }
- } else if (!input || typeof input === 'string') {
- input = {}
- }
-
- const method = (init.method || input.method || 'GET').toUpperCase()
- const isGETHEAD = method === 'GET' || method === 'HEAD'
-
- if ((init.body !== null && init.body !== undefined ||
- isRequest(input) && input.body !== null) && isGETHEAD) {
- throw new TypeError('Request with GET/HEAD method cannot have body')
- }
-
- const inputBody = init.body !== null && init.body !== undefined ? init.body
- : isRequest(input) && input.body !== null ? clone(input)
- : null
-
- super(inputBody, {
- timeout: init.timeout || input.timeout || 0,
- size: init.size || input.size || 0,
- })
-
- const headers = new Headers(init.headers || input.headers || {})
-
- if (inputBody !== null && inputBody !== undefined &&
- !headers.has('Content-Type')) {
- const contentType = extractContentType(inputBody)
- if (contentType) {
- headers.append('Content-Type', contentType)
- }
- }
-
- const signal = 'signal' in init ? init.signal
- : null
-
- if (signal !== null && signal !== undefined && !isAbortSignal(signal)) {
- throw new TypeError('Expected signal must be an instanceof AbortSignal')
- }
-
- // TLS specific options that are handled by node
- const {
- ca,
- cert,
- ciphers,
- clientCertEngine,
- crl,
- dhparam,
- ecdhCurve,
- family,
- honorCipherOrder,
- key,
- passphrase,
- pfx,
- rejectUnauthorized = process.env.NODE_TLS_REJECT_UNAUTHORIZED !== '0',
- secureOptions,
- secureProtocol,
- servername,
- sessionIdContext,
- } = init
-
- this[INTERNALS] = {
- method,
- redirect: init.redirect || input.redirect || 'follow',
- headers,
- parsedURL,
- signal,
- ca,
- cert,
- ciphers,
- clientCertEngine,
- crl,
- dhparam,
- ecdhCurve,
- family,
- honorCipherOrder,
- key,
- passphrase,
- pfx,
- rejectUnauthorized,
- secureOptions,
- secureProtocol,
- servername,
- sessionIdContext,
- }
-
- // node-fetch-only options
- this.follow = init.follow !== undefined ? init.follow
- : input.follow !== undefined ? input.follow
- : 20
- this.compress = init.compress !== undefined ? init.compress
- : input.compress !== undefined ? input.compress
- : true
- this.counter = init.counter || input.counter || 0
- this.agent = init.agent || input.agent
- }
-
- get method () {
- return this[INTERNALS].method
- }
-
- get url () {
- return this[INTERNALS].parsedURL.toString()
- }
-
- get headers () {
- return this[INTERNALS].headers
- }
-
- get redirect () {
- return this[INTERNALS].redirect
- }
-
- get signal () {
- return this[INTERNALS].signal
- }
-
- clone () {
- return new Request(this)
- }
-
- get [Symbol.toStringTag] () {
- return 'Request'
- }
-
- static getNodeRequestOptions (request) {
- const parsedURL = request[INTERNALS].parsedURL
- const headers = new Headers(request[INTERNALS].headers)
-
- // fetch step 1.3
- if (!headers.has('Accept')) {
- headers.set('Accept', '*/*')
- }
-
- // Basic fetch
- if (!/^https?:$/.test(parsedURL.protocol)) {
- throw new TypeError('Only HTTP(S) protocols are supported')
- }
-
- if (request.signal &&
- Minipass.isStream(request.body) &&
- typeof request.body.destroy !== 'function') {
- throw new Error(
- 'Cancellation of streamed requests with AbortSignal is not supported')
- }
-
- // HTTP-network-or-cache fetch steps 2.4-2.7
- const contentLengthValue =
- (request.body === null || request.body === undefined) &&
- /^(POST|PUT)$/i.test(request.method) ? '0'
- : request.body !== null && request.body !== undefined
- ? getTotalBytes(request)
- : null
-
- if (contentLengthValue) {
- headers.set('Content-Length', contentLengthValue + '')
- }
-
- // HTTP-network-or-cache fetch step 2.11
- if (!headers.has('User-Agent')) {
- headers.set('User-Agent', defaultUserAgent)
- }
-
- // HTTP-network-or-cache fetch step 2.15
- if (request.compress && !headers.has('Accept-Encoding')) {
- headers.set('Accept-Encoding', 'gzip,deflate')
- }
-
- const agent = typeof request.agent === 'function'
- ? request.agent(parsedURL)
- : request.agent
-
- if (!headers.has('Connection') && !agent) {
- headers.set('Connection', 'close')
- }
-
- // TLS specific options that are handled by node
- const {
- ca,
- cert,
- ciphers,
- clientCertEngine,
- crl,
- dhparam,
- ecdhCurve,
- family,
- honorCipherOrder,
- key,
- passphrase,
- pfx,
- rejectUnauthorized,
- secureOptions,
- secureProtocol,
- servername,
- sessionIdContext,
- } = request[INTERNALS]
-
- // HTTP-network fetch step 4.2
- // chunked encoding is handled by Node.js
-
- // we cannot spread parsedURL directly, so we have to read each property one-by-one
- // and map them to the equivalent https?.request() method options
- const urlProps = {
- auth: parsedURL.username || parsedURL.password
- ? `${parsedURL.username}:${parsedURL.password}`
- : '',
- host: parsedURL.host,
- hostname: parsedURL.hostname,
- path: `${parsedURL.pathname}${parsedURL.search}`,
- port: parsedURL.port,
- protocol: parsedURL.protocol,
- }
-
- return {
- ...urlProps,
- method: request.method,
- headers: exportNodeCompatibleHeaders(headers),
- agent,
- ca,
- cert,
- ciphers,
- clientCertEngine,
- crl,
- dhparam,
- ecdhCurve,
- family,
- honorCipherOrder,
- key,
- passphrase,
- pfx,
- rejectUnauthorized,
- secureOptions,
- secureProtocol,
- servername,
- sessionIdContext,
- }
- }
-}
-
-module.exports = Request
-
-Object.defineProperties(Request.prototype, {
- method: { enumerable: true },
- url: { enumerable: true },
- headers: { enumerable: true },
- redirect: { enumerable: true },
- clone: { enumerable: true },
- signal: { enumerable: true },
-})
diff --git a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/response.js b/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/response.js
deleted file mode 100644
index 54cb52db3..000000000
--- a/node_modules/npm-registry-fetch/node_modules/minipass-fetch/lib/response.js
+++ /dev/null
@@ -1,90 +0,0 @@
-'use strict'
-const http = require('http')
-const { STATUS_CODES } = http
-
-const Headers = require('./headers.js')
-const Body = require('./body.js')
-const { clone, extractContentType } = Body
-
-const INTERNALS = Symbol('Response internals')
-
-class Response extends Body {
- constructor (body = null, opts = {}) {
- super(body, opts)
-
- const status = opts.status || 200
- const headers = new Headers(opts.headers)
-
- if (body !== null && body !== undefined && !headers.has('Content-Type')) {
- const contentType = extractContentType(body)
- if (contentType) {
- headers.append('Content-Type', contentType)
- }
- }
-
- this[INTERNALS] = {
- url: opts.url,
- status,
- statusText: opts.statusText || STATUS_CODES[status],
- headers,
- counter: opts.counter,
- trailer: Promise.resolve(opts.trailer || new Headers()),
- }
- }
-
- get trailer () {
- return this[INTERNALS].trailer
- }
-
- get url () {
- return this[INTERNALS].url || ''
- }
-
- get status () {
- return this[INTERNALS].status
- }
-
- get ok () {
- return this[INTERNALS].status >= 200 && this[INTERNALS].status < 300
- }
-
- get redirected () {
- return this[INTERNALS].counter > 0
- }
-
- get statusText () {
- return this[INTERNALS].statusText
- }
-
- get headers () {
- return this[INTERNALS].headers
- }
-
- clone () {
- return new Response(clone(this), {
- url: this.url,
- status: this.status,
- statusText: this.statusText,
- headers: this.headers,
- ok: this.ok,
- redirected: this.redirected,
- trailer: this.trailer,
- })
- }
-
- get [Symbol.toStringTag] () {
- return 'Response'
- }
-}
-
-module.exports = Response
-
-Object.defineProperties(Response.prototype, {
- url: { enumerable: true },
- status: { enumerable: true },
- ok: { enumerable: true },
- redirected: { enumerable: true },
- statusText: { enumerable: true },
- headers: { enumerable: true },
- clone: { enumerable: true },
-})
diff --git a/package-lock.json b/package-lock.json
index 4d052134c..c8c66317b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1045,8 +1045,9 @@
},
"node_modules/@gar/promisify": {
"version": "1.1.3",
- "inBundle": true,
- "license": "MIT"
+ "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz",
+ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==",
+ "inBundle": true
},
"node_modules/@google-automations/git-file-utils": {
"version": "1.2.1",
@@ -2211,15 +2212,15 @@
}
},
"node_modules/@npmcli/fs": {
- "version": "2.1.2",
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.0.0.tgz",
+ "integrity": "sha512-GdeVD+dnBxzMslTFvnctLX5yIqV4ZNZBWNbo1OejQ++bZpnFNQ1AjOn9Sboi+LzheQbCBU1ts1mhEVduHrcZOQ==",
"inBundle": true,
- "license": "ISC",
"dependencies": {
- "@gar/promisify": "^1.1.3",
"semver": "^7.3.5"
},
"engines": {
- "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
},
"node_modules/@npmcli/git": {
@@ -3295,18 +3296,6 @@
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
},
- "node_modules/cacache/node_modules/@npmcli/fs": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.0.0.tgz",
- "integrity": "sha512-GdeVD+dnBxzMslTFvnctLX5yIqV4ZNZBWNbo1OejQ++bZpnFNQ1AjOn9Sboi+LzheQbCBU1ts1mhEVduHrcZOQ==",
- "inBundle": true,
- "dependencies": {
- "semver": "^7.3.5"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
"node_modules/caching-transform": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz",
@@ -7420,23 +7409,6 @@
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
},
- "node_modules/make-fetch-happen/node_modules/minipass-fetch": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.0.tgz",
- "integrity": "sha512-NSx3k5gR4Q5Ts2poCM/19d45VwhVLBtJZ6ypYcthj2BwmDx/e7lW8Aadnyt3edd2W0ecb+b0o7FYLRYE2AGcQg==",
- "inBundle": true,
- "dependencies": {
- "minipass": "^3.1.6",
- "minipass-sized": "^1.0.3",
- "minizlib": "^2.1.2"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- },
- "optionalDependencies": {
- "encoding": "^0.1.13"
- }
- },
"node_modules/map-obj": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz",
@@ -7745,16 +7717,17 @@
}
},
"node_modules/minipass-fetch": {
- "version": "2.1.1",
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.0.tgz",
+ "integrity": "sha512-NSx3k5gR4Q5Ts2poCM/19d45VwhVLBtJZ6ypYcthj2BwmDx/e7lW8Aadnyt3edd2W0ecb+b0o7FYLRYE2AGcQg==",
"inBundle": true,
- "license": "MIT",
"dependencies": {
"minipass": "^3.1.6",
"minipass-sized": "^1.0.3",
"minizlib": "^2.1.2"
},
"engines": {
- "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
},
"optionalDependencies": {
"encoding": "^0.1.13"
@@ -7954,6 +7927,19 @@
"node": "^12.22 || ^14.13 || >=16"
}
},
+ "node_modules/node-gyp/node_modules/@npmcli/fs": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz",
+ "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==",
+ "inBundle": true,
+ "dependencies": {
+ "@gar/promisify": "^1.1.3",
+ "semver": "^7.3.5"
+ },
+ "engines": {
+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
+ }
+ },
"node_modules/node-gyp/node_modules/@npmcli/move-file": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz",
@@ -8134,6 +8120,23 @@
"node": "*"
}
},
+ "node_modules/node-gyp/node_modules/minipass-fetch": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz",
+ "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==",
+ "inBundle": true,
+ "dependencies": {
+ "minipass": "^3.1.6",
+ "minipass-sized": "^1.0.3",
+ "minizlib": "^2.1.2"
+ },
+ "engines": {
+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
+ },
+ "optionalDependencies": {
+ "encoding": "^0.1.13"
+ }
+ },
"node_modules/node-gyp/node_modules/nopt": {
"version": "5.0.0",
"inBundle": true,
@@ -8388,23 +8391,6 @@
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
},
- "node_modules/npm-registry-fetch/node_modules/minipass-fetch": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.0.tgz",
- "integrity": "sha512-NSx3k5gR4Q5Ts2poCM/19d45VwhVLBtJZ6ypYcthj2BwmDx/e7lW8Aadnyt3edd2W0ecb+b0o7FYLRYE2AGcQg==",
- "inBundle": true,
- "dependencies": {
- "minipass": "^3.1.6",
- "minipass-sized": "^1.0.3",
- "minizlib": "^2.1.2"
- },
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- },
- "optionalDependencies": {
- "encoding": "^0.1.13"
- }
- },
"node_modules/npm-run-path": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",