@teambit/pnpm 1.0.576 → 1.0.578

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/lynx.js CHANGED
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.generateResolverAndFetcher = generateResolverAndFetcher;
6
7
  exports.getPeerDependencyIssues = getPeerDependencyIssues;
7
8
  exports.install = install;
8
9
  exports.resolveRemoteVersion = resolveRemoteVersion;
@@ -55,9 +56,9 @@ function _sortPackages() {
55
56
  };
56
57
  return data;
57
58
  }
58
- function _dependencyResolver() {
59
- const data = require("@teambit/dependency-resolver");
60
- _dependencyResolver = function () {
59
+ function _pkgConfig() {
60
+ const data = require("@teambit/pkg.config.auth");
61
+ _pkgConfig = function () {
61
62
  return data;
62
63
  };
63
64
  return data;
@@ -112,6 +113,13 @@ function _workspace() {
112
113
  };
113
114
  return data;
114
115
  }
116
+ function _lockfile() {
117
+ const data = require("@pnpm/lockfile.fs");
118
+ _lockfile = function () {
119
+ return data;
120
+ };
121
+ return data;
122
+ }
115
123
  function _dependenciesPnpm() {
116
124
  const data = require("@teambit/dependencies.pnpm.dep-path");
117
125
  _dependenciesPnpm = function () {
@@ -119,9 +127,9 @@ function _dependenciesPnpm() {
119
127
  };
120
128
  return data;
121
129
  }
122
- function _nerfDart() {
123
- const data = _interopRequireDefault(require("nerf-dart"));
124
- _nerfDart = function () {
130
+ function _lodash() {
131
+ const data = require("lodash");
132
+ _lodash = function () {
125
133
  return data;
126
134
  };
127
135
  return data;
@@ -151,7 +159,7 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
151
159
  const installsRunning = {};
152
160
  const cafsLocker = new Map();
153
161
  async function createStoreController(options) {
154
- const authConfig = getAuthConfig(options.registries);
162
+ const authConfig = (0, _pkgConfig().getAuthConfig)(options.registries);
155
163
  const opts = {
156
164
  dir: options.rootDir,
157
165
  cacheDir: options.cacheDir,
@@ -185,7 +193,7 @@ async function createStoreController(options) {
185
193
  }
186
194
  async function generateResolverAndFetcher(cacheDir, registries, proxyConfig = {}, networkConfig = {}) {
187
195
  const pnpmConfig = await (0, _readConfig().readConfig)();
188
- const authConfig = getAuthConfig(registries);
196
+ const authConfig = (0, _pkgConfig().getAuthConfig)(registries);
189
197
  const opts = {
190
198
  authConfig: Object.assign({}, pnpmConfig.config.rawConfig, authConfig),
191
199
  cacheDir,
@@ -220,7 +228,6 @@ async function getPeerDependencyIssues(manifestsByPaths, opts) {
220
228
  rootDir: rootDir
221
229
  });
222
230
  }
223
- const registriesMap = getRegistriesMap(opts.registries);
224
231
  const storeController = await createStoreController(_objectSpread(_objectSpread({}, opts), {}, {
225
232
  rootDir: opts.rootDir
226
233
  }));
@@ -231,7 +238,7 @@ async function getPeerDependencyIssues(manifestsByPaths, opts) {
231
238
  storeDir: storeController.dir,
232
239
  overrides: opts.overrides,
233
240
  peersSuffixMaxLength: 1000,
234
- registries: registriesMap,
241
+ registries: opts.registries.toMap(),
235
242
  virtualStoreDirMaxLength: _dependenciesPnpm().VIRTUAL_STORE_DIR_MAX_LENGTH
236
243
  });
237
244
  }
@@ -267,8 +274,7 @@ logger) {
267
274
  } = groupPkgs(manifestsByPaths, {
268
275
  update: options?.updateAll
269
276
  });
270
- const registriesMap = getRegistriesMap(registries);
271
- const authConfig = getAuthConfig(registries);
277
+ const authConfig = (0, _pkgConfig().getAuthConfig)(registries);
272
278
  const storeController = await createStoreController({
273
279
  rootDir,
274
280
  storeDir,
@@ -301,7 +307,7 @@ logger) {
301
307
  modulesCacheMaxAge: Infinity,
302
308
  // pnpm should never prune the virtual store. Bit does it on its own.
303
309
  neverBuiltDependencies: options.neverBuiltDependencies,
304
- registries: registriesMap,
310
+ registries: registries.toMap(),
305
311
  resolutionMode: 'highest',
306
312
  rawConfig: authConfig,
307
313
  hooks: {
@@ -320,6 +326,7 @@ logger) {
320
326
  },
321
327
  userAgent: networkConfig.userAgent
322
328
  }, options), {}, {
329
+ returnListOfDepsRequiringBuild: true,
323
330
  excludeLinksFromLockfile: options.excludeLinksFromLockfile ?? true,
324
331
  depth: options.updateAll ? Infinity : 0,
325
332
  disableRelinkLocalDirDeps: true,
@@ -340,7 +347,10 @@ logger) {
340
347
  await (0, _worker().restartWorkerPool)();
341
348
  installsRunning[rootDir] = (0, _core().mutateModules)(packagesToBuild, opts);
342
349
  const installResult = await installsRunning[rootDir];
343
- depsRequiringBuild = installResult.depsRequiringBuild;
350
+ depsRequiringBuild = installResult.depsRequiringBuild?.sort();
351
+ if (depsRequiringBuild != null) {
352
+ await addDepsRequiringBuildToLockfile(rootDir, depsRequiringBuild);
353
+ }
344
354
  dependenciesChanged = installResult.stats.added + installResult.stats.removed + installResult.stats.linkedToRoot > 0;
345
355
  delete installsRunning[rootDir];
346
356
  } catch (err) {
@@ -542,8 +552,7 @@ async function resolveRemoteVersion(packageName, rootDir, cacheDir, registries,
542
552
  };
543
553
  try {
544
554
  const parsedPackage = (0, _parsePackageName().default)(packageName);
545
- const registriesMap = getRegistriesMap(registries);
546
- const registry = (0, _pickRegistryForPackage().pickRegistryForPackage)(registriesMap, parsedPackage.name);
555
+ const registry = (0, _pickRegistryForPackage().pickRegistryForPackage)(registries.toMap(), parsedPackage.name);
547
556
  const wantedDep = {
548
557
  alias: parsedPackage.name,
549
558
  pref: parsedPackage.version
@@ -585,59 +594,16 @@ async function resolveRemoteVersion(packageName, rootDir, cacheDir, registries,
585
594
  };
586
595
  }
587
596
  }
588
- function getRegistriesMap(registries) {
589
- const registriesMap = {
590
- default: registries.defaultRegistry.uri || _dependencyResolver().NPM_REGISTRY
591
- };
592
- Object.entries(registries.scopes).forEach(([registryName, registry]) => {
593
- registriesMap[`@${registryName}`] = registry.uri;
594
- });
595
- return registriesMap;
596
- }
597
- function getAuthConfig(registries) {
598
- const res = {};
599
- res.registry = registries.defaultRegistry.uri;
600
- if (registries.defaultRegistry.alwaysAuth) {
601
- res['always-auth'] = true;
602
- }
603
- const defaultAuthTokens = getAuthTokenForRegistry(registries.defaultRegistry, true);
604
- defaultAuthTokens.forEach(({
605
- keyName,
606
- val
607
- }) => {
608
- res[keyName] = val;
597
+ async function addDepsRequiringBuildToLockfile(rootDir, depsRequiringBuild) {
598
+ const lockfile = await (0, _lockfile().readWantedLockfile)(rootDir, {
599
+ ignoreIncompatible: true
609
600
  });
610
- Object.entries(registries.scopes).forEach(([, registry]) => {
611
- const authTokens = getAuthTokenForRegistry(registry);
612
- authTokens.forEach(({
613
- keyName,
614
- val
615
- }) => {
616
- res[keyName] = val;
617
- });
618
- if (registry.alwaysAuth) {
619
- const nerfed = (0, _nerfDart().default)(registry.uri);
620
- const alwaysAuthKeyName = `${nerfed}:always-auth`;
621
- res[alwaysAuthKeyName] = true;
622
- }
601
+ if (lockfile == null) return;
602
+ if ((0, _lodash().isEqual)(lockfile.bit?.depsRequiringBuild, depsRequiringBuild)) return;
603
+ lockfile.bit = _objectSpread(_objectSpread({}, lockfile.bit), {}, {
604
+ depsRequiringBuild
623
605
  });
624
- return res;
625
- }
626
- function getAuthTokenForRegistry(registry, isDefault = false) {
627
- const nerfed = (0, _nerfDart().default)(registry.uri);
628
- if (registry.originalAuthType === 'authToken') {
629
- return [{
630
- keyName: `${nerfed}:_authToken`,
631
- val: registry.originalAuthValue || ''
632
- }];
633
- }
634
- if (registry.originalAuthType === 'auth') {
635
- return [{
636
- keyName: isDefault ? '_auth' : `${nerfed}:_auth`,
637
- val: registry.originalAuthValue || ''
638
- }];
639
- }
640
- return [];
606
+ await (0, _lockfile().writeWantedLockfile)(rootDir, lockfile);
641
607
  }
642
608
 
643
609
  //# sourceMappingURL=lynx.js.map
package/dist/lynx.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["_semver","data","_interopRequireDefault","require","_parsePackageName","_defaultReporter","_logger","_pluginCommandsRebuild","_storeConnectionManager","_sortPackages","_dependencyResolver","_bitError","_legacy","_core","_interopRequireWildcard","pnpm","_client","_pickRegistryForPackage","_worker","_workspace","_dependenciesPnpm","_nerfDart","_pnpmErrorToBitError","_readConfig","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","installsRunning","cafsLocker","Map","createStoreController","options","authConfig","getAuthConfig","registries","opts","dir","rootDir","cacheDir","storeDir","rawConfig","verifyStoreIntegrity","httpProxy","proxyConfig","httpsProxy","ca","networkConfig","cert","key","localAddress","noProxy","strictSsl","strictSSL","maxSockets","networkConcurrency","packageImportMethod","preferOffline","resolveSymlinksInInjectedDirs","pnpmHomeDir","userAgent","fetchRetries","fetchRetryFactor","fetchRetryMaxtimeout","fetchRetryMintimeout","fetchTimeout","virtualStoreDirMaxLength","VIRTUAL_STORE_DIR_MAX_LENGTH","createOrConnectStoreController","generateResolverAndFetcher","pnpmConfig","readConfig","assign","config","timeout","retry","factor","maxTimeout","minTimeout","retries","result","createClient","getPeerDependencyIssues","manifestsByPaths","projects","manifest","entries","buildIndex","registriesMap","getRegistriesMap","storeController","autoInstallPeers","excludeLinksFromLockfile","ctrl","overrides","peersSuffixMaxLength","install","logger","externalDependencies","Set","readPackage","rootComponents","rootComponentsForCapsules","name","add","readPackageHook","removeLegacyFromDeps","dependenciesMeta","readPackageHookForCapsules","allProjects","packagesToBuild","groupPkgs","update","updateAll","hoistPattern","size","hoistInjectedDependencies","pkgName","autoInstallPeersFromHighestMatch","confirmModulesPurge","dedupePeerDependents","preferFrozenLockfile","pruneLockfileImporters","lockfileOnly","modulesCacheMaxAge","Infinity","neverBuiltDependencies","resolutionMode","hooks","strictPeerDependencies","resolvePeersFromWorkspaceRoot","dedupeDirectDeps","include","dependencies","devDependencies","optionalDependencies","includeOptionalDeps","depth","disableRelinkLocalDirDeps","dependenciesChanged","depsRequiringBuild","dryRun","stopReporting","hidePackageManagerOutput","initReporter","reportOptions","hideAddedPkgsProgress","restartWorkerPool","mutateModules","installResult","stats","added","removed","linkedToRoot","err","warn","pnpmErrorToBitError","finishWorkers","rebuild","rebuildOpts","_opts","appendOnly","hideLifecycleOutput","handler","initDefaultReporter","context","argv","process","reportingOptions","throttleProgress","hideProgressPrefix","peerDependencyRules","allowAny","ignoreMissing","streamParser","filterPkgsDiff","diff","startsWith","from","pkg","workspaceDir","readDependencyPackageHook","peerDependencies","includes","BIT_ROOTS_DIR","readWorkspacePackageHook","version","injected","newDeps","pkgs","map","graph","createPkgGraph","chunks","sortPackages","dirs","mutation","resolveRemoteVersion","packageName","resolve","resolveOpts","lockfileDir","preferredVersions","projectDir","registry","parsedPackage","parsePackageName","pickRegistryForPackage","wantedDep","alias","pref","val","BitError","wantedRange","semver","validRange","undefined","isSemver","resolvedVia","message","normalizedPref","defaultRegistry","uri","NPM_REGISTRY","scopes","registryName","res","alwaysAuth","defaultAuthTokens","getAuthTokenForRegistry","keyName","authTokens","nerfed","toNerfDart","alwaysAuthKeyName","isDefault","originalAuthType","originalAuthValue"],"sources":["lynx.ts"],"sourcesContent":["import semver from 'semver';\nimport parsePackageName from 'parse-package-name';\nimport { initDefaultReporter } from '@pnpm/default-reporter';\nimport { streamParser } from '@pnpm/logger';\nimport { StoreController, WantedDependency } from '@pnpm/package-store';\nimport { rebuild } from '@pnpm/plugin-commands-rebuild';\nimport { createOrConnectStoreController, CreateStoreControllerOptions } from '@pnpm/store-connection-manager';\nimport { sortPackages } from '@pnpm/sort-packages';\nimport { type PeerDependencyRules, type ProjectRootDir, type DepPath } from '@pnpm/types';\nimport {\n ResolvedPackageVersion,\n Registries,\n NPM_REGISTRY,\n Registry,\n PackageManagerProxyConfig,\n PackageManagerNetworkConfig,\n} from '@teambit/dependency-resolver';\nimport { BitError } from '@teambit/bit-error';\nimport { BIT_ROOTS_DIR } from '@teambit/legacy.constants';\nimport {\n MutatedProject,\n mutateModules,\n InstallOptions,\n PeerDependencyIssuesByProjects,\n ProjectOptions,\n} from '@pnpm/core';\nimport * as pnpm from '@pnpm/core';\nimport { createClient, ClientOptions } from '@pnpm/client';\nimport { pickRegistryForPackage } from '@pnpm/pick-registry-for-package';\nimport { restartWorkerPool, finishWorkers } from '@pnpm/worker';\nimport { createPkgGraph } from '@pnpm/workspace.pkgs-graph';\nimport { PackageManifest, ProjectManifest, ReadPackageHook } from '@pnpm/types';\nimport { Logger } from '@teambit/logger';\nimport { VIRTUAL_STORE_DIR_MAX_LENGTH } from '@teambit/dependencies.pnpm.dep-path';\nimport toNerfDart from 'nerf-dart';\nimport { pnpmErrorToBitError } from './pnpm-error-to-bit-error';\nimport { readConfig } from './read-config';\n\nconst installsRunning: Record<string, Promise<any>> = {};\nconst cafsLocker = new Map<string, number>();\n\ntype RegistriesMap = {\n default: string;\n [registryName: string]: string;\n};\n\nasync function createStoreController(\n options: {\n rootDir: string;\n storeDir?: string;\n cacheDir: string;\n registries: Registries;\n proxyConfig: PackageManagerProxyConfig;\n networkConfig: PackageManagerNetworkConfig;\n } & Pick<CreateStoreControllerOptions, 'packageImportMethod' | 'pnpmHomeDir' | 'preferOffline'>\n): Promise<{ ctrl: StoreController; dir: string }> {\n const authConfig = getAuthConfig(options.registries);\n const opts: CreateStoreControllerOptions = {\n dir: options.rootDir,\n cacheDir: options.cacheDir,\n cafsLocker,\n storeDir: options.storeDir,\n rawConfig: authConfig,\n verifyStoreIntegrity: true,\n httpProxy: options.proxyConfig?.httpProxy,\n httpsProxy: options.proxyConfig?.httpsProxy,\n ca: options.networkConfig?.ca,\n cert: options.networkConfig?.cert,\n key: options.networkConfig?.key,\n localAddress: options.networkConfig?.localAddress,\n noProxy: options.proxyConfig?.noProxy,\n strictSsl: options.networkConfig.strictSSL,\n maxSockets: options.networkConfig.maxSockets,\n networkConcurrency: options.networkConfig.networkConcurrency,\n packageImportMethod: options.packageImportMethod,\n preferOffline: options.preferOffline,\n resolveSymlinksInInjectedDirs: true,\n pnpmHomeDir: options.pnpmHomeDir,\n userAgent: options.networkConfig.userAgent,\n fetchRetries: options.networkConfig.fetchRetries,\n fetchRetryFactor: options.networkConfig.fetchRetryFactor,\n fetchRetryMaxtimeout: options.networkConfig.fetchRetryMaxtimeout,\n fetchRetryMintimeout: options.networkConfig.fetchRetryMintimeout,\n fetchTimeout: options.networkConfig.fetchTimeout,\n virtualStoreDirMaxLength: VIRTUAL_STORE_DIR_MAX_LENGTH,\n };\n return createOrConnectStoreController(opts);\n}\n\nasync function generateResolverAndFetcher(\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n) {\n const pnpmConfig = await readConfig();\n const authConfig = getAuthConfig(registries);\n const opts: ClientOptions = {\n authConfig: Object.assign({}, pnpmConfig.config.rawConfig, authConfig),\n cacheDir,\n httpProxy: proxyConfig?.httpProxy,\n httpsProxy: proxyConfig?.httpsProxy,\n ca: networkConfig?.ca,\n cert: networkConfig?.cert,\n key: networkConfig?.key,\n localAddress: networkConfig?.localAddress,\n noProxy: proxyConfig?.noProxy,\n strictSsl: networkConfig.strictSSL,\n timeout: networkConfig.fetchTimeout,\n rawConfig: pnpmConfig.config.rawConfig,\n userAgent: networkConfig.userAgent,\n retry: {\n factor: networkConfig.fetchRetryFactor,\n maxTimeout: networkConfig.fetchRetryMaxtimeout,\n minTimeout: networkConfig.fetchRetryMintimeout,\n retries: networkConfig.fetchRetries,\n },\n };\n const result = createClient(opts);\n return result;\n}\n\nexport async function getPeerDependencyIssues(\n manifestsByPaths: Record<string, any>,\n opts: {\n storeDir?: string;\n cacheDir: string;\n registries: Registries;\n rootDir: string;\n proxyConfig: PackageManagerProxyConfig;\n networkConfig: PackageManagerNetworkConfig;\n overrides?: Record<string, string>;\n } & Pick<CreateStoreControllerOptions, 'packageImportMethod' | 'pnpmHomeDir'>\n): Promise<PeerDependencyIssuesByProjects> {\n const projects: ProjectOptions[] = [];\n for (const [rootDir, manifest] of Object.entries(manifestsByPaths)) {\n projects.push({\n buildIndex: 0, // this is not used while searching for peer issues anyway\n manifest,\n rootDir: rootDir as ProjectRootDir,\n });\n }\n const registriesMap = getRegistriesMap(opts.registries);\n const storeController = await createStoreController({\n ...opts,\n rootDir: opts.rootDir,\n });\n return pnpm.getPeerDependencyIssues(projects, {\n autoInstallPeers: false,\n excludeLinksFromLockfile: true,\n storeController: storeController.ctrl,\n storeDir: storeController.dir,\n overrides: opts.overrides,\n peersSuffixMaxLength: 1000,\n registries: registriesMap,\n virtualStoreDirMaxLength: VIRTUAL_STORE_DIR_MAX_LENGTH,\n });\n}\n\nexport type RebuildFn = (opts: { pending?: boolean; skipIfHasSideEffectsCache?: boolean }) => Promise<void>;\n\nexport interface ReportOptions {\n appendOnly?: boolean;\n throttleProgress?: number;\n hideAddedPkgsProgress?: boolean;\n hideProgressPrefix?: boolean;\n hideLifecycleOutput?: boolean;\n peerDependencyRules?: PeerDependencyRules;\n process?: NodeJS.Process;\n}\n\nexport async function install(\n rootDir: string,\n manifestsByPaths: Record<string, ProjectManifest>,\n storeDir: string | undefined,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {},\n options: {\n updateAll?: boolean;\n nodeLinker?: 'hoisted' | 'isolated';\n overrides?: Record<string, string>;\n rootComponents?: boolean;\n rootComponentsForCapsules?: boolean;\n includeOptionalDeps?: boolean;\n reportOptions?: ReportOptions;\n hidePackageManagerOutput?: boolean;\n hoistInjectedDependencies?: boolean;\n dryRun?: boolean;\n dedupeInjectedDeps?: boolean;\n } & Pick<\n InstallOptions,\n | 'autoInstallPeers'\n | 'publicHoistPattern'\n | 'hoistPattern'\n | 'lockfileOnly'\n | 'nodeVersion'\n | 'enableModulesDir'\n | 'engineStrict'\n | 'excludeLinksFromLockfile'\n | 'neverBuiltDependencies'\n | 'ignorePackageManifest'\n | 'hoistWorkspacePackages'\n | 'returnListOfDepsRequiringBuild'\n > &\n Pick<CreateStoreControllerOptions, 'packageImportMethod' | 'pnpmHomeDir' | 'preferOffline'>,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n logger?: Logger\n): Promise<{ dependenciesChanged: boolean; rebuild: RebuildFn; storeDir: string; depsRequiringBuild?: DepPath[] }> {\n const externalDependencies = new Set<string>();\n const readPackage: ReadPackageHook[] = [];\n if (options?.rootComponents && !options?.rootComponentsForCapsules) {\n for (const [dir, { name }] of Object.entries(manifestsByPaths)) {\n if (dir !== rootDir && name) {\n externalDependencies.add(name);\n }\n }\n readPackage.push(readPackageHook as ReadPackageHook);\n }\n readPackage.push(removeLegacyFromDeps as ReadPackageHook);\n if (!manifestsByPaths[rootDir].dependenciesMeta) {\n manifestsByPaths = {\n ...manifestsByPaths,\n [rootDir]: {\n ...manifestsByPaths[rootDir],\n dependenciesMeta: {},\n },\n };\n }\n if (options?.rootComponentsForCapsules) {\n readPackage.push(readPackageHookForCapsules as ReadPackageHook);\n }\n const { allProjects, packagesToBuild } = groupPkgs(manifestsByPaths, {\n update: options?.updateAll,\n });\n const registriesMap = getRegistriesMap(registries);\n const authConfig = getAuthConfig(registries);\n const storeController = await createStoreController({\n rootDir,\n storeDir,\n cacheDir,\n registries,\n preferOffline: options?.preferOffline,\n proxyConfig,\n networkConfig,\n packageImportMethod: options?.packageImportMethod,\n pnpmHomeDir: options?.pnpmHomeDir,\n });\n const hoistPattern = options.hoistPattern ?? ['*'];\n if (hoistPattern.length > 0 && externalDependencies.size > 0 && !options.hoistInjectedDependencies) {\n for (const pkgName of externalDependencies) {\n hoistPattern.push(`!${pkgName}`);\n }\n }\n const opts: InstallOptions = {\n allProjects,\n autoInstallPeers: options.autoInstallPeers,\n autoInstallPeersFromHighestMatch: options.autoInstallPeers,\n confirmModulesPurge: false,\n storeDir: storeController.dir,\n dedupePeerDependents: true,\n dir: rootDir,\n storeController: storeController.ctrl,\n preferFrozenLockfile: true,\n pruneLockfileImporters: true,\n lockfileOnly: options.lockfileOnly ?? false,\n modulesCacheMaxAge: Infinity, // pnpm should never prune the virtual store. Bit does it on its own.\n neverBuiltDependencies: options.neverBuiltDependencies,\n registries: registriesMap,\n resolutionMode: 'highest',\n rawConfig: authConfig,\n hooks: { readPackage },\n externalDependencies,\n strictPeerDependencies: false,\n peersSuffixMaxLength: 1000,\n resolveSymlinksInInjectedDirs: true,\n resolvePeersFromWorkspaceRoot: true,\n dedupeDirectDeps: true,\n include: {\n dependencies: true,\n devDependencies: true,\n optionalDependencies: options?.includeOptionalDeps !== false,\n },\n userAgent: networkConfig.userAgent,\n ...options,\n excludeLinksFromLockfile: options.excludeLinksFromLockfile ?? true,\n depth: options.updateAll ? Infinity : 0,\n disableRelinkLocalDirDeps: true,\n hoistPattern,\n virtualStoreDirMaxLength: VIRTUAL_STORE_DIR_MAX_LENGTH,\n };\n\n let dependenciesChanged = false;\n let depsRequiringBuild: DepPath[] | undefined;\n if (!options.dryRun) {\n let stopReporting: Function | undefined;\n if (!options.hidePackageManagerOutput) {\n stopReporting = initReporter({\n ...options.reportOptions,\n hideAddedPkgsProgress: options.lockfileOnly,\n });\n }\n try {\n await installsRunning[rootDir];\n await restartWorkerPool();\n installsRunning[rootDir] = mutateModules(packagesToBuild, opts);\n const installResult = await installsRunning[rootDir];\n depsRequiringBuild = installResult.depsRequiringBuild;\n dependenciesChanged =\n installResult.stats.added + installResult.stats.removed + installResult.stats.linkedToRoot > 0;\n delete installsRunning[rootDir];\n } catch (err: any) {\n if (logger) {\n logger.warn('got an error from pnpm mutateModules function', err);\n }\n throw pnpmErrorToBitError(err);\n } finally {\n stopReporting?.();\n await finishWorkers();\n }\n }\n return {\n dependenciesChanged,\n rebuild: async (rebuildOpts) => {\n let stopReporting: Function | undefined;\n const _opts = {\n ...opts,\n ...rebuildOpts,\n cacheDir,\n } as any; // eslint-disable-line @typescript-eslint/no-explicit-any\n if (!_opts.hidePackageManagerOutput) {\n stopReporting = initReporter({\n appendOnly: true,\n hideLifecycleOutput: true,\n });\n }\n try {\n await rebuild.handler(_opts, []);\n } finally {\n stopReporting?.();\n }\n },\n storeDir: storeController.dir,\n depsRequiringBuild,\n };\n}\n\nfunction initReporter(opts?: ReportOptions) {\n return initDefaultReporter({\n context: {\n argv: [],\n process: opts?.process,\n },\n reportingOptions: {\n appendOnly: opts?.appendOnly ?? false,\n throttleProgress: opts?.throttleProgress ?? 200,\n hideAddedPkgsProgress: opts?.hideAddedPkgsProgress,\n hideProgressPrefix: opts?.hideProgressPrefix,\n hideLifecycleOutput: opts?.hideLifecycleOutput,\n peerDependencyRules: {\n allowAny: ['*'],\n ignoreMissing: ['*'],\n ...opts?.peerDependencyRules,\n },\n },\n streamParser: streamParser as any, // eslint-disable-line\n // Linked in core aspects are excluded from the output to reduce noise.\n // Other @teambit/ dependencies will be shown.\n // Only those that are symlinked from outside the workspace will be hidden.\n filterPkgsDiff: (diff) => !diff.name.startsWith('@teambit/') || !diff.from,\n });\n}\n\n/**\n * This hook is used when installation is executed inside a capsule.\n * The components in the capsules should get their peer dependencies installed,\n * so this hook converts any peer dependencies into runtime dependencies.\n * Also, any local dependencies are extended with the \"injected\" option,\n * this tells pnpm to hard link the packages instead of symlinking them.\n */\nfunction readPackageHookForCapsules(pkg: PackageManifest, workspaceDir?: string): PackageManifest {\n // workspaceDir is set only for workspace packages\n if (workspaceDir) {\n return readDependencyPackageHook({\n ...pkg,\n dependencies: {\n ...pkg.peerDependencies,\n ...pkg.dependencies,\n },\n });\n }\n return readDependencyPackageHook(pkg);\n}\n\n/**\n * @teambit/legacy should never be installed as a dependency.\n * It is linked from bvm.\n */\nfunction removeLegacyFromDeps(pkg: PackageManifest): PackageManifest {\n if (pkg.dependencies?.['@teambit/legacy'] && !pkg.dependencies['@teambit/legacy'].startsWith('link:')) {\n delete pkg.dependencies['@teambit/legacy'];\n }\n if (pkg.peerDependencies?.['@teambit/legacy']) {\n delete pkg.peerDependencies['@teambit/legacy'];\n }\n return pkg;\n}\n\n/**\n * This hook is used when installation happens in a Bit workspace.\n * We need a different hook for this case because unlike in a capsule, in a workspace,\n * the package manager only links workspace components to subdependencies.\n * For direct dependencies, Bit's linking is used.\n */\nfunction readPackageHook(pkg: PackageManifest, workspaceDir?: string): PackageManifest {\n if (!pkg.dependencies) {\n return pkg;\n }\n // workspaceDir is set only for workspace packages\n if (workspaceDir && !workspaceDir.includes(BIT_ROOTS_DIR)) {\n return readWorkspacePackageHook(pkg);\n }\n return readDependencyPackageHook(pkg);\n}\n\n/**\n * This hook adds the \"injected\" option to any workspace dependency.\n * The injected option tell pnpm to hard link the packages instead of symlinking them.\n */\nfunction readDependencyPackageHook(pkg: PackageManifest): PackageManifest {\n const dependenciesMeta = pkg.dependenciesMeta ?? {};\n for (const [name, version] of Object.entries(pkg.dependencies ?? {})) {\n if (version.startsWith('workspace:')) {\n // This instructs pnpm to hard link the component from the workspace, not symlink it.\n dependenciesMeta[name] = { injected: true };\n }\n }\n return {\n ...pkg,\n dependenciesMeta,\n };\n}\n\n/**\n * This hook is used when installation happens in a Bit workspace.\n * It is applied on workspace projects, and it removes any references to other workspace projects.\n * This is needed because Bit has its own linking for workspace projects.\n * pnpm should not override the links created by Bit.\n * Otherwise, the IDE would reference workspace projects from inside `node_modules/.pnpm`.\n */\nfunction readWorkspacePackageHook(pkg: PackageManifest): PackageManifest {\n const newDeps = {};\n for (const [name, version] of Object.entries(pkg.dependencies ?? {})) {\n if (!version.startsWith('workspace:')) {\n newDeps[name] = version;\n }\n }\n return {\n ...pkg,\n dependencies: {\n ...pkg.peerDependencies,\n ...newDeps,\n },\n };\n}\n\nfunction groupPkgs(manifestsByPaths: Record<string, ProjectManifest>, opts: { update?: boolean }) {\n const pkgs = Object.entries(manifestsByPaths).map(([rootDir, manifest]) => ({\n rootDir: rootDir as ProjectRootDir,\n manifest,\n }));\n const { graph } = createPkgGraph(pkgs);\n const chunks = sortPackages(graph as any);\n\n // This will create local link by pnpm to a component exists in the ws.\n // it will later deleted by the link process\n // we keep it here to better support case like this:\n // compA@1.0.0 uses compB@1.0.0\n // I have compB@2.0.0 in my workspace\n // now I install compA@1.0.0\n // compA is hoisted to the root and install B@1.0.0 hoisted to the root as well\n // now we will make link to B@2.0.0 and A will break\n // with this we will have a link to the local B by pnpm so it will install B@1.0.0 inside A\n // then when overriding the link, A will still works\n // This is the rational behind not deleting this completely, but need further check that it really works\n const packagesToBuild: MutatedProject[] = []; // @pnpm/core will use this to install the packages\n const allProjects: ProjectOptions[] = [];\n\n chunks.forEach((dirs, buildIndex) => {\n for (const rootDir of dirs) {\n const manifest = manifestsByPaths[rootDir];\n allProjects.push({\n buildIndex,\n manifest,\n rootDir,\n });\n packagesToBuild.push({\n rootDir,\n mutation: 'install',\n update: opts.update,\n });\n }\n });\n return { packagesToBuild, allProjects };\n}\n\nexport async function resolveRemoteVersion(\n packageName: string,\n rootDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n): Promise<ResolvedPackageVersion> {\n const { resolve } = await generateResolverAndFetcher(cacheDir, registries, proxyConfig, networkConfig);\n const resolveOpts = {\n lockfileDir: rootDir,\n preferredVersions: {},\n projectDir: rootDir,\n registry: '',\n };\n try {\n const parsedPackage = parsePackageName(packageName);\n const registriesMap = getRegistriesMap(registries);\n const registry = pickRegistryForPackage(registriesMap, parsedPackage.name);\n const wantedDep: WantedDependency = {\n alias: parsedPackage.name,\n pref: parsedPackage.version,\n };\n resolveOpts.registry = registry;\n const val = await resolve(wantedDep, resolveOpts);\n if (!val.manifest) {\n throw new BitError('The resolved package has no manifest');\n }\n const wantedRange =\n parsedPackage.version && semver.validRange(parsedPackage.version) ? parsedPackage.version : undefined;\n\n return {\n packageName: val.manifest.name,\n version: val.manifest.version,\n wantedRange,\n isSemver: true,\n resolvedVia: val.resolvedVia,\n };\n } catch (e: any) {\n if (!e.message?.includes('is not a valid string')) {\n throw pnpmErrorToBitError(e);\n }\n // The provided package is probably a git url or path to a folder\n const wantedDep: WantedDependency = {\n alias: undefined,\n pref: packageName,\n };\n const val = await resolve(wantedDep, resolveOpts);\n if (!val.manifest) {\n throw new BitError('The resolved package has no manifest');\n }\n if (!val.normalizedPref) {\n throw new BitError('The resolved package has no version');\n }\n return {\n packageName: val.manifest.name,\n version: val.normalizedPref,\n isSemver: false,\n resolvedVia: val.resolvedVia,\n };\n }\n}\n\nfunction getRegistriesMap(registries: Registries): RegistriesMap {\n const registriesMap = {\n default: registries.defaultRegistry.uri || NPM_REGISTRY,\n };\n\n Object.entries(registries.scopes).forEach(([registryName, registry]) => {\n registriesMap[`@${registryName}`] = registry.uri;\n });\n return registriesMap;\n}\n\nfunction getAuthConfig(registries: Registries): Record<string, any> {\n const res: any = {};\n res.registry = registries.defaultRegistry.uri;\n if (registries.defaultRegistry.alwaysAuth) {\n res['always-auth'] = true;\n }\n const defaultAuthTokens = getAuthTokenForRegistry(registries.defaultRegistry, true);\n defaultAuthTokens.forEach(({ keyName, val }) => {\n res[keyName] = val;\n });\n\n Object.entries(registries.scopes).forEach(([, registry]) => {\n const authTokens = getAuthTokenForRegistry(registry);\n authTokens.forEach(({ keyName, val }) => {\n res[keyName] = val;\n });\n if (registry.alwaysAuth) {\n const nerfed = toNerfDart(registry.uri);\n const alwaysAuthKeyName = `${nerfed}:always-auth`;\n res[alwaysAuthKeyName] = true;\n }\n });\n return res;\n}\n\nfunction getAuthTokenForRegistry(registry: Registry, isDefault = false): { keyName: string; val: string }[] {\n const nerfed = toNerfDart(registry.uri);\n if (registry.originalAuthType === 'authToken') {\n return [\n {\n keyName: `${nerfed}:_authToken`,\n val: registry.originalAuthValue || '',\n },\n ];\n }\n if (registry.originalAuthType === 'auth') {\n return [\n {\n keyName: isDefault ? '_auth' : `${nerfed}:_auth`,\n val: registry.originalAuthValue || '',\n },\n ];\n }\n return [];\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_semver","data","_interopRequireDefault","require","_parsePackageName","_defaultReporter","_logger","_pluginCommandsRebuild","_storeConnectionManager","_sortPackages","_pkgConfig","_bitError","_legacy","_core","_interopRequireWildcard","pnpm","_client","_pickRegistryForPackage","_worker","_workspace","_lockfile","_dependenciesPnpm","_lodash","_pnpmErrorToBitError","_readConfig","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","installsRunning","cafsLocker","Map","createStoreController","options","authConfig","getAuthConfig","registries","opts","dir","rootDir","cacheDir","storeDir","rawConfig","verifyStoreIntegrity","httpProxy","proxyConfig","httpsProxy","ca","networkConfig","cert","key","localAddress","noProxy","strictSsl","strictSSL","maxSockets","networkConcurrency","packageImportMethod","preferOffline","resolveSymlinksInInjectedDirs","pnpmHomeDir","userAgent","fetchRetries","fetchRetryFactor","fetchRetryMaxtimeout","fetchRetryMintimeout","fetchTimeout","virtualStoreDirMaxLength","VIRTUAL_STORE_DIR_MAX_LENGTH","createOrConnectStoreController","generateResolverAndFetcher","pnpmConfig","readConfig","assign","config","timeout","retry","factor","maxTimeout","minTimeout","retries","result","createClient","getPeerDependencyIssues","manifestsByPaths","projects","manifest","entries","buildIndex","storeController","autoInstallPeers","excludeLinksFromLockfile","ctrl","overrides","peersSuffixMaxLength","toMap","install","logger","externalDependencies","Set","readPackage","rootComponents","rootComponentsForCapsules","name","add","readPackageHook","removeLegacyFromDeps","dependenciesMeta","readPackageHookForCapsules","allProjects","packagesToBuild","groupPkgs","update","updateAll","hoistPattern","size","hoistInjectedDependencies","pkgName","autoInstallPeersFromHighestMatch","confirmModulesPurge","dedupePeerDependents","preferFrozenLockfile","pruneLockfileImporters","lockfileOnly","modulesCacheMaxAge","Infinity","neverBuiltDependencies","resolutionMode","hooks","strictPeerDependencies","resolvePeersFromWorkspaceRoot","dedupeDirectDeps","include","dependencies","devDependencies","optionalDependencies","includeOptionalDeps","returnListOfDepsRequiringBuild","depth","disableRelinkLocalDirDeps","dependenciesChanged","depsRequiringBuild","dryRun","stopReporting","hidePackageManagerOutput","initReporter","reportOptions","hideAddedPkgsProgress","restartWorkerPool","mutateModules","installResult","sort","addDepsRequiringBuildToLockfile","stats","added","removed","linkedToRoot","err","warn","pnpmErrorToBitError","finishWorkers","rebuild","rebuildOpts","_opts","appendOnly","hideLifecycleOutput","handler","initDefaultReporter","context","argv","process","reportingOptions","throttleProgress","hideProgressPrefix","peerDependencyRules","allowAny","ignoreMissing","streamParser","filterPkgsDiff","diff","startsWith","from","pkg","workspaceDir","readDependencyPackageHook","peerDependencies","includes","BIT_ROOTS_DIR","readWorkspacePackageHook","version","injected","newDeps","pkgs","map","graph","createPkgGraph","chunks","sortPackages","dirs","mutation","resolveRemoteVersion","packageName","resolve","resolveOpts","lockfileDir","preferredVersions","projectDir","registry","parsedPackage","parsePackageName","pickRegistryForPackage","wantedDep","alias","pref","val","BitError","wantedRange","semver","validRange","undefined","isSemver","resolvedVia","message","normalizedPref","lockfile","readWantedLockfile","ignoreIncompatible","isEqual","bit","writeWantedLockfile"],"sources":["lynx.ts"],"sourcesContent":["import semver from 'semver';\nimport parsePackageName from 'parse-package-name';\nimport { initDefaultReporter } from '@pnpm/default-reporter';\nimport { streamParser } from '@pnpm/logger';\nimport { StoreController, WantedDependency } from '@pnpm/package-store';\nimport { rebuild } from '@pnpm/plugin-commands-rebuild';\nimport { createOrConnectStoreController, CreateStoreControllerOptions } from '@pnpm/store-connection-manager';\nimport { sortPackages } from '@pnpm/sort-packages';\nimport { type PeerDependencyRules, type ProjectRootDir, type DepPath } from '@pnpm/types';\nimport { Registries } from '@teambit/pkg.entities.registry';\nimport { getAuthConfig } from '@teambit/pkg.config.auth';\nimport {\n ResolvedPackageVersion,\n PackageManagerProxyConfig,\n PackageManagerNetworkConfig,\n} from '@teambit/dependency-resolver';\nimport { BitError } from '@teambit/bit-error';\nimport { BIT_ROOTS_DIR } from '@teambit/legacy.constants';\nimport {\n MutatedProject,\n mutateModules,\n InstallOptions,\n PeerDependencyIssuesByProjects,\n ProjectOptions,\n} from '@pnpm/core';\nimport * as pnpm from '@pnpm/core';\nimport { createClient, ClientOptions } from '@pnpm/client';\nimport { pickRegistryForPackage } from '@pnpm/pick-registry-for-package';\nimport { restartWorkerPool, finishWorkers } from '@pnpm/worker';\nimport { createPkgGraph } from '@pnpm/workspace.pkgs-graph';\nimport { PackageManifest, ProjectManifest, ReadPackageHook } from '@pnpm/types';\nimport { readWantedLockfile, writeWantedLockfile } from '@pnpm/lockfile.fs';\nimport { type LockfileFileV9, type Lockfile } from '@pnpm/lockfile.types'\nimport { Logger } from '@teambit/logger';\nimport { VIRTUAL_STORE_DIR_MAX_LENGTH } from '@teambit/dependencies.pnpm.dep-path';\nimport { isEqual } from 'lodash'\nimport { pnpmErrorToBitError } from './pnpm-error-to-bit-error';\nimport { readConfig } from './read-config';\n\nconst installsRunning: Record<string, Promise<any>> = {};\nconst cafsLocker = new Map<string, number>();\n\nasync function createStoreController(\n options: {\n rootDir: string;\n storeDir?: string;\n cacheDir: string;\n registries: Registries;\n proxyConfig: PackageManagerProxyConfig;\n networkConfig: PackageManagerNetworkConfig;\n } & Pick<CreateStoreControllerOptions, 'packageImportMethod' | 'pnpmHomeDir' | 'preferOffline'>\n): Promise<{ ctrl: StoreController; dir: string }> {\n const authConfig = getAuthConfig(options.registries);\n const opts: CreateStoreControllerOptions = {\n dir: options.rootDir,\n cacheDir: options.cacheDir,\n cafsLocker,\n storeDir: options.storeDir,\n rawConfig: authConfig,\n verifyStoreIntegrity: true,\n httpProxy: options.proxyConfig?.httpProxy,\n httpsProxy: options.proxyConfig?.httpsProxy,\n ca: options.networkConfig?.ca,\n cert: options.networkConfig?.cert,\n key: options.networkConfig?.key,\n localAddress: options.networkConfig?.localAddress,\n noProxy: options.proxyConfig?.noProxy,\n strictSsl: options.networkConfig.strictSSL,\n maxSockets: options.networkConfig.maxSockets,\n networkConcurrency: options.networkConfig.networkConcurrency,\n packageImportMethod: options.packageImportMethod,\n preferOffline: options.preferOffline,\n resolveSymlinksInInjectedDirs: true,\n pnpmHomeDir: options.pnpmHomeDir,\n userAgent: options.networkConfig.userAgent,\n fetchRetries: options.networkConfig.fetchRetries,\n fetchRetryFactor: options.networkConfig.fetchRetryFactor,\n fetchRetryMaxtimeout: options.networkConfig.fetchRetryMaxtimeout,\n fetchRetryMintimeout: options.networkConfig.fetchRetryMintimeout,\n fetchTimeout: options.networkConfig.fetchTimeout,\n virtualStoreDirMaxLength: VIRTUAL_STORE_DIR_MAX_LENGTH,\n };\n return createOrConnectStoreController(opts);\n}\n\nexport async function generateResolverAndFetcher(\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n) {\n const pnpmConfig = await readConfig();\n const authConfig = getAuthConfig(registries);\n const opts: ClientOptions = {\n authConfig: Object.assign({}, pnpmConfig.config.rawConfig, authConfig),\n cacheDir,\n httpProxy: proxyConfig?.httpProxy,\n httpsProxy: proxyConfig?.httpsProxy,\n ca: networkConfig?.ca,\n cert: networkConfig?.cert,\n key: networkConfig?.key,\n localAddress: networkConfig?.localAddress,\n noProxy: proxyConfig?.noProxy,\n strictSsl: networkConfig.strictSSL,\n timeout: networkConfig.fetchTimeout,\n rawConfig: pnpmConfig.config.rawConfig,\n userAgent: networkConfig.userAgent,\n retry: {\n factor: networkConfig.fetchRetryFactor,\n maxTimeout: networkConfig.fetchRetryMaxtimeout,\n minTimeout: networkConfig.fetchRetryMintimeout,\n retries: networkConfig.fetchRetries,\n },\n };\n const result = createClient(opts);\n return result;\n}\n\nexport async function getPeerDependencyIssues(\n manifestsByPaths: Record<string, any>,\n opts: {\n storeDir?: string;\n cacheDir: string;\n registries: Registries;\n rootDir: string;\n proxyConfig: PackageManagerProxyConfig;\n networkConfig: PackageManagerNetworkConfig;\n overrides?: Record<string, string>;\n } & Pick<CreateStoreControllerOptions, 'packageImportMethod' | 'pnpmHomeDir'>\n): Promise<PeerDependencyIssuesByProjects> {\n const projects: ProjectOptions[] = [];\n for (const [rootDir, manifest] of Object.entries(manifestsByPaths)) {\n projects.push({\n buildIndex: 0, // this is not used while searching for peer issues anyway\n manifest,\n rootDir: rootDir as ProjectRootDir,\n });\n }\n const storeController = await createStoreController({\n ...opts,\n rootDir: opts.rootDir,\n });\n return pnpm.getPeerDependencyIssues(projects, {\n autoInstallPeers: false,\n excludeLinksFromLockfile: true,\n storeController: storeController.ctrl,\n storeDir: storeController.dir,\n overrides: opts.overrides,\n peersSuffixMaxLength: 1000,\n registries: opts.registries.toMap(),\n virtualStoreDirMaxLength: VIRTUAL_STORE_DIR_MAX_LENGTH,\n });\n}\n\nexport type RebuildFn = (opts: { pending?: boolean; skipIfHasSideEffectsCache?: boolean }) => Promise<void>;\n\nexport interface ReportOptions {\n appendOnly?: boolean;\n throttleProgress?: number;\n hideAddedPkgsProgress?: boolean;\n hideProgressPrefix?: boolean;\n hideLifecycleOutput?: boolean;\n peerDependencyRules?: PeerDependencyRules;\n process?: NodeJS.Process;\n}\n\nexport async function install(\n rootDir: string,\n manifestsByPaths: Record<string, ProjectManifest>,\n storeDir: string | undefined,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {},\n options: {\n updateAll?: boolean;\n nodeLinker?: 'hoisted' | 'isolated';\n overrides?: Record<string, string>;\n rootComponents?: boolean;\n rootComponentsForCapsules?: boolean;\n includeOptionalDeps?: boolean;\n reportOptions?: ReportOptions;\n hidePackageManagerOutput?: boolean;\n hoistInjectedDependencies?: boolean;\n dryRun?: boolean;\n dedupeInjectedDeps?: boolean;\n } & Pick<\n InstallOptions,\n | 'autoInstallPeers'\n | 'publicHoistPattern'\n | 'hoistPattern'\n | 'lockfileOnly'\n | 'nodeVersion'\n | 'enableModulesDir'\n | 'engineStrict'\n | 'excludeLinksFromLockfile'\n | 'neverBuiltDependencies'\n | 'ignorePackageManifest'\n | 'hoistWorkspacePackages'\n | 'returnListOfDepsRequiringBuild'\n > &\n Pick<CreateStoreControllerOptions, 'packageImportMethod' | 'pnpmHomeDir' | 'preferOffline'>,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n logger?: Logger\n): Promise<{ dependenciesChanged: boolean; rebuild: RebuildFn; storeDir: string; depsRequiringBuild?: DepPath[] }> {\n const externalDependencies = new Set<string>();\n const readPackage: ReadPackageHook[] = [];\n if (options?.rootComponents && !options?.rootComponentsForCapsules) {\n for (const [dir, { name }] of Object.entries(manifestsByPaths)) {\n if (dir !== rootDir && name) {\n externalDependencies.add(name);\n }\n }\n readPackage.push(readPackageHook as ReadPackageHook);\n }\n readPackage.push(removeLegacyFromDeps as ReadPackageHook);\n if (!manifestsByPaths[rootDir].dependenciesMeta) {\n manifestsByPaths = {\n ...manifestsByPaths,\n [rootDir]: {\n ...manifestsByPaths[rootDir],\n dependenciesMeta: {},\n },\n };\n }\n if (options?.rootComponentsForCapsules) {\n readPackage.push(readPackageHookForCapsules as ReadPackageHook);\n }\n const { allProjects, packagesToBuild } = groupPkgs(manifestsByPaths, {\n update: options?.updateAll,\n });\n const authConfig = getAuthConfig(registries);\n const storeController = await createStoreController({\n rootDir,\n storeDir,\n cacheDir,\n registries,\n preferOffline: options?.preferOffline,\n proxyConfig,\n networkConfig,\n packageImportMethod: options?.packageImportMethod,\n pnpmHomeDir: options?.pnpmHomeDir,\n });\n const hoistPattern = options.hoistPattern ?? ['*'];\n if (hoistPattern.length > 0 && externalDependencies.size > 0 && !options.hoistInjectedDependencies) {\n for (const pkgName of externalDependencies) {\n hoistPattern.push(`!${pkgName}`);\n }\n }\n const opts: InstallOptions = {\n allProjects,\n autoInstallPeers: options.autoInstallPeers,\n autoInstallPeersFromHighestMatch: options.autoInstallPeers,\n confirmModulesPurge: false,\n storeDir: storeController.dir,\n dedupePeerDependents: true,\n dir: rootDir,\n storeController: storeController.ctrl,\n preferFrozenLockfile: true,\n pruneLockfileImporters: true,\n lockfileOnly: options.lockfileOnly ?? false,\n modulesCacheMaxAge: Infinity, // pnpm should never prune the virtual store. Bit does it on its own.\n neverBuiltDependencies: options.neverBuiltDependencies,\n registries: registries.toMap(),\n resolutionMode: 'highest',\n rawConfig: authConfig,\n hooks: { readPackage },\n externalDependencies,\n strictPeerDependencies: false,\n peersSuffixMaxLength: 1000,\n resolveSymlinksInInjectedDirs: true,\n resolvePeersFromWorkspaceRoot: true,\n dedupeDirectDeps: true,\n include: {\n dependencies: true,\n devDependencies: true,\n optionalDependencies: options?.includeOptionalDeps !== false,\n },\n userAgent: networkConfig.userAgent,\n ...options,\n returnListOfDepsRequiringBuild: true,\n excludeLinksFromLockfile: options.excludeLinksFromLockfile ?? true,\n depth: options.updateAll ? Infinity : 0,\n disableRelinkLocalDirDeps: true,\n hoistPattern,\n virtualStoreDirMaxLength: VIRTUAL_STORE_DIR_MAX_LENGTH,\n };\n\n let dependenciesChanged = false;\n let depsRequiringBuild: DepPath[] | undefined;\n if (!options.dryRun) {\n let stopReporting: Function | undefined;\n if (!options.hidePackageManagerOutput) {\n stopReporting = initReporter({\n ...options.reportOptions,\n hideAddedPkgsProgress: options.lockfileOnly,\n });\n }\n try {\n await installsRunning[rootDir];\n await restartWorkerPool();\n installsRunning[rootDir] = mutateModules(packagesToBuild, opts);\n const installResult = await installsRunning[rootDir];\n depsRequiringBuild = installResult.depsRequiringBuild?.sort();\n if (depsRequiringBuild != null) {\n await addDepsRequiringBuildToLockfile(rootDir, depsRequiringBuild)\n }\n dependenciesChanged =\n installResult.stats.added + installResult.stats.removed + installResult.stats.linkedToRoot > 0;\n delete installsRunning[rootDir];\n } catch (err: any) {\n if (logger) {\n logger.warn('got an error from pnpm mutateModules function', err);\n }\n throw pnpmErrorToBitError(err);\n } finally {\n stopReporting?.();\n await finishWorkers();\n }\n }\n return {\n dependenciesChanged,\n rebuild: async (rebuildOpts) => {\n let stopReporting: Function | undefined;\n const _opts = {\n ...opts,\n ...rebuildOpts,\n cacheDir,\n } as any; // eslint-disable-line @typescript-eslint/no-explicit-any\n if (!_opts.hidePackageManagerOutput) {\n stopReporting = initReporter({\n appendOnly: true,\n hideLifecycleOutput: true,\n });\n }\n try {\n await rebuild.handler(_opts, []);\n } finally {\n stopReporting?.();\n }\n },\n storeDir: storeController.dir,\n depsRequiringBuild,\n };\n}\n\nfunction initReporter(opts?: ReportOptions) {\n return initDefaultReporter({\n context: {\n argv: [],\n process: opts?.process,\n },\n reportingOptions: {\n appendOnly: opts?.appendOnly ?? false,\n throttleProgress: opts?.throttleProgress ?? 200,\n hideAddedPkgsProgress: opts?.hideAddedPkgsProgress,\n hideProgressPrefix: opts?.hideProgressPrefix,\n hideLifecycleOutput: opts?.hideLifecycleOutput,\n peerDependencyRules: {\n allowAny: ['*'],\n ignoreMissing: ['*'],\n ...opts?.peerDependencyRules,\n },\n },\n streamParser: streamParser as any, // eslint-disable-line\n // Linked in core aspects are excluded from the output to reduce noise.\n // Other @teambit/ dependencies will be shown.\n // Only those that are symlinked from outside the workspace will be hidden.\n filterPkgsDiff: (diff) => !diff.name.startsWith('@teambit/') || !diff.from,\n });\n}\n\n/**\n * This hook is used when installation is executed inside a capsule.\n * The components in the capsules should get their peer dependencies installed,\n * so this hook converts any peer dependencies into runtime dependencies.\n * Also, any local dependencies are extended with the \"injected\" option,\n * this tells pnpm to hard link the packages instead of symlinking them.\n */\nfunction readPackageHookForCapsules(pkg: PackageManifest, workspaceDir?: string): PackageManifest {\n // workspaceDir is set only for workspace packages\n if (workspaceDir) {\n return readDependencyPackageHook({\n ...pkg,\n dependencies: {\n ...pkg.peerDependencies,\n ...pkg.dependencies,\n },\n });\n }\n return readDependencyPackageHook(pkg);\n}\n\n/**\n * @teambit/legacy should never be installed as a dependency.\n * It is linked from bvm.\n */\nfunction removeLegacyFromDeps(pkg: PackageManifest): PackageManifest {\n if (pkg.dependencies?.['@teambit/legacy'] && !pkg.dependencies['@teambit/legacy'].startsWith('link:')) {\n delete pkg.dependencies['@teambit/legacy'];\n }\n if (pkg.peerDependencies?.['@teambit/legacy']) {\n delete pkg.peerDependencies['@teambit/legacy'];\n }\n return pkg;\n}\n\n/**\n * This hook is used when installation happens in a Bit workspace.\n * We need a different hook for this case because unlike in a capsule, in a workspace,\n * the package manager only links workspace components to subdependencies.\n * For direct dependencies, Bit's linking is used.\n */\nfunction readPackageHook(pkg: PackageManifest, workspaceDir?: string): PackageManifest {\n if (!pkg.dependencies) {\n return pkg;\n }\n // workspaceDir is set only for workspace packages\n if (workspaceDir && !workspaceDir.includes(BIT_ROOTS_DIR)) {\n return readWorkspacePackageHook(pkg);\n }\n return readDependencyPackageHook(pkg);\n}\n\n/**\n * This hook adds the \"injected\" option to any workspace dependency.\n * The injected option tell pnpm to hard link the packages instead of symlinking them.\n */\nfunction readDependencyPackageHook(pkg: PackageManifest): PackageManifest {\n const dependenciesMeta = pkg.dependenciesMeta ?? {};\n for (const [name, version] of Object.entries(pkg.dependencies ?? {})) {\n if (version.startsWith('workspace:')) {\n // This instructs pnpm to hard link the component from the workspace, not symlink it.\n dependenciesMeta[name] = { injected: true };\n }\n }\n return {\n ...pkg,\n dependenciesMeta,\n };\n}\n\n/**\n * This hook is used when installation happens in a Bit workspace.\n * It is applied on workspace projects, and it removes any references to other workspace projects.\n * This is needed because Bit has its own linking for workspace projects.\n * pnpm should not override the links created by Bit.\n * Otherwise, the IDE would reference workspace projects from inside `node_modules/.pnpm`.\n */\nfunction readWorkspacePackageHook(pkg: PackageManifest): PackageManifest {\n const newDeps = {};\n for (const [name, version] of Object.entries(pkg.dependencies ?? {})) {\n if (!version.startsWith('workspace:')) {\n newDeps[name] = version;\n }\n }\n return {\n ...pkg,\n dependencies: {\n ...pkg.peerDependencies,\n ...newDeps,\n },\n };\n}\n\nfunction groupPkgs(manifestsByPaths: Record<string, ProjectManifest>, opts: { update?: boolean }) {\n const pkgs = Object.entries(manifestsByPaths).map(([rootDir, manifest]) => ({\n rootDir: rootDir as ProjectRootDir,\n manifest,\n }));\n const { graph } = createPkgGraph(pkgs);\n const chunks = sortPackages(graph as any);\n\n // This will create local link by pnpm to a component exists in the ws.\n // it will later deleted by the link process\n // we keep it here to better support case like this:\n // compA@1.0.0 uses compB@1.0.0\n // I have compB@2.0.0 in my workspace\n // now I install compA@1.0.0\n // compA is hoisted to the root and install B@1.0.0 hoisted to the root as well\n // now we will make link to B@2.0.0 and A will break\n // with this we will have a link to the local B by pnpm so it will install B@1.0.0 inside A\n // then when overriding the link, A will still works\n // This is the rational behind not deleting this completely, but need further check that it really works\n const packagesToBuild: MutatedProject[] = []; // @pnpm/core will use this to install the packages\n const allProjects: ProjectOptions[] = [];\n\n chunks.forEach((dirs, buildIndex) => {\n for (const rootDir of dirs) {\n const manifest = manifestsByPaths[rootDir];\n allProjects.push({\n buildIndex,\n manifest,\n rootDir,\n });\n packagesToBuild.push({\n rootDir,\n mutation: 'install',\n update: opts.update,\n });\n }\n });\n return { packagesToBuild, allProjects };\n}\n\nexport async function resolveRemoteVersion(\n packageName: string,\n rootDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n): Promise<ResolvedPackageVersion> {\n const { resolve } = await generateResolverAndFetcher(cacheDir, registries, proxyConfig, networkConfig);\n const resolveOpts = {\n lockfileDir: rootDir,\n preferredVersions: {},\n projectDir: rootDir,\n registry: '',\n };\n try {\n const parsedPackage = parsePackageName(packageName);\n const registry = pickRegistryForPackage(registries.toMap(), parsedPackage.name);\n const wantedDep: WantedDependency = {\n alias: parsedPackage.name,\n pref: parsedPackage.version,\n };\n resolveOpts.registry = registry;\n const val = await resolve(wantedDep, resolveOpts);\n if (!val.manifest) {\n throw new BitError('The resolved package has no manifest');\n }\n const wantedRange =\n parsedPackage.version && semver.validRange(parsedPackage.version) ? parsedPackage.version : undefined;\n\n return {\n packageName: val.manifest.name,\n version: val.manifest.version,\n wantedRange,\n isSemver: true,\n resolvedVia: val.resolvedVia,\n };\n } catch (e: any) {\n if (!e.message?.includes('is not a valid string')) {\n throw pnpmErrorToBitError(e);\n }\n // The provided package is probably a git url or path to a folder\n const wantedDep: WantedDependency = {\n alias: undefined,\n pref: packageName,\n };\n const val = await resolve(wantedDep, resolveOpts);\n if (!val.manifest) {\n throw new BitError('The resolved package has no manifest');\n }\n if (!val.normalizedPref) {\n throw new BitError('The resolved package has no version');\n }\n return {\n packageName: val.manifest.name,\n version: val.normalizedPref,\n isSemver: false,\n resolvedVia: val.resolvedVia,\n };\n }\n}\n\nasync function addDepsRequiringBuildToLockfile(rootDir: string, depsRequiringBuild: string[]) {\n const lockfile = await readWantedLockfile(rootDir, { ignoreIncompatible: true }) as BitLockfile;\n if (lockfile == null) return\n if (isEqual(lockfile.bit?.depsRequiringBuild, depsRequiringBuild)) return;\n lockfile.bit = {\n ...lockfile.bit,\n depsRequiringBuild,\n }\n await writeWantedLockfile(rootDir, lockfile);\n}\n\nexport interface BitLockfile extends Lockfile {\n bit?: BitLockfileAttributes;\n}\n\nexport interface BitLockfileFile extends LockfileFileV9 {\n bit?: BitLockfileAttributes;\n}\n\nexport interface BitLockfileAttributes {\n depsRequiringBuild: string[];\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,13 @@
1
1
  import { CloudMain } from '@teambit/cloud';
2
- import { DependencyResolverMain, InstallationContext, PackageManager, PackageManagerInstallOptions, PackageManagerResolveRemoteVersionOptions, ResolvedPackageVersion, Registries, PackageManagerProxyConfig, PackageManagerNetworkConfig, type CalcDepsGraphOptions } from '@teambit/dependency-resolver';
2
+ import { DependencyResolverMain, InstallationContext, PackageManager, PackageManagerInstallOptions, PackageManagerResolveRemoteVersionOptions, ResolvedPackageVersion, PackageManagerProxyConfig, PackageManagerNetworkConfig, type CalcDepsGraphOptions } from '@teambit/dependency-resolver';
3
+ import { Registries } from '@teambit/pkg.entities.registry';
3
4
  import { Logger } from '@teambit/logger';
4
5
  import { PeerDependencyIssuesByProjects } from '@pnpm/core';
6
+ import { type ResolveFunction } from '@pnpm/client';
5
7
  import { Config } from '@pnpm/config';
6
- import { type ProjectManifest, type DepPath } from '@pnpm/types';
8
+ import { type ProjectManifest, type DepPath, type Registries as ScopeRegistires } from '@pnpm/types';
7
9
  import { Modules } from '@pnpm/modules-yaml';
8
- import type { RebuildFn } from './lynx';
10
+ import { RebuildFn } from './lynx';
9
11
  import { type DependenciesGraph } from '@teambit/objects';
10
12
  export type { RebuildFn };
11
13
  export interface InstallResult {
@@ -28,7 +30,12 @@ export declare class PnpmPackageManager implements PackageManager {
28
30
  private _readConfig;
29
31
  readConfig: (dir?: string) => ReadConfigResult;
30
32
  constructor(depResolver: DependencyResolverMain, logger: Logger, cloud: CloudMain);
31
- dependenciesGraphToLockfile(dependenciesGraph: DependenciesGraph, manifests: Record<string, ProjectManifest>, rootDir: string): Promise<void>;
33
+ dependenciesGraphToLockfile(dependenciesGraph: DependenciesGraph, opts: {
34
+ manifests: Record<string, ProjectManifest>;
35
+ rootDir: string;
36
+ resolve: ResolveFunction;
37
+ registries: ScopeRegistires;
38
+ }): Promise<void>;
32
39
  install({ rootDir, manifests }: InstallationContext, installOptions?: PackageManagerInstallOptions): Promise<InstallResult>;
33
40
  getPeerDependencyIssues(rootDir: string, manifests: Record<string, ProjectManifest>, installOptions?: PackageManagerInstallOptions): Promise<PeerDependencyIssuesByProjects>;
34
41
  resolveRemoteVersion(packageName: string, options: PackageManagerResolveRemoteVersionOptions): Promise<ResolvedPackageVersion>;
@@ -11,6 +11,13 @@ function _dependencyResolver() {
11
11
  };
12
12
  return data;
13
13
  }
14
+ function _pkgEntities() {
15
+ const data = require("@teambit/pkg.entities.registry");
16
+ _pkgEntities = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
14
21
  function _dependenciesPnpm() {
15
22
  const data = require("@teambit/dependencies.pnpm.dep-path");
16
23
  _dependenciesPnpm = function () {
@@ -116,6 +123,13 @@ function _pnpmPruneModules() {
116
123
  };
117
124
  return data;
118
125
  }
126
+ function _lynx() {
127
+ const data = require("./lynx");
128
+ _lynx = function () {
129
+ return data;
130
+ };
131
+ return data;
132
+ }
119
133
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
120
134
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
121
135
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -149,14 +163,14 @@ class PnpmPackageManager {
149
163
  });
150
164
  _defineProperty(this, "readConfig", (0, _lodash().memoize)(this._readConfig));
151
165
  }
152
- async dependenciesGraphToLockfile(dependenciesGraph, manifests, rootDir) {
153
- const lockfile = (0, _lockfileDepsGraphConverter().convertGraphToLockfile)(dependenciesGraph, manifests, rootDir);
166
+ async dependenciesGraphToLockfile(dependenciesGraph, opts) {
167
+ const lockfile = await (0, _lockfileDepsGraphConverter().convertGraphToLockfile)(dependenciesGraph, opts);
154
168
  Object.assign(lockfile, {
155
169
  bit: {
156
170
  restoredFromModel: true
157
171
  }
158
172
  });
159
- const lockfilePath = (0, _path().join)(rootDir, 'pnpm-lock.yaml');
173
+ const lockfilePath = (0, _path().join)(opts.rootDir, 'pnpm-lock.yaml');
160
174
  await (0, _lockfile2().writeLockfileFile)(lockfilePath, lockfile);
161
175
  this.logger.debug(`generated a lockfile from dependencies graph at ${lockfilePath}`);
162
176
  if (process.env.DEPS_GRAPH_LOG) {
@@ -173,8 +187,22 @@ class PnpmPackageManager {
173
187
  const {
174
188
  install
175
189
  } = require('./lynx');
190
+ const registries = await this.depResolver.getRegistries();
191
+ const proxyConfig = await this.depResolver.getProxyConfig();
192
+ const networkConfig = await this.depResolver.getNetworkConfig();
193
+ const {
194
+ config
195
+ } = await this.readConfig(installOptions.packageManagerConfigRootDir);
176
196
  if (installOptions.dependenciesGraph && (0, _harmonyModules().isFeatureEnabled)(_harmonyModules().DEPS_GRAPH) && (installOptions.rootComponents || installOptions.rootComponentsForCapsules)) {
177
- await this.dependenciesGraphToLockfile(installOptions.dependenciesGraph, manifests, rootDir);
197
+ const {
198
+ resolve
199
+ } = await (0, _lynx().generateResolverAndFetcher)(config.cacheDir, registries, proxyConfig, networkConfig);
200
+ await this.dependenciesGraphToLockfile(installOptions.dependenciesGraph, {
201
+ manifests,
202
+ rootDir,
203
+ registries: registries.toMap(),
204
+ resolve
205
+ });
178
206
  }
179
207
  this.logger.debug(`running installation in root dir ${rootDir}`);
180
208
  this.logger.debug('components manifests for installation', manifests);
@@ -184,12 +212,6 @@ class PnpmPackageManager {
184
212
  // this.logger.console('-------------------------PNPM OUTPUT-------------------------');
185
213
  this.logger.off();
186
214
  }
187
- const registries = await this.depResolver.getRegistries();
188
- const proxyConfig = await this.depResolver.getProxyConfig();
189
- const networkConfig = await this.depResolver.getNetworkConfig();
190
- const {
191
- config
192
- } = await this.readConfig(installOptions.packageManagerConfigRootDir);
193
215
  if (!installOptions.useNesting && installOptions.rootComponentsForCapsules) {
194
216
  manifests = await (0, _dependencyResolver().extendWithComponentsFromDir)(rootDir, manifests);
195
217
  }
@@ -358,20 +380,20 @@ class PnpmPackageManager {
358
380
  config
359
381
  } = await this.readConfig();
360
382
  const pnpmRegistry = await getRegistries(config);
361
- const defaultRegistry = new (_dependencyResolver().Registry)(pnpmRegistry.default.uri, pnpmRegistry.default.alwaysAuth, pnpmRegistry.default.authHeaderValue, pnpmRegistry.default.originalAuthType, pnpmRegistry.default.originalAuthValue);
383
+ const defaultRegistry = new (_pkgEntities().Registry)(pnpmRegistry.default.uri, pnpmRegistry.default.alwaysAuth, pnpmRegistry.default.authHeaderValue, pnpmRegistry.default.originalAuthType, pnpmRegistry.default.originalAuthValue);
362
384
  const pnpmScoped = (0, _lodash().omit)(pnpmRegistry, ['default']);
363
385
  const scopesRegistries = Object.keys(pnpmScoped).reduce((acc, scopedRegName) => {
364
386
  const scopedReg = pnpmScoped[scopedRegName];
365
387
  const name = scopedRegName.replace('@', '');
366
- acc[name] = new (_dependencyResolver().Registry)(scopedReg.uri, scopedReg.alwaysAuth, scopedReg.authHeaderValue, scopedReg.originalAuthType, scopedReg.originalAuthValue);
388
+ acc[name] = new (_pkgEntities().Registry)(scopedReg.uri, scopedReg.alwaysAuth, scopedReg.authHeaderValue, scopedReg.originalAuthType, scopedReg.originalAuthValue);
367
389
  return acc;
368
390
  }, {});
369
391
 
370
392
  // Add bit registry server if not exist
371
393
  if (!scopesRegistries.bit) {
372
- scopesRegistries.bit = new (_dependencyResolver().Registry)(_dependencyResolver().BIT_CLOUD_REGISTRY, true);
394
+ scopesRegistries.bit = new (_pkgEntities().Registry)(_dependencyResolver().BIT_CLOUD_REGISTRY, true);
373
395
  }
374
- return new (_dependencyResolver().Registries)(defaultRegistry, scopesRegistries);
396
+ return new (_pkgEntities().Registries)(defaultRegistry, scopesRegistries);
375
397
  }
376
398
  async getInjectedDirs(rootDir, componentDir, packageName) {
377
399
  const modulesState = await this._readModulesManifest(rootDir);
@@ -456,6 +478,15 @@ class PnpmPackageManager {
456
478
  if (opts.componentRootDir != null) {
457
479
  filterByImporterIds.push(opts.componentRootDir);
458
480
  }
481
+ for (const importerId of filterByImporterIds) {
482
+ for (const depType of ['dependencies', 'devDependencies', 'optionalDependencies', 'specifiers', 'dependenciesMeta']) {
483
+ for (const workspacePkgName of opts.componentIdByPkgName.keys()) {
484
+ if (workspacePkgName !== opts.pkgName) {
485
+ delete lockfile.importers[importerId]?.[depType]?.[workspacePkgName];
486
+ }
487
+ }
488
+ }
489
+ }
459
490
  // Filters the lockfile so that it only includes packages related to the given component.
460
491
  const partialLockfile = (0, _lockfile2().convertToLockfileFile)((0, _lockfile().filterLockfileByImporters)(lockfile, filterByImporterIds, {
461
492
  include: {