Skip to content

Commit ea0b07d

Browse files
lukekarryswraithgar
authored andcommitted
1 parent 8d161a4 commit ea0b07d

File tree

16 files changed

+70
-76
lines changed

16 files changed

+70
-76
lines changed

mock-registry/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151
"json-stringify-safe": "^5.0.1",
5252
"nock": "^13.3.3",
5353
"npm-package-arg": "^11.0.2",
54-
"pacote": "^18.0.5",
54+
"pacote": "^18.0.6",
5555
"tap": "^16.3.8"
5656
}
5757
}

node_modules/pacote/lib/dir.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
const Fetcher = require('./fetcher.js')
2-
const FileFetcher = require('./file.js')
3-
const { Minipass } = require('minipass')
4-
const tarCreateOptions = require('./util/tar-create-options.js')
1+
const { resolve } = require('node:path')
52
const packlist = require('npm-packlist')
6-
const tar = require('tar')
7-
const { resolve } = require('path')
83
const runScript = require('@npmcli/run-script')
4+
const tar = require('tar')
5+
const { Minipass } = require('minipass')
6+
const Fetcher = require('./fetcher.js')
7+
const FileFetcher = require('./file.js')
98
const _ = require('./util/protected.js')
9+
const tarCreateOptions = require('./util/tar-create-options.js')
1010

