@teambit/pnpm 0.0.667 → 0.0.668
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/pnpm.package-manager.d.ts +5 -2
- package/dist/pnpm.package-manager.js +14 -10
- package/dist/pnpm.package-manager.js.map +1 -1
- package/dist/read-config.d.ts +1 -1
- package/dist/read-config.js +4 -2
- package/dist/read-config.js.map +1 -1
- package/package-tar/teambit-pnpm-0.0.668.tgz +0 -0
- package/package.json +10 -10
- package/{__preview-1646623282945.js → preview-1646709972516.js} +2 -2
- package/package-tar/teambit-pnpm-0.0.667.tgz +0 -0
|
@@ -10,10 +10,13 @@ export declare class PnpmPackageManager implements PackageManager {
|
|
|
10
10
|
private readConfig;
|
|
11
11
|
constructor(depResolver: DependencyResolverMain, pkg: PkgMain, logger: Logger);
|
|
12
12
|
private _componentsToPnpmWorkspaceProjects;
|
|
13
|
-
_getGlobalPnpmDirs(
|
|
13
|
+
_getGlobalPnpmDirs(opts?: {
|
|
14
|
+
cacheRootDir?: string;
|
|
15
|
+
packageManagerConfigRootDir?: string;
|
|
16
|
+
}): Promise<{
|
|
14
17
|
storeDir: string;
|
|
15
18
|
cacheDir: string;
|
|
16
|
-
}
|
|
19
|
+
}>;
|
|
17
20
|
install(rootDir: string, rootPolicy: WorkspacePolicy, componentDirectoryMap: ComponentMap<string>, installOptions?: PackageManagerInstallOptions): Promise<void>;
|
|
18
21
|
getPeerDependencyIssues(rootDir: string, rootPolicy: WorkspacePolicy, componentDirectoryMap: ComponentMap<string>, installOptions?: PackageManagerInstallOptions): Promise<PeerDependencyIssuesByProjects>;
|
|
19
22
|
private computeComponentsManifests;
|
|
@@ -108,9 +108,14 @@ class PnpmPackageManager {
|
|
|
108
108
|
};
|
|
109
109
|
}
|
|
110
110
|
|
|
111
|
-
_getGlobalPnpmDirs(
|
|
112
|
-
|
|
113
|
-
|
|
111
|
+
async _getGlobalPnpmDirs(opts = {}) {
|
|
112
|
+
var _config$storeDir, _config$cacheDir;
|
|
113
|
+
|
|
114
|
+
const {
|
|
115
|
+
config
|
|
116
|
+
} = await this.readConfig(opts.packageManagerConfigRootDir);
|
|
117
|
+
const storeDir = opts.cacheRootDir ? (0, _path().join)(opts.cacheRootDir, '.pnpm-store') : (_config$storeDir = config.storeDir) !== null && _config$storeDir !== void 0 ? _config$storeDir : defaultStoreDir;
|
|
118
|
+
const cacheDir = opts.cacheRootDir ? (0, _path().join)(opts.cacheRootDir, '.pnpm-cache') : (_config$cacheDir = config.cacheDir) !== null && _config$cacheDir !== void 0 ? _config$cacheDir : defaultCacheDir;
|
|
114
119
|
return {
|
|
115
120
|
storeDir,
|
|
116
121
|
cacheDir
|
|
@@ -136,15 +141,13 @@ class PnpmPackageManager {
|
|
|
136
141
|
const registries = await this.depResolver.getRegistries();
|
|
137
142
|
const proxyConfig = await this.depResolver.getProxyConfig();
|
|
138
143
|
const networkConfig = await this.depResolver.getNetworkConfig();
|
|
139
|
-
|
|
140
144
|
const {
|
|
141
145
|
storeDir,
|
|
142
146
|
cacheDir
|
|
143
|
-
} = this._getGlobalPnpmDirs(installOptions
|
|
144
|
-
|
|
147
|
+
} = await this._getGlobalPnpmDirs(installOptions);
|
|
145
148
|
const {
|
|
146
149
|
config
|
|
147
|
-
} = await this.readConfig();
|
|
150
|
+
} = await this.readConfig(installOptions.packageManagerConfigRootDir);
|
|
148
151
|
await (0, _dependencyResolver().extendWithComponentsFromDir)(rootManifest.rootDir, componentsManifests);
|
|
149
152
|
await install(rootManifest, componentsManifests, storeDir, cacheDir, registries, proxyConfig, networkConfig, {
|
|
150
153
|
nodeLinker: installOptions.nodeLinker,
|
|
@@ -162,8 +165,7 @@ class PnpmPackageManager {
|
|
|
162
165
|
const {
|
|
163
166
|
storeDir,
|
|
164
167
|
cacheDir
|
|
165
|
-
} = this._getGlobalPnpmDirs(installOptions
|
|
166
|
-
|
|
168
|
+
} = await this._getGlobalPnpmDirs(installOptions);
|
|
167
169
|
const proxyConfig = await this.depResolver.getProxyConfig();
|
|
168
170
|
const networkConfig = await this.depResolver.getNetworkConfig();
|
|
169
171
|
const registries = await this.depResolver.getRegistries(); // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import
|
|
@@ -208,7 +210,9 @@ class PnpmPackageManager {
|
|
|
208
210
|
resolveRemoteVersion
|
|
209
211
|
} = require('./lynx');
|
|
210
212
|
|
|
211
|
-
const
|
|
213
|
+
const {
|
|
214
|
+
cacheDir
|
|
215
|
+
} = await this._getGlobalPnpmDirs(options);
|
|
212
216
|
const registries = await this.depResolver.getRegistries();
|
|
213
217
|
const proxyConfig = await this.depResolver.getProxyConfig();
|
|
214
218
|
const networkConfig = await this.depResolver.getNetworkConfig();
|
|
@@ -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","cacheRootDir","storeDir","cacheDir","install","require","debug","setStatusLine","off","registries","getRegistries","proxyConfig","getProxyConfig","networkConfig","getNetworkConfig","config","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 _getGlobalPnpmDirs(cacheRootDir?: string) {\n const storeDir = cacheRootDir ? join(cacheRootDir, '.pnpm-store') : defaultStoreDir;\n const cacheDir = cacheRootDir ? join(cacheRootDir, '.pnpm-cache') : 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 } = this._getGlobalPnpmDirs(installOptions?.cacheRootDir);\n const { config } = await this.readConfig();\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 } = this._getGlobalPnpmDirs(installOptions?.cacheRootDir);\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 = options?.cacheRootDir ? join(options?.cacheRootDir, '.pnpm-cache') : defaultStoreDir;\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","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"]}
|
package/dist/read-config.d.ts
CHANGED
package/dist/read-config.js
CHANGED
|
@@ -19,10 +19,12 @@ function _config() {
|
|
|
19
19
|
return data;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
async function readConfig() {
|
|
22
|
+
async function readConfig(dir) {
|
|
23
23
|
const pnpmConfig = await (0, _config().default)({
|
|
24
|
-
cliOptions: {
|
|
24
|
+
cliOptions: {
|
|
25
|
+
dir // 'global': true,
|
|
25
26
|
// 'link-workspace-packages': true,
|
|
27
|
+
|
|
26
28
|
},
|
|
27
29
|
packageManager: {
|
|
28
30
|
name: 'pnpm',
|
package/dist/read-config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["read-config.ts"],"names":["readConfig","pnpmConfig","cliOptions","packageManager","name","version"],"mappings":";;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEO,eAAeA,UAAf,
|
|
1
|
+
{"version":3,"sources":["read-config.ts"],"names":["readConfig","dir","pnpmConfig","cliOptions","packageManager","name","version"],"mappings":";;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEO,eAAeA,UAAf,CAA0BC,GAA1B,EAAwC;AAC7C,QAAMC,UAAU,GAAG,MAAM,uBAAU;AACjCC,IAAAA,UAAU,EAAE;AACVF,MAAAA,GADU,CAEV;AACA;;AAHU,KADqB;AAMjCG,IAAAA,cAAc,EAAE;AACdC,MAAAA,IAAI,EAAE,MADQ;AAEdC,MAAAA,OAAO,EAAE;AAFK;AANiB,GAAV,CAAzB;AAWA,SAAOJ,UAAP;AACD","sourcesContent":["import getConfig from '@pnpm/config';\n\nexport async function readConfig(dir?: string) {\n const pnpmConfig = await getConfig({\n cliOptions: {\n dir,\n // 'global': true,\n // 'link-workspace-packages': true,\n },\n packageManager: {\n name: 'pnpm',\n version: '1.0.0',\n },\n });\n return pnpmConfig;\n}\n"]}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/pnpm",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.668",
|
|
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.
|
|
9
|
+
"version": "0.0.668"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@pnpm/error": "2.1.0",
|
|
@@ -34,13 +34,13 @@
|
|
|
34
34
|
"user-home": "2.0.0",
|
|
35
35
|
"@babel/runtime": "7.12.18",
|
|
36
36
|
"core-js": "^3.0.0",
|
|
37
|
-
"@teambit/dependency-resolver": "0.0.
|
|
38
|
-
"@teambit/logger": "0.0.
|
|
39
|
-
"@teambit/cli": "0.0.
|
|
40
|
-
"@teambit/pkg": "0.0.
|
|
41
|
-
"@teambit/component": "0.0.
|
|
37
|
+
"@teambit/dependency-resolver": "0.0.668",
|
|
38
|
+
"@teambit/logger": "0.0.541",
|
|
39
|
+
"@teambit/cli": "0.0.451",
|
|
40
|
+
"@teambit/pkg": "0.0.668",
|
|
41
|
+
"@teambit/component": "0.0.668",
|
|
42
42
|
"@teambit/ui-foundation.ui.use-box.menu": "0.0.111",
|
|
43
|
-
"@teambit/ui": "0.0.
|
|
43
|
+
"@teambit/ui": "0.0.668"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@types/lodash": "4.14.165",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"@teambit/dependencies.aspect-docs.pnpm": "0.0.132"
|
|
55
55
|
},
|
|
56
56
|
"peerDependencies": {
|
|
57
|
-
"@teambit/legacy": "1.0.
|
|
57
|
+
"@teambit/legacy": "1.0.230",
|
|
58
58
|
"react-dom": "^16.8.0 || ^17.0.0",
|
|
59
59
|
"react": "^16.8.0 || ^17.0.0"
|
|
60
60
|
},
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
"react": "-"
|
|
83
83
|
},
|
|
84
84
|
"peerDependencies": {
|
|
85
|
-
"@teambit/legacy": "1.0.
|
|
85
|
+
"@teambit/legacy": "1.0.230",
|
|
86
86
|
"react-dom": "^16.8.0 || ^17.0.0",
|
|
87
87
|
"react": "^16.8.0 || ^17.0.0"
|
|
88
88
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_pnpm@0.0.
|
|
2
|
-
export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_pnpm@0.0.
|
|
1
|
+
export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_pnpm@0.0.668/dist/pnpm.composition.js')]
|
|
2
|
+
export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_pnpm@0.0.668/dist/pnpm.docs.mdx')]
|
|
Binary file
|