@teambit/yarn 1.0.31 → 1.0.33

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.
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_yarn@1.0.31/dist/yarn.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_yarn@1.0.31/dist/yarn.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_yarn@1.0.33/dist/yarn.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_yarn@1.0.33/dist/yarn.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -14,11 +14,6 @@ export declare class YarnPackageManager implements PackageManager {
14
14
  * So the component will be installed from the local directory, not from the registry.
15
15
  */
16
16
  private _createLocalDirectoryOverrides;
17
- private getPackageJsonPath;
18
- private backupPackageJsons;
19
- private restorePackageJsons;
20
- private getFileToBackup;
21
- private getComponentPackageJsonToBackup;
22
17
  private createWorkspace;
23
18
  /**
24
19
  * This is used to handle cases where in the capsules dirs we have the same component with different versions
@@ -238,8 +238,6 @@ class YarnPackageManager {
238
238
  }
239
239
  this.setupWorkspaces(project, workspaces);
240
240
  const cache = await _core().Cache.find(config);
241
- // const existingPackageJsons = await this.backupPackageJsons(rootDir, componentDirectoryMap);
242
-
243
241
  const installReport = await _core().StreamReport.start({
244
242
  stdout: process.stdout,
245
243
  configuration: config
@@ -259,12 +257,6 @@ class YarnPackageManager {
259
257
  }
260
258
  }));
261
259
  }
262
-
263
- // TODO: check if package.json and link files generation can be prevented through the yarn API or
264
- // mock the files by hooking to `xfs`.
265
- // see the persistProject: false above
266
- // await this.restorePackageJsons(existingPackageJsons);
267
-
268
260
  if (installReport.hasErrors()) process.exit(installReport.exitCode());
269
261
  this.logger.consoleSuccess('installing dependencies');
270
262
  return {
@@ -284,54 +276,6 @@ class YarnPackageManager {
284
276
  });
285
277
  return overrides;
286
278
  }
287
- getPackageJsonPath(dir) {
288
- const packageJsonPath = (0, _path().join)(dir, 'package.json');
289
- return packageJsonPath;
290
- }
291
- async backupPackageJsons(rootDir, componentDirectoryMap) {
292
- const result = {};
293
- const rootPackageJsonPath = this.getPackageJsonPath(rootDir);
294
- result[rootPackageJsonPath] = await this.getFileToBackup(rootPackageJsonPath);
295
- const componentsBackupsP = componentDirectoryMap.toArray().map(async ([component, dir]) => {
296
- const {
297
- packageJsonPath,
298
- file
299
- } = await this.getComponentPackageJsonToBackup(component, dir);
300
- result[packageJsonPath] = file;
301
- });
302
- await Promise.all(componentsBackupsP);
303
- return result;
304
- }
305
- async restorePackageJsons(backupJsons) {
306
- const promises = Object.entries(backupJsons).map(async ([packageJsonPath, file]) => {
307
- const exists = await _fsExtra().default.pathExists(packageJsonPath);
308
- // if there is no backup it means it wasn't there before and should be deleted
309
- if (!file) {
310
- if (exists) {
311
- return _fsExtra().default.remove(packageJsonPath);
312
- }
313
- return undefined;
314
- }
315
- return _fsExtra().default.writeFile(packageJsonPath, file);
316
- });
317
- await Promise.all(promises);
318
- }
319
- async getFileToBackup(packageJsonPath) {
320
- const exists = await _fsExtra().default.pathExists(packageJsonPath);
321
- if (!exists) {
322
- return undefined;
323
- }
324
- const existingFile = await _fsExtra().default.readFile(packageJsonPath);
325
- return existingFile;
326
- }
327
- async getComponentPackageJsonToBackup(component, dir) {
328
- const packageJsonPath = (0, _path().resolve)((0, _path().join)(dir, 'package.json'));
329
- const result = {
330
- packageJsonPath,
331
- file: await this.getFileToBackup(packageJsonPath)
332
- };
333
- return result;
334
- }
335
279
  async createWorkspace({
336
280
  rootDir,
337
281
  project,
@@ -346,7 +290,6 @@ class YarnPackageManager {
346
290
  });
347
291
  await ws.setup();
348
292
  const identity = _core().structUtils.parseIdent(name);
349
- // const needOverrideInternal = !!ws.manifest.name && !!manifest.name;
350
293
  ws.manifest.name = identity;
351
294
  ws.manifest.version = manifest.version;
352
295
  ws.manifest.dependencies = this.computeDeps(manifest.dependencies);
@@ -362,9 +305,6 @@ class YarnPackageManager {
362
305
  if (overrides) {
363
306
  ws.manifest.resolutions = convertOverridesToResolutions(overrides);
364
307
  }
365
-
366
- // if (needOverrideInternal) this.overrideInternalWorkspaceParams(ws);
367
-
368
308
  return ws;
369
309
  }
370
310
 
@@ -1 +1 @@
1
- {"version":3,"names":["_parsePackageName","data","_interopRequireDefault","require","_dependencyResolver","_bitError","_fsExtra","_path","_core","_cli","_fslib","_parsers","_pluginNpm","_parseOverrides","_lodash","_os","_versionSelectorType2","_yaml","_dependenciesFs","_symlinkDir","_createRootComponentsDir","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","YarnPackageManager","constructor","depResolver","logger","install","rootDir","manifests","componentDirectoryMap","installOptions","setStatusLine","useNesting","rootComponentsForCapsules","capsulesRoot","capsulesRootManifest","entries","find","path","startsWith","dependencies","createLinks","rootDirPath","npath","toPortablePath","config","computeConfiguration","cacheRootDir","nodeLinker","packageManagerConfigRootDir","packageImportMethod","project","Project","configuration","setupResolutions","overrides","_createLocalDirectoryOverrides","workspaceManifest","omit","rootWs","createWorkspace","manifest","neverBuiltDependencies","rootComponents","installConfig","hoistingLimits","createRootComponentsDir","mapValues","peerDependencies","updateManifestsForInstallationInWorkspaceCapsules","extendWithComponentsFromDir","debug","workspacesP","map","workspace","workspaces","Promise","all","workspacesIdents","workspaceIdentHash","locator","identHash","cwd","overrideInternalWorkspaceParams","setupWorkspaces","cache","Cache","installReport","StreamReport","start","stdout","process","report","persistProject","persistLockfile","removeExternalLinksFromYarnLockfile","nmSelfReferences","dir","name","symlinkDir","join","hasErrors","exit","exitCode","consoleSuccess","dependenciesChanged","Array","from","hashMap","component","getPackageName","relative","getPackageJsonPath","packageJsonPath","backupPackageJsons","result","rootPackageJsonPath","getFileToBackup","componentsBackupsP","toArray","file","getComponentPackageJsonToBackup","restorePackageJsons","backupJsons","promises","exists","fs","pathExists","remove","writeFile","existingFile","readFile","resolve","wsPath","ws","Workspace","setup","identity","structUtils","parseIdent","version","computeDeps","devDependencies","disableBuild","Map","built","dependenciesMeta","dep","resolutions","convertOverridesToResolutions","_ws$manifest$name","_ws$manifest$name2","ident","makeIdent","scope","makeLocator","reference","anchoredDescriptor","makeDescriptor","WorkspaceResolver","protocol","relativeCwd","anchoredLocator","workspacesByCwd","workspacesByIdent","dup","get","Error","set","getScopedRegistries","registries","scopedRegistries","scopes","reduce","acc","scopeName","regDef","authProp","getAuthProp","npmRegistryServer","uri","npmAlwaysAuth","alwaysAuth","keyName","registry","token","baseToken","getGlobalFolder","baseDir","homedir","options","includes","BitError","getRegistries","proxyConfig","getProxyConfig","networkConfig","getNetworkConfig","pluginConfig","getPluginConfiguration","startingCwd","Configuration","defaultRegistry","defaultAuthProp","globalFolder","cacheFolder","enableGlobalCache","installStatePath","pnpUnpluggedFolder","pnpDataPath","npmScopes","virtualFolder","httpProxy","httpsProxy","enableStrictSsl","strictSSL","nmMode","use","overwrite","mkdir","recursive","rawDeps","packageName","resolveRemoteVersion","_versionSelectorType","parsedPackage","parsePackageName","parsedVersion","versionType","versionSelectorType","type","wantedRange","isSemver","npmPlugin","resolvers","_NpmRemapResolver","NpmSemverResolver","NpmTagResolver","resolver","range","LightReport","descriptor","resolveOptions","candidates","getCandidates","parsedRange","parseRange","selector","getInjectedDirs","componentDir","modulesDir","yarnStateContent","err","code","yarnState","YAML","parse","injectedDirs","locations","location","supportsDedupingOnExistingRoot","getWorkspaceDepsOfBitRoots","fromEntries","exports","parsedOverrides","parseOverrides","override","pattern","parentPkg","toYarnResolutionSelector","targetPkg","newPref","pref","fullName","description","pkgJsonPath","pkgJson","readJson","writeJson","spaces","defaultPeerDependencies","lockfileLocation","yarnLockPath","lockfileObject","parseSyml","updatedLockfile","pickBy","_","rootWorkspace","endsWith","header","lockfileContent","stringifySyml"],"sources":["yarn.package-manager.ts"],"sourcesContent":["import parsePackageName from 'parse-package-name';\nimport {\n extendWithComponentsFromDir,\n InstallationContext,\n DependencyResolverMain,\n PackageManager,\n PackageManagerInstallOptions,\n PackageImportMethod,\n Registries,\n Registry,\n PackageManagerResolveRemoteVersionOptions,\n ResolvedPackageVersion,\n} from '@teambit/dependency-resolver';\nimport { BitError } from '@teambit/bit-error';\nimport { ComponentMap, Component } from '@teambit/component';\nimport fs from 'fs-extra';\nimport { join, relative, resolve } from 'path';\nimport {\n Workspace,\n Project,\n Configuration,\n structUtils,\n IdentHash,\n Descriptor,\n Cache,\n StreamReport,\n ResolveOptions,\n LightReport,\n WorkspaceResolver,\n} from '@yarnpkg/core';\nimport { getPluginConfiguration } from '@yarnpkg/cli';\nimport { npath, PortablePath } from '@yarnpkg/fslib';\nimport { parseSyml, stringifySyml, Resolution } from '@yarnpkg/parsers';\nimport npmPlugin from '@yarnpkg/plugin-npm';\nimport { parseOverrides } from '@pnpm/parse-overrides';\nimport { ProjectManifest } from '@pnpm/types';\nimport { omit, mapValues, pickBy } from 'lodash';\nimport { homedir } from 'os';\nimport { Logger } from '@teambit/logger';\nimport versionSelectorType from 'version-selector-type';\nimport YAML from 'yaml';\nimport { createLinks } from '@teambit/dependencies.fs.linked-dependencies';\nimport symlinkDir from 'symlink-dir';\nimport { createRootComponentsDir } from './create-root-components-dir';\n\ntype BackupJsons = {\n [path: string]: Buffer | undefined;\n};\n\nexport class YarnPackageManager implements PackageManager {\n readonly name = 'yarn';\n\n constructor(private depResolver: DependencyResolverMain, private logger: Logger) {}\n\n async install(\n { rootDir, manifests, componentDirectoryMap }: InstallationContext,\n installOptions: PackageManagerInstallOptions = {}\n ): Promise<{ dependenciesChanged: boolean }> {\n this.logger.setStatusLine('installing dependencies');\n if (installOptions.useNesting && installOptions.rootComponentsForCapsules) {\n // For some reason Yarn doesn't want to link core aspects to the capsules root directory,\n // because the capsule root directory is outside the workspace's root directory.\n // So we need to create the symlinks ourselves.\n const [capsulesRoot, capsulesRootManifest] =\n Object.entries(manifests).find(([path]) => {\n return rootDir.startsWith(path) && rootDir !== path;\n }) ?? [];\n if (capsulesRoot && capsulesRootManifest?.dependencies) {\n await createLinks(capsulesRoot, capsulesRootManifest.dependencies);\n }\n }\n\n const rootDirPath = npath.toPortablePath(rootDir);\n const config = await this.computeConfiguration(rootDirPath, {\n cacheRootDir: installOptions.cacheRootDir,\n nodeLinker: installOptions.nodeLinker,\n packageManagerConfigRootDir: installOptions.packageManagerConfigRootDir,\n packageImportMethod: installOptions.packageImportMethod,\n });\n\n const project = new Project(rootDirPath, { configuration: config });\n\n // @ts-ignore\n project.setupResolutions();\n if (installOptions.rootComponentsForCapsules && !installOptions.useNesting) {\n installOptions.overrides = {\n ...installOptions.overrides,\n ...this._createLocalDirectoryOverrides(rootDir, componentDirectoryMap),\n };\n }\n const workspaceManifest = manifests[rootDir];\n manifests = omit(manifests, rootDir);\n const rootWs = await this.createWorkspace({\n rootDir,\n project,\n manifest: workspaceManifest,\n overrides: installOptions.overrides,\n neverBuiltDependencies: installOptions.neverBuiltDependencies,\n });\n if (installOptions.rootComponents) {\n rootWs.manifest.installConfig = {\n hoistingLimits: 'dependencies',\n };\n }\n\n if (installOptions.rootComponents) {\n await createRootComponentsDir({\n depResolver: this.depResolver,\n rootDir,\n componentDirectoryMap,\n });\n manifests = mapValues(manifests, (manifest) => ({\n ...manifest,\n dependencies: {\n ...manifest.peerDependencies,\n ...manifest['defaultPeerDependencies'], // eslint-disable-line\n ...manifest.dependencies,\n },\n }));\n } else if (installOptions.useNesting) {\n manifests[rootDir] = workspaceManifest;\n // Nesting is used for scope aspect capsules.\n // In a capsule, all peer dependencies should be installed,\n // so we make runtime dependencies from peer dependencies.\n manifests[rootDir].dependencies = {\n ...manifests[rootDir].peerDependencies,\n ...manifests[rootDir]['defaultPeerDependencies'], // eslint-disable-line\n ...manifests[rootDir].dependencies,\n };\n } else if (installOptions.rootComponentsForCapsules) {\n await updateManifestsForInstallationInWorkspaceCapsules(manifests);\n } else {\n manifests = await extendWithComponentsFromDir(rootDir, manifests);\n }\n\n this.logger.debug(`running installation in root dir ${rootDir}`);\n this.logger.debug('root manifest for installation', workspaceManifest);\n this.logger.debug('components manifests for installation', manifests);\n\n const workspacesP = Object.keys(manifests).map(async (path) => {\n const manifest = manifests[path];\n const workspace = await this.createWorkspace({ rootDir: path, project, manifest });\n return workspace;\n });\n\n const workspaces = await Promise.all(workspacesP);\n\n if (!installOptions.rootComponents && !installOptions.rootComponentsForCapsules && !installOptions.useNesting) {\n const workspacesIdents = {};\n for (const workspace of workspaces) {\n const workspaceIdentHash = workspace.locator.identHash;\n if (workspacesIdents[workspaceIdentHash]) {\n this.logger.debug(\n `overriding internal workspace fields to prevent duplications for workspace ${workspace.cwd}`\n );\n this.overrideInternalWorkspaceParams(workspace);\n }\n workspacesIdents[workspace.locator.identHash] = true;\n }\n }\n\n if (!manifests[rootDir]) {\n workspaces.push(rootWs);\n }\n this.setupWorkspaces(project, workspaces);\n\n const cache = await Cache.find(config);\n // const existingPackageJsons = await this.backupPackageJsons(rootDir, componentDirectoryMap);\n\n const installReport = await StreamReport.start(\n {\n stdout: process.stdout,\n configuration: config,\n },\n async (report) => {\n await project.install({\n persistProject: false,\n cache,\n report,\n });\n await project.persistLockfile();\n await removeExternalLinksFromYarnLockfile(rootDir);\n }\n );\n\n if (installOptions.nmSelfReferences) {\n await Promise.all(\n Object.entries(manifests).map(async ([dir, manifest]) => {\n if (manifest.name) {\n await symlinkDir(dir, join(dir, 'node_modules', manifest.name));\n }\n })\n );\n }\n\n // TODO: check if package.json and link files generation can be prevented through the yarn API or\n // mock the files by hooking to `xfs`.\n // see the persistProject: false above\n // await this.restorePackageJsons(existingPackageJsons);\n\n if (installReport.hasErrors()) process.exit(installReport.exitCode());\n\n this.logger.consoleSuccess('installing dependencies');\n return { dependenciesChanged: true };\n }\n\n /**\n * Every component is overriden with a local directory of that component.\n * So the component will be installed from the local directory, not from the registry.\n */\n private _createLocalDirectoryOverrides(\n rootDir: string,\n componentDirectoryMap: ComponentMap<string>\n ): Record<string, string> {\n const overrides = {};\n Array.from(componentDirectoryMap.hashMap.entries()).forEach(([, [component, path]]) => {\n const name = this.depResolver.getPackageName(component);\n overrides[name] = `file:${relative(rootDir, path)}`;\n });\n return overrides;\n }\n\n private getPackageJsonPath(dir: string): string {\n const packageJsonPath = join(dir, 'package.json');\n return packageJsonPath;\n }\n\n private async backupPackageJsons(rootDir: string, componentDirectoryMap: ComponentMap<string>): Promise<BackupJsons> {\n const result: BackupJsons = {};\n const rootPackageJsonPath = this.getPackageJsonPath(rootDir);\n result[rootPackageJsonPath] = await this.getFileToBackup(rootPackageJsonPath);\n const componentsBackupsP = componentDirectoryMap.toArray().map(async ([component, dir]) => {\n const { packageJsonPath, file } = await this.getComponentPackageJsonToBackup(component, dir);\n result[packageJsonPath] = file;\n });\n await Promise.all(componentsBackupsP);\n return result;\n }\n\n private async restorePackageJsons(backupJsons: BackupJsons): Promise<void | undefined> {\n const promises = Object.entries(backupJsons).map(async ([packageJsonPath, file]) => {\n const exists = await fs.pathExists(packageJsonPath);\n // if there is no backup it means it wasn't there before and should be deleted\n if (!file) {\n if (exists) {\n return fs.remove(packageJsonPath);\n }\n return undefined;\n }\n return fs.writeFile(packageJsonPath, file);\n });\n await Promise.all(promises);\n }\n\n private async getFileToBackup(packageJsonPath: string): Promise<Buffer | undefined> {\n const exists = await fs.pathExists(packageJsonPath);\n if (!exists) {\n return undefined;\n }\n const existingFile = await fs.readFile(packageJsonPath);\n return existingFile;\n }\n\n private async getComponentPackageJsonToBackup(\n component: Component,\n dir: string\n ): Promise<{ packageJsonPath: string; file: Buffer | undefined }> {\n const packageJsonPath = resolve(join(dir, 'package.json'));\n const result = {\n packageJsonPath,\n file: await this.getFileToBackup(packageJsonPath),\n };\n return result;\n }\n\n private async createWorkspace({\n rootDir,\n project,\n manifest,\n overrides,\n neverBuiltDependencies,\n }: {\n rootDir: string;\n project: Project;\n manifest: any;\n overrides?: Record<string, string>;\n neverBuiltDependencies?: string[];\n }) {\n const wsPath = npath.toPortablePath(rootDir);\n const name = manifest.name || 'workspace';\n\n const ws = new Workspace(wsPath, { project });\n await ws.setup();\n const identity = structUtils.parseIdent(name);\n // const needOverrideInternal = !!ws.manifest.name && !!manifest.name;\n ws.manifest.name = identity;\n ws.manifest.version = manifest.version;\n ws.manifest.dependencies = this.computeDeps(manifest.dependencies);\n ws.manifest.devDependencies = this.computeDeps(manifest.devDependencies);\n ws.manifest.peerDependencies = this.computeDeps(manifest.peerDependencies);\n ws.manifest.installConfig = manifest.installConfig;\n if (neverBuiltDependencies) {\n const disableBuild = new Map([[null, { built: false }]]);\n ws.manifest.dependenciesMeta = new Map(neverBuiltDependencies.map((dep) => [dep, disableBuild]));\n }\n if (overrides) {\n ws.manifest.resolutions = convertOverridesToResolutions(overrides);\n }\n\n // if (needOverrideInternal) this.overrideInternalWorkspaceParams(ws);\n\n return ws;\n }\n\n /**\n * This is used to handle cases where in the capsules dirs we have the same component with different versions\n * The yarn ident is calculated by the manifest (package.json) name if exist\n * in our case for the same component with different versions we will get the same ident which will result errors later.\n * This is make sense in the original case of yarn workspace (it make sense you don't have 2 workspace with same name)\n * However in our case it doesn't make sense.\n * This function will make sure the ident will use the version as well\n * @param ws\n */\n private overrideInternalWorkspaceParams(ws: Workspace) {\n const ident = structUtils.makeIdent(\n ws.manifest.name?.scope || null,\n `${ws.manifest.name?.name}-${ws.manifest.version}`\n );\n\n ws.manifest.name = ident;\n\n // @ts-expect-error: It's ok to initialize it now, even if it's readonly (setup is called right after construction)\n ws.locator = structUtils.makeLocator(ident, ws.reference);\n\n // @ts-expect-error: It's ok to initialize it now, even if it's readonly (setup is called right after construction)\n ws.anchoredDescriptor = structUtils.makeDescriptor(ws.locator, `${WorkspaceResolver.protocol}${ws.relativeCwd}`);\n\n // @ts-expect-error: It's ok to initialize it now, even if it's readonly (setup is called right after construction)\n ws.anchoredLocator = structUtils.makeLocator(ws.locator, `${WorkspaceResolver.protocol}${ws.relativeCwd}`);\n }\n\n private setupWorkspaces(project: Project, workspaces: Workspace[]) {\n project.workspaces = [];\n project.workspacesByCwd = new Map();\n project.workspacesByIdent = new Map();\n\n workspaces.forEach((workspace) => {\n const dup = project.workspacesByIdent.get(workspace.locator.identHash);\n if (typeof dup !== `undefined`) {\n throw new Error(`Duplicate workspace name: ${workspace.cwd} conflicts with ${dup.cwd}`);\n }\n\n project.workspaces.push(workspace);\n project.workspacesByCwd.set(workspace.cwd, workspace);\n project.workspacesByIdent.set(workspace.locator.identHash, workspace);\n });\n }\n\n private async getScopedRegistries(registries: Registries) {\n const scopedRegistries = Object.keys(registries.scopes).reduce((acc, scopeName) => {\n const regDef = registries.scopes[scopeName];\n const authProp = this.getAuthProp(regDef);\n acc[scopeName] = {\n npmRegistryServer: regDef.uri,\n npmAlwaysAuth: regDef.alwaysAuth,\n };\n if (authProp) {\n acc[scopeName][authProp.keyName] = authProp.value;\n }\n\n return acc;\n }, {});\n return scopedRegistries;\n }\n\n private getAuthProp(registry: Registry) {\n if (registry.token) {\n return {\n keyName: 'npmAuthToken',\n value: registry.token,\n };\n }\n if (registry.baseToken) {\n return {\n keyName: 'npmAuthIdent',\n value: registry.baseToken,\n };\n }\n return undefined;\n }\n\n private getGlobalFolder(baseDir: string = homedir()) {\n return `${baseDir}/.yarn/global`;\n }\n\n // TODO: implement this to automate configuration.\n private async computeConfiguration(\n rootDirPath: PortablePath,\n options: {\n cacheRootDir?: string;\n nodeLinker?: 'hoisted' | 'isolated';\n packageManagerConfigRootDir?: string;\n packageImportMethod?: PackageImportMethod;\n }\n ): Promise<Configuration> {\n // We use \"copy\" by default because \"hardlink\" causes issues on Windows.\n // This must be a Yarn issue that may be fixed in the future by Yarn.\n const packageImportMethod = options.packageImportMethod || 'copy';\n if (!['hardlink', 'copy'].includes(packageImportMethod)) {\n throw new BitError(`packageImportMethod ${packageImportMethod} is not supported with Yarn`);\n }\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n const pluginConfig = getPluginConfiguration();\n let startingCwd: PortablePath;\n if (options.packageManagerConfigRootDir) {\n startingCwd = npath.toPortablePath(options.packageManagerConfigRootDir);\n } else {\n startingCwd = rootDirPath;\n }\n const config = await Configuration.find(startingCwd, pluginConfig);\n const scopedRegistries = await this.getScopedRegistries(registries);\n const defaultRegistry = registries.defaultRegistry;\n const defaultAuthProp = this.getAuthProp(defaultRegistry);\n\n const globalFolder = this.getGlobalFolder(options.cacheRootDir);\n const cacheFolder = join(globalFolder, 'cache');\n const data = {\n enableGlobalCache: true,\n nodeLinker: options.nodeLinker === 'isolated' ? 'pnpm' : 'node-modules',\n installStatePath: `${rootDirPath}/.yarn/install-state.gz`,\n pnpUnpluggedFolder: `${rootDirPath}/.yarn/unplugged`,\n cacheFolder,\n pnpDataPath: `${rootDirPath}/.pnp.meta.json`,\n npmScopes: scopedRegistries,\n virtualFolder: `${rootDirPath}/.yarn/__virtual__`,\n npmRegistryServer: defaultRegistry.uri || 'https://registry.yarnpkg.com',\n npmAlwaysAuth: defaultRegistry.alwaysAuth,\n httpProxy: proxyConfig?.httpProxy,\n httpsProxy: proxyConfig?.httpsProxy,\n enableStrictSsl: networkConfig?.strictSSL,\n // enableInlineBuilds: true,\n globalFolder,\n // We need to disable self-references as say create circular symlinks.\n nmSelfReferences: false,\n // Hardlink the files from the global content-addressable store.\n // This increases the speed of installation and reduces disk space usage.\n nmMode: packageImportMethod === 'hardlink' ? 'hardlinks-global' : 'classic',\n\n // TODO: check about support for the following: (see more here - https://github.com/yarnpkg/berry/issues/1434#issuecomment-801449010)\n // ca?: string;\n // cert?: string;\n // key?: string;\n // noProxy?: boolean | string;\n };\n\n if (defaultAuthProp) {\n data[defaultAuthProp.keyName] = defaultAuthProp.value;\n }\n // TODO: node-modules is hardcoded now until adding support for pnp.\n config.use('<bit>', data, rootDirPath, { overwrite: true });\n\n // Yarn v4 stopped automatically creating the cache folder.\n // If we don't do it ourselves, Yarn will fail with: \"ENOENT: no such file or directory, copyfile...\"\n await fs.mkdir(cacheFolder, { recursive: true });\n\n return config;\n }\n\n private computeDeps(rawDeps?: { [key: string]: string }): Map<IdentHash, Descriptor> {\n const map = new Map<IdentHash, Descriptor>();\n if (!rawDeps) return map;\n\n Object.keys(rawDeps).forEach((packageName) => {\n const ident = structUtils.parseIdent(packageName);\n map.set(ident.identHash, structUtils.makeDescriptor(ident, rawDeps[packageName]));\n });\n\n return map;\n }\n\n async resolveRemoteVersion(\n packageName: string,\n options: PackageManagerResolveRemoteVersionOptions\n ): Promise<ResolvedPackageVersion> {\n const parsedPackage = parsePackageName(packageName);\n const parsedVersion = parsedPackage.version;\n const versionType = parsedVersion && versionSelectorType(parsedVersion)?.type;\n if (versionType === 'version') {\n return {\n packageName: parsedPackage.name,\n version: parsedVersion,\n wantedRange: parsedVersion,\n isSemver: true,\n };\n }\n if (!npmPlugin.resolvers) {\n throw new Error('npm resolvers for yarn API not found');\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [_NpmRemapResolver, NpmSemverResolver, NpmTagResolver] = npmPlugin.resolvers;\n let resolver = new NpmSemverResolver();\n const ident = structUtils.parseIdent(parsedPackage.name);\n let range = 'npm:*';\n const rootDirPath = npath.toPortablePath(options.rootDir);\n const config = await this.computeConfiguration(rootDirPath, {\n cacheRootDir: options.cacheRootDir,\n packageManagerConfigRootDir: options.packageManagerConfigRootDir,\n });\n\n const project = new Project(rootDirPath, { configuration: config });\n const report = new LightReport({ configuration: config, stdout: process.stdout });\n\n // Handle cases when the version is a dist tag like dev / latest for example bit install lodash@latest\n if (versionType === 'tag') {\n resolver = new NpmTagResolver();\n range = `npm:${parsedPackage.version}`;\n }\n const descriptor = structUtils.makeDescriptor(ident, range);\n\n // @ts-ignore\n project.setupResolutions();\n const resolveOptions: ResolveOptions = {\n project,\n resolver,\n report,\n };\n // const candidates = await resolver.getCandidates(descriptor, new Map(), resolveOptions);\n const candidates = await resolver.getCandidates(descriptor, new Map(), resolveOptions);\n const parsedRange = structUtils.parseRange(candidates[0].reference);\n const version = parsedRange.selector;\n return {\n packageName: parsedPackage.name,\n version,\n wantedRange: parsedVersion,\n isSemver: true,\n };\n }\n\n async getInjectedDirs(rootDir: string, componentDir: string, packageName: string): Promise<string[]> {\n const modulesDir = join(rootDir, 'node_modules');\n relative(modulesDir, componentDir);\n let yarnStateContent!: string;\n try {\n yarnStateContent = await fs.readFile(join(modulesDir, '.yarn-state.yml'), 'utf-8');\n } catch (err: any) {\n if (err.code === 'ENOENT') return [];\n }\n const yarnState = YAML.parse(yarnStateContent) as Record<string, { locations: string[] }>;\n const injectedDirs: string[] = [];\n for (const [key, { locations }] of Object.entries(yarnState)) {\n if (key.startsWith(`${packageName}@`) || key.startsWith(`${packageName}__root@`)) {\n for (const location of locations) {\n injectedDirs.push(location);\n }\n }\n }\n return injectedDirs;\n }\n\n supportsDedupingOnExistingRoot(): boolean {\n return true;\n }\n\n getWorkspaceDepsOfBitRoots(manifests: ProjectManifest[]): Record<string, string> {\n return Object.fromEntries(\n manifests.map((manifest) => [manifest.name, `file:../../.bit_components/${manifest.name}`])\n );\n }\n}\n\nfunction convertOverridesToResolutions(\n overrides: Record<string, string>\n): Array<{ pattern: Resolution; reference: string }> {\n const parsedOverrides = parseOverrides(overrides);\n return parsedOverrides.map((override) => ({\n pattern: {\n from: override.parentPkg ? toYarnResolutionSelector(override.parentPkg) : undefined,\n descriptor: toYarnResolutionSelector(override.targetPkg),\n },\n reference: override.newPref,\n }));\n}\n\nfunction toYarnResolutionSelector({ name, pref }: { name: string; pref?: string }) {\n return {\n fullName: name,\n description: pref,\n };\n}\n\n/**\n * This function prepares the component manifests for installation inside a capsule.\n * Inside a capsule, all peer dependencies of the component should be installed.\n * So peer dependencies are added to the manifest as runtime dependencies.\n * Also, the package.json files are update to contain other component dependencies\n * in dependencies as local \"file:\" dependencies.\n */\nasync function updateManifestsForInstallationInWorkspaceCapsules(manifests: { [key: string]: any }) {\n await Promise.all(\n Object.entries(manifests).map(async ([dir, manifest]) => {\n const pkgJsonPath = join(dir, 'package.json');\n const pkgJson = await fs.readJson(pkgJsonPath);\n // We need to write the package.json files because they need to contain the workspace dependencies.\n // When packages are installed via the \"file:\" protocol, Yarn reads their package.json files\n // from the file system even if they are from the workspace.\n await fs.writeJson(\n pkgJsonPath,\n {\n ...pkgJson,\n dependencies: manifest.dependencies,\n },\n { spaces: 2 }\n );\n manifest.dependencies = {\n ...manifest.peerDependencies,\n ...manifest.defaultPeerDependencies,\n ...manifest.dependencies,\n };\n manifest.installConfig = {\n hoistingLimits: 'workspaces',\n };\n })\n );\n}\n\nasync function removeExternalLinksFromYarnLockfile(lockfileLocation: string) {\n const yarnLockPath = join(lockfileLocation, 'yarn.lock');\n const lockfileObject = parseSyml(await fs.readFile(yarnLockPath, 'utf-8'));\n const updatedLockfile = pickBy(lockfileObject, (_, key) => !key.startsWith('@teambit') || !key.includes('@link:'));\n const rootWorkspace = Object.entries(updatedLockfile).find(([key]) => key.endsWith('workspace:.'));\n if (rootWorkspace?.[1]) {\n rootWorkspace[1].dependencies = Object.fromEntries(\n Object.entries(rootWorkspace[1].dependencies).filter(\n ([key, value]) => !key.startsWith('@teambit') || !(value as string).startsWith('link:')\n )\n );\n }\n const header = `${[\n `# This file is generated by running \"yarn install\" inside your project.\\n`,\n `# Manual changes might be lost - proceed with caution!\\n`,\n ].join(``)}\\n`;\n const lockfileContent = header + stringifySyml(updatedLockfile);\n await fs.writeFile(yarnLockPath, lockfileContent, 'utf-8');\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_parsePackageName","data","_interopRequireDefault","require","_dependencyResolver","_bitError","_fsExtra","_path","_core","_cli","_fslib","_parsers","_pluginNpm","_parseOverrides","_lodash","_os","_versionSelectorType2","_yaml","_dependenciesFs","_symlinkDir","_createRootComponentsDir","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","YarnPackageManager","constructor","depResolver","logger","install","rootDir","manifests","componentDirectoryMap","installOptions","setStatusLine","useNesting","rootComponentsForCapsules","capsulesRoot","capsulesRootManifest","entries","find","path","startsWith","dependencies","createLinks","rootDirPath","npath","toPortablePath","config","computeConfiguration","cacheRootDir","nodeLinker","packageManagerConfigRootDir","packageImportMethod","project","Project","configuration","setupResolutions","overrides","_createLocalDirectoryOverrides","workspaceManifest","omit","rootWs","createWorkspace","manifest","neverBuiltDependencies","rootComponents","installConfig","hoistingLimits","createRootComponentsDir","mapValues","peerDependencies","updateManifestsForInstallationInWorkspaceCapsules","extendWithComponentsFromDir","debug","workspacesP","map","workspace","workspaces","Promise","all","workspacesIdents","workspaceIdentHash","locator","identHash","cwd","overrideInternalWorkspaceParams","setupWorkspaces","cache","Cache","installReport","StreamReport","start","stdout","process","report","persistProject","persistLockfile","removeExternalLinksFromYarnLockfile","nmSelfReferences","dir","name","symlinkDir","join","hasErrors","exit","exitCode","consoleSuccess","dependenciesChanged","Array","from","hashMap","component","getPackageName","relative","wsPath","ws","Workspace","setup","identity","structUtils","parseIdent","version","computeDeps","devDependencies","disableBuild","Map","built","dependenciesMeta","dep","resolutions","convertOverridesToResolutions","_ws$manifest$name","_ws$manifest$name2","ident","makeIdent","scope","makeLocator","reference","anchoredDescriptor","makeDescriptor","WorkspaceResolver","protocol","relativeCwd","anchoredLocator","workspacesByCwd","workspacesByIdent","dup","get","Error","set","getScopedRegistries","registries","scopedRegistries","scopes","reduce","acc","scopeName","regDef","authProp","getAuthProp","npmRegistryServer","uri","npmAlwaysAuth","alwaysAuth","keyName","registry","token","baseToken","getGlobalFolder","baseDir","homedir","options","includes","BitError","getRegistries","proxyConfig","getProxyConfig","networkConfig","getNetworkConfig","pluginConfig","getPluginConfiguration","startingCwd","Configuration","defaultRegistry","defaultAuthProp","globalFolder","cacheFolder","enableGlobalCache","installStatePath","pnpUnpluggedFolder","pnpDataPath","npmScopes","virtualFolder","httpProxy","httpsProxy","enableStrictSsl","strictSSL","nmMode","use","overwrite","fs","mkdir","recursive","rawDeps","packageName","resolveRemoteVersion","_versionSelectorType","parsedPackage","parsePackageName","parsedVersion","versionType","versionSelectorType","type","wantedRange","isSemver","npmPlugin","resolvers","_NpmRemapResolver","NpmSemverResolver","NpmTagResolver","resolver","range","LightReport","descriptor","resolveOptions","candidates","getCandidates","parsedRange","parseRange","selector","getInjectedDirs","componentDir","modulesDir","yarnStateContent","readFile","err","code","yarnState","YAML","parse","injectedDirs","locations","location","supportsDedupingOnExistingRoot","getWorkspaceDepsOfBitRoots","fromEntries","exports","parsedOverrides","parseOverrides","override","pattern","parentPkg","toYarnResolutionSelector","targetPkg","newPref","pref","fullName","description","pkgJsonPath","pkgJson","readJson","writeJson","spaces","defaultPeerDependencies","lockfileLocation","yarnLockPath","lockfileObject","parseSyml","updatedLockfile","pickBy","_","rootWorkspace","endsWith","header","lockfileContent","stringifySyml","writeFile"],"sources":["yarn.package-manager.ts"],"sourcesContent":["import parsePackageName from 'parse-package-name';\nimport {\n extendWithComponentsFromDir,\n InstallationContext,\n DependencyResolverMain,\n PackageManager,\n PackageManagerInstallOptions,\n PackageImportMethod,\n Registries,\n Registry,\n PackageManagerResolveRemoteVersionOptions,\n ResolvedPackageVersion,\n} from '@teambit/dependency-resolver';\nimport { BitError } from '@teambit/bit-error';\nimport { ComponentMap } from '@teambit/component';\nimport fs from 'fs-extra';\nimport { join, relative } from 'path';\nimport {\n Workspace,\n Project,\n Configuration,\n structUtils,\n IdentHash,\n Descriptor,\n Cache,\n StreamReport,\n ResolveOptions,\n LightReport,\n WorkspaceResolver,\n} from '@yarnpkg/core';\nimport { getPluginConfiguration } from '@yarnpkg/cli';\nimport { npath, PortablePath } from '@yarnpkg/fslib';\nimport { parseSyml, stringifySyml, Resolution } from '@yarnpkg/parsers';\nimport npmPlugin from '@yarnpkg/plugin-npm';\nimport { parseOverrides } from '@pnpm/parse-overrides';\nimport { ProjectManifest } from '@pnpm/types';\nimport { omit, mapValues, pickBy } from 'lodash';\nimport { homedir } from 'os';\nimport { Logger } from '@teambit/logger';\nimport versionSelectorType from 'version-selector-type';\nimport YAML from 'yaml';\nimport { createLinks } from '@teambit/dependencies.fs.linked-dependencies';\nimport symlinkDir from 'symlink-dir';\nimport { createRootComponentsDir } from './create-root-components-dir';\n\nexport class YarnPackageManager implements PackageManager {\n readonly name = 'yarn';\n\n constructor(private depResolver: DependencyResolverMain, private logger: Logger) {}\n\n async install(\n { rootDir, manifests, componentDirectoryMap }: InstallationContext,\n installOptions: PackageManagerInstallOptions = {}\n ): Promise<{ dependenciesChanged: boolean }> {\n this.logger.setStatusLine('installing dependencies');\n if (installOptions.useNesting && installOptions.rootComponentsForCapsules) {\n // For some reason Yarn doesn't want to link core aspects to the capsules root directory,\n // because the capsule root directory is outside the workspace's root directory.\n // So we need to create the symlinks ourselves.\n const [capsulesRoot, capsulesRootManifest] =\n Object.entries(manifests).find(([path]) => {\n return rootDir.startsWith(path) && rootDir !== path;\n }) ?? [];\n if (capsulesRoot && capsulesRootManifest?.dependencies) {\n await createLinks(capsulesRoot, capsulesRootManifest.dependencies);\n }\n }\n\n const rootDirPath = npath.toPortablePath(rootDir);\n const config = await this.computeConfiguration(rootDirPath, {\n cacheRootDir: installOptions.cacheRootDir,\n nodeLinker: installOptions.nodeLinker,\n packageManagerConfigRootDir: installOptions.packageManagerConfigRootDir,\n packageImportMethod: installOptions.packageImportMethod,\n });\n\n const project = new Project(rootDirPath, { configuration: config });\n\n // @ts-ignore\n project.setupResolutions();\n if (installOptions.rootComponentsForCapsules && !installOptions.useNesting) {\n installOptions.overrides = {\n ...installOptions.overrides,\n ...this._createLocalDirectoryOverrides(rootDir, componentDirectoryMap),\n };\n }\n const workspaceManifest = manifests[rootDir];\n manifests = omit(manifests, rootDir);\n const rootWs = await this.createWorkspace({\n rootDir,\n project,\n manifest: workspaceManifest,\n overrides: installOptions.overrides,\n neverBuiltDependencies: installOptions.neverBuiltDependencies,\n });\n if (installOptions.rootComponents) {\n rootWs.manifest.installConfig = {\n hoistingLimits: 'dependencies',\n };\n }\n\n if (installOptions.rootComponents) {\n await createRootComponentsDir({\n depResolver: this.depResolver,\n rootDir,\n componentDirectoryMap,\n });\n manifests = mapValues(manifests, (manifest) => ({\n ...manifest,\n dependencies: {\n ...manifest.peerDependencies,\n ...manifest['defaultPeerDependencies'], // eslint-disable-line\n ...manifest.dependencies,\n },\n }));\n } else if (installOptions.useNesting) {\n manifests[rootDir] = workspaceManifest;\n // Nesting is used for scope aspect capsules.\n // In a capsule, all peer dependencies should be installed,\n // so we make runtime dependencies from peer dependencies.\n manifests[rootDir].dependencies = {\n ...manifests[rootDir].peerDependencies,\n ...manifests[rootDir]['defaultPeerDependencies'], // eslint-disable-line\n ...manifests[rootDir].dependencies,\n };\n } else if (installOptions.rootComponentsForCapsules) {\n await updateManifestsForInstallationInWorkspaceCapsules(manifests);\n } else {\n manifests = await extendWithComponentsFromDir(rootDir, manifests);\n }\n\n this.logger.debug(`running installation in root dir ${rootDir}`);\n this.logger.debug('root manifest for installation', workspaceManifest);\n this.logger.debug('components manifests for installation', manifests);\n\n const workspacesP = Object.keys(manifests).map(async (path) => {\n const manifest = manifests[path];\n const workspace = await this.createWorkspace({ rootDir: path, project, manifest });\n return workspace;\n });\n\n const workspaces = await Promise.all(workspacesP);\n\n if (!installOptions.rootComponents && !installOptions.rootComponentsForCapsules && !installOptions.useNesting) {\n const workspacesIdents = {};\n for (const workspace of workspaces) {\n const workspaceIdentHash = workspace.locator.identHash;\n if (workspacesIdents[workspaceIdentHash]) {\n this.logger.debug(\n `overriding internal workspace fields to prevent duplications for workspace ${workspace.cwd}`\n );\n this.overrideInternalWorkspaceParams(workspace);\n }\n workspacesIdents[workspace.locator.identHash] = true;\n }\n }\n\n if (!manifests[rootDir]) {\n workspaces.push(rootWs);\n }\n this.setupWorkspaces(project, workspaces);\n\n const cache = await Cache.find(config);\n\n const installReport = await StreamReport.start(\n {\n stdout: process.stdout,\n configuration: config,\n },\n async (report) => {\n await project.install({\n persistProject: false,\n cache,\n report,\n });\n await project.persistLockfile();\n await removeExternalLinksFromYarnLockfile(rootDir);\n }\n );\n\n if (installOptions.nmSelfReferences) {\n await Promise.all(\n Object.entries(manifests).map(async ([dir, manifest]) => {\n if (manifest.name) {\n await symlinkDir(dir, join(dir, 'node_modules', manifest.name));\n }\n })\n );\n }\n\n if (installReport.hasErrors()) process.exit(installReport.exitCode());\n\n this.logger.consoleSuccess('installing dependencies');\n return { dependenciesChanged: true };\n }\n\n /**\n * Every component is overriden with a local directory of that component.\n * So the component will be installed from the local directory, not from the registry.\n */\n private _createLocalDirectoryOverrides(\n rootDir: string,\n componentDirectoryMap: ComponentMap<string>\n ): Record<string, string> {\n const overrides = {};\n Array.from(componentDirectoryMap.hashMap.entries()).forEach(([, [component, path]]) => {\n const name = this.depResolver.getPackageName(component);\n overrides[name] = `file:${relative(rootDir, path)}`;\n });\n return overrides;\n }\n\n private async createWorkspace({\n rootDir,\n project,\n manifest,\n overrides,\n neverBuiltDependencies,\n }: {\n rootDir: string;\n project: Project;\n manifest: any;\n overrides?: Record<string, string>;\n neverBuiltDependencies?: string[];\n }) {\n const wsPath = npath.toPortablePath(rootDir);\n const name = manifest.name || 'workspace';\n\n const ws = new Workspace(wsPath, { project });\n await ws.setup();\n const identity = structUtils.parseIdent(name);\n ws.manifest.name = identity;\n ws.manifest.version = manifest.version;\n ws.manifest.dependencies = this.computeDeps(manifest.dependencies);\n ws.manifest.devDependencies = this.computeDeps(manifest.devDependencies);\n ws.manifest.peerDependencies = this.computeDeps(manifest.peerDependencies);\n ws.manifest.installConfig = manifest.installConfig;\n if (neverBuiltDependencies) {\n const disableBuild = new Map([[null, { built: false }]]);\n ws.manifest.dependenciesMeta = new Map(neverBuiltDependencies.map((dep) => [dep, disableBuild]));\n }\n if (overrides) {\n ws.manifest.resolutions = convertOverridesToResolutions(overrides);\n }\n\n return ws;\n }\n\n /**\n * This is used to handle cases where in the capsules dirs we have the same component with different versions\n * The yarn ident is calculated by the manifest (package.json) name if exist\n * in our case for the same component with different versions we will get the same ident which will result errors later.\n * This is make sense in the original case of yarn workspace (it make sense you don't have 2 workspace with same name)\n * However in our case it doesn't make sense.\n * This function will make sure the ident will use the version as well\n * @param ws\n */\n private overrideInternalWorkspaceParams(ws: Workspace) {\n const ident = structUtils.makeIdent(\n ws.manifest.name?.scope || null,\n `${ws.manifest.name?.name}-${ws.manifest.version}`\n );\n\n ws.manifest.name = ident;\n\n // @ts-expect-error: It's ok to initialize it now, even if it's readonly (setup is called right after construction)\n ws.locator = structUtils.makeLocator(ident, ws.reference);\n\n // @ts-expect-error: It's ok to initialize it now, even if it's readonly (setup is called right after construction)\n ws.anchoredDescriptor = structUtils.makeDescriptor(ws.locator, `${WorkspaceResolver.protocol}${ws.relativeCwd}`);\n\n // @ts-expect-error: It's ok to initialize it now, even if it's readonly (setup is called right after construction)\n ws.anchoredLocator = structUtils.makeLocator(ws.locator, `${WorkspaceResolver.protocol}${ws.relativeCwd}`);\n }\n\n private setupWorkspaces(project: Project, workspaces: Workspace[]) {\n project.workspaces = [];\n project.workspacesByCwd = new Map();\n project.workspacesByIdent = new Map();\n\n workspaces.forEach((workspace) => {\n const dup = project.workspacesByIdent.get(workspace.locator.identHash);\n if (typeof dup !== `undefined`) {\n throw new Error(`Duplicate workspace name: ${workspace.cwd} conflicts with ${dup.cwd}`);\n }\n\n project.workspaces.push(workspace);\n project.workspacesByCwd.set(workspace.cwd, workspace);\n project.workspacesByIdent.set(workspace.locator.identHash, workspace);\n });\n }\n\n private async getScopedRegistries(registries: Registries) {\n const scopedRegistries = Object.keys(registries.scopes).reduce((acc, scopeName) => {\n const regDef = registries.scopes[scopeName];\n const authProp = this.getAuthProp(regDef);\n acc[scopeName] = {\n npmRegistryServer: regDef.uri,\n npmAlwaysAuth: regDef.alwaysAuth,\n };\n if (authProp) {\n acc[scopeName][authProp.keyName] = authProp.value;\n }\n\n return acc;\n }, {});\n return scopedRegistries;\n }\n\n private getAuthProp(registry: Registry) {\n if (registry.token) {\n return {\n keyName: 'npmAuthToken',\n value: registry.token,\n };\n }\n if (registry.baseToken) {\n return {\n keyName: 'npmAuthIdent',\n value: registry.baseToken,\n };\n }\n return undefined;\n }\n\n private getGlobalFolder(baseDir: string = homedir()) {\n return `${baseDir}/.yarn/global`;\n }\n\n // TODO: implement this to automate configuration.\n private async computeConfiguration(\n rootDirPath: PortablePath,\n options: {\n cacheRootDir?: string;\n nodeLinker?: 'hoisted' | 'isolated';\n packageManagerConfigRootDir?: string;\n packageImportMethod?: PackageImportMethod;\n }\n ): Promise<Configuration> {\n // We use \"copy\" by default because \"hardlink\" causes issues on Windows.\n // This must be a Yarn issue that may be fixed in the future by Yarn.\n const packageImportMethod = options.packageImportMethod || 'copy';\n if (!['hardlink', 'copy'].includes(packageImportMethod)) {\n throw new BitError(`packageImportMethod ${packageImportMethod} is not supported with Yarn`);\n }\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n const pluginConfig = getPluginConfiguration();\n let startingCwd: PortablePath;\n if (options.packageManagerConfigRootDir) {\n startingCwd = npath.toPortablePath(options.packageManagerConfigRootDir);\n } else {\n startingCwd = rootDirPath;\n }\n const config = await Configuration.find(startingCwd, pluginConfig);\n const scopedRegistries = await this.getScopedRegistries(registries);\n const defaultRegistry = registries.defaultRegistry;\n const defaultAuthProp = this.getAuthProp(defaultRegistry);\n\n const globalFolder = this.getGlobalFolder(options.cacheRootDir);\n const cacheFolder = join(globalFolder, 'cache');\n const data = {\n enableGlobalCache: true,\n nodeLinker: options.nodeLinker === 'isolated' ? 'pnpm' : 'node-modules',\n installStatePath: `${rootDirPath}/.yarn/install-state.gz`,\n pnpUnpluggedFolder: `${rootDirPath}/.yarn/unplugged`,\n cacheFolder,\n pnpDataPath: `${rootDirPath}/.pnp.meta.json`,\n npmScopes: scopedRegistries,\n virtualFolder: `${rootDirPath}/.yarn/__virtual__`,\n npmRegistryServer: defaultRegistry.uri || 'https://registry.yarnpkg.com',\n npmAlwaysAuth: defaultRegistry.alwaysAuth,\n httpProxy: proxyConfig?.httpProxy,\n httpsProxy: proxyConfig?.httpsProxy,\n enableStrictSsl: networkConfig?.strictSSL,\n // enableInlineBuilds: true,\n globalFolder,\n // We need to disable self-references as say create circular symlinks.\n nmSelfReferences: false,\n // Hardlink the files from the global content-addressable store.\n // This increases the speed of installation and reduces disk space usage.\n nmMode: packageImportMethod === 'hardlink' ? 'hardlinks-global' : 'classic',\n\n // TODO: check about support for the following: (see more here - https://github.com/yarnpkg/berry/issues/1434#issuecomment-801449010)\n // ca?: string;\n // cert?: string;\n // key?: string;\n // noProxy?: boolean | string;\n };\n\n if (defaultAuthProp) {\n data[defaultAuthProp.keyName] = defaultAuthProp.value;\n }\n // TODO: node-modules is hardcoded now until adding support for pnp.\n config.use('<bit>', data, rootDirPath, { overwrite: true });\n\n // Yarn v4 stopped automatically creating the cache folder.\n // If we don't do it ourselves, Yarn will fail with: \"ENOENT: no such file or directory, copyfile...\"\n await fs.mkdir(cacheFolder, { recursive: true });\n\n return config;\n }\n\n private computeDeps(rawDeps?: { [key: string]: string }): Map<IdentHash, Descriptor> {\n const map = new Map<IdentHash, Descriptor>();\n if (!rawDeps) return map;\n\n Object.keys(rawDeps).forEach((packageName) => {\n const ident = structUtils.parseIdent(packageName);\n map.set(ident.identHash, structUtils.makeDescriptor(ident, rawDeps[packageName]));\n });\n\n return map;\n }\n\n async resolveRemoteVersion(\n packageName: string,\n options: PackageManagerResolveRemoteVersionOptions\n ): Promise<ResolvedPackageVersion> {\n const parsedPackage = parsePackageName(packageName);\n const parsedVersion = parsedPackage.version;\n const versionType = parsedVersion && versionSelectorType(parsedVersion)?.type;\n if (versionType === 'version') {\n return {\n packageName: parsedPackage.name,\n version: parsedVersion,\n wantedRange: parsedVersion,\n isSemver: true,\n };\n }\n if (!npmPlugin.resolvers) {\n throw new Error('npm resolvers for yarn API not found');\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [_NpmRemapResolver, NpmSemverResolver, NpmTagResolver] = npmPlugin.resolvers;\n let resolver = new NpmSemverResolver();\n const ident = structUtils.parseIdent(parsedPackage.name);\n let range = 'npm:*';\n const rootDirPath = npath.toPortablePath(options.rootDir);\n const config = await this.computeConfiguration(rootDirPath, {\n cacheRootDir: options.cacheRootDir,\n packageManagerConfigRootDir: options.packageManagerConfigRootDir,\n });\n\n const project = new Project(rootDirPath, { configuration: config });\n const report = new LightReport({ configuration: config, stdout: process.stdout });\n\n // Handle cases when the version is a dist tag like dev / latest for example bit install lodash@latest\n if (versionType === 'tag') {\n resolver = new NpmTagResolver();\n range = `npm:${parsedPackage.version}`;\n }\n const descriptor = structUtils.makeDescriptor(ident, range);\n\n // @ts-ignore\n project.setupResolutions();\n const resolveOptions: ResolveOptions = {\n project,\n resolver,\n report,\n };\n // const candidates = await resolver.getCandidates(descriptor, new Map(), resolveOptions);\n const candidates = await resolver.getCandidates(descriptor, new Map(), resolveOptions);\n const parsedRange = structUtils.parseRange(candidates[0].reference);\n const version = parsedRange.selector;\n return {\n packageName: parsedPackage.name,\n version,\n wantedRange: parsedVersion,\n isSemver: true,\n };\n }\n\n async getInjectedDirs(rootDir: string, componentDir: string, packageName: string): Promise<string[]> {\n const modulesDir = join(rootDir, 'node_modules');\n relative(modulesDir, componentDir);\n let yarnStateContent!: string;\n try {\n yarnStateContent = await fs.readFile(join(modulesDir, '.yarn-state.yml'), 'utf-8');\n } catch (err: any) {\n if (err.code === 'ENOENT') return [];\n }\n const yarnState = YAML.parse(yarnStateContent) as Record<string, { locations: string[] }>;\n const injectedDirs: string[] = [];\n for (const [key, { locations }] of Object.entries(yarnState)) {\n if (key.startsWith(`${packageName}@`) || key.startsWith(`${packageName}__root@`)) {\n for (const location of locations) {\n injectedDirs.push(location);\n }\n }\n }\n return injectedDirs;\n }\n\n supportsDedupingOnExistingRoot(): boolean {\n return true;\n }\n\n getWorkspaceDepsOfBitRoots(manifests: ProjectManifest[]): Record<string, string> {\n return Object.fromEntries(\n manifests.map((manifest) => [manifest.name, `file:../../.bit_components/${manifest.name}`])\n );\n }\n}\n\nfunction convertOverridesToResolutions(\n overrides: Record<string, string>\n): Array<{ pattern: Resolution; reference: string }> {\n const parsedOverrides = parseOverrides(overrides);\n return parsedOverrides.map((override) => ({\n pattern: {\n from: override.parentPkg ? toYarnResolutionSelector(override.parentPkg) : undefined,\n descriptor: toYarnResolutionSelector(override.targetPkg),\n },\n reference: override.newPref,\n }));\n}\n\nfunction toYarnResolutionSelector({ name, pref }: { name: string; pref?: string }) {\n return {\n fullName: name,\n description: pref,\n };\n}\n\n/**\n * This function prepares the component manifests for installation inside a capsule.\n * Inside a capsule, all peer dependencies of the component should be installed.\n * So peer dependencies are added to the manifest as runtime dependencies.\n * Also, the package.json files are update to contain other component dependencies\n * in dependencies as local \"file:\" dependencies.\n */\nasync function updateManifestsForInstallationInWorkspaceCapsules(manifests: { [key: string]: any }) {\n await Promise.all(\n Object.entries(manifests).map(async ([dir, manifest]) => {\n const pkgJsonPath = join(dir, 'package.json');\n const pkgJson = await fs.readJson(pkgJsonPath);\n // We need to write the package.json files because they need to contain the workspace dependencies.\n // When packages are installed via the \"file:\" protocol, Yarn reads their package.json files\n // from the file system even if they are from the workspace.\n await fs.writeJson(\n pkgJsonPath,\n {\n ...pkgJson,\n dependencies: manifest.dependencies,\n },\n { spaces: 2 }\n );\n manifest.dependencies = {\n ...manifest.peerDependencies,\n ...manifest.defaultPeerDependencies,\n ...manifest.dependencies,\n };\n manifest.installConfig = {\n hoistingLimits: 'workspaces',\n };\n })\n );\n}\n\nasync function removeExternalLinksFromYarnLockfile(lockfileLocation: string) {\n const yarnLockPath = join(lockfileLocation, 'yarn.lock');\n const lockfileObject = parseSyml(await fs.readFile(yarnLockPath, 'utf-8'));\n const updatedLockfile = pickBy(lockfileObject, (_, key) => !key.startsWith('@teambit') || !key.includes('@link:'));\n const rootWorkspace = Object.entries(updatedLockfile).find(([key]) => key.endsWith('workspace:.'));\n if (rootWorkspace?.[1]) {\n rootWorkspace[1].dependencies = Object.fromEntries(\n Object.entries(rootWorkspace[1].dependencies).filter(\n ([key, value]) => !key.startsWith('@teambit') || !(value as string).startsWith('link:')\n )\n );\n }\n const header = `${[\n `# This file is generated by running \"yarn install\" inside your project.\\n`,\n `# Manual changes might be lost - proceed with caution!\\n`,\n ].join(``)}\\n`;\n const lockfileContent = header + stringifySyml(updatedLockfile);\n await fs.writeFile(yarnLockPath, lockfileContent, 'utf-8');\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/yarn",
3
- "version": "1.0.31",
3
+ "version": "1.0.33",
4
4
  "homepage": "https://bit.cloud/teambit/dependencies/yarn",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.dependencies",
8
8
  "name": "yarn",
9
- "version": "1.0.31"
9
+ "version": "1.0.33"
10
10
  },
11
11
  "dependencies": {
12
12
  "fs-extra": "10.0.0",
@@ -27,12 +27,12 @@
27
27
  "@teambit/harmony": "0.4.6",
28
28
  "@teambit/bit-error": "0.0.404",
29
29
  "@teambit/ui-foundation.ui.use-box.menu": "1.0.5",
30
- "@teambit/component": "1.0.31",
31
- "@teambit/dependency-resolver": "1.0.31",
32
- "@teambit/cli": "0.0.802",
33
- "@teambit/logger": "0.0.895",
30
+ "@teambit/component": "1.0.33",
31
+ "@teambit/dependency-resolver": "1.0.33",
32
+ "@teambit/cli": "0.0.803",
33
+ "@teambit/logger": "0.0.896",
34
34
  "@teambit/dependencies.fs.linked-dependencies": "0.0.4",
35
- "@teambit/ui": "1.0.31"
35
+ "@teambit/ui": "1.0.33"
36
36
  },
37
37
  "devDependencies": {
38
38
  "@types/fs-extra": "9.0.7",
@@ -46,7 +46,7 @@
46
46
  "@teambit/dependencies.aspect-docs.yarn": "0.0.162"
47
47
  },
48
48
  "peerDependencies": {
49
- "@teambit/legacy": "1.0.582",
49
+ "@teambit/legacy": "1.0.583",
50
50
  "react": "^16.8.0 || ^17.0.0",
51
51
  "react-dom": "^16.8.0 || ^17.0.0"
52
52
  },