@teambit/pnpm 0.0.681 → 0.0.684

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.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { CreateStoreControllerOptions } from '@pnpm/store-connection-manager';
1
2
  import { ResolvedPackageVersion, Registries, PackageManagerProxyConfig, PackageManagerNetworkConfig } from '@teambit/dependency-resolver';
2
3
  import { InstallOptions, PeerDependencyIssuesByProjects } from '@pnpm/core';
3
4
  import { ProjectManifest } from '@pnpm/types';
@@ -12,9 +13,9 @@ export declare function getPeerDependencyIssues(rootManifest: {
12
13
  proxyConfig: PackageManagerProxyConfig;
13
14
  networkConfig: PackageManagerNetworkConfig;
14
15
  overrides?: Record<string, string>;
15
- }): Promise<PeerDependencyIssuesByProjects>;
16
- export declare function install(rootManifest: any, manifestsByPaths: any, storeDir: string, cacheDir: string, registries: Registries, proxyConfig?: PackageManagerProxyConfig, networkConfig?: PackageManagerNetworkConfig, options?: {
16
+ } & Pick<CreateStoreControllerOptions, 'packageImportMethod'>): Promise<PeerDependencyIssuesByProjects>;
17
+ export declare function install(rootManifest: any, manifestsByPaths: Record<string, ProjectManifest>, storeDir: string, cacheDir: string, registries: Registries, proxyConfig?: PackageManagerProxyConfig, networkConfig?: PackageManagerNetworkConfig, options?: {
17
18
  nodeLinker?: 'hoisted' | 'isolated';
18
19
  overrides?: Record<string, string>;
19
- } & Pick<InstallOptions, 'publicHoistPattern' | 'hoistPattern'>, logger?: Logger): Promise<void>;
20
+ } & Pick<InstallOptions, 'publicHoistPattern' | 'hoistPattern'> & Pick<CreateStoreControllerOptions, 'packageImportMethod'>, logger?: Logger): Promise<void>;
20
21
  export declare function resolveRemoteVersion(packageName: string, rootDir: string, cacheDir: string, registries: Registries, proxyConfig?: PackageManagerProxyConfig, networkConfig?: PackageManagerNetworkConfig): Promise<ResolvedPackageVersion>;
package/dist/lynx.js CHANGED
@@ -75,6 +75,16 @@ function _storeConnectionManager() {
75
75
  return data;
76
76
  }
77
77
 
