refactor(dependency-path): add depPathToFilename()

This commit is contained in:
Zoltan Kochan
2020-12-30 04:02:01 +02:00
parent d4e270549a
commit e27dcf0dcc
27 changed files with 60 additions and 65 deletions

View File

@@ -0,0 +1,5 @@
---
"dependency-path": minor
---
Add depPathToFilename().

View File

@@ -36,7 +36,6 @@
"@pnpm/lockfile-utils": "workspace:2.0.20", "@pnpm/lockfile-utils": "workspace:2.0.20",
"@pnpm/modules-yaml": "workspace:8.0.5", "@pnpm/modules-yaml": "workspace:8.0.5",
"@pnpm/normalize-registries": "workspace:1.0.5", "@pnpm/normalize-registries": "workspace:1.0.5",
"@pnpm/pkgid-to-filename": "^3.0.0",
"@pnpm/read-modules-dir": "workspace:2.0.3", "@pnpm/read-modules-dir": "workspace:2.0.3",
"@pnpm/read-package-json": "workspace:3.1.8", "@pnpm/read-package-json": "workspace:3.1.8",
"@pnpm/types": "workspace:6.3.1", "@pnpm/types": "workspace:6.3.1",

View File

@@ -13,11 +13,10 @@ import {
} from '@pnpm/lockfile-utils' } from '@pnpm/lockfile-utils'
import { read as readModulesYaml } from '@pnpm/modules-yaml' import { read as readModulesYaml } from '@pnpm/modules-yaml'
import normalizeRegistries from '@pnpm/normalize-registries' import normalizeRegistries from '@pnpm/normalize-registries'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import readModulesDir from '@pnpm/read-modules-dir' import readModulesDir from '@pnpm/read-modules-dir'
import { safeReadPackageFromDir } from '@pnpm/read-package-json' import { safeReadPackageFromDir } from '@pnpm/read-package-json'
import { DependenciesField, DEPENDENCIES_FIELDS, Registries } from '@pnpm/types' import { DependenciesField, DEPENDENCIES_FIELDS, Registries } from '@pnpm/types'
import { refToRelative } from 'dependency-path' import { depPathToFilename, refToRelative } from 'dependency-path'
import path = require('path') import path = require('path')
import normalizePath = require('normalize-path') import normalizePath = require('normalize-path')
import realpathMissing = require('realpath-missing') import realpathMissing = require('realpath-missing')
@@ -394,7 +393,7 @@ function getPkgInfo (
isPeer: Boolean(opts.peers?.has(opts.alias)), isPeer: Boolean(opts.peers?.has(opts.alias)),
isSkipped, isSkipped,
name, name,
path: depPath ? path.join(opts.modulesDir, '.pnpm', pkgIdToFilename(depPath, opts.lockfileDir)) : path.join(opts.modulesDir, '..', opts.ref.substr(5)), path: depPath ? path.join(opts.modulesDir, '.pnpm', depPathToFilename(depPath, opts.lockfileDir)) : path.join(opts.modulesDir, '..', opts.ref.substr(5)),
version, version,
} }
if (resolved) { if (resolved) {

View File

@@ -33,6 +33,7 @@
"dependencies": { "dependencies": {
"@pnpm/types": "workspace:6.3.1", "@pnpm/types": "workspace:6.3.1",
"encode-registry": "^3.0.0", "encode-registry": "^3.0.0",
"normalize-path": "^3.0.0",
"semver": "^7.3.4" "semver": "^7.3.4"
}, },
"devDependencies": { "devDependencies": {

View File

@@ -1,5 +1,7 @@
import { Registries } from '@pnpm/types' import { Registries } from '@pnpm/types'
import encodeRegistry = require('encode-registry') import encodeRegistry = require('encode-registry')
import normalize = require('normalize-path')
import path = require('path')
import semver = require('semver') import semver = require('semver')
export function isAbsolute (dependencyPath: string) { export function isAbsolute (dependencyPath: string) {
@@ -126,3 +128,17 @@ export function parse (dependencyPath: string) {
isAbsolute: _isAbsolute, isAbsolute: _isAbsolute,
} }
} }
export function depPathToFilename (depPath: string, lockfileDir: string) {
if (depPath.indexOf('file:') !== 0) {
if (depPath.startsWith('/')) {
depPath = depPath.substring(1)
}
const index = depPath.lastIndexOf('/')
return `${depPath.substring(0, index)}@${depPath.substr(index + 1)}`
}
const absolutePath = normalize(path.join(lockfileDir, depPath.slice(5)))
const lastSlash = absolutePath.lastIndexOf('/')
return `local/${encodeURIComponent(absolutePath.substr(0, lastSlash + 1))}${absolutePath.substr(lastSlash + 1)}`
}

View File

@@ -1,5 +1,6 @@
/// <reference path="../../../typings/index.d.ts"/> /// <reference path="../../../typings/index.d.ts"/>
import { import {
depPathToFilename,
isAbsolute, isAbsolute,
parse, parse,
refToAbsolute, refToAbsolute,
@@ -116,3 +117,12 @@ test('resolve()', () => {
expect(resolve(registries, '/@qar/qar/1.0.0')).toEqual('foo.com/@qar/qar/1.0.0') expect(resolve(registries, '/@qar/qar/1.0.0')).toEqual('foo.com/@qar/qar/1.0.0')
expect(resolve(registries, 'qar.com/foo/1.0.0')).toEqual('qar.com/foo/1.0.0') expect(resolve(registries, 'qar.com/foo/1.0.0')).toEqual('qar.com/foo/1.0.0')
}) })
test('depPathToFilename()', () => {
expect(depPathToFilename('/foo/1.0.0', process.cwd())).toBe('foo@1.0.0')
expect(depPathToFilename('/@foo/bar/1.0.0', process.cwd())).toBe('@foo/bar@1.0.0')
expect(depPathToFilename('github.com/something/foo/0000', process.cwd())).toBe('github.com/something/foo@0000')
const filename = depPathToFilename('file:./test/foo-1.0.0.tgz_foo@2.0.0', process.cwd())
expect(filename).toMatch(/%2Ffoo-1.0.0.tgz_foo@2.0.0$/)
})

View File

@@ -85,7 +85,6 @@
"@pnpm/modules-yaml": "workspace:8.0.5", "@pnpm/modules-yaml": "workspace:8.0.5",
"@pnpm/package-is-installable": "workspace:^4.0.18", "@pnpm/package-is-installable": "workspace:^4.0.18",
"@pnpm/package-requester": "workspace:12.2.0", "@pnpm/package-requester": "workspace:12.2.0",
"@pnpm/pkgid-to-filename": "^3.0.0",
"@pnpm/read-package-json": "workspace:3.1.8", "@pnpm/read-package-json": "workspace:3.1.8",
"@pnpm/read-project-manifest": "workspace:1.1.5", "@pnpm/read-project-manifest": "workspace:1.1.5",
"@pnpm/store-controller-types": "workspace:9.2.0", "@pnpm/store-controller-types": "workspace:9.2.0",

View File

@@ -47,7 +47,6 @@ import {
write as writeModulesYaml, write as writeModulesYaml,
} from '@pnpm/modules-yaml' } from '@pnpm/modules-yaml'
import packageIsInstallable from '@pnpm/package-is-installable' import packageIsInstallable from '@pnpm/package-is-installable'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import { fromDir as readPackageFromDir } from '@pnpm/read-package-json' import { fromDir as readPackageFromDir } from '@pnpm/read-package-json'
import { readProjectManifestOnly, safeReadProjectManifestOnly } from '@pnpm/read-project-manifest' import { readProjectManifestOnly, safeReadProjectManifestOnly } from '@pnpm/read-project-manifest'
import { import {
@@ -547,7 +546,7 @@ async function lockfileToDepGraph (
const pkgSnapshot = lockfile.packages![depPath] const pkgSnapshot = lockfile.packages![depPath]
// TODO: optimize. This info can be already returned by pkgSnapshotToResolution() // TODO: optimize. This info can be already returned by pkgSnapshotToResolution()
const { name: pkgName, version: pkgVersion } = nameVerFromPkgSnapshot(depPath, pkgSnapshot) const { name: pkgName, version: pkgVersion } = nameVerFromPkgSnapshot(depPath, pkgSnapshot)
const modules = path.join(opts.virtualStoreDir, pkgIdToFilename(depPath, opts.lockfileDir), 'node_modules') const modules = path.join(opts.virtualStoreDir, dp.depPathToFilename(depPath, opts.lockfileDir), 'node_modules')
const packageId = packageIdFromSnapshot(depPath, pkgSnapshot, opts.registries) const packageId = packageIdFromSnapshot(depPath, pkgSnapshot, opts.registries)
const pkg = { const pkg = {
@@ -692,7 +691,7 @@ async function getChildrenPaths (
} else if (childPkgSnapshot) { } else if (childPkgSnapshot) {
if (ctx.skipped.has(childRelDepPath)) continue if (ctx.skipped.has(childRelDepPath)) continue
const pkgName = nameVerFromPkgSnapshot(childRelDepPath, childPkgSnapshot).name const pkgName = nameVerFromPkgSnapshot(childRelDepPath, childPkgSnapshot).name
children[alias] = path.join(ctx.virtualStoreDir, pkgIdToFilename(childRelDepPath, ctx.lockfileDir), 'node_modules', pkgName) children[alias] = path.join(ctx.virtualStoreDir, dp.depPathToFilename(childRelDepPath, ctx.lockfileDir), 'node_modules', pkgName)
} else if (allDeps[alias].indexOf('file:') === 0) { } else if (allDeps[alias].indexOf('file:') === 0) {
children[alias] = path.resolve(ctx.lockfileDir, allDeps[alias].substr(5)) children[alias] = path.resolve(ctx.lockfileDir, allDeps[alias].substr(5))
} else if (!ctx.skipped.has(childRelDepPath) && (!peerDeps || !peerDeps.has(alias))) { } else if (!ctx.skipped.has(childRelDepPath) && (!peerDeps || !peerDeps.has(alias))) {

View File

@@ -45,7 +45,6 @@
"@pnpm/lockfile-utils": "workspace:2.0.20", "@pnpm/lockfile-utils": "workspace:2.0.20",
"@pnpm/lockfile-walker": "workspace:3.0.7", "@pnpm/lockfile-walker": "workspace:3.0.7",
"@pnpm/matcher": "workspace:^1.0.3", "@pnpm/matcher": "workspace:^1.0.3",
"@pnpm/pkgid-to-filename": "^3.0.0",
"@pnpm/symlink-dependency": "workspace:3.0.12", "@pnpm/symlink-dependency": "workspace:3.0.12",
"@pnpm/types": "workspace:6.3.1", "@pnpm/types": "workspace:6.3.1",
"dependency-path": "workspace:5.0.6", "dependency-path": "workspace:5.0.6",

View File

@@ -7,7 +7,6 @@ import {
import lockfileWalker, { LockfileWalkerStep } from '@pnpm/lockfile-walker' import lockfileWalker, { LockfileWalkerStep } from '@pnpm/lockfile-walker'
import logger, { globalWarn } from '@pnpm/logger' import logger, { globalWarn } from '@pnpm/logger'
import matcher from '@pnpm/matcher' import matcher from '@pnpm/matcher'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import symlinkDependency from '@pnpm/symlink-dependency' import symlinkDependency from '@pnpm/symlink-dependency'
import { HoistedDependencies } from '@pnpm/types' import { HoistedDependencies } from '@pnpm/types'
import * as dp from 'dependency-path' import * as dp from 'dependency-path'
@@ -199,7 +198,7 @@ async function symlinkHoistedDependencies (
return return
} }
const pkgName = nameVerFromPkgSnapshot(depPath, pkgSnapshot).name const pkgName = nameVerFromPkgSnapshot(depPath, pkgSnapshot).name
const modules = path.join(opts.virtualStoreDir, pkgIdToFilename(depPath, opts.lockfileDir), 'node_modules') const modules = path.join(opts.virtualStoreDir, dp.depPathToFilename(depPath, opts.lockfileDir), 'node_modules')
const depLocation = path.join(modules, pkgName) const depLocation = path.join(modules, pkgName)
await Promise.all(Object.entries(pkgAliases).map(async ([pkgAlias, hoistType]) => { await Promise.all(Object.entries(pkgAliases).map(async ([pkgAlias, hoistType]) => {
const targetDir = hoistType === 'public' const targetDir = hoistType === 'public'

View File

@@ -45,7 +45,6 @@
"@pnpm/config": "workspace:11.10.1", "@pnpm/config": "workspace:11.10.1",
"@pnpm/lockfile-file": "workspace:3.1.2", "@pnpm/lockfile-file": "workspace:3.1.2",
"@pnpm/lockfile-utils": "workspace:2.0.20", "@pnpm/lockfile-utils": "workspace:2.0.20",
"@pnpm/pkgid-to-filename": "^3.0.0",
"@pnpm/read-project-manifest": "workspace:1.1.5", "@pnpm/read-project-manifest": "workspace:1.1.5",
"@yarnpkg/pnp": "^2.3.2", "@yarnpkg/pnp": "^2.3.2",
"dependency-path": "workspace:5.0.6", "dependency-path": "workspace:5.0.6",

View File

@@ -3,10 +3,9 @@ import { Lockfile, readWantedLockfile } from '@pnpm/lockfile-file'
import { import {
nameVerFromPkgSnapshot, nameVerFromPkgSnapshot,
} from '@pnpm/lockfile-utils' } from '@pnpm/lockfile-utils'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import readImporterManifest from '@pnpm/read-project-manifest' import readImporterManifest from '@pnpm/read-project-manifest'
import { Registries } from '@pnpm/types' import { Registries } from '@pnpm/types'
import { refToRelative } from 'dependency-path' import { depPathToFilename, refToRelative } from 'dependency-path'
import { generateInlinedScript, PackageRegistry } from '@yarnpkg/pnp' import { generateInlinedScript, PackageRegistry } from '@yarnpkg/pnp'
import fs = require('mz/fs') import fs = require('mz/fs')
import normalizePath = require('normalize-path') import normalizePath = require('normalize-path')
@@ -116,7 +115,7 @@ export function lockfileToPackageRegistry (
// Seems like this field should always contain a relative path // Seems like this field should always contain a relative path
let packageLocation = normalizePath(path.relative(opts.lockfileDir, path.join( let packageLocation = normalizePath(path.relative(opts.lockfileDir, path.join(
opts.virtualStoreDir, opts.virtualStoreDir,
pkgIdToFilename(relDepPath, opts.lockfileDir), depPathToFilename(relDepPath, opts.lockfileDir),
'node_modules', 'node_modules',
name name
))) )))

View File

@@ -31,7 +31,6 @@
"@pnpm/filter-lockfile": "workspace:4.0.14", "@pnpm/filter-lockfile": "workspace:4.0.14",
"@pnpm/lockfile-types": "workspace:2.1.1", "@pnpm/lockfile-types": "workspace:2.1.1",
"@pnpm/lockfile-utils": "workspace:2.0.20", "@pnpm/lockfile-utils": "workspace:2.0.20",
"@pnpm/pkgid-to-filename": "^3.0.0",
"@pnpm/read-modules-dir": "workspace:2.0.3", "@pnpm/read-modules-dir": "workspace:2.0.3",
"@pnpm/remove-bins": "workspace:1.0.9", "@pnpm/remove-bins": "workspace:1.0.9",
"@pnpm/store-controller-types": "workspace:9.2.0", "@pnpm/store-controller-types": "workspace:9.2.0",

View File

@@ -10,7 +10,6 @@ import {
} from '@pnpm/lockfile-types' } from '@pnpm/lockfile-types'
import { packageIdFromSnapshot } from '@pnpm/lockfile-utils' import { packageIdFromSnapshot } from '@pnpm/lockfile-utils'
import logger from '@pnpm/logger' import logger from '@pnpm/logger'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import readModulesDir from '@pnpm/read-modules-dir' import readModulesDir from '@pnpm/read-modules-dir'
import { StoreController } from '@pnpm/store-controller-types' import { StoreController } from '@pnpm/store-controller-types'
import { import {
@@ -19,6 +18,7 @@ import {
HoistedDependencies, HoistedDependencies,
Registries, Registries,
} from '@pnpm/types' } from '@pnpm/types'
import { depPathToFilename } from 'dependency-path'
import removeDirectDependency from './removeDirectDependency' import removeDirectDependency from './removeDirectDependency'
import path = require('path') import path = require('path')
import rimraf = require('@zkochan/rimraf') import rimraf = require('@zkochan/rimraf')
@@ -142,7 +142,7 @@ export default async function prune (
} }
await Promise.all(orphanDepPaths.map(async (orphanDepPath) => { await Promise.all(orphanDepPaths.map(async (orphanDepPath) => {
const pathToRemove = path.join(opts.virtualStoreDir, pkgIdToFilename(orphanDepPath, opts.lockfileDir)) const pathToRemove = path.join(opts.virtualStoreDir, depPathToFilename(orphanDepPath, opts.lockfileDir))
removalLogger.debug(pathToRemove) removalLogger.debug(pathToRemove)
try { try {
await rimraf(pathToRemove) await rimraf(pathToRemove)

View File

@@ -38,11 +38,11 @@
"@pnpm/cafs": "workspace:2.0.4", "@pnpm/cafs": "workspace:2.0.4",
"@pnpm/core-loggers": "workspace:5.0.2", "@pnpm/core-loggers": "workspace:5.0.2",
"@pnpm/fetcher-base": "workspace:9.0.3", "@pnpm/fetcher-base": "workspace:9.0.3",
"@pnpm/pkgid-to-filename": "^3.0.0",
"@pnpm/read-package-json": "workspace:3.1.8", "@pnpm/read-package-json": "workspace:3.1.8",
"@pnpm/resolver-base": "workspace:7.1.0", "@pnpm/resolver-base": "workspace:7.1.0",
"@pnpm/store-controller-types": "workspace:9.2.0", "@pnpm/store-controller-types": "workspace:9.2.0",
"@pnpm/types": "workspace:6.3.1", "@pnpm/types": "workspace:6.3.1",
"dependency-path": "workspace:^5.0.6",
"load-json-file": "^6.2.0", "load-json-file": "^6.2.0",
"mz": "^2.7.0", "mz": "^2.7.0",
"p-defer": "^3.0.0", "p-defer": "^3.0.0",

View File

@@ -15,7 +15,6 @@ import {
FetchResult, FetchResult,
} from '@pnpm/fetcher-base' } from '@pnpm/fetcher-base'
import logger from '@pnpm/logger' import logger from '@pnpm/logger'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import readPackage from '@pnpm/read-package-json' import readPackage from '@pnpm/read-package-json'
import { import {
DirectoryResolution, DirectoryResolution,
@@ -33,6 +32,7 @@ import {
WantedDependency, WantedDependency,
} from '@pnpm/store-controller-types' } from '@pnpm/store-controller-types'
import { DependencyManifest } from '@pnpm/types' import { DependencyManifest } from '@pnpm/types'
import { depPathToFilename } from 'dependency-path'
import * as fs from 'mz/fs' import * as fs from 'mz/fs'
import PQueue from 'p-queue' import PQueue from 'p-queue'
import safeDeferredPromise from './safeDeferredPromise' import safeDeferredPromise from './safeDeferredPromise'
@@ -274,7 +274,7 @@ function fetchToStore (
files: () => Promise<PackageFilesResponse> files: () => Promise<PackageFilesResponse>
finishing: () => Promise<void> finishing: () => Promise<void>
} { } {
const targetRelative = pkgIdToFilename(opts.pkgId, opts.lockfileDir) const targetRelative = depPathToFilename(opts.pkgId, opts.lockfileDir)
const target = path.join(ctx.storeDir, targetRelative) const target = path.join(ctx.storeDir, targetRelative)
if (!ctx.fetchingLocker.has(opts.pkgId)) { if (!ctx.fetchingLocker.has(opts.pkgId)) {

View File

@@ -4,9 +4,9 @@ import { getFilePathInCafs, PackageFilesIndex } from '@pnpm/cafs'
import createClient from '@pnpm/client' import createClient from '@pnpm/client'
import { streamParser } from '@pnpm/logger' import { streamParser } from '@pnpm/logger'
import createPackageRequester, { PackageFilesResponse, PackageResponse } from '@pnpm/package-requester' import createPackageRequester, { PackageFilesResponse, PackageResponse } from '@pnpm/package-requester'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import { DependencyManifest } from '@pnpm/types' import { DependencyManifest } from '@pnpm/types'
import delay from 'delay' import delay from 'delay'
import { depPathToFilename } from 'dependency-path'
import path = require('path') import path = require('path')
import loadJsonFile = require('load-json-file') import loadJsonFile = require('load-json-file')
import fs = require('mz/fs') import fs = require('mz/fs')
@@ -646,7 +646,7 @@ test('refetch package to store if it has been modified', async () => {
expect(reporter).toBeCalledWith(expect.objectContaining({ expect(reporter).toBeCalledWith(expect.objectContaining({
level: 'warn', level: 'warn',
message: `Refetching ${path.join(storeDir, pkgIdToFilename(pkgId, process.cwd()))} to store. It was either modified or had no integrity checksums`, message: `Refetching ${path.join(storeDir, depPathToFilename(pkgId, process.cwd()))} to store. It was either modified or had no integrity checksums`,
name: 'pnpm:package-requester', name: 'pnpm:package-requester',
prefix: lockfileDir, prefix: lockfileDir,
})) }))

View File

@@ -18,6 +18,9 @@
{ {
"path": "../core-loggers" "path": "../core-loggers"
}, },
{
"path": "../dependency-path"
},
{ {
"path": "../fetcher-base" "path": "../fetcher-base"
}, },

View File

@@ -60,7 +60,6 @@
"@pnpm/lockfile-walker": "workspace:3.0.7", "@pnpm/lockfile-walker": "workspace:3.0.7",
"@pnpm/modules-yaml": "workspace:8.0.5", "@pnpm/modules-yaml": "workspace:8.0.5",
"@pnpm/normalize-registries": "workspace:1.0.5", "@pnpm/normalize-registries": "workspace:1.0.5",
"@pnpm/pkgid-to-filename": "^3.0.0",
"@pnpm/sort-packages": "workspace:1.0.15", "@pnpm/sort-packages": "workspace:1.0.15",
"@pnpm/store-connection-manager": "workspace:0.3.55", "@pnpm/store-connection-manager": "workspace:0.3.55",
"@pnpm/store-controller-types": "workspace:9.2.0", "@pnpm/store-controller-types": "workspace:9.2.0",

View File

@@ -18,7 +18,6 @@ import {
import lockfileWalker, { LockfileWalkerStep } from '@pnpm/lockfile-walker' import lockfileWalker, { LockfileWalkerStep } from '@pnpm/lockfile-walker'
import logger, { streamParser } from '@pnpm/logger' import logger, { streamParser } from '@pnpm/logger'
import { write as writeModulesYaml } from '@pnpm/modules-yaml' import { write as writeModulesYaml } from '@pnpm/modules-yaml'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import { ProjectManifest } from '@pnpm/types' import { ProjectManifest } from '@pnpm/types'
import * as dp from 'dependency-path' import * as dp from 'dependency-path'
import runGroups from 'run-groups' import runGroups from 'run-groups'
@@ -266,9 +265,9 @@ async function _rebuild (
async () => { async () => {
const pkgSnapshot = pkgSnapshots[depPath] const pkgSnapshot = pkgSnapshots[depPath]
const pkgInfo = nameVerFromPkgSnapshot(depPath, pkgSnapshot) const pkgInfo = nameVerFromPkgSnapshot(depPath, pkgSnapshot)
const pkgRoot = path.join(ctx.virtualStoreDir, pkgIdToFilename(depPath, opts.lockfileDir), 'node_modules', pkgInfo.name) const pkgRoot = path.join(ctx.virtualStoreDir, dp.depPathToFilename(depPath, opts.lockfileDir), 'node_modules', pkgInfo.name)
try { try {
const modules = path.join(ctx.virtualStoreDir, pkgIdToFilename(depPath, opts.lockfileDir), 'node_modules') const modules = path.join(ctx.virtualStoreDir, dp.depPathToFilename(depPath, opts.lockfileDir), 'node_modules')
const binPath = path.join(pkgRoot, 'node_modules', '.bin') const binPath = path.join(pkgRoot, 'node_modules', '.bin')
await linkBins(modules, binPath, { warn }) await linkBins(modules, binPath, { warn })
await runPostinstallHooks({ await runPostinstallHooks({
@@ -313,7 +312,7 @@ async function _rebuild (
.map((depPath) => limitLinking(() => { .map((depPath) => limitLinking(() => {
const pkgSnapshot = pkgSnapshots[depPath] const pkgSnapshot = pkgSnapshots[depPath]
const pkgInfo = nameVerFromPkgSnapshot(depPath, pkgSnapshot) const pkgInfo = nameVerFromPkgSnapshot(depPath, pkgSnapshot)
const modules = path.join(ctx.virtualStoreDir, pkgIdToFilename(depPath, opts.lockfileDir), 'node_modules') const modules = path.join(ctx.virtualStoreDir, dp.depPathToFilename(depPath, opts.lockfileDir), 'node_modules')
const binPath = path.join(modules, pkgInfo.name, 'node_modules', '.bin') const binPath = path.join(modules, pkgInfo.name, 'node_modules', '.bin')
return linkBins(modules, binPath, { warn }) return linkBins(modules, binPath, { warn })
})) }))

View File

@@ -60,7 +60,6 @@
"@pnpm/normalize-registries": "workspace:1.0.5", "@pnpm/normalize-registries": "workspace:1.0.5",
"@pnpm/parse-wanted-dependency": "workspace:1.0.0", "@pnpm/parse-wanted-dependency": "workspace:1.0.0",
"@pnpm/pick-registry-for-package": "workspace:1.0.5", "@pnpm/pick-registry-for-package": "workspace:1.0.5",
"@pnpm/pkgid-to-filename": "^3.0.0",
"@pnpm/store-connection-manager": "workspace:0.3.55", "@pnpm/store-connection-manager": "workspace:0.3.55",
"@pnpm/store-controller-types": "workspace:9.2.0", "@pnpm/store-controller-types": "workspace:9.2.0",
"@pnpm/store-path": "^4.0.3", "@pnpm/store-path": "^4.0.3",

View File

@@ -2,7 +2,6 @@ import { getFilePathInCafs, PackageFilesIndex } from '@pnpm/cafs'
import { getContextForSingleImporter } from '@pnpm/get-context' import { getContextForSingleImporter } from '@pnpm/get-context'
import { nameVerFromPkgSnapshot } from '@pnpm/lockfile-utils' import { nameVerFromPkgSnapshot } from '@pnpm/lockfile-utils'
import { streamParser } from '@pnpm/logger' import { streamParser } from '@pnpm/logger'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import * as dp from 'dependency-path' import * as dp from 'dependency-path'
import extendOptions, { import extendOptions, {
StoreStatusOptions, StoreStatusOptions,
@@ -48,7 +47,7 @@ export default async function (maybeOpts: StoreStatusOptions) {
? getFilePathInCafs(cafsDir, integrity, 'index') ? getFilePathInCafs(cafsDir, integrity, 'index')
: path.join(storeDir, pkgPath, 'integrity.json') : path.join(storeDir, pkgPath, 'integrity.json')
const { files } = await loadJsonFile<PackageFilesIndex>(pkgIndexFilePath) const { files } = await loadJsonFile<PackageFilesIndex>(pkgIndexFilePath)
return (await dint.check(path.join(virtualStoreDir, pkgIdToFilename(depPath, opts.dir), 'node_modules', name), files)) === false return (await dint.check(path.join(virtualStoreDir, dp.depPathToFilename(depPath, opts.dir), 'node_modules', name), files)) === false
}) })
if (reporter && typeof reporter === 'function') { if (reporter && typeof reporter === 'function') {

View File

@@ -37,7 +37,6 @@
"@pnpm/npm-resolver": "workspace:10.2.1", "@pnpm/npm-resolver": "workspace:10.2.1",
"@pnpm/package-is-installable": "workspace:4.0.18", "@pnpm/package-is-installable": "workspace:4.0.18",
"@pnpm/pick-registry-for-package": "workspace:1.0.5", "@pnpm/pick-registry-for-package": "workspace:1.0.5",
"@pnpm/pkgid-to-filename": "^3.0.0",
"@pnpm/prune-lockfile": "workspace:^2.0.17", "@pnpm/prune-lockfile": "workspace:^2.0.17",
"@pnpm/read-package-json": "workspace:^3.1.8", "@pnpm/read-package-json": "workspace:^3.1.8",
"@pnpm/resolver-base": "workspace:7.1.0", "@pnpm/resolver-base": "workspace:7.1.0",

View File

@@ -17,7 +17,6 @@ import {
import logger from '@pnpm/logger' import logger from '@pnpm/logger'
import packageIsInstallable from '@pnpm/package-is-installable' import packageIsInstallable from '@pnpm/package-is-installable'
import pickRegistryForPackage from '@pnpm/pick-registry-for-package' import pickRegistryForPackage from '@pnpm/pick-registry-for-package'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import { import {
DirectoryResolution, DirectoryResolution,
PreferredVersions, PreferredVersions,
@@ -576,7 +575,7 @@ async function resolveDependency (
await exists( await exists(
path.join( path.join(
ctx.virtualStoreDir, ctx.virtualStoreDir,
pkgIdToFilename(currentPkg.depPath, ctx.prefix), dp.depPathToFilename(currentPkg.depPath, ctx.prefix),
'node_modules', 'node_modules',
nameVerFromPkgSnapshot(currentPkg.depPath, currentPkg.dependencyLockfile).name, nameVerFromPkgSnapshot(currentPkg.depPath, currentPkg.dependencyLockfile).name,
'package.json' 'package.json'

View File

@@ -1,7 +1,7 @@
import PnpmError from '@pnpm/error' import PnpmError from '@pnpm/error'
import logger from '@pnpm/logger' import logger from '@pnpm/logger'
import pkgIdToFilename from '@pnpm/pkgid-to-filename'
import { Dependencies } from '@pnpm/types' import { Dependencies } from '@pnpm/types'
import { depPathToFilename } from 'dependency-path'
import { import {
createNodeId, createNodeId,
splitNodeId, splitNodeId,
@@ -221,7 +221,7 @@ function resolvePeersOfNode<T extends PartialResolvedPackage> (
let modules: string let modules: string
let depPath: string let depPath: string
const localLocation = path.join(ctx.virtualStoreDir, pkgIdToFilename(resolvedPackage.depPath, ctx.lockfileDir)) const localLocation = path.join(ctx.virtualStoreDir, depPathToFilename(resolvedPackage.depPath, ctx.lockfileDir))
if (R.isEmpty(allResolvedPeers)) { if (R.isEmpty(allResolvedPeers)) {
modules = path.join(localLocation, 'node_modules') modules = path.join(localLocation, 'node_modules')
depPath = resolvedPackage.depPath depPath = resolvedPackage.depPath

View File

@@ -36,7 +36,6 @@
"@pnpm/normalize-registries": "workspace:1.0.5", "@pnpm/normalize-registries": "workspace:1.0.5",
"@pnpm/package-requester": "workspace:12.2.0", "@pnpm/package-requester": "workspace:12.2.0",
"@pnpm/parse-wanted-dependency": "workspace:1.0.0", "@pnpm/parse-wanted-dependency": "workspace:1.0.0",
"@pnpm/pkgid-to-filename": "^3.0.0",
"@pnpm/prune-lockfile": "workspace:2.0.17", "@pnpm/prune-lockfile": "workspace:2.0.17",
"@pnpm/read-modules-dir": "workspace:2.0.3", "@pnpm/read-modules-dir": "workspace:2.0.3",
"@pnpm/read-package-json": "workspace:3.1.8", "@pnpm/read-package-json": "workspace:3.1.8",

32
pnpm-lock.yaml generated
View File

@@ -348,7 +348,6 @@ importers:
'@pnpm/lockfile-utils': 'link:../lockfile-utils' '@pnpm/lockfile-utils': 'link:../lockfile-utils'
'@pnpm/modules-yaml': 'link:../modules-yaml' '@pnpm/modules-yaml': 'link:../modules-yaml'
'@pnpm/normalize-registries': 'link:../normalize-registries' '@pnpm/normalize-registries': 'link:../normalize-registries'
'@pnpm/pkgid-to-filename': 3.0.0
'@pnpm/read-modules-dir': 'link:../read-modules-dir' '@pnpm/read-modules-dir': 'link:../read-modules-dir'
'@pnpm/read-package-json': 'link:../read-package-json' '@pnpm/read-package-json': 'link:../read-package-json'
'@pnpm/types': 'link:../types' '@pnpm/types': 'link:../types'
@@ -368,7 +367,6 @@ importers:
'@pnpm/logger': ^3.2.3 '@pnpm/logger': ^3.2.3
'@pnpm/modules-yaml': 'workspace:8.0.5' '@pnpm/modules-yaml': 'workspace:8.0.5'
'@pnpm/normalize-registries': 'workspace:1.0.5' '@pnpm/normalize-registries': 'workspace:1.0.5'
'@pnpm/pkgid-to-filename': ^3.0.0
'@pnpm/read-modules-dir': 'workspace:2.0.3' '@pnpm/read-modules-dir': 'workspace:2.0.3'
'@pnpm/read-package-json': 'workspace:3.1.8' '@pnpm/read-package-json': 'workspace:3.1.8'
'@pnpm/types': 'workspace:6.3.1' '@pnpm/types': 'workspace:6.3.1'
@@ -382,6 +380,7 @@ importers:
dependencies: dependencies:
'@pnpm/types': 'link:../types' '@pnpm/types': 'link:../types'
encode-registry: 3.0.0 encode-registry: 3.0.0
normalize-path: 3.0.0
semver: 7.3.4 semver: 7.3.4
devDependencies: devDependencies:
'@types/semver': 7.3.4 '@types/semver': 7.3.4
@@ -391,6 +390,7 @@ importers:
'@types/semver': ^7.3.4 '@types/semver': ^7.3.4
dependency-path: 'link:' dependency-path: 'link:'
encode-registry: ^3.0.0 encode-registry: ^3.0.0
normalize-path: ^3.0.0
semver: ^7.3.4 semver: ^7.3.4
packages/error: packages/error:
specifiers: {} specifiers: {}
@@ -678,7 +678,6 @@ importers:
'@pnpm/modules-yaml': 'link:../modules-yaml' '@pnpm/modules-yaml': 'link:../modules-yaml'
'@pnpm/package-is-installable': 'link:../package-is-installable' '@pnpm/package-is-installable': 'link:../package-is-installable'
'@pnpm/package-requester': 'link:../package-requester' '@pnpm/package-requester': 'link:../package-requester'
'@pnpm/pkgid-to-filename': 3.0.0
'@pnpm/read-package-json': 'link:../read-package-json' '@pnpm/read-package-json': 'link:../read-package-json'
'@pnpm/read-project-manifest': 'link:../read-project-manifest' '@pnpm/read-project-manifest': 'link:../read-project-manifest'
'@pnpm/store-controller-types': 'link:../store-controller-types' '@pnpm/store-controller-types': 'link:../store-controller-types'
@@ -734,7 +733,6 @@ importers:
'@pnpm/package-is-installable': 'workspace:^4.0.18' '@pnpm/package-is-installable': 'workspace:^4.0.18'
'@pnpm/package-requester': 'workspace:12.2.0' '@pnpm/package-requester': 'workspace:12.2.0'
'@pnpm/package-store': 'workspace:*' '@pnpm/package-store': 'workspace:*'
'@pnpm/pkgid-to-filename': ^3.0.0
'@pnpm/read-package-json': 'workspace:3.1.8' '@pnpm/read-package-json': 'workspace:3.1.8'
'@pnpm/read-project-manifest': 'workspace:1.1.5' '@pnpm/read-project-manifest': 'workspace:1.1.5'
'@pnpm/read-projects-context': 'workspace:*' '@pnpm/read-projects-context': 'workspace:*'
@@ -771,7 +769,6 @@ importers:
'@pnpm/lockfile-utils': 'link:../lockfile-utils' '@pnpm/lockfile-utils': 'link:../lockfile-utils'
'@pnpm/lockfile-walker': 'link:../lockfile-walker' '@pnpm/lockfile-walker': 'link:../lockfile-walker'
'@pnpm/matcher': 'link:../matcher' '@pnpm/matcher': 'link:../matcher'
'@pnpm/pkgid-to-filename': 3.0.0
'@pnpm/symlink-dependency': 'link:../symlink-dependency' '@pnpm/symlink-dependency': 'link:../symlink-dependency'
'@pnpm/types': 'link:../types' '@pnpm/types': 'link:../types'
dependency-path: 'link:../dependency-path' dependency-path: 'link:../dependency-path'
@@ -787,7 +784,6 @@ importers:
'@pnpm/lockfile-walker': 'workspace:3.0.7' '@pnpm/lockfile-walker': 'workspace:3.0.7'
'@pnpm/logger': ^3.2.3 '@pnpm/logger': ^3.2.3
'@pnpm/matcher': 'workspace:^1.0.3' '@pnpm/matcher': 'workspace:^1.0.3'
'@pnpm/pkgid-to-filename': ^3.0.0
'@pnpm/symlink-dependency': 'workspace:3.0.12' '@pnpm/symlink-dependency': 'workspace:3.0.12'
'@pnpm/types': 'workspace:6.3.1' '@pnpm/types': 'workspace:6.3.1'
'@types/ramda': ^0.27.34 '@types/ramda': ^0.27.34
@@ -986,7 +982,6 @@ importers:
'@pnpm/config': 'link:../config' '@pnpm/config': 'link:../config'
'@pnpm/lockfile-file': 'link:../lockfile-file' '@pnpm/lockfile-file': 'link:../lockfile-file'
'@pnpm/lockfile-utils': 'link:../lockfile-utils' '@pnpm/lockfile-utils': 'link:../lockfile-utils'
'@pnpm/pkgid-to-filename': 3.0.0
'@pnpm/read-project-manifest': 'link:../read-project-manifest' '@pnpm/read-project-manifest': 'link:../read-project-manifest'
'@yarnpkg/pnp': 2.3.2 '@yarnpkg/pnp': 2.3.2
dependency-path: 'link:../dependency-path' dependency-path: 'link:../dependency-path'
@@ -1005,7 +1000,6 @@ importers:
'@pnpm/lockfile-file': 'workspace:3.1.2' '@pnpm/lockfile-file': 'workspace:3.1.2'
'@pnpm/lockfile-utils': 'workspace:2.0.20' '@pnpm/lockfile-utils': 'workspace:2.0.20'
'@pnpm/logger': ^3.2.3 '@pnpm/logger': ^3.2.3
'@pnpm/pkgid-to-filename': ^3.0.0
'@pnpm/read-project-manifest': 'workspace:1.1.5' '@pnpm/read-project-manifest': 'workspace:1.1.5'
'@pnpm/types': 'workspace:6.3.1' '@pnpm/types': 'workspace:6.3.1'
'@types/mz': 0.0.32 '@types/mz': 0.0.32
@@ -1143,7 +1137,6 @@ importers:
'@pnpm/filter-lockfile': 'link:../filter-lockfile' '@pnpm/filter-lockfile': 'link:../filter-lockfile'
'@pnpm/lockfile-types': 'link:../lockfile-types' '@pnpm/lockfile-types': 'link:../lockfile-types'
'@pnpm/lockfile-utils': 'link:../lockfile-utils' '@pnpm/lockfile-utils': 'link:../lockfile-utils'
'@pnpm/pkgid-to-filename': 3.0.0
'@pnpm/read-modules-dir': 'link:../read-modules-dir' '@pnpm/read-modules-dir': 'link:../read-modules-dir'
'@pnpm/remove-bins': 'link:../remove-bins' '@pnpm/remove-bins': 'link:../remove-bins'
'@pnpm/store-controller-types': 'link:../store-controller-types' '@pnpm/store-controller-types': 'link:../store-controller-types'
@@ -1162,7 +1155,6 @@ importers:
'@pnpm/lockfile-utils': 'workspace:2.0.20' '@pnpm/lockfile-utils': 'workspace:2.0.20'
'@pnpm/logger': ^3.2.3 '@pnpm/logger': ^3.2.3
'@pnpm/modules-cleaner': 'link:' '@pnpm/modules-cleaner': 'link:'
'@pnpm/pkgid-to-filename': ^3.0.0
'@pnpm/read-modules-dir': 'workspace:2.0.3' '@pnpm/read-modules-dir': 'workspace:2.0.3'
'@pnpm/remove-bins': 'workspace:1.0.9' '@pnpm/remove-bins': 'workspace:1.0.9'
'@pnpm/store-controller-types': 'workspace:9.2.0' '@pnpm/store-controller-types': 'workspace:9.2.0'
@@ -1368,11 +1360,11 @@ importers:
'@pnpm/cafs': 'link:../cafs' '@pnpm/cafs': 'link:../cafs'
'@pnpm/core-loggers': 'link:../core-loggers' '@pnpm/core-loggers': 'link:../core-loggers'
'@pnpm/fetcher-base': 'link:../fetcher-base' '@pnpm/fetcher-base': 'link:../fetcher-base'
'@pnpm/pkgid-to-filename': 3.0.0
'@pnpm/read-package-json': 'link:../read-package-json' '@pnpm/read-package-json': 'link:../read-package-json'
'@pnpm/resolver-base': 'link:../resolver-base' '@pnpm/resolver-base': 'link:../resolver-base'
'@pnpm/store-controller-types': 'link:../store-controller-types' '@pnpm/store-controller-types': 'link:../store-controller-types'
'@pnpm/types': 'link:../types' '@pnpm/types': 'link:../types'
dependency-path: 'link:../dependency-path'
load-json-file: 6.2.0 load-json-file: 6.2.0
mz: 2.7.0 mz: 2.7.0
p-defer: 3.0.0 p-defer: 3.0.0
@@ -1404,7 +1396,6 @@ importers:
'@pnpm/fetcher-base': 'workspace:9.0.3' '@pnpm/fetcher-base': 'workspace:9.0.3'
'@pnpm/logger': ^3.2.3 '@pnpm/logger': ^3.2.3
'@pnpm/package-requester': 'link:' '@pnpm/package-requester': 'link:'
'@pnpm/pkgid-to-filename': ^3.0.0
'@pnpm/read-package-json': 'workspace:3.1.8' '@pnpm/read-package-json': 'workspace:3.1.8'
'@pnpm/resolver-base': 'workspace:7.1.0' '@pnpm/resolver-base': 'workspace:7.1.0'
'@pnpm/store-controller-types': 'workspace:9.2.0' '@pnpm/store-controller-types': 'workspace:9.2.0'
@@ -1415,6 +1406,7 @@ importers:
'@types/ramda': ^0.27.34 '@types/ramda': ^0.27.34
'@types/ssri': ^6.0.3 '@types/ssri': ^6.0.3
delay: ^4.4.0 delay: ^4.4.0
dependency-path: 'workspace:^5.0.6'
load-json-file: ^6.2.0 load-json-file: ^6.2.0
mz: ^2.7.0 mz: ^2.7.0
ncp: ^2.0.0 ncp: ^2.0.0
@@ -1924,7 +1916,6 @@ importers:
'@pnpm/lockfile-walker': 'link:../lockfile-walker' '@pnpm/lockfile-walker': 'link:../lockfile-walker'
'@pnpm/modules-yaml': 'link:../modules-yaml' '@pnpm/modules-yaml': 'link:../modules-yaml'
'@pnpm/normalize-registries': 'link:../normalize-registries' '@pnpm/normalize-registries': 'link:../normalize-registries'
'@pnpm/pkgid-to-filename': 3.0.0
'@pnpm/sort-packages': 'link:../sort-packages' '@pnpm/sort-packages': 'link:../sort-packages'
'@pnpm/store-connection-manager': 'link:../store-connection-manager' '@pnpm/store-connection-manager': 'link:../store-connection-manager'
'@pnpm/store-controller-types': 'link:../store-controller-types' '@pnpm/store-controller-types': 'link:../store-controller-types'
@@ -1970,7 +1961,6 @@ importers:
'@pnpm/logger': ^3.2.3 '@pnpm/logger': ^3.2.3
'@pnpm/modules-yaml': 'workspace:8.0.5' '@pnpm/modules-yaml': 'workspace:8.0.5'
'@pnpm/normalize-registries': 'workspace:1.0.5' '@pnpm/normalize-registries': 'workspace:1.0.5'
'@pnpm/pkgid-to-filename': ^3.0.0
'@pnpm/plugin-commands-rebuild': 'link:' '@pnpm/plugin-commands-rebuild': 'link:'
'@pnpm/prepare': 'workspace:0.0.16' '@pnpm/prepare': 'workspace:0.0.16'
'@pnpm/sort-packages': 'workspace:1.0.15' '@pnpm/sort-packages': 'workspace:1.0.15'
@@ -2112,7 +2102,6 @@ importers:
'@pnpm/normalize-registries': 'link:../normalize-registries' '@pnpm/normalize-registries': 'link:../normalize-registries'
'@pnpm/parse-wanted-dependency': 'link:../parse-wanted-dependency' '@pnpm/parse-wanted-dependency': 'link:../parse-wanted-dependency'
'@pnpm/pick-registry-for-package': 'link:../pick-registry-for-package' '@pnpm/pick-registry-for-package': 'link:../pick-registry-for-package'
'@pnpm/pkgid-to-filename': 3.0.0
'@pnpm/store-connection-manager': 'link:../store-connection-manager' '@pnpm/store-connection-manager': 'link:../store-connection-manager'
'@pnpm/store-controller-types': 'link:../store-controller-types' '@pnpm/store-controller-types': 'link:../store-controller-types'
'@pnpm/store-path': 4.0.3 '@pnpm/store-path': 4.0.3
@@ -2153,7 +2142,6 @@ importers:
'@pnpm/normalize-registries': 'workspace:1.0.5' '@pnpm/normalize-registries': 'workspace:1.0.5'
'@pnpm/parse-wanted-dependency': 'workspace:1.0.0' '@pnpm/parse-wanted-dependency': 'workspace:1.0.0'
'@pnpm/pick-registry-for-package': 'workspace:1.0.5' '@pnpm/pick-registry-for-package': 'workspace:1.0.5'
'@pnpm/pkgid-to-filename': ^3.0.0
'@pnpm/plugin-commands-store': 'link:' '@pnpm/plugin-commands-store': 'link:'
'@pnpm/prepare': 'workspace:0.0.16' '@pnpm/prepare': 'workspace:0.0.16'
'@pnpm/store-connection-manager': 'workspace:0.3.55' '@pnpm/store-connection-manager': 'workspace:0.3.55'
@@ -2512,7 +2500,6 @@ importers:
'@pnpm/npm-resolver': 'link:../npm-resolver' '@pnpm/npm-resolver': 'link:../npm-resolver'
'@pnpm/package-is-installable': 'link:../package-is-installable' '@pnpm/package-is-installable': 'link:../package-is-installable'
'@pnpm/pick-registry-for-package': 'link:../pick-registry-for-package' '@pnpm/pick-registry-for-package': 'link:../pick-registry-for-package'
'@pnpm/pkgid-to-filename': 3.0.0
'@pnpm/prune-lockfile': 'link:../prune-lockfile' '@pnpm/prune-lockfile': 'link:../prune-lockfile'
'@pnpm/read-package-json': 'link:../read-package-json' '@pnpm/read-package-json': 'link:../read-package-json'
'@pnpm/resolver-base': 'link:../resolver-base' '@pnpm/resolver-base': 'link:../resolver-base'
@@ -2543,7 +2530,6 @@ importers:
'@pnpm/npm-resolver': 'workspace:10.2.1' '@pnpm/npm-resolver': 'workspace:10.2.1'
'@pnpm/package-is-installable': 'workspace:4.0.18' '@pnpm/package-is-installable': 'workspace:4.0.18'
'@pnpm/pick-registry-for-package': 'workspace:1.0.5' '@pnpm/pick-registry-for-package': 'workspace:1.0.5'
'@pnpm/pkgid-to-filename': ^3.0.0
'@pnpm/prune-lockfile': 'workspace:^2.0.17' '@pnpm/prune-lockfile': 'workspace:^2.0.17'
'@pnpm/read-package-json': 'workspace:^3.1.8' '@pnpm/read-package-json': 'workspace:^3.1.8'
'@pnpm/resolve-dependencies': 'link:' '@pnpm/resolve-dependencies': 'link:'
@@ -2703,7 +2689,6 @@ importers:
'@pnpm/normalize-registries': 'link:../normalize-registries' '@pnpm/normalize-registries': 'link:../normalize-registries'
'@pnpm/package-requester': 'link:../package-requester' '@pnpm/package-requester': 'link:../package-requester'
'@pnpm/parse-wanted-dependency': 'link:../parse-wanted-dependency' '@pnpm/parse-wanted-dependency': 'link:../parse-wanted-dependency'
'@pnpm/pkgid-to-filename': 3.0.0
'@pnpm/prune-lockfile': 'link:../prune-lockfile' '@pnpm/prune-lockfile': 'link:../prune-lockfile'
'@pnpm/read-modules-dir': 'link:../read-modules-dir' '@pnpm/read-modules-dir': 'link:../read-modules-dir'
'@pnpm/read-package-json': 'link:../read-package-json' '@pnpm/read-package-json': 'link:../read-package-json'
@@ -2800,7 +2785,6 @@ importers:
'@pnpm/package-requester': 'workspace:12.2.0' '@pnpm/package-requester': 'workspace:12.2.0'
'@pnpm/package-store': 'workspace:*' '@pnpm/package-store': 'workspace:*'
'@pnpm/parse-wanted-dependency': 'workspace:1.0.0' '@pnpm/parse-wanted-dependency': 'workspace:1.0.0'
'@pnpm/pkgid-to-filename': ^3.0.0
'@pnpm/prepare': 'workspace:0.0.16' '@pnpm/prepare': 'workspace:0.0.16'
'@pnpm/prune-lockfile': 'workspace:2.0.17' '@pnpm/prune-lockfile': 'workspace:2.0.17'
'@pnpm/read-modules-dir': 'workspace:2.0.3' '@pnpm/read-modules-dir': 'workspace:2.0.3'
@@ -4034,14 +4018,6 @@ packages:
node: '>=10' node: '>=10'
resolution: resolution:
integrity: sha512-/nZCAUeKwlv1MldtOHSPDm5SuXBy4L4SoS30gYn9ti2N5XlUrVoXDE8Hq8EYfl+Knb1GQEDz04KjfFEDVsAsvg== integrity: sha512-/nZCAUeKwlv1MldtOHSPDm5SuXBy4L4SoS30gYn9ti2N5XlUrVoXDE8Hq8EYfl+Knb1GQEDz04KjfFEDVsAsvg==
/@pnpm/pkgid-to-filename/3.0.0:
dependencies:
normalize-path: 3.0.0
dev: false
engines:
node: '>=10.13'
resolution:
integrity: sha512-4XVzYoO77hziiJRVTk5pv+9KD631tlqR5+MVu2BlDyrTpgfp+7Su5XPI/2Cek46X2L71vTpYW6LMW22DpmjocA==
/@pnpm/registry-mock/2.2.2: /@pnpm/registry-mock/2.2.2:
dependencies: dependencies:
anonymous-npm-registry-client: 0.1.2 anonymous-npm-registry-client: 0.1.2