@teambit/pnpm 0.0.519 → 0.0.523
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 +2 -2
- package/dist/lynx.js +9 -8
- package/dist/lynx.js.map +1 -1
- package/dist/pnpm.package-manager.js +5 -3
- package/dist/pnpm.package-manager.js.map +1 -1
- package/lynx.ts +9 -6
- package/package-tar/teambit-pnpm-0.0.523.tgz +0 -0
- package/package.json +22 -22
- package/pnpm.package-manager.ts +5 -3
- package/package-tar/teambit-pnpm-0.0.519.tgz +0 -0
package/dist/lynx.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { ResolvedPackageVersion, Registries, PackageManagerProxyConfig } from '@teambit/dependency-resolver';
|
|
2
2
|
import { Logger } from '@teambit/logger';
|
|
3
|
-
export declare function install(rootPathToManifest: any, pathsToManifests: any, storeDir: string, registries: Registries, proxyConfig?: PackageManagerProxyConfig, logger?: Logger): Promise<void>;
|
|
4
|
-
export declare function resolveRemoteVersion(packageName: string, rootDir: string,
|
|
3
|
+
export declare function install(rootPathToManifest: any, pathsToManifests: any, storeDir: string, cacheDir: string, registries: Registries, proxyConfig?: PackageManagerProxyConfig, logger?: Logger): Promise<void>;
|
|
4
|
+
export declare function resolveRemoteVersion(packageName: string, rootDir: string, cacheDir: string, registries: Registries, proxyConfig?: PackageManagerProxyConfig): Promise<ResolvedPackageVersion>;
|
package/dist/lynx.js
CHANGED
|
@@ -139,7 +139,7 @@ function _readConfig() {
|
|
|
139
139
|
// logger.console(logObj)
|
|
140
140
|
// });
|
|
141
141
|
// }
|
|
142
|
-
async function createStoreController(storeDir, registries, proxyConfig = {}) {
|
|
142
|
+
async function createStoreController(storeDir, cacheDir, registries, proxyConfig = {}) {
|
|
143
143
|
// const fetchFromRegistry = createFetchFromRegistry({});
|
|
144
144
|
// const getCredentials = () => ({ authHeaderValue: '', alwaysAuth: false });
|
|
145
145
|
// const resolver: ResolveFunction = createResolver(fetchFromRegistry, getCredentials, {
|
|
@@ -162,6 +162,7 @@ async function createStoreController(storeDir, registries, proxyConfig = {}) {
|
|
|
162
162
|
// const pnpmConfig = await readConfig();
|
|
163
163
|
const authConfig = getAuthConfig(registries);
|
|
164
164
|
const opts = {
|
|
165
|
+
cacheDir,
|
|
165
166
|
storeDir,
|
|
166
167
|
rawConfig: authConfig,
|
|
167
168
|
verifyStoreIntegrity: true,
|
|
@@ -179,25 +180,25 @@ async function createStoreController(storeDir, registries, proxyConfig = {}) {
|
|
|
179
180
|
return ctrl;
|
|
180
181
|
}
|
|
181
182
|
|
|
182
|
-
async function generateResolverAndFetcher(
|
|
183
|
+
async function generateResolverAndFetcher(cacheDir, registries, proxyConfig = {}) {
|
|
183
184
|
const pnpmConfig = await (0, _readConfig().readConfig)();
|
|
184
185
|
const authConfig = getAuthConfig(registries);
|
|
185
186
|
const opts = {
|
|
186
187
|
authConfig: Object.assign({}, pnpmConfig.config.rawConfig, authConfig),
|
|
187
|
-
|
|
188
|
+
cacheDir,
|
|
188
189
|
httpProxy: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.httpProxy,
|
|
189
190
|
httpsProxy: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.httpsProxy,
|
|
190
191
|
ca: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.ca,
|
|
191
192
|
cert: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.cert,
|
|
192
193
|
key: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.key,
|
|
193
194
|
noProxy: proxyConfig === null || proxyConfig === void 0 ? void 0 : proxyConfig.noProxy,
|
|
194
|
-
|
|
195
|
+
strictSsl: proxyConfig.strictSSL
|
|
195
196
|
};
|
|
196
197
|
const result = (0, _client().default)(opts);
|
|
197
198
|
return result;
|
|
198
199
|
}
|
|
199
200
|
|
|
200
|
-
async function install(rootPathToManifest, pathsToManifests, storeDir, registries, proxyConfig = {}, // eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
201
|
+
async function install(rootPathToManifest, pathsToManifests, storeDir, cacheDir, registries, proxyConfig = {}, // eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
201
202
|
logger) {
|
|
202
203
|
const packagesToBuild = []; // supi will use this to install the packages
|
|
203
204
|
|
|
@@ -240,7 +241,7 @@ logger) {
|
|
|
240
241
|
});
|
|
241
242
|
const registriesMap = getRegistriesMap(registries);
|
|
242
243
|
const authConfig = getAuthConfig(registries);
|
|
243
|
-
const storeController = await createStoreController(storeDir, registries, proxyConfig);
|
|
244
|
+
const storeController = await createStoreController(storeDir, cacheDir, registries, proxyConfig);
|
|
244
245
|
const opts = {
|
|
245
246
|
storeDir,
|
|
246
247
|
dir: rootPathToManifest.rootDir,
|
|
@@ -267,10 +268,10 @@ logger) {
|
|
|
267
268
|
await (0, _supi().mutateModules)(packagesToBuild, opts);
|
|
268
269
|
}
|
|
269
270
|
|
|
270
|
-
async function resolveRemoteVersion(packageName, rootDir,
|
|
271
|
+
async function resolveRemoteVersion(packageName, rootDir, cacheDir, registries, proxyConfig = {}) {
|
|
271
272
|
const {
|
|
272
273
|
resolve
|
|
273
|
-
} = await generateResolverAndFetcher(
|
|
274
|
+
} = await generateResolverAndFetcher(cacheDir, registries, proxyConfig);
|
|
274
275
|
const resolveOpts = {
|
|
275
276
|
projectDir: rootDir,
|
|
276
277
|
registry: ''
|
package/dist/lynx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["lynx.ts"],"names":["createStoreController","storeDir","registries","proxyConfig","authConfig","getAuthConfig","opts","rawConfig","verifyStoreIntegrity","httpProxy","httpsProxy","ca","cert","key","noProxy","strictSsl","strictSSL","ctrl","generateResolverAndFetcher","pnpmConfig","Object","assign","config","result","install","rootPathToManifest","pathsToManifests","logger","packagesToBuild","workspacePackages","rootDir","manifest","push","buildIndex","mutation","name","version","dir","registriesMap","getRegistriesMap","storeController","update","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","entries","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';\n// import createClient from '@pnpm/client'\n// import { createFetchFromRegistry } from '@pnpm/fetch';\nimport { streamParser } from '@pnpm/logger';\n// import createStore, { ResolveFunction, StoreController } from '@pnpm/package-store';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\n// import { PreferredVersions, RequestPackageOptions, StoreController, WantedDependency } from '@pnpm/package-store';\nimport { StoreController, WantedDependency } from '@pnpm/package-store';\nimport { createNewStoreController } from '@pnpm/store-connection-manager';\n// TODO: this should be taken from - @pnpm/store-connection-manager\n// it's not taken from there since it's not exported.\n// here is a bug in pnpm about it https://github.com/pnpm/pnpm/issues/2748\nimport { CreateNewStoreControllerOptions } from '@pnpm/store-connection-manager/lib/createNewStoreController';\nimport {\n ResolvedPackageVersion,\n Registries,\n NPM_REGISTRY,\n Registry,\n PackageManagerProxyConfig,\n} from '@teambit/dependency-resolver';\n// import execa from 'execa';\n// import createFetcher from '@pnpm/tarball-fetcher';\nimport { MutatedProject, mutateModules } from 'supi';\n// import { ReporterFunction } from 'supi/lib/types';\n// import { createResolver } from './create-resolver';\n// import {isValidPath} from '@teambit/legacy/dist/utils';\n// import {createResolver} from '@pnpm/default-resolver';\nimport createResolverAndFetcher, { ClientOptions } from '@pnpm/client';\nimport pickRegistryForPackage from '@pnpm/pick-registry-for-package';\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\n// TODO: DO NOT DELETE - uncomment when this is solved https://github.com/pnpm/pnpm/issues/2910\n// function getReporter(logger: Logger): ReporterFunction {\n// return ((logObj) => {\n// // TODO: print correctly not the entire object\n// logger.console(logObj)\n// });\n// }\n\nasync function createStoreController(\n storeDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {}\n): Promise<StoreController> {\n // const fetchFromRegistry = createFetchFromRegistry({});\n // const getCredentials = () => ({ authHeaderValue: '', alwaysAuth: false });\n // const resolver: ResolveFunction = createResolver(fetchFromRegistry, getCredentials, {\n // metaCache: new Map(),\n // storeDir,\n // });\n // const fetcher = createFetcher(fetchFromRegistry, getCredentials, {});\n // const { resolve, fetchers } = createClient({\n // // authConfig,\n // metaCache: new Map(),\n // // retry: retryOpts,\n // storeDir,\n // // ...resolveOpts,\n // // ...fetchOpts,\n // })\n // const storeController = await createStore(resolve, fetchers, {\n // storeDir,\n // verifyStoreIntegrity: true,\n // });\n // const pnpmConfig = await readConfig();\n const authConfig = getAuthConfig(registries);\n const opts: CreateNewStoreControllerOptions = {\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 noProxy: proxyConfig?.noProxy,\n strictSsl: proxyConfig.strictSSL,\n };\n const { ctrl } = await createNewStoreController(opts);\n return ctrl;\n}\n\nasync function generateResolverAndFetcher(\n storeDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {}\n) {\n const pnpmConfig = await readConfig();\n const authConfig = getAuthConfig(registries);\n const opts: ClientOptions = {\n authConfig: Object.assign({}, pnpmConfig.config.rawConfig, authConfig),\n storeDir,\n httpProxy: proxyConfig?.httpProxy,\n httpsProxy: proxyConfig?.httpsProxy,\n ca: proxyConfig?.ca,\n cert: proxyConfig?.cert,\n key: proxyConfig?.key,\n noProxy: proxyConfig?.noProxy,\n strictSSL: proxyConfig.strictSSL,\n };\n const result = createResolverAndFetcher(opts);\n return result;\n}\n\nexport async function install(\n rootPathToManifest,\n pathsToManifests,\n storeDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n logger?: Logger\n) {\n const packagesToBuild: MutatedProject[] = []; // supi will use this to install the packages\n const workspacePackages = {}; // supi 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 pathsToManifests) {\n const manifest = pathsToManifests[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: rootPathToManifest.manifest,\n mutation: 'install',\n rootDir: rootPathToManifest.rootDir,\n });\n const registriesMap = getRegistriesMap(registries);\n const authConfig = getAuthConfig(registries);\n const storeController = await createStoreController(storeDir, registries, proxyConfig);\n const opts = {\n storeDir,\n dir: rootPathToManifest.rootDir,\n storeController,\n update: true,\n workspacePackages,\n registries: registriesMap,\n rawConfig: authConfig,\n // TODO: uncomment when this is solved https://github.com/pnpm/pnpm/issues/2910\n // reporter: logger ? getReporter(logger) : undefined,\n };\n\n defaultReporter({\n context: {\n argv: [],\n },\n reportingOptions: {\n appendOnly: false,\n // logLevel: 'error' as LogLevel,\n // streamLifecycleOutput: opts.config.stream,\n throttleProgress: 200,\n },\n streamParser,\n });\n await mutateModules(packagesToBuild, opts);\n}\n\nexport async function resolveRemoteVersion(\n packageName: string,\n rootDir: string,\n storeDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {}\n): Promise<ResolvedPackageVersion> {\n const { resolve } = await generateResolverAndFetcher(storeDir, registries, proxyConfig);\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 // const { stdout } = await execa('npm', ['view', packageName, '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":["createStoreController","storeDir","cacheDir","registries","proxyConfig","authConfig","getAuthConfig","opts","rawConfig","verifyStoreIntegrity","httpProxy","httpsProxy","ca","cert","key","noProxy","strictSsl","strictSSL","ctrl","generateResolverAndFetcher","pnpmConfig","Object","assign","config","result","install","rootPathToManifest","pathsToManifests","logger","packagesToBuild","workspacePackages","rootDir","manifest","push","buildIndex","mutation","name","version","dir","registriesMap","getRegistriesMap","storeController","update","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","entries","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';\n// import createClient from '@pnpm/client'\n// import { createFetchFromRegistry } from '@pnpm/fetch';\nimport { streamParser } from '@pnpm/logger';\n// import createStore, { ResolveFunction, StoreController } from '@pnpm/package-store';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\n// import { PreferredVersions, RequestPackageOptions, StoreController, WantedDependency } from '@pnpm/package-store';\nimport { StoreController, WantedDependency } from '@pnpm/package-store';\nimport { createNewStoreController } from '@pnpm/store-connection-manager';\n// TODO: this should be taken from - @pnpm/store-connection-manager\n// it's not taken from there since it's not exported.\n// here is a bug in pnpm about it https://github.com/pnpm/pnpm/issues/2748\nimport { CreateNewStoreControllerOptions } from '@pnpm/store-connection-manager/lib/createNewStoreController';\nimport {\n ResolvedPackageVersion,\n Registries,\n NPM_REGISTRY,\n Registry,\n PackageManagerProxyConfig,\n} from '@teambit/dependency-resolver';\n// import execa from 'execa';\n// import createFetcher from '@pnpm/tarball-fetcher';\nimport { MutatedProject, mutateModules } from 'supi';\n// import { ReporterFunction } from 'supi/lib/types';\n// import { createResolver } from './create-resolver';\n// import {isValidPath} from '@teambit/legacy/dist/utils';\n// import {createResolver} from '@pnpm/default-resolver';\nimport createResolverAndFetcher, { ClientOptions } from '@pnpm/client';\nimport pickRegistryForPackage from '@pnpm/pick-registry-for-package';\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\n// TODO: DO NOT DELETE - uncomment when this is solved https://github.com/pnpm/pnpm/issues/2910\n// function getReporter(logger: Logger): ReporterFunction {\n// return ((logObj) => {\n// // TODO: print correctly not the entire object\n// logger.console(logObj)\n// });\n// }\n\nasync function createStoreController(\n storeDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {}\n): Promise<StoreController> {\n // const fetchFromRegistry = createFetchFromRegistry({});\n // const getCredentials = () => ({ authHeaderValue: '', alwaysAuth: false });\n // const resolver: ResolveFunction = createResolver(fetchFromRegistry, getCredentials, {\n // metaCache: new Map(),\n // storeDir,\n // });\n // const fetcher = createFetcher(fetchFromRegistry, getCredentials, {});\n // const { resolve, fetchers } = createClient({\n // // authConfig,\n // metaCache: new Map(),\n // // retry: retryOpts,\n // storeDir,\n // // ...resolveOpts,\n // // ...fetchOpts,\n // })\n // const storeController = await createStore(resolve, fetchers, {\n // storeDir,\n // verifyStoreIntegrity: true,\n // });\n // const pnpmConfig = await readConfig();\n const authConfig = getAuthConfig(registries);\n const opts: CreateNewStoreControllerOptions = {\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 noProxy: proxyConfig?.noProxy,\n strictSsl: proxyConfig.strictSSL,\n };\n const { ctrl } = await createNewStoreController(opts);\n return ctrl;\n}\n\nasync function generateResolverAndFetcher(\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {}\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 noProxy: proxyConfig?.noProxy,\n strictSsl: proxyConfig.strictSSL,\n };\n const result = createResolverAndFetcher(opts);\n return result;\n}\n\nexport async function install(\n rootPathToManifest,\n pathsToManifests,\n storeDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n logger?: Logger\n) {\n const packagesToBuild: MutatedProject[] = []; // supi will use this to install the packages\n const workspacePackages = {}; // supi 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 pathsToManifests) {\n const manifest = pathsToManifests[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: rootPathToManifest.manifest,\n mutation: 'install',\n rootDir: rootPathToManifest.rootDir,\n });\n const registriesMap = getRegistriesMap(registries);\n const authConfig = getAuthConfig(registries);\n const storeController = await createStoreController(storeDir, cacheDir, registries, proxyConfig);\n const opts = {\n storeDir,\n dir: rootPathToManifest.rootDir,\n storeController,\n update: true,\n workspacePackages,\n registries: registriesMap,\n rawConfig: authConfig,\n // TODO: uncomment when this is solved https://github.com/pnpm/pnpm/issues/2910\n // reporter: logger ? getReporter(logger) : undefined,\n };\n\n defaultReporter({\n context: {\n argv: [],\n },\n reportingOptions: {\n appendOnly: false,\n // logLevel: 'error' as LogLevel,\n // streamLifecycleOutput: opts.config.stream,\n throttleProgress: 200,\n },\n streamParser,\n });\n await mutateModules(packagesToBuild, opts);\n}\n\nexport async function resolveRemoteVersion(\n packageName: string,\n rootDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {}\n): Promise<ResolvedPackageVersion> {\n const { resolve } = await generateResolverAndFetcher(cacheDir, registries, proxyConfig);\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 // const { stdout } = await execa('npm', ['view', packageName, '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"]}
|
|
@@ -56,6 +56,7 @@ function _userHome() {
|
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
const defaultStoreDir = (0, _path().join)(_userHome().default, '.pnpm-store');
|
|
59
|
+
const defaultCacheDir = (0, _path().join)(_userHome().default, '.pnpm-cache');
|
|
59
60
|
|
|
60
61
|
class PnpmPackageManager {
|
|
61
62
|
constructor(depResolver, pkg, logger) {
|
|
@@ -72,6 +73,7 @@ class PnpmPackageManager {
|
|
|
72
73
|
} = require('./lynx');
|
|
73
74
|
|
|
74
75
|
const storeDir = installOptions !== null && installOptions !== void 0 && installOptions.cacheRootDir ? (0, _path().join)(installOptions === null || installOptions === void 0 ? void 0 : installOptions.cacheRootDir, '.pnpm-store') : defaultStoreDir;
|
|
76
|
+
const cacheDir = installOptions !== null && installOptions !== void 0 && installOptions.cacheRootDir ? (0, _path().join)(installOptions === null || installOptions === void 0 ? void 0 : installOptions.cacheRootDir, '.pnpm-cache') : defaultCacheDir;
|
|
75
77
|
const components = componentDirectoryMap.toArray().map(([component]) => component);
|
|
76
78
|
const options = {
|
|
77
79
|
filterComponentsFromManifests: true,
|
|
@@ -94,7 +96,7 @@ class PnpmPackageManager {
|
|
|
94
96
|
this.logger.off();
|
|
95
97
|
const registries = await this.depResolver.getRegistries();
|
|
96
98
|
const proxyConfig = await this.depResolver.getProxyConfig();
|
|
97
|
-
await install(rootManifest, componentsManifests, storeDir, registries, proxyConfig, this.logger);
|
|
99
|
+
await install(rootManifest, componentsManifests, storeDir, cacheDir, registries, proxyConfig, this.logger);
|
|
98
100
|
this.logger.on(); // Make a divider row to improve output
|
|
99
101
|
|
|
100
102
|
this.logger.console('-------------------------');
|
|
@@ -124,10 +126,10 @@ class PnpmPackageManager {
|
|
|
124
126
|
resolveRemoteVersion
|
|
125
127
|
} = require('./lynx');
|
|
126
128
|
|
|
127
|
-
const
|
|
129
|
+
const cacheDir = options !== null && options !== void 0 && options.cacheRootDir ? (0, _path().join)(options === null || options === void 0 ? void 0 : options.cacheRootDir, '.pnpm-cache') : defaultStoreDir;
|
|
128
130
|
const registries = await this.depResolver.getRegistries();
|
|
129
131
|
const proxyConfig = await this.depResolver.getProxyConfig();
|
|
130
|
-
return resolveRemoteVersion(packageName, options.rootDir,
|
|
132
|
+
return resolveRemoteVersion(packageName, options.rootDir, cacheDir, registries, proxyConfig);
|
|
131
133
|
}
|
|
132
134
|
|
|
133
135
|
async getProxyConfig() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["pnpm.package-manager.ts"],"names":["defaultStoreDir","userHome","PnpmPackageManager","constructor","depResolver","pkg","logger","install","rootDir","rootPolicy","componentDirectoryMap","installOptions","require","storeDir","cacheRootDir","components","toArray","map","component","options","filterComponentsFromManifests","createManifestForComponentsWithoutDependencies","dedupe","dependencyFilterFn","workspaceManifest","getWorkspaceManifest","undefined","rootManifest","toJson","includeDir","copyPeerToRuntime","copyPeerToRuntimeOnRoot","componentsManifests","computeComponentsManifests","componentsManifestsMap","copyPeerToRuntimeOnComponents","debug","setStatusLine","off","registries","getRegistries","proxyConfig","getProxyConfig","on","console","consoleSuccess","componentsManifestsFromWorkspace","reduce","acc","dir","packageName","getPackageName","has","get","resolveRemoteVersion","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 PackageManager,\n PackageManagerInstallOptions,\n PackageManagerResolveRemoteVersionOptions,\n ResolvedPackageVersion,\n Registries,\n Registry,\n BIT_DEV_REGISTRY,\n PackageManagerProxyConfig,\n} from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport { omit } from 'lodash';\nimport { PkgMain } from '@teambit/pkg';\nimport { join } from 'path';\nimport userHome from 'user-home';\n\nconst defaultStoreDir = join(userHome, '.pnpm-store');\n\nexport class PnpmPackageManager implements PackageManager {\n constructor(private depResolver: DependencyResolverMain, private pkg: PkgMain, private logger: Logger) {}\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 const storeDir = installOptions?.cacheRootDir ? join(installOptions?.cacheRootDir, '.pnpm-store') : defaultStoreDir;\n\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.toJson({\n includeDir: true,\n copyPeerToRuntime: installOptions.copyPeerToRuntimeOnRoot,\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 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 await install(rootManifest, componentsManifests, storeDir, registries, proxyConfig, this.logger);\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 private computeComponentsManifests(\n componentDirectoryMap: ComponentMap<string>,\n componentsManifestsFromWorkspace: ComponentsManifestsMap,\n copyPeerToRuntime = false\n ) {\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 storeDir = options?.cacheRootDir ? join(options?.cacheRootDir, '.pnpm-store') : defaultStoreDir;\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n return resolveRemoteVersion(packageName, options.rootDir, storeDir, registries, proxyConfig);\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 return getProxyConfig();\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 pnpmRegistry = await getRegistries();\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","install","rootDir","rootPolicy","componentDirectoryMap","installOptions","require","storeDir","cacheRootDir","cacheDir","components","toArray","map","component","options","filterComponentsFromManifests","createManifestForComponentsWithoutDependencies","dedupe","dependencyFilterFn","workspaceManifest","getWorkspaceManifest","undefined","rootManifest","toJson","includeDir","copyPeerToRuntime","copyPeerToRuntimeOnRoot","componentsManifests","computeComponentsManifests","componentsManifestsMap","copyPeerToRuntimeOnComponents","debug","setStatusLine","off","registries","getRegistries","proxyConfig","getProxyConfig","on","console","consoleSuccess","componentsManifestsFromWorkspace","reduce","acc","dir","packageName","getPackageName","has","get","resolveRemoteVersion","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 PackageManager,\n PackageManagerInstallOptions,\n PackageManagerResolveRemoteVersionOptions,\n ResolvedPackageVersion,\n Registries,\n Registry,\n BIT_DEV_REGISTRY,\n PackageManagerProxyConfig,\n} from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport { omit } from 'lodash';\nimport { PkgMain } from '@teambit/pkg';\nimport { join } from 'path';\nimport userHome from 'user-home';\n\nconst defaultStoreDir = join(userHome, '.pnpm-store');\nconst defaultCacheDir = join(userHome, '.pnpm-cache');\n\nexport class PnpmPackageManager implements PackageManager {\n constructor(private depResolver: DependencyResolverMain, private pkg: PkgMain, private logger: Logger) {}\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 const storeDir = installOptions?.cacheRootDir ? join(installOptions?.cacheRootDir, '.pnpm-store') : defaultStoreDir;\n const cacheDir = installOptions?.cacheRootDir ? join(installOptions?.cacheRootDir, '.pnpm-cache') : defaultCacheDir;\n\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.toJson({\n includeDir: true,\n copyPeerToRuntime: installOptions.copyPeerToRuntimeOnRoot,\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 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 await install(rootManifest, componentsManifests, storeDir, cacheDir, registries, proxyConfig, this.logger);\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 private computeComponentsManifests(\n componentDirectoryMap: ComponentMap<string>,\n componentsManifestsFromWorkspace: ComponentsManifestsMap,\n copyPeerToRuntime = false\n ) {\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 return resolveRemoteVersion(packageName, options.rootDir, cacheDir, registries, proxyConfig);\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 return getProxyConfig();\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 pnpmRegistry = await getRegistries();\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/lynx.ts
CHANGED
|
@@ -48,6 +48,7 @@ type RegistriesMap = {
|
|
|
48
48
|
|
|
49
49
|
async function createStoreController(
|
|
50
50
|
storeDir: string,
|
|
51
|
+
cacheDir: string,
|
|
51
52
|
registries: Registries,
|
|
52
53
|
proxyConfig: PackageManagerProxyConfig = {}
|
|
53
54
|
): Promise<StoreController> {
|
|
@@ -73,6 +74,7 @@ async function createStoreController(
|
|
|
73
74
|
// const pnpmConfig = await readConfig();
|
|
74
75
|
const authConfig = getAuthConfig(registries);
|
|
75
76
|
const opts: CreateNewStoreControllerOptions = {
|
|
77
|
+
cacheDir,
|
|
76
78
|
storeDir,
|
|
77
79
|
rawConfig: authConfig,
|
|
78
80
|
verifyStoreIntegrity: true,
|
|
@@ -89,7 +91,7 @@ async function createStoreController(
|
|
|
89
91
|
}
|
|
90
92
|
|
|
91
93
|
async function generateResolverAndFetcher(
|
|
92
|
-
|
|
94
|
+
cacheDir: string,
|
|
93
95
|
registries: Registries,
|
|
94
96
|
proxyConfig: PackageManagerProxyConfig = {}
|
|
95
97
|
) {
|
|
@@ -97,14 +99,14 @@ async function generateResolverAndFetcher(
|
|
|
97
99
|
const authConfig = getAuthConfig(registries);
|
|
98
100
|
const opts: ClientOptions = {
|
|
99
101
|
authConfig: Object.assign({}, pnpmConfig.config.rawConfig, authConfig),
|
|
100
|
-
|
|
102
|
+
cacheDir,
|
|
101
103
|
httpProxy: proxyConfig?.httpProxy,
|
|
102
104
|
httpsProxy: proxyConfig?.httpsProxy,
|
|
103
105
|
ca: proxyConfig?.ca,
|
|
104
106
|
cert: proxyConfig?.cert,
|
|
105
107
|
key: proxyConfig?.key,
|
|
106
108
|
noProxy: proxyConfig?.noProxy,
|
|
107
|
-
|
|
109
|
+
strictSsl: proxyConfig.strictSSL,
|
|
108
110
|
};
|
|
109
111
|
const result = createResolverAndFetcher(opts);
|
|
110
112
|
return result;
|
|
@@ -114,6 +116,7 @@ export async function install(
|
|
|
114
116
|
rootPathToManifest,
|
|
115
117
|
pathsToManifests,
|
|
116
118
|
storeDir: string,
|
|
119
|
+
cacheDir: string,
|
|
117
120
|
registries: Registries,
|
|
118
121
|
proxyConfig: PackageManagerProxyConfig = {},
|
|
119
122
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
@@ -154,7 +157,7 @@ export async function install(
|
|
|
154
157
|
});
|
|
155
158
|
const registriesMap = getRegistriesMap(registries);
|
|
156
159
|
const authConfig = getAuthConfig(registries);
|
|
157
|
-
const storeController = await createStoreController(storeDir, registries, proxyConfig);
|
|
160
|
+
const storeController = await createStoreController(storeDir, cacheDir, registries, proxyConfig);
|
|
158
161
|
const opts = {
|
|
159
162
|
storeDir,
|
|
160
163
|
dir: rootPathToManifest.rootDir,
|
|
@@ -185,11 +188,11 @@ export async function install(
|
|
|
185
188
|
export async function resolveRemoteVersion(
|
|
186
189
|
packageName: string,
|
|
187
190
|
rootDir: string,
|
|
188
|
-
|
|
191
|
+
cacheDir: string,
|
|
189
192
|
registries: Registries,
|
|
190
193
|
proxyConfig: PackageManagerProxyConfig = {}
|
|
191
194
|
): Promise<ResolvedPackageVersion> {
|
|
192
|
-
const { resolve } = await generateResolverAndFetcher(
|
|
195
|
+
const { resolve } = await generateResolverAndFetcher(cacheDir, registries, proxyConfig);
|
|
193
196
|
const resolveOpts = {
|
|
194
197
|
projectDir: rootDir,
|
|
195
198
|
registry: '',
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/pnpm",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.523",
|
|
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.523"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@pnpm/error": "
|
|
13
|
-
"@pnpm/fetching-types": "
|
|
14
|
-
"@pnpm/git-resolver": "
|
|
15
|
-
"@pnpm/local-resolver": "
|
|
16
|
-
"@pnpm/npm-resolver": "
|
|
17
|
-
"@pnpm/resolver-base": "
|
|
18
|
-
"@pnpm/tarball-resolver": "
|
|
12
|
+
"@pnpm/error": "2.0.0",
|
|
13
|
+
"@pnpm/fetching-types": "2.2.1",
|
|
14
|
+
"@pnpm/git-resolver": "5.1.5",
|
|
15
|
+
"@pnpm/local-resolver": "6.1.0",
|
|
16
|
+
"@pnpm/npm-resolver": "12.0.4",
|
|
17
|
+
"@pnpm/resolver-base": "8.0.4",
|
|
18
|
+
"@pnpm/tarball-resolver": "5.0.4",
|
|
19
19
|
"credentials-by-uri": "2.0.0",
|
|
20
20
|
"lodash": "4.17.21",
|
|
21
21
|
"nerf-dart": "1.0.0",
|
|
22
|
-
"@pnpm/logger": "
|
|
23
|
-
"@pnpm/client": "
|
|
24
|
-
"@pnpm/default-reporter": "
|
|
25
|
-
"@pnpm/package-store": "
|
|
26
|
-
"@pnpm/pick-registry-for-package": "
|
|
27
|
-
"@pnpm/store-connection-manager": "0.
|
|
22
|
+
"@pnpm/logger": "4.0.0",
|
|
23
|
+
"@pnpm/client": "5.0.7",
|
|
24
|
+
"@pnpm/default-reporter": "8.3.0",
|
|
25
|
+
"@pnpm/package-store": "12.0.15",
|
|
26
|
+
"@pnpm/pick-registry-for-package": "2.0.4",
|
|
27
|
+
"@pnpm/store-connection-manager": "3.0.19",
|
|
28
28
|
"parse-package-name": "0.1.0",
|
|
29
29
|
"semver": "7.3.4",
|
|
30
|
-
"supi": "0.
|
|
30
|
+
"supi": "0.47.26",
|
|
31
31
|
"@teambit/harmony": "0.2.11",
|
|
32
32
|
"user-home": "2.0.0",
|
|
33
|
-
"@pnpm/config": "
|
|
33
|
+
"@pnpm/config": "13.1.0",
|
|
34
34
|
"@babel/runtime": "7.12.18",
|
|
35
35
|
"core-js": "^3.0.0",
|
|
36
|
-
"@teambit/dependency-resolver": "0.0.
|
|
37
|
-
"@teambit/logger": "0.0.
|
|
36
|
+
"@teambit/dependency-resolver": "0.0.523",
|
|
37
|
+
"@teambit/logger": "0.0.449",
|
|
38
38
|
"@teambit/cli": "0.0.379",
|
|
39
|
-
"@teambit/pkg": "0.0.
|
|
40
|
-
"@teambit/component": "0.0.
|
|
39
|
+
"@teambit/pkg": "0.0.523",
|
|
40
|
+
"@teambit/component": "0.0.523"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@types/lodash": "4.14.165",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@types/react-dom": "^17.0.5",
|
|
49
49
|
"@types/react": "^17.0.8",
|
|
50
50
|
"@types/node": "12.20.4",
|
|
51
|
-
"@teambit/dependencies.aspect-docs.pnpm": "0.0.
|
|
51
|
+
"@teambit/dependencies.aspect-docs.pnpm": "0.0.85"
|
|
52
52
|
},
|
|
53
53
|
"peerDependencies": {
|
|
54
54
|
"@teambit/legacy": "1.0.76",
|
package/pnpm.package-manager.ts
CHANGED
|
@@ -20,6 +20,7 @@ import { join } from 'path';
|
|
|
20
20
|
import userHome from 'user-home';
|
|
21
21
|
|
|
22
22
|
const defaultStoreDir = join(userHome, '.pnpm-store');
|
|
23
|
+
const defaultCacheDir = join(userHome, '.pnpm-cache');
|
|
23
24
|
|
|
24
25
|
export class PnpmPackageManager implements PackageManager {
|
|
25
26
|
constructor(private depResolver: DependencyResolverMain, private pkg: PkgMain, private logger: Logger) {}
|
|
@@ -34,6 +35,7 @@ export class PnpmPackageManager implements PackageManager {
|
|
|
34
35
|
// eslint-disable-next-line global-require, import/no-dynamic-require
|
|
35
36
|
const { install } = require('./lynx');
|
|
36
37
|
const storeDir = installOptions?.cacheRootDir ? join(installOptions?.cacheRootDir, '.pnpm-store') : defaultStoreDir;
|
|
38
|
+
const cacheDir = installOptions?.cacheRootDir ? join(installOptions?.cacheRootDir, '.pnpm-cache') : defaultCacheDir;
|
|
37
39
|
|
|
38
40
|
const components = componentDirectoryMap.toArray().map(([component]) => component);
|
|
39
41
|
const options: CreateFromComponentsOptions = {
|
|
@@ -69,7 +71,7 @@ export class PnpmPackageManager implements PackageManager {
|
|
|
69
71
|
this.logger.off();
|
|
70
72
|
const registries = await this.depResolver.getRegistries();
|
|
71
73
|
const proxyConfig = await this.depResolver.getProxyConfig();
|
|
72
|
-
await install(rootManifest, componentsManifests, storeDir, registries, proxyConfig, this.logger);
|
|
74
|
+
await install(rootManifest, componentsManifests, storeDir, cacheDir, registries, proxyConfig, this.logger);
|
|
73
75
|
this.logger.on();
|
|
74
76
|
// Make a divider row to improve output
|
|
75
77
|
this.logger.console('-------------------------');
|
|
@@ -97,10 +99,10 @@ export class PnpmPackageManager implements PackageManager {
|
|
|
97
99
|
// require it dynamically for performance purpose. the pnpm package require many files - do not move to static import
|
|
98
100
|
// eslint-disable-next-line global-require, import/no-dynamic-require
|
|
99
101
|
const { resolveRemoteVersion } = require('./lynx');
|
|
100
|
-
const
|
|
102
|
+
const cacheDir = options?.cacheRootDir ? join(options?.cacheRootDir, '.pnpm-cache') : defaultStoreDir;
|
|
101
103
|
const registries = await this.depResolver.getRegistries();
|
|
102
104
|
const proxyConfig = await this.depResolver.getProxyConfig();
|
|
103
|
-
return resolveRemoteVersion(packageName, options.rootDir,
|
|
105
|
+
return resolveRemoteVersion(packageName, options.rootDir, cacheDir, registries, proxyConfig);
|
|
104
106
|
}
|
|
105
107
|
|
|
106
108
|
async getProxyConfig?(): Promise<PackageManagerProxyConfig> {
|
|
Binary file
|