78
+ function _sortPackages() {
79
+ const data = _interopRequireDefault(require("@pnpm/sort-packages"));
80
+
81
+ _sortPackages = function () {
82
+ return data;
83
+ };
84
+
85
+ return data;
86
+ }
87
+
78
88
  function _dependencyResolver() {
79
89
  const data = require("@teambit/dependency-resolver");
80
90
 
@@ -125,6 +135,16 @@ function _nerfDart() {
125
135
  return data;
126
136
  }
127
137
 
138
+ function _pkgsGraph() {
139
+ const data = _interopRequireDefault(require("pkgs-graph"));
140
+
141
+ _pkgsGraph = function () {
142
+ return data;
143
+ };
144
+
145
+ return data;
146
+ }
147
+
128
148
  function _readConfig() {
129
149
  const data = require("./read-config");
130
150
 
@@ -145,24 +165,27 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
145
165
 
146
166
  const STORE_CACHE = {};
147
167
 
148
- async function createStoreController(rootDir, storeDir, cacheDir, registries, proxyConfig = {}, networkConfig = {}) {
149
- const authConfig = getAuthConfig(registries);
168
+ async function createStoreController(options) {
169
+ var _options$proxyConfig, _options$proxyConfig2, _options$proxyConfig3, _options$proxyConfig4, _options$proxyConfig5, _options$networkConfi, _options$proxyConfig6;
170
+
171
+ const authConfig = getAuthConfig(options.registries);
150
172
  const opts = {
151
- dir: rootDir,
152
- cacheDir,
153
- storeDir,
173
+ dir: options.rootDir,
174
+ cacheDir: options.cacheDir,
175
+ storeDir: options.storeDir,
154
176
  rawConfig: authConfig,
155
177
  verifyStoreIntegrity: true,
156
- httpProxy: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.httpProxy,
157
- httpsProxy: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.httpsProxy,
158
- ca: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.ca,
159
- cert: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.cert,
160
- key: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.key,
161
- localAddress: networkConfig === null || networkConfig === void 0 ? void 0 : networkConfig.localAddress,
162
- noProxy: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.noProxy,
163
- strictSsl: proxyConfig.strictSSL,
164
- maxSockets: networkConfig.maxSockets,
165
- networkConcurrency: networkConfig.networkConcurrency
178
+ httpProxy: (_options$proxyConfig = options.proxyConfig) === null || _options$proxyConfig === void 0 ? void 0 : _options$proxyConfig.httpProxy,
179
+ httpsProxy: (_options$proxyConfig2 = options.proxyConfig) === null || _options$proxyConfig2 === void 0 ? void 0 : _options$proxyConfig2.httpsProxy,
180
+ ca: (_options$proxyConfig3 = options.proxyConfig) === null || _options$proxyConfig3 === void 0 ? void 0 : _options$proxyConfig3.ca,
181
+ cert: (_options$proxyConfig4 = options.proxyConfig) === null || _options$proxyConfig4 === void 0 ? void 0 : _options$proxyConfig4.cert,
182
+ key: (_options$proxyConfig5 = options.proxyConfig) === null || _options$proxyConfig5 === void 0 ? void 0 : _options$proxyConfig5.key,
183
+ localAddress: (_options$networkConfi = options.networkConfig) === null || _options$networkConfi === void 0 ? void 0 : _options$networkConfi.localAddress,
184
+ noProxy: (_options$proxyConfig6 = options.proxyConfig) === null || _options$proxyConfig6 === void 0 ? void 0 : _options$proxyConfig6.noProxy,
185
+ strictSsl: options.proxyConfig.strictSSL,
186
+ maxSockets: options.networkConfig.maxSockets,
187
+ networkConcurrency: options.networkConfig.networkConcurrency,
188
+ packageImportMethod: options.packageImportMethod
166
189
  }; // We should avoid the recreation of store.
167
190
  // The store holds cache that makes subsequent resolutions faster.
168
191
 
@@ -224,7 +247,9 @@ async function getPeerDependencyIssues(rootManifest, manifestsByPaths, opts) {
224
247
  rootDir: rootManifest.rootDir
225
248
  });
226
249
  const registriesMap = getRegistriesMap(opts.registries);
227
- const storeController = await createStoreController(rootManifest.rootDir, opts.storeDir, opts.cacheDir, opts.registries, opts.proxyConfig, opts.networkConfig);
250
+ const storeController = await createStoreController(_objectSpread(_objectSpread({}, opts), {}, {
251
+ rootDir: rootManifest.rootDir
252
+ }));
228
253
  return pnpm().getPeerDependencyIssues(projects, {
229
254
  storeController: storeController.ctrl,
230
255
  storeDir: storeController.dir,
@@ -236,48 +261,23 @@ async function getPeerDependencyIssues(rootManifest, manifestsByPaths, opts) {
236
261
 
237
262
  async function install(rootManifest, manifestsByPaths, storeDir, cacheDir, registries, proxyConfig = {}, networkConfig = {}, options, // eslint-disable-next-line @typescript-eslint/no-unused-vars
238
263
  logger) {
239
- const packagesToBuild = []; // @pnpm/core will use this to install the packages
240
-
241
- const workspacePackages = {}; // @pnpm/core will use this to link packages to each other
242
- // This will create local link by pnpm to a component exists in the ws.
243
- // it will later deleted by the link process
244
- // we keep it here to better support case like this:
245
- // compA@1.0.0 uses compB@1.0.0
246
- // I have compB@2.0.0 in my workspace
247
- // now I install compA@1.0.0
248
- // compA is hoisted to the root and install B@1.0.0 hoisted to the root as well
249
- // now we will make link to B@2.0.0 and A will break
250
- // with this we will have a link to the local B by pnpm so it will install B@1.0.0 inside A
251
- // then when overriding the link, A will still works
252
- // This is the rational behind not deleting this completely, but need further check that it really works
253
- // eslint-disable-next-line
254
-
255
- for (const rootDir in manifestsByPaths) {
256
- const manifest = manifestsByPaths[rootDir];
257
- packagesToBuild.push({
258
- buildIndex: 0,
259
- // workspace components should be installed before the root
260
- manifest,
261
- rootDir,
262
- mutation: 'install'
263
- });
264
- workspacePackages[manifest.name] = workspacePackages[manifest.name] || {};
265
- workspacePackages[manifest.name][manifest.version] = {
266
- dir: rootDir,
267
- manifest
268
- };
269
- }
270
-
271
- packagesToBuild.push({
272
- buildIndex: 1,
273
- // install the root package after the workspace components were installed
274
- manifest: rootManifest.manifest,
275
- mutation: 'install',
276
- rootDir: rootManifest.rootDir
277
- });
264
+ const {
265
+ packagesToBuild,
266
+ workspacePackages
267
+ } = groupPkgs(_objectSpread(_objectSpread({}, manifestsByPaths), {}, {
268
+ [rootManifest.rootDir]: rootManifest.manifest
269
+ }));
278
270
  const registriesMap = getRegistriesMap(registries);
279
271
  const authConfig = getAuthConfig(registries);
280
- const storeController = await createStoreController(rootManifest.rootDir, storeDir, cacheDir, registries, proxyConfig, networkConfig);
272
+ const storeController = await createStoreController({
273
+ rootDir: rootManifest.rootDir,
274
+ storeDir,
275
+ cacheDir,
276
+ registries,
277
+ proxyConfig,
278
+ networkConfig,
279
+ packageImportMethod: options === null || options === void 0 ? void 0 : options.packageImportMethod
280
+ });
281
281
 
282
282
  const opts = _objectSpread({
283
283
  storeDir: storeController.dir,
@@ -309,6 +309,55 @@ logger) {
309
309
  }
310
310
  }
311
311
 
312
+ function groupPkgs(manifestsByPaths) {
313
+ const pkgs = Object.entries(manifestsByPaths).map(([dir, manifest]) => ({
314
+ dir,
315
+ manifest
316
+ }));
317
+ const {
318
+ graph
319
+ } = (0, _pkgsGraph().default)(pkgs);
320
+ const chunks = (0, _sortPackages().default)(graph); // This will create local link by pnpm to a component exists in the ws.
321
+ // it will later deleted by the link process
322
+ // we keep it here to better support case like this:
323
+ // compA@1.0.0 uses compB@1.0.0
324
+ // I have compB@2.0.0 in my workspace
325
+ // now I install compA@1.0.0
326
+ // compA is hoisted to the root and install B@1.0.0 hoisted to the root as well
327
+ // now we will make link to B@2.0.0 and A will break
328
+ // with this we will have a link to the local B by pnpm so it will install B@1.0.0 inside A
329
+ // then when overriding the link, A will still works
330
+ // This is the rational behind not deleting this completely, but need further check that it really works
331
+
332
+ const packagesToBuild = []; // @pnpm/core will use this to install the packages
333
+
334
+ const workspacePackages = {}; // @pnpm/core will use this to link packages to each other
335
+
336
+ chunks.forEach((dirs, buildIndex) => {
337
+ for (const rootDir of dirs) {
338
+ const manifest = manifestsByPaths[rootDir];
339
+ packagesToBuild.push({
340
+ buildIndex,
341
+ manifest,
342
+ rootDir,
343
+ mutation: 'install'
344
+ });
345
+
346
+ if (manifest.name) {
347
+ workspacePackages[manifest.name] = workspacePackages[manifest.name] || {};
348
+ workspacePackages[manifest.name][manifest.version] = {
349
+ dir: rootDir,
350
+ manifest
351
+ };
352
+ }
353
+ }
354
+ });
355
+ return {
356
+ packagesToBuild,
357
+ workspacePackages
358
+ };
359
+ }
360
+
312
361
  async function resolveRemoteVersion(packageName, rootDir, cacheDir, registries, proxyConfig = {}, networkConfig = {}) {
313
362
  const {
314
363
  resolve
package/dist/lynx.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["lynx.ts"],"names":["STORE_CACHE","createStoreController","rootDir","storeDir","cacheDir","registries","proxyConfig","networkConfig","authConfig","getAuthConfig","opts","dir","rawConfig","verifyStoreIntegrity","httpProxy","httpsProxy","ca","cert","key","localAddress","noProxy","strictSsl","strictSSL","maxSockets","networkConcurrency","cacheKey","JSON","stringify","generateResolverAndFetcher","pnpmConfig","Object","assign","config","timeout","fetchTimeout","retry","factor","fetchRetryFactor","maxTimeout","fetchRetryMaxtimeout","minTimeout","fetchRetryMintimeout","retries","fetchRetries","result","getPeerDependencyIssues","rootManifest","manifestsByPaths","projects","workspacePackages","manifest","entries","push","name","version","registriesMap","getRegistriesMap","storeController","pnpm","ctrl","overrides","install","options","logger","packagesToBuild","buildIndex","mutation","extendNodePath","preferFrozenLockfile","pruneLockfileImporters","stopReporting","context","argv","reportingOptions","appendOnly","throttleProgress","streamParser","resolveRemoteVersion","packageName","resolve","resolveOpts","projectDir","registry","parsedPackage","wantedDep","alias","pref","isValidRange","semver","validRange","val","isSemver","resolvedVia","e","message","includes","undefined","normalizedPref","default","defaultRegistry","uri","NPM_REGISTRY","scopes","forEach","registryName","res","alwaysAuth","defaultAuthTokens","getAuthTokenForRegistry","keyName","authTokens","nerfed","alwaysAuthKeyName","isDefault","originalAuthType","originalAuthValue","split"],"mappings":"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","sourcesContent":["import semver from 'semver';\nimport parsePackageName from 'parse-package-name';\nimport defaultReporter from '@pnpm/default-reporter';\nimport { streamParser } from '@pnpm/logger';\nimport { StoreController, WantedDependency } from '@pnpm/package-store';\nimport { createOrConnectStoreController, CreateStoreControllerOptions } from '@pnpm/store-connection-manager';\nimport {\n ResolvedPackageVersion,\n Registries,\n NPM_REGISTRY,\n Registry,\n PackageManagerProxyConfig,\n PackageManagerNetworkConfig,\n} from '@teambit/dependency-resolver';\nimport {\n MutatedProject,\n mutateModules,\n InstallOptions,\n PeerDependencyIssuesByProjects,\n ProjectOptions,\n} from '@pnpm/core';\nimport * as pnpm from '@pnpm/core';\nimport createResolverAndFetcher, { ClientOptions } from '@pnpm/client';\nimport pickRegistryForPackage from '@pnpm/pick-registry-for-package';\nimport { ProjectManifest } from '@pnpm/types';\nimport { Logger } from '@teambit/logger';\nimport toNerfDart from 'nerf-dart';\nimport { readConfig } from './read-config';\n\ntype RegistriesMap = {\n default: string;\n [registryName: string]: string;\n};\n\nconst STORE_CACHE: Record<string, { ctrl: StoreController; dir: string }> = {};\n\nasync function createStoreController(\n rootDir: string,\n storeDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n): Promise<{ ctrl: StoreController; dir: string }> {\n const authConfig = getAuthConfig(registries);\n const opts: CreateStoreControllerOptions = {\n dir: rootDir,\n cacheDir,\n storeDir,\n rawConfig: authConfig,\n verifyStoreIntegrity: true,\n httpProxy: proxyConfig?.httpProxy,\n httpsProxy: proxyConfig?.httpsProxy,\n ca: proxyConfig?.ca,\n cert: proxyConfig?.cert,\n key: proxyConfig?.key,\n localAddress: networkConfig?.localAddress,\n noProxy: proxyConfig?.noProxy,\n strictSsl: proxyConfig.strictSSL,\n maxSockets: networkConfig.maxSockets,\n networkConcurrency: networkConfig.networkConcurrency,\n };\n // We should avoid the recreation of store.\n // The store holds cache that makes subsequent resolutions faster.\n const cacheKey = JSON.stringify(opts);\n if (!STORE_CACHE[cacheKey]) {\n // Although it would be enough to call createNewStoreController(),\n // that doesn't resolve the store directory location.\n STORE_CACHE[cacheKey] = await createOrConnectStoreController(opts);\n }\n return STORE_CACHE[cacheKey];\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: proxyConfig?.ca,\n cert: proxyConfig?.cert,\n key: proxyConfig?.key,\n localAddress: networkConfig?.localAddress,\n noProxy: proxyConfig?.noProxy,\n strictSsl: proxyConfig.strictSSL,\n timeout: networkConfig.fetchTimeout,\n retry: {\n factor: networkConfig.fetchRetryFactor,\n maxTimeout: networkConfig.fetchRetryMaxtimeout,\n minTimeout: networkConfig.fetchRetryMintimeout,\n retries: networkConfig.fetchRetries,\n },\n };\n const result = createResolverAndFetcher(opts);\n return result;\n}\n\nexport async function getPeerDependencyIssues(\n rootManifest: {\n rootDir: string;\n manifest: ProjectManifest;\n },\n manifestsByPaths: Record<string, any>,\n opts: {\n storeDir: string;\n cacheDir: string;\n registries: Registries;\n proxyConfig: PackageManagerProxyConfig;\n networkConfig: PackageManagerNetworkConfig;\n overrides?: Record<string, string>;\n }\n): Promise<PeerDependencyIssuesByProjects> {\n const projects: ProjectOptions[] = [];\n const workspacePackages = {};\n for (const [rootDir, manifest] of Object.entries(manifestsByPaths)) {\n projects.push({\n manifest,\n rootDir,\n });\n workspacePackages[manifest.name] = workspacePackages[manifest.name] || {};\n workspacePackages[manifest.name][manifest.version] = { dir: rootDir, manifest };\n }\n projects.push({\n manifest: rootManifest.manifest,\n rootDir: rootManifest.rootDir,\n });\n const registriesMap = getRegistriesMap(opts.registries);\n const storeController = await createStoreController(\n rootManifest.rootDir,\n opts.storeDir,\n opts.cacheDir,\n opts.registries,\n opts.proxyConfig,\n opts.networkConfig\n );\n return pnpm.getPeerDependencyIssues(projects, {\n storeController: storeController.ctrl,\n storeDir: storeController.dir,\n overrides: opts.overrides,\n workspacePackages,\n registries: registriesMap,\n });\n}\n\nexport async function install(\n rootManifest,\n manifestsByPaths,\n storeDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {},\n options?: {\n nodeLinker?: 'hoisted' | 'isolated';\n overrides?: Record<string, string>;\n } & Pick<InstallOptions, 'publicHoistPattern' | 'hoistPattern'>,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n logger?: Logger\n) {\n const packagesToBuild: MutatedProject[] = []; // @pnpm/core will use this to install the packages\n const workspacePackages = {}; // @pnpm/core will use this to link packages to each other\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\n // eslint-disable-next-line\n for (const rootDir in manifestsByPaths) {\n const manifest = manifestsByPaths[rootDir];\n packagesToBuild.push({\n buildIndex: 0, // workspace components should be installed before the root\n manifest,\n rootDir,\n mutation: 'install',\n });\n workspacePackages[manifest.name] = workspacePackages[manifest.name] || {};\n workspacePackages[manifest.name][manifest.version] = { dir: rootDir, manifest };\n }\n packagesToBuild.push({\n buildIndex: 1, // install the root package after the workspace components were installed\n manifest: rootManifest.manifest,\n mutation: 'install',\n rootDir: rootManifest.rootDir,\n });\n const registriesMap = getRegistriesMap(registries);\n const authConfig = getAuthConfig(registries);\n const storeController = await createStoreController(\n rootManifest.rootDir,\n storeDir,\n cacheDir,\n registries,\n proxyConfig,\n networkConfig\n );\n const opts: InstallOptions = {\n storeDir: storeController.dir,\n dir: rootManifest.rootDir,\n extendNodePath: false,\n storeController: storeController.ctrl,\n workspacePackages,\n preferFrozenLockfile: true,\n pruneLockfileImporters: true,\n registries: registriesMap,\n rawConfig: authConfig,\n ...options,\n };\n\n const stopReporting = defaultReporter({\n context: {\n argv: [],\n },\n reportingOptions: {\n appendOnly: false,\n throttleProgress: 200,\n },\n streamParser,\n });\n try {\n await mutateModules(packagesToBuild, opts);\n } finally {\n stopReporting();\n }\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 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 const isValidRange = parsedPackage.version ? !!semver.validRange(parsedPackage.version) : false;\n resolveOpts.registry = registry;\n const val = await resolve(wantedDep, resolveOpts);\n const version = isValidRange ? parsedPackage.version : val.manifest.version;\n\n return {\n packageName: val.manifest.name,\n version,\n isSemver: true,\n resolvedVia: val.resolvedVia,\n };\n } catch (e: any) {\n if (!e.message?.includes('is not a valid string')) {\n throw 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 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 if (registry.originalAuthType === 'user-pass') {\n return [\n {\n keyName: `${nerfed}:username`,\n val: registry.originalAuthValue?.split(':')[0] || '',\n },\n {\n keyName: `${nerfed}:_password`,\n val: registry.originalAuthValue?.split(':')[1] || '',\n },\n ];\n }\n return [];\n}\n"]}
1
+ {"version":3,"sources":["lynx.ts"],"names":["STORE_CACHE","createStoreController","options","authConfig","getAuthConfig","registries","opts","dir","rootDir","cacheDir","storeDir","rawConfig","verifyStoreIntegrity","httpProxy","proxyConfig","httpsProxy","ca","cert","key","localAddress","networkConfig","noProxy","strictSsl","strictSSL","maxSockets","networkConcurrency","packageImportMethod","cacheKey","JSON","stringify","generateResolverAndFetcher","pnpmConfig","Object","assign","config","timeout","fetchTimeout","retry","factor","fetchRetryFactor","maxTimeout","fetchRetryMaxtimeout","minTimeout","fetchRetryMintimeout","retries","fetchRetries","result","getPeerDependencyIssues","rootManifest","manifestsByPaths","projects","workspacePackages","manifest","entries","push","name","version","registriesMap","getRegistriesMap","storeController","pnpm","ctrl","overrides","install","logger","packagesToBuild","groupPkgs","extendNodePath","preferFrozenLockfile","pruneLockfileImporters","stopReporting","context","argv","reportingOptions","appendOnly","throttleProgress","streamParser","pkgs","map","graph","chunks","forEach","dirs","buildIndex","mutation","resolveRemoteVersion","packageName","resolve","resolveOpts","projectDir","registry","parsedPackage","wantedDep","alias","pref","isValidRange","semver","validRange","val","isSemver","resolvedVia","e","message","includes","undefined","normalizedPref","default","defaultRegistry","uri","NPM_REGISTRY","scopes","registryName","res","alwaysAuth","defaultAuthTokens","getAuthTokenForRegistry","keyName","authTokens","nerfed","alwaysAuthKeyName","isDefault","originalAuthType","originalAuthValue","split"],"mappings":"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","sourcesContent":["import semver from 'semver';\nimport parsePackageName from 'parse-package-name';\nimport defaultReporter from '@pnpm/default-reporter';\nimport { streamParser } from '@pnpm/logger';\nimport { StoreController, WantedDependency } from '@pnpm/package-store';\nimport { createOrConnectStoreController, CreateStoreControllerOptions } from '@pnpm/store-connection-manager';\nimport sortPackages from '@pnpm/sort-packages';\nimport {\n ResolvedPackageVersion,\n Registries,\n NPM_REGISTRY,\n Registry,\n PackageManagerProxyConfig,\n PackageManagerNetworkConfig,\n} from '@teambit/dependency-resolver';\nimport {\n MutatedProject,\n mutateModules,\n InstallOptions,\n PeerDependencyIssuesByProjects,\n ProjectOptions,\n} from '@pnpm/core';\nimport * as pnpm from '@pnpm/core';\nimport createResolverAndFetcher, { ClientOptions } from '@pnpm/client';\nimport pickRegistryForPackage from '@pnpm/pick-registry-for-package';\nimport { ProjectManifest } from '@pnpm/types';\nimport { Logger } from '@teambit/logger';\nimport toNerfDart from 'nerf-dart';\nimport pkgsGraph from 'pkgs-graph';\nimport { readConfig } from './read-config';\n\ntype RegistriesMap = {\n default: string;\n [registryName: string]: string;\n};\n\nconst STORE_CACHE: Record<string, { ctrl: StoreController; dir: string }> = {};\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'>\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 storeDir: options.storeDir,\n rawConfig: authConfig,\n verifyStoreIntegrity: true,\n httpProxy: options.proxyConfig?.httpProxy,\n httpsProxy: options.proxyConfig?.httpsProxy,\n ca: options.proxyConfig?.ca,\n cert: options.proxyConfig?.cert,\n key: options.proxyConfig?.key,\n localAddress: options.networkConfig?.localAddress,\n noProxy: options.proxyConfig?.noProxy,\n strictSsl: options.proxyConfig.strictSSL,\n maxSockets: options.networkConfig.maxSockets,\n networkConcurrency: options.networkConfig.networkConcurrency,\n packageImportMethod: options.packageImportMethod,\n };\n // We should avoid the recreation of store.\n // The store holds cache that makes subsequent resolutions faster.\n const cacheKey = JSON.stringify(opts);\n if (!STORE_CACHE[cacheKey]) {\n // Although it would be enough to call createNewStoreController(),\n // that doesn't resolve the store directory location.\n STORE_CACHE[cacheKey] = await createOrConnectStoreController(opts);\n }\n return STORE_CACHE[cacheKey];\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: proxyConfig?.ca,\n cert: proxyConfig?.cert,\n key: proxyConfig?.key,\n localAddress: networkConfig?.localAddress,\n noProxy: proxyConfig?.noProxy,\n strictSsl: proxyConfig.strictSSL,\n timeout: networkConfig.fetchTimeout,\n retry: {\n factor: networkConfig.fetchRetryFactor,\n maxTimeout: networkConfig.fetchRetryMaxtimeout,\n minTimeout: networkConfig.fetchRetryMintimeout,\n retries: networkConfig.fetchRetries,\n },\n };\n const result = createResolverAndFetcher(opts);\n return result;\n}\n\nexport async function getPeerDependencyIssues(\n rootManifest: {\n rootDir: string;\n manifest: ProjectManifest;\n },\n manifestsByPaths: Record<string, any>,\n opts: {\n storeDir: string;\n cacheDir: string;\n registries: Registries;\n proxyConfig: PackageManagerProxyConfig;\n networkConfig: PackageManagerNetworkConfig;\n overrides?: Record<string, string>;\n } & Pick<CreateStoreControllerOptions, 'packageImportMethod'>\n): Promise<PeerDependencyIssuesByProjects> {\n const projects: ProjectOptions[] = [];\n const workspacePackages = {};\n for (const [rootDir, manifest] of Object.entries(manifestsByPaths)) {\n projects.push({\n manifest,\n rootDir,\n });\n workspacePackages[manifest.name] = workspacePackages[manifest.name] || {};\n workspacePackages[manifest.name][manifest.version] = { dir: rootDir, manifest };\n }\n projects.push({\n manifest: rootManifest.manifest,\n rootDir: rootManifest.rootDir,\n });\n const registriesMap = getRegistriesMap(opts.registries);\n const storeController = await createStoreController({\n ...opts,\n rootDir: rootManifest.rootDir,\n });\n return pnpm.getPeerDependencyIssues(projects, {\n storeController: storeController.ctrl,\n storeDir: storeController.dir,\n overrides: opts.overrides,\n workspacePackages,\n registries: registriesMap,\n });\n}\n\nexport async function install(\n rootManifest,\n manifestsByPaths: Record<string, ProjectManifest>,\n storeDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {},\n options?: {\n nodeLinker?: 'hoisted' | 'isolated';\n overrides?: Record<string, string>;\n } & Pick<InstallOptions, 'publicHoistPattern' | 'hoistPattern'>\n & Pick<CreateStoreControllerOptions, 'packageImportMethod'>,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n logger?: Logger\n) {\n const { packagesToBuild, workspacePackages } = groupPkgs({\n ...manifestsByPaths,\n [rootManifest.rootDir]: rootManifest.manifest,\n });\n const registriesMap = getRegistriesMap(registries);\n const authConfig = getAuthConfig(registries);\n const storeController = await createStoreController({\n rootDir: rootManifest.rootDir,\n storeDir,\n cacheDir,\n registries,\n proxyConfig,\n networkConfig,\n packageImportMethod: options?.packageImportMethod,\n });\n const opts: InstallOptions = {\n storeDir: storeController.dir,\n dir: rootManifest.rootDir,\n extendNodePath: false,\n storeController: storeController.ctrl,\n workspacePackages,\n preferFrozenLockfile: true,\n pruneLockfileImporters: true,\n registries: registriesMap,\n rawConfig: authConfig,\n ...options,\n };\n\n const stopReporting = defaultReporter({\n context: {\n argv: [],\n },\n reportingOptions: {\n appendOnly: false,\n throttleProgress: 200,\n },\n streamParser,\n });\n try {\n await mutateModules(packagesToBuild, opts);\n } finally {\n stopReporting();\n }\n}\n\nfunction groupPkgs(manifestsByPaths: Record<string, ProjectManifest>) {\n const pkgs = Object.entries(manifestsByPaths).map(([dir, manifest]) => ({ dir, manifest }));\n const { graph } = pkgsGraph(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 workspacePackages = {}; // @pnpm/core will use this to link packages to each other\n\n chunks.forEach((dirs, buildIndex) => {\n for (const rootDir of dirs) {\n const manifest = manifestsByPaths[rootDir];\n packagesToBuild.push({\n buildIndex,\n manifest,\n rootDir,\n mutation: 'install',\n });\n if (manifest.name) {\n workspacePackages[manifest.name] = workspacePackages[manifest.name] || {};\n workspacePackages[manifest.name][manifest.version] = { dir: rootDir, manifest };\n }\n }\n });\n return { packagesToBuild, workspacePackages };\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 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 const isValidRange = parsedPackage.version ? !!semver.validRange(parsedPackage.version) : false;\n resolveOpts.registry = registry;\n const val = await resolve(wantedDep, resolveOpts);\n const version = isValidRange ? parsedPackage.version : val.manifest.version;\n\n return {\n packageName: val.manifest.name,\n version,\n isSemver: true,\n resolvedVia: val.resolvedVia,\n };\n } catch (e: any) {\n if (!e.message?.includes('is not a valid string')) {\n throw 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 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 if (registry.originalAuthType === 'user-pass') {\n return [\n {\n keyName: `${nerfed}:username`,\n val: registry.originalAuthValue?.split(':')[0] || '',\n },\n {\n keyName: `${nerfed}:_password`,\n val: registry.originalAuthValue?.split(':')[1] || '',\n },\n ];\n }\n return [];\n}\n"]}
@@ -123,6 +123,8 @@ class PnpmPackageManager {
123
123
  }
124
124
 
125
125
  async install(rootDir, rootPolicy, componentDirectoryMap, installOptions = {}) {
126
+ var _installOptions$packa;
127
+
126
128
  // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import
127
129
  // eslint-disable-next-line global-require, import/no-dynamic-require
128
130
  const {
@@ -153,7 +155,8 @@ class PnpmPackageManager {
153
155
  nodeLinker: installOptions.nodeLinker,
154
156
  overrides: installOptions.overrides,
155
157
  hoistPattern: config.hoistPattern,
156
- publicHoistPattern: ['*eslint*', '@prettier/plugin-*', '*prettier-plugin-*']
158
+ publicHoistPattern: ['*eslint*', '@prettier/plugin-*', '*prettier-plugin-*'],
159
+ packageImportMethod: (_installOptions$packa = installOptions.packageImportMethod) !== null && _installOptions$packa !== void 0 ? _installOptions$packa : config.packageImportMethod
157
160
  }, this.logger);
158
161
  this.logger.on(); // Make a divider row to improve output
159
162
 
@@ -162,6 +165,8 @@ class PnpmPackageManager {
162
165
  }
163
166
 
164
167
  async getPeerDependencyIssues(rootDir, rootPolicy, componentDirectoryMap, installOptions = {}) {
168
+ var _installOptions$packa2;
169
+
165
170
  const {
166
171
  storeDir,
167
172
  cacheDir
@@ -177,13 +182,17 @@ class PnpmPackageManager {
177
182
  componentsManifests,
178
183
  rootManifest
179
184
  } = await this._componentsToPnpmWorkspaceProjects(rootDir, rootPolicy, componentDirectoryMap, installOptions);
185
+ const {
186
+ config
187
+ } = await this.readConfig();
180
188
  return lynx.getPeerDependencyIssues(rootManifest, componentsManifests, {
181
189
  storeDir,
182
190
  cacheDir,
183
191
  proxyConfig,
184
192
  registries,
185
193
  networkConfig,
186
- overrides: installOptions.overrides
194
+ overrides: installOptions.overrides,
195
+ packageImportMethod: (_installOptions$packa2 = installOptions.packageImportMethod) !== null && _installOptions$packa2 !== void 0 ? _installOptions$packa2 : config.packageImportMethod
187
196
  });
188
197
  }
189
198
 
@@ -1 +1 @@
1
- {"version":3,"sources":["pnpm.package-manager.ts"],"names":["defaultStoreDir","userHome","defaultCacheDir","PnpmPackageManager","constructor","depResolver","pkg","logger","readConfig","_componentsToPnpmWorkspaceProjects","rootDir","rootPolicy","componentDirectoryMap","installOptions","components","toArray","map","component","options","filterComponentsFromManifests","createManifestForComponentsWithoutDependencies","dedupe","dependencyFilterFn","workspaceManifest","getWorkspaceManifest","undefined","rootManifest","toJsonWithDir","copyPeerToRuntime","copyPeerToRuntimeOnRoot","installPeersFromEnvs","componentsManifests","computeComponentsManifests","componentsManifestsMap","copyPeerToRuntimeOnComponents","_getGlobalPnpmDirs","opts","config","packageManagerConfigRootDir","storeDir","cacheRootDir","cacheDir","install","require","debug","setStatusLine","off","registries","getRegistries","proxyConfig","getProxyConfig","networkConfig","getNetworkConfig","nodeLinker","overrides","hoistPattern","publicHoistPattern","on","console","consoleSuccess","getPeerDependencyIssues","lynx","componentsManifestsFromWorkspace","reduce","acc","dir","packageName","getPackageName","has","get","toJson","resolveRemoteVersion","maxSockets","networkConcurrency","fetchRetries","fetchTimeout","fetchRetryMaxtimeout","fetchRetryMintimeout","pnpmRegistry","defaultRegistry","Registry","default","uri","alwaysAuth","authHeaderValue","originalAuthType","originalAuthValue","pnpmScoped","scopesRegistries","Object","keys","scopedRegName","scopedReg","name","replace","bit","BIT_DEV_REGISTRY","Registries"],"mappings":"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","sourcesContent":["import { ComponentMap } from '@teambit/component';\nimport {\n ComponentsManifestsMap,\n CreateFromComponentsOptions,\n WorkspacePolicy,\n DependencyResolverMain,\n extendWithComponentsFromDir,\n PackageManager,\n PackageManagerInstallOptions,\n PackageManagerResolveRemoteVersionOptions,\n ResolvedPackageVersion,\n Registries,\n Registry,\n BIT_DEV_REGISTRY,\n PackageManagerProxyConfig,\n PackageManagerNetworkConfig,\n} from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport { memoize, omit } from 'lodash';\nimport { PkgMain } from '@teambit/pkg';\nimport { PeerDependencyIssuesByProjects } from '@pnpm/core';\nimport { ProjectManifest } from '@pnpm/types';\nimport { join } from 'path';\nimport userHome from 'user-home';\nimport { readConfig } from './read-config';\n\nconst defaultStoreDir = join(userHome, '.pnpm-store');\nconst defaultCacheDir = join(userHome, '.pnpm-cache');\n\ninterface Manifests {\n componentsManifests: Record<string, ProjectManifest>;\n rootManifest: {\n rootDir: string;\n manifest: ProjectManifest;\n };\n}\n\nexport class PnpmPackageManager implements PackageManager {\n private readConfig = memoize(readConfig);\n constructor(private depResolver: DependencyResolverMain, private pkg: PkgMain, private logger: Logger) {}\n\n private async _componentsToPnpmWorkspaceProjects(\n rootDir: string,\n rootPolicy: WorkspacePolicy,\n componentDirectoryMap: ComponentMap<string>,\n installOptions: PackageManagerInstallOptions = {}\n ): Promise<Manifests> {\n const components = componentDirectoryMap.toArray().map(([component]) => component);\n const options: CreateFromComponentsOptions = {\n filterComponentsFromManifests: true,\n createManifestForComponentsWithoutDependencies: true,\n dedupe: installOptions.dedupe,\n dependencyFilterFn: installOptions.dependencyFilterFn,\n };\n const workspaceManifest = await this.depResolver.getWorkspaceManifest(\n undefined,\n undefined,\n rootPolicy,\n rootDir,\n components,\n options\n );\n const rootManifest = workspaceManifest.toJsonWithDir({\n copyPeerToRuntime: installOptions.copyPeerToRuntimeOnRoot,\n installPeersFromEnvs: installOptions.installPeersFromEnvs,\n });\n\n const componentsManifests = this.computeComponentsManifests(\n componentDirectoryMap,\n workspaceManifest.componentsManifestsMap,\n // In case of not deduping we want to install peers inside the components\n // !options.dedupe\n installOptions.copyPeerToRuntimeOnComponents\n );\n return {\n componentsManifests,\n rootManifest,\n };\n }\n\n async _getGlobalPnpmDirs(\n opts: {\n cacheRootDir?: string;\n packageManagerConfigRootDir?: string;\n } = {}\n ) {\n const { config } = await this.readConfig(opts.packageManagerConfigRootDir);\n const storeDir = opts.cacheRootDir ? join(opts.cacheRootDir, '.pnpm-store') : config.storeDir ?? defaultStoreDir;\n const cacheDir = opts.cacheRootDir ? join(opts.cacheRootDir, '.pnpm-cache') : config.cacheDir ?? defaultCacheDir;\n return { storeDir, cacheDir };\n }\n\n async install(\n rootDir: string,\n rootPolicy: WorkspacePolicy,\n componentDirectoryMap: ComponentMap<string>,\n installOptions: PackageManagerInstallOptions = {}\n ): Promise<void> {\n // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { install } = require('./lynx');\n\n const { componentsManifests, rootManifest } = await this._componentsToPnpmWorkspaceProjects(\n rootDir,\n rootPolicy,\n componentDirectoryMap,\n installOptions\n );\n this.logger.debug('root manifest for installation', rootManifest);\n this.logger.debug('components manifests for installation', componentsManifests);\n this.logger.setStatusLine('installing dependencies using pnpm');\n // turn off the logger because it interrupts the pnpm output\n this.logger.off();\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n const { storeDir, cacheDir } = await this._getGlobalPnpmDirs(installOptions);\n const { config } = await this.readConfig(installOptions.packageManagerConfigRootDir);\n await extendWithComponentsFromDir(rootManifest.rootDir, componentsManifests);\n await install(\n rootManifest,\n componentsManifests,\n storeDir,\n cacheDir,\n registries,\n proxyConfig,\n networkConfig,\n {\n nodeLinker: installOptions.nodeLinker,\n overrides: installOptions.overrides,\n hoistPattern: config.hoistPattern,\n publicHoistPattern: ['*eslint*', '@prettier/plugin-*', '*prettier-plugin-*'],\n },\n this.logger\n );\n this.logger.on();\n // Make a divider row to improve output\n this.logger.console('-------------------------');\n this.logger.consoleSuccess('installing dependencies using pnpm');\n }\n\n async getPeerDependencyIssues(\n rootDir: string,\n rootPolicy: WorkspacePolicy,\n componentDirectoryMap: ComponentMap<string>,\n installOptions: PackageManagerInstallOptions = {}\n ): Promise<PeerDependencyIssuesByProjects> {\n const { storeDir, cacheDir } = await this._getGlobalPnpmDirs(installOptions);\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n const registries = await this.depResolver.getRegistries();\n // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const lynx = require('./lynx');\n const { componentsManifests, rootManifest } = await this._componentsToPnpmWorkspaceProjects(\n rootDir,\n rootPolicy,\n componentDirectoryMap,\n installOptions\n );\n return lynx.getPeerDependencyIssues(rootManifest, componentsManifests, {\n storeDir,\n cacheDir,\n proxyConfig,\n registries,\n networkConfig,\n overrides: installOptions.overrides,\n });\n }\n\n private computeComponentsManifests(\n componentDirectoryMap: ComponentMap<string>,\n componentsManifestsFromWorkspace: ComponentsManifestsMap,\n copyPeerToRuntime = false\n ): Record<string, ProjectManifest> {\n return componentDirectoryMap.toArray().reduce((acc, [component, dir]) => {\n const packageName = this.pkg.getPackageName(component);\n if (componentsManifestsFromWorkspace.has(packageName)) {\n acc[dir] = componentsManifestsFromWorkspace.get(packageName)?.toJson({ copyPeerToRuntime });\n }\n return acc;\n }, {});\n }\n\n async resolveRemoteVersion(\n packageName: string,\n options: PackageManagerResolveRemoteVersionOptions\n ): Promise<ResolvedPackageVersion> {\n // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { resolveRemoteVersion } = require('./lynx');\n const { cacheDir } = await this._getGlobalPnpmDirs(options);\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n return resolveRemoteVersion(packageName, options.rootDir, cacheDir, registries, proxyConfig, networkConfig);\n }\n\n async getProxyConfig?(): Promise<PackageManagerProxyConfig> {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { getProxyConfig } = require('./get-proxy-config');\n const { config } = await this.readConfig();\n return getProxyConfig(config);\n }\n\n async getNetworkConfig?(): Promise<PackageManagerNetworkConfig> {\n const { config } = await this.readConfig();\n return {\n maxSockets: config.maxSockets,\n networkConcurrency: config.networkConcurrency,\n fetchRetries: config.fetchRetries,\n fetchTimeout: config.fetchTimeout,\n fetchRetryMaxtimeout: config.fetchRetryMaxtimeout,\n fetchRetryMintimeout: config.fetchRetryMintimeout,\n };\n }\n\n async getRegistries(): Promise<Registries> {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { getRegistries } = require('./get-registries');\n const { config } = await this.readConfig();\n const pnpmRegistry = await getRegistries(config);\n const defaultRegistry = new Registry(\n pnpmRegistry.default.uri,\n pnpmRegistry.default.alwaysAuth,\n pnpmRegistry.default.authHeaderValue,\n pnpmRegistry.default.originalAuthType,\n pnpmRegistry.default.originalAuthValue\n );\n\n const pnpmScoped = omit(pnpmRegistry, ['default']);\n const scopesRegistries: Record<string, Registry> = Object.keys(pnpmScoped).reduce((acc, scopedRegName) => {\n const scopedReg = pnpmScoped[scopedRegName];\n const name = scopedRegName.replace('@', '');\n acc[name] = new Registry(\n scopedReg.uri,\n scopedReg.alwaysAuth,\n scopedReg.authHeaderValue,\n scopedReg.originalAuthType,\n scopedReg.originalAuthValue\n );\n return acc;\n }, {});\n\n // Add bit registry server if not exist\n if (!scopesRegistries.bit) {\n scopesRegistries.bit = new Registry(BIT_DEV_REGISTRY, true);\n }\n\n return new Registries(defaultRegistry, scopesRegistries);\n }\n}\n"]}
1
+ {"version":3,"sources":["pnpm.package-manager.ts"],"names":["defaultStoreDir","userHome","defaultCacheDir","PnpmPackageManager","constructor","depResolver","pkg","logger","readConfig","_componentsToPnpmWorkspaceProjects","rootDir","rootPolicy","componentDirectoryMap","installOptions","components","toArray","map","component","options","filterComponentsFromManifests","createManifestForComponentsWithoutDependencies","dedupe","dependencyFilterFn","workspaceManifest","getWorkspaceManifest","undefined","rootManifest","toJsonWithDir","copyPeerToRuntime","copyPeerToRuntimeOnRoot","installPeersFromEnvs","componentsManifests","computeComponentsManifests","componentsManifestsMap","copyPeerToRuntimeOnComponents","_getGlobalPnpmDirs","opts","config","packageManagerConfigRootDir","storeDir","cacheRootDir","cacheDir","install","require","debug","setStatusLine","off","registries","getRegistries","proxyConfig","getProxyConfig","networkConfig","getNetworkConfig","nodeLinker","overrides","hoistPattern","publicHoistPattern","packageImportMethod","on","console","consoleSuccess","getPeerDependencyIssues","lynx","componentsManifestsFromWorkspace","reduce","acc","dir","packageName","getPackageName","has","get","toJson","resolveRemoteVersion","maxSockets","networkConcurrency","fetchRetries","fetchTimeout","fetchRetryMaxtimeout","fetchRetryMintimeout","pnpmRegistry","defaultRegistry","Registry","default","uri","alwaysAuth","authHeaderValue","originalAuthType","originalAuthValue","pnpmScoped","scopesRegistries","Object","keys","scopedRegName","scopedReg","name","replace","bit","BIT_DEV_REGISTRY","Registries"],"mappings":"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","sourcesContent":["import { ComponentMap } from '@teambit/component';\nimport {\n ComponentsManifestsMap,\n CreateFromComponentsOptions,\n WorkspacePolicy,\n DependencyResolverMain,\n extendWithComponentsFromDir,\n PackageManager,\n PackageManagerInstallOptions,\n PackageManagerResolveRemoteVersionOptions,\n ResolvedPackageVersion,\n Registries,\n Registry,\n BIT_DEV_REGISTRY,\n PackageManagerProxyConfig,\n PackageManagerNetworkConfig,\n} from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport { memoize, omit } from 'lodash';\nimport { PkgMain } from '@teambit/pkg';\nimport { PeerDependencyIssuesByProjects } from '@pnpm/core';\nimport { ProjectManifest } from '@pnpm/types';\nimport { join } from 'path';\nimport userHome from 'user-home';\nimport { readConfig } from './read-config';\n\nconst defaultStoreDir = join(userHome, '.pnpm-store');\nconst defaultCacheDir = join(userHome, '.pnpm-cache');\n\ninterface Manifests {\n componentsManifests: Record<string, ProjectManifest>;\n rootManifest: {\n rootDir: string;\n manifest: ProjectManifest;\n };\n}\n\nexport class PnpmPackageManager implements PackageManager {\n private readConfig = memoize(readConfig);\n constructor(private depResolver: DependencyResolverMain, private pkg: PkgMain, private logger: Logger) {}\n\n private async _componentsToPnpmWorkspaceProjects(\n rootDir: string,\n rootPolicy: WorkspacePolicy,\n componentDirectoryMap: ComponentMap<string>,\n installOptions: PackageManagerInstallOptions = {}\n ): Promise<Manifests> {\n const components = componentDirectoryMap.toArray().map(([component]) => component);\n const options: CreateFromComponentsOptions = {\n filterComponentsFromManifests: true,\n createManifestForComponentsWithoutDependencies: true,\n dedupe: installOptions.dedupe,\n dependencyFilterFn: installOptions.dependencyFilterFn,\n };\n const workspaceManifest = await this.depResolver.getWorkspaceManifest(\n undefined,\n undefined,\n rootPolicy,\n rootDir,\n components,\n options\n );\n const rootManifest = workspaceManifest.toJsonWithDir({\n copyPeerToRuntime: installOptions.copyPeerToRuntimeOnRoot,\n installPeersFromEnvs: installOptions.installPeersFromEnvs,\n });\n\n const componentsManifests = this.computeComponentsManifests(\n componentDirectoryMap,\n workspaceManifest.componentsManifestsMap,\n // In case of not deduping we want to install peers inside the components\n // !options.dedupe\n installOptions.copyPeerToRuntimeOnComponents\n );\n return {\n componentsManifests,\n rootManifest,\n };\n }\n\n async _getGlobalPnpmDirs(\n opts: {\n cacheRootDir?: string;\n packageManagerConfigRootDir?: string;\n } = {}\n ) {\n const { config } = await this.readConfig(opts.packageManagerConfigRootDir);\n const storeDir = opts.cacheRootDir ? join(opts.cacheRootDir, '.pnpm-store') : config.storeDir ?? defaultStoreDir;\n const cacheDir = opts.cacheRootDir ? join(opts.cacheRootDir, '.pnpm-cache') : config.cacheDir ?? defaultCacheDir;\n return { storeDir, cacheDir };\n }\n\n async install(\n rootDir: string,\n rootPolicy: WorkspacePolicy,\n componentDirectoryMap: ComponentMap<string>,\n installOptions: PackageManagerInstallOptions = {}\n ): Promise<void> {\n // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { install } = require('./lynx');\n\n const { componentsManifests, rootManifest } = await this._componentsToPnpmWorkspaceProjects(\n rootDir,\n rootPolicy,\n componentDirectoryMap,\n installOptions\n );\n this.logger.debug('root manifest for installation', rootManifest);\n this.logger.debug('components manifests for installation', componentsManifests);\n this.logger.setStatusLine('installing dependencies using pnpm');\n // turn off the logger because it interrupts the pnpm output\n this.logger.off();\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n const { storeDir, cacheDir } = await this._getGlobalPnpmDirs(installOptions);\n const { config } = await this.readConfig(installOptions.packageManagerConfigRootDir);\n await extendWithComponentsFromDir(rootManifest.rootDir, componentsManifests);\n await install(\n rootManifest,\n componentsManifests,\n storeDir,\n cacheDir,\n registries,\n proxyConfig,\n networkConfig,\n {\n nodeLinker: installOptions.nodeLinker,\n overrides: installOptions.overrides,\n hoistPattern: config.hoistPattern,\n publicHoistPattern: ['*eslint*', '@prettier/plugin-*', '*prettier-plugin-*'],\n packageImportMethod: installOptions.packageImportMethod ?? config.packageImportMethod,\n },\n this.logger\n );\n this.logger.on();\n // Make a divider row to improve output\n this.logger.console('-------------------------');\n this.logger.consoleSuccess('installing dependencies using pnpm');\n }\n\n async getPeerDependencyIssues(\n rootDir: string,\n rootPolicy: WorkspacePolicy,\n componentDirectoryMap: ComponentMap<string>,\n installOptions: PackageManagerInstallOptions = {}\n ): Promise<PeerDependencyIssuesByProjects> {\n const { storeDir, cacheDir } = await this._getGlobalPnpmDirs(installOptions);\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n const registries = await this.depResolver.getRegistries();\n // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const lynx = require('./lynx');\n const { componentsManifests, rootManifest } = await this._componentsToPnpmWorkspaceProjects(\n rootDir,\n rootPolicy,\n componentDirectoryMap,\n installOptions\n );\n const { config } = await this.readConfig();\n return lynx.getPeerDependencyIssues(rootManifest, componentsManifests, {\n storeDir,\n cacheDir,\n proxyConfig,\n registries,\n networkConfig,\n overrides: installOptions.overrides,\n packageImportMethod: installOptions.packageImportMethod ?? config.packageImportMethod,\n });\n }\n\n private computeComponentsManifests(\n componentDirectoryMap: ComponentMap<string>,\n componentsManifestsFromWorkspace: ComponentsManifestsMap,\n copyPeerToRuntime = false\n ): Record<string, ProjectManifest> {\n return componentDirectoryMap.toArray().reduce((acc, [component, dir]) => {\n const packageName = this.pkg.getPackageName(component);\n if (componentsManifestsFromWorkspace.has(packageName)) {\n acc[dir] = componentsManifestsFromWorkspace.get(packageName)?.toJson({ copyPeerToRuntime });\n }\n return acc;\n }, {});\n }\n\n async resolveRemoteVersion(\n packageName: string,\n options: PackageManagerResolveRemoteVersionOptions\n ): Promise<ResolvedPackageVersion> {\n // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { resolveRemoteVersion } = require('./lynx');\n const { cacheDir } = await this._getGlobalPnpmDirs(options);\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n return resolveRemoteVersion(packageName, options.rootDir, cacheDir, registries, proxyConfig, networkConfig);\n }\n\n async getProxyConfig?(): Promise<PackageManagerProxyConfig> {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { getProxyConfig } = require('./get-proxy-config');\n const { config } = await this.readConfig();\n return getProxyConfig(config);\n }\n\n async getNetworkConfig?(): Promise<PackageManagerNetworkConfig> {\n const { config } = await this.readConfig();\n return {\n maxSockets: config.maxSockets,\n networkConcurrency: config.networkConcurrency,\n fetchRetries: config.fetchRetries,\n fetchTimeout: config.fetchTimeout,\n fetchRetryMaxtimeout: config.fetchRetryMaxtimeout,\n fetchRetryMintimeout: config.fetchRetryMintimeout,\n };\n }\n\n async getRegistries(): Promise<Registries> {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { getRegistries } = require('./get-registries');\n const { config } = await this.readConfig();\n const pnpmRegistry = await getRegistries(config);\n const defaultRegistry = new Registry(\n pnpmRegistry.default.uri,\n pnpmRegistry.default.alwaysAuth,\n pnpmRegistry.default.authHeaderValue,\n pnpmRegistry.default.originalAuthType,\n pnpmRegistry.default.originalAuthValue\n );\n\n const pnpmScoped = omit(pnpmRegistry, ['default']);\n const scopesRegistries: Record<string, Registry> = Object.keys(pnpmScoped).reduce((acc, scopedRegName) => {\n const scopedReg = pnpmScoped[scopedRegName];\n const name = scopedRegName.replace('@', '');\n acc[name] = new Registry(\n scopedReg.uri,\n scopedReg.alwaysAuth,\n scopedReg.authHeaderValue,\n scopedReg.originalAuthType,\n scopedReg.originalAuthValue\n );\n return acc;\n }, {});\n\n // Add bit registry server if not exist\n if (!scopesRegistries.bit) {\n scopesRegistries.bit = new Registry(BIT_DEV_REGISTRY, true);\n }\n\n return new Registries(defaultRegistry, scopesRegistries);\n }\n}\n"]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/pnpm",
3
- "version": "0.0.681",
3
+ "version": "0.0.684",
4
4
  "homepage": "https://bit.dev/teambit/dependencies/pnpm",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.dependencies",
8
8
  "name": "pnpm",
9
- "version": "0.0.681"
9
+ "version": "0.0.684"
10
10
  },
11
11
  "dependencies": {
12
12
  "@pnpm/error": "2.1.0",
@@ -26,21 +26,23 @@
26
26
  "@pnpm/default-reporter": "8.4.2",
27
27
  "@pnpm/package-store": "12.1.12",
28
28
  "@pnpm/pick-registry-for-package": "2.0.11",
29
+ "@pnpm/sort-packages": "2.1.7",
29
30
  "@pnpm/store-connection-manager": "3.2.10",
30
31
  "@pnpm/types": "7.10.0",
31
32
  "parse-package-name": "0.1.0",
33
+ "pkgs-graph": "6.1.3",
32
34
  "semver": "7.3.4",
33
35
  "@teambit/harmony": "0.2.11",
34
36
  "user-home": "2.0.0",
35
37
  "@babel/runtime": "7.12.18",
36
38
  "core-js": "^3.0.0",
37
- "@teambit/dependency-resolver": "0.0.681",
38
- "@teambit/logger": "0.0.548",
39
- "@teambit/cli": "0.0.456",
40
- "@teambit/pkg": "0.0.681",
41
- "@teambit/component": "0.0.681",
42
- "@teambit/ui-foundation.ui.use-box.menu": "0.0.113",
43
- "@teambit/ui": "0.0.681"
39
+ "@teambit/dependency-resolver": "0.0.684",
40
+ "@teambit/logger": "0.0.550",
41
+ "@teambit/cli": "0.0.458",
42
+ "@teambit/pkg": "0.0.684",
43
+ "@teambit/component": "0.0.684",
44
+ "@teambit/ui-foundation.ui.use-box.menu": "0.0.114",
45
+ "@teambit/ui": "0.0.684"
44
46
  },
45
47
  "devDependencies": {
46
48
  "@types/lodash": "4.14.165",
@@ -51,10 +53,10 @@
51
53
  "@types/jest": "^26.0.0",
52
54
  "@types/react-dom": "^17.0.5",
53
55
  "@types/node": "12.20.4",
54
- "@teambit/dependencies.aspect-docs.pnpm": "0.0.134"
56
+ "@teambit/dependencies.aspect-docs.pnpm": "0.0.135"
55
57
  },
56
58
  "peerDependencies": {
57
- "@teambit/legacy": "1.0.235",
59
+ "@teambit/legacy": "1.0.237",
58
60
  "react-dom": "^16.8.0 || ^17.0.0",
59
61
  "react": "^16.8.0 || ^17.0.0"
60
62
  },
@@ -82,7 +84,7 @@
82
84
  "react": "-"
83
85
  },
84
86
  "peerDependencies": {
85
- "@teambit/legacy": "1.0.235",
87
+ "@teambit/legacy": "1.0.237",
86
88
  "react-dom": "^16.8.0 || ^17.0.0",
87
89
  "react": "^16.8.0 || ^17.0.0"
88
90
  }
@@ -1,2 +1,2 @@
1
- export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_pnpm@0.0.681/dist/pnpm.composition.js')]
2
- export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_pnpm@0.0.681/dist/pnpm.docs.mdx')]
1
+ export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_pnpm@0.0.684/dist/pnpm.composition.js')]
2
+ export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_pnpm@0.0.684/dist/pnpm.docs.mdx')]