1111
class DirFetcher extends Fetcher {
1212
constructor (spec, opts) {
@@ -27,7 +27,7 @@ class DirFetcher extends Fetcher {
2727
return ['directory']
2828
}
2929

30-
[_.prepareDir] () {
30+
#prepareDir () {
3131
return this.manifest().then(mani => {
3232
if (!mani.scripts || !mani.scripts.prepare) {
3333
return
@@ -65,7 +65,7 @@ class DirFetcher extends Fetcher {
6565

6666
// run the prepare script, get the list of files, and tar it up
6767
// pipe to the stream, and proxy errors the chain.
68-
this[_.prepareDir]()
68+
this.#prepareDir()
6969
.then(async () => {
7070
if (!this.tree) {
7171
const arb = new this.Arborist({ path: this.resolved })

node_modules/pacote/lib/fetcher.js

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,22 @@
33
// It handles the unpacking and retry logic that is shared among
44
// all of the other Fetcher types.
55

6+
const { basename, dirname } = require('node:path')
7+
const { rm, mkdir } = require('node:fs/promises')
8+
const PackageJson = require('@npmcli/package-json')
9+
const cacache = require('cacache')
10+
const fsm = require('fs-minipass')
11+
const getContents = require('@npmcli/installed-package-contents')
612
const npa = require('npm-package-arg')
13+
const retry = require('promise-retry')
714
const ssri = require('ssri')
8-
const { basename, dirname } = require('path')
915
const tar = require('tar')
16+
const { Minipass } = require('minipass')
1017
const { log } = require('proc-log')
11-
const retry = require('promise-retry')
12-
const fs = require('fs/promises')
13-
const fsm = require('fs-minipass')
14-
const cacache = require('cacache')
18+
const _ = require('./util/protected.js')
19+
const cacheDir = require('./util/cache-dir.js')
1520
const isPackageBin = require('./util/is-package-bin.js')
1621
const removeTrailingSlashes = require('./util/trailing-slashes.js')
17-
const getContents = require('@npmcli/installed-package-contents')
18-
const PackageJson = require('@npmcli/package-json')
19-
const { Minipass } = require('minipass')
20-
const cacheDir = require('./util/cache-dir.js')
21-
const _ = require('./util/protected.js')
2222

2323
// Pacote is only concerned with the package.json contents
2424
const packageJsonPrepare = (p) => PackageJson.prepare(p).then(pkg => pkg.content)
@@ -337,12 +337,12 @@ class FetcherBase {
337337

338338
#empty (path) {
339339
return getContents({ path, depth: 1 }).then(contents => Promise.all(
340-
contents.map(entry => fs.rm(entry, { recursive: true, force: true }))))
340+
contents.map(entry => rm(entry, { recursive: true, force: true }))))
341341
}
342342

343343
async #mkdir (dest) {
344344
await this.#empty(dest)
345-
return await fs.mkdir(dest, { recursive: true })
345+
return await mkdir(dest, { recursive: true })
346346
}
347347

348348
// extraction is always the same. the only difference is where
@@ -369,7 +369,7 @@ class FetcherBase {
369369
// don't use this.#mkdir because we don't want to rimraf anything
370370
async tarballFile (dest) {
371371
const dir = dirname(dest)
372-
await fs.mkdir(dir, { recursive: true })
372+
await mkdir(dir, { recursive: true })
373373
return this.#toFile(dest)
374374
}
375375

node_modules/pacote/lib/file.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
const fsm = require('fs-minipass')
1+
const { resolve } = require('node:path')
2+
const { stat, chmod } = require('node:fs/promises')
23
const cacache = require('cacache')
3-
const { resolve } = require('path')
4-
const { stat, chmod } = require('fs/promises')
4+
const fsm = require('fs-minipass')
55
const Fetcher = require('./fetcher.js')
66
const _ = require('./util/protected.js')
77

node_modules/pacote/lib/git.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
const Fetcher = require('./fetcher.js')
2-
const FileFetcher = require('./file.js')
3-
const RemoteFetcher = require('./remote.js')
4-
const DirFetcher = require('./dir.js')
1+
const cacache = require('cacache')
52
const git = require('@npmcli/git')
6-
const pickManifest = require('npm-pick-manifest')
73
const npa = require('npm-package-arg')
4+
const pickManifest = require('npm-pick-manifest')
85
const { Minipass } = require('minipass')
9-
const cacache = require('cacache')
106
const { log } = require('proc-log')
11-
const npm = require('./util/npm.js')
12-
const addGitSha = require('./util/add-git-sha.js')
7+
const DirFetcher = require('./dir.js')
8+
const Fetcher = require('./fetcher.js')
9+
const FileFetcher = require('./file.js')
10+
const RemoteFetcher = require('./remote.js')
1311
const _ = require('./util/protected.js')
12+
const addGitSha = require('./util/add-git-sha.js')
13+
const npm = require('./util/npm.js')
1414

1515
const hashre = /^[a-f0-9]{40}$/
1616

node_modules/pacote/lib/registry.js

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
const Fetcher = require('./fetcher.js')
2-
const RemoteFetcher = require('./remote.js')
3-
const pacoteVersion = require('../package.json').version
4-
const removeTrailingSlashes = require('./util/trailing-slashes.js')
1+
const crypto = require('node:crypto')
52
const PackageJson = require('@npmcli/package-json')
63
const pickManifest = require('npm-pick-manifest')
74
const ssri = require('ssri')
8-
const crypto = require('crypto')
95
const npa = require('npm-package-arg')
106
const sigstore = require('sigstore')
117
const fetch = require('npm-registry-fetch')
8+
const Fetcher = require('./fetcher.js')
9+
const RemoteFetcher = require('./remote.js')
10+
const pacoteVersion = require('../package.json').version
11+
const removeTrailingSlashes = require('./util/trailing-slashes.js')
1212
const _ = require('./util/protected.js')
1313

1414
// Corgis are cute. 🐕🐶
@@ -20,6 +20,7 @@ const fullDoc = 'application/json'
2020
const MISSING_TIME_CUTOFF = '2015-01-01T00:00:00.000Z'
2121

2222
class RegistryFetcher extends Fetcher {
23+
#cacheKey
2324
constructor (spec, opts) {
2425
super(spec, opts)
2526

@@ -32,8 +33,8 @@ class RegistryFetcher extends Fetcher {
3233
this.packumentCache = this.opts.packumentCache || null
3334

3435
this.registry = fetch.pickRegistry(spec, opts)
35-
this.packumentUrl = removeTrailingSlashes(this.registry) + '/' +
36-
this.spec.escapedName
36+
this.packumentUrl = `${removeTrailingSlashes(this.registry)}/${this.spec.escapedName}`
37+
this.#cacheKey = `${this.fullMetadata ? 'full' : 'corgi'}:${this.packumentUrl}`
3738

3839
const parsed = new URL(this.registry)
3940
const regKey = `//${parsed.host}${parsed.pathname}`
@@ -78,8 +79,8 @@ class RegistryFetcher extends Fetcher {
7879
// note this might be either an in-flight promise for a request,
7980
// or the actual packument, but we never want to make more than
8081
// one request at a time for the same thing regardless.
81-
if (this.packumentCache?.has(this.packumentUrl)) {
82-
return this.packumentCache.get(this.packumentUrl)
82+
if (this.packumentCache?.has(this.#cacheKey)) {
83+
return this.packumentCache.get(this.#cacheKey)
8384
}
8485

8586
// npm-registry-fetch the packument
@@ -99,10 +100,10 @@ class RegistryFetcher extends Fetcher {
99100
if (contentLength) {
100101
packument._contentLength = Number(contentLength)
101102
}
102-
this.packumentCache?.set(this.packumentUrl, packument)
103+
this.packumentCache?.set(this.#cacheKey, packument)
103104
return packument
104105
} catch (err) {
105-
this.packumentCache?.delete(this.packumentUrl)
106+
this.packumentCache?.delete(this.#cacheKey)
106107
if (err.code !== 'E404' || this.fullMetadata) {
107108
throw err
108109
}

node_modules/pacote/lib/remote.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
const Fetcher = require('./fetcher.js')
2-
const FileFetcher = require('./file.js')
3-
const pacoteVersion = require('../package.json').version
41
const fetch = require('npm-registry-fetch')
52
const { Minipass } = require('minipass')
3+
const Fetcher = require('./fetcher.js')
4+
const FileFetcher = require('./file.js')
65
const _ = require('./util/protected.js')
6+
const pacoteVersion = require('../package.json').version
77

88
class RemoteFetcher extends Fetcher {
99
constructor (spec, opts) {

node_modules/pacote/lib/util/cache-dir.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
const os = require('os')
2-
const { resolve } = require('path')
1+
const { resolve } = require('node:path')
2+
const { tmpdir, homedir } = require('node:os')
33

44
module.exports = (fakePlatform = false) => {
5-
const temp = os.tmpdir()
5+
const temp = tmpdir()
66
const uidOrPid = process.getuid ? process.getuid() : process.pid
7-
const home = os.homedir() || resolve(temp, 'npm-' + uidOrPid)
7+
const home = homedir() || resolve(temp, 'npm-' + uidOrPid)
88
const platform = fakePlatform || process.platform
99
const cacheExtra = platform === 'win32' ? 'npm-cache' : '.npm'
1010
const cacheRoot = (platform === 'win32' && process.env.LOCALAPPDATA) || home
Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,5 @@
1-
const readPackageJson = Symbol.for('package.Fetcher._readPackageJson')
2-
const prepareDir = Symbol('_prepareDir')
3-
const tarballFromResolved = Symbol.for('pacote.Fetcher._tarballFromResolved')
4-
const cacheFetches = Symbol.for('pacote.Fetcher._cacheFetches')
5-
61
module.exports = {
7-
readPackageJson,
8-
prepareDir,
9-
tarballFromResolved,
10-
cacheFetches,
2+
cacheFetches: Symbol.for('pacote.Fetcher._cacheFetches'),
3+
readPackageJson: Symbol.for('package.Fetcher._readPackageJson'),
4+
tarballFromResolved: Symbol.for('pacote.Fetcher._tarballFromResolved'),
115
}

node_modules/pacote/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "pacote",
3-
"version": "18.0.5",
3+
"version": "18.0.6",
44
"description": "JavaScript package downloader",
55
"author": "GitHub Inc.",
66
"bin": {

0 commit comments

Comments
 (0)