pcu 0.5.5 → 0.5.7
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/README.ja.md +99 -7
- package/README.md +73 -16
- package/README.zh-CN.md +21 -8
- package/dist/application/services/CatalogUpdateService.d.ts.map +1 -1
- package/dist/application/services/CatalogUpdateService.js +4 -1
- package/dist/application/services/CatalogUpdateService.js.map +1 -1
- package/dist/cli/commands/InitCommand.d.ts +53 -0
- package/dist/cli/commands/InitCommand.d.ts.map +1 -0
- package/dist/cli/commands/InitCommand.js +338 -0
- package/dist/cli/commands/InitCommand.js.map +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +32 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/infrastructure/external-services/NpmRegistryService.d.ts +10 -2
- package/dist/infrastructure/external-services/NpmRegistryService.d.ts.map +1 -1
- package/dist/infrastructure/external-services/NpmRegistryService.js +56 -11
- package/dist/infrastructure/external-services/NpmRegistryService.js.map +1 -1
- package/dist/infrastructure/utils/NpmrcParser.d.ts +40 -0
- package/dist/infrastructure/utils/NpmrcParser.d.ts.map +1 -0
- package/dist/infrastructure/utils/NpmrcParser.js +157 -0
- package/dist/infrastructure/utils/NpmrcParser.js.map +1 -0
- package/package.json +1 -1
|
@@ -9,8 +9,8 @@ import pacote from 'pacote';
|
|
|
9
9
|
import semver from 'semver';
|
|
10
10
|
import { Version } from '../../domain/value-objects/Version.js';
|
|
11
11
|
import { UserFriendlyErrorHandler } from '../../common/error-handling/UserFriendlyErrorHandler.js';
|
|
12
|
+
import { NpmrcParser } from '../utils/NpmrcParser.js';
|
|
12
13
|
export class NpmRegistryService {
|
|
13
|
-
registryUrl;
|
|
14
14
|
cache = new Map();
|
|
15
15
|
// Differentiated cache timeouts for different data types
|
|
16
16
|
versionCacheTimeout;
|
|
@@ -21,8 +21,21 @@ export class NpmRegistryService {
|
|
|
21
21
|
timeout;
|
|
22
22
|
retries;
|
|
23
23
|
cachingEnabled;
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
// NPM configuration for handling multiple registries
|
|
25
|
+
npmrcConfig;
|
|
26
|
+
constructor(registryUrl = 'https://registry.npmjs.org/', options = {}, workingDirectory = process.cwd()) {
|
|
27
|
+
// Parse npmrc configuration for scoped registries
|
|
28
|
+
this.npmrcConfig = NpmrcParser.parse(workingDirectory);
|
|
29
|
+
// Override default registry if specified in npmrc
|
|
30
|
+
if (!registryUrl || registryUrl === 'https://registry.npmjs.org/') {
|
|
31
|
+
// Use npmrc registry as default if no specific registry is provided
|
|
32
|
+
const normalizedUrl = registryUrl.endsWith('/') ? registryUrl : registryUrl + '/';
|
|
33
|
+
this.npmrcConfig.registry = this.npmrcConfig.registry || normalizedUrl;
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
// Use the provided registry URL as override
|
|
37
|
+
this.npmrcConfig.registry = registryUrl.endsWith('/') ? registryUrl : registryUrl + '/';
|
|
38
|
+
}
|
|
26
39
|
this.concurrency = options.concurrency ?? 8; // Increased from 5 to match NCU performance
|
|
27
40
|
this.timeout = options.timeout ?? 15000; // Reduced from 30s to 15s for faster failure detection
|
|
28
41
|
this.retries = options.retries ?? 2; // Reduced from 3 to 2 for faster overall performance
|
|
@@ -59,11 +72,31 @@ export class NpmRegistryService {
|
|
|
59
72
|
}
|
|
60
73
|
throw lastError;
|
|
61
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Get the appropriate registry URL for a package
|
|
77
|
+
*/
|
|
78
|
+
getRegistryForPackage(packageName) {
|
|
79
|
+
return NpmrcParser.getRegistryForPackage(packageName, this.npmrcConfig);
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Get auth configuration for a registry
|
|
83
|
+
*/
|
|
84
|
+
getAuthConfig(registryUrl) {
|
|
85
|
+
const authToken = NpmrcParser.getAuthToken(registryUrl, this.npmrcConfig);
|
|
86
|
+
if (authToken) {
|
|
87
|
+
return {
|
|
88
|
+
'//registry.npmjs.org/:_authToken': authToken,
|
|
89
|
+
token: authToken,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
return {};
|
|
93
|
+
}
|
|
62
94
|
/**
|
|
63
95
|
* Get lightweight package version information (optimized for performance)
|
|
64
96
|
*/
|
|
65
97
|
async getPackageVersions(packageName) {
|
|
66
|
-
const
|
|
98
|
+
const registryUrl = this.getRegistryForPackage(packageName);
|
|
99
|
+
const cacheKey = `package-versions:${registryUrl}:${packageName}`;
|
|
67
100
|
// Check cache first if caching is enabled
|
|
68
101
|
if (this.cachingEnabled) {
|
|
69
102
|
const cached = this.getFromCache(cacheKey);
|
|
@@ -73,10 +106,12 @@ export class NpmRegistryService {
|
|
|
73
106
|
}
|
|
74
107
|
const packageVersions = await this.executeWithRetry(async () => {
|
|
75
108
|
// Use lightweight packument call without fullMetadata
|
|
109
|
+
const authConfig = this.getAuthConfig(registryUrl);
|
|
76
110
|
const packument = await pacote.packument(packageName, {
|
|
77
|
-
registry:
|
|
111
|
+
registry: registryUrl,
|
|
78
112
|
timeout: this.timeout,
|
|
79
113
|
fullMetadata: false, // Key optimization: don't fetch full metadata
|
|
114
|
+
...authConfig,
|
|
80
115
|
});
|
|
81
116
|
const versions = Object.keys(packument.versions || {}).sort(semver.rcompare);
|
|
82
117
|
const latestVersion = packument['dist-tags']?.latest || versions[0];
|
|
@@ -99,7 +134,8 @@ export class NpmRegistryService {
|
|
|
99
134
|
* @deprecated Use getPackageVersions() for better performance
|
|
100
135
|
*/
|
|
101
136
|
async getPackageInfo(packageName) {
|
|
102
|
-
const
|
|
137
|
+
const registryUrl = this.getRegistryForPackage(packageName);
|
|
138
|
+
const cacheKey = `package-info:${registryUrl}:${packageName}`;
|
|
103
139
|
// Check cache first if caching is enabled
|
|
104
140
|
if (this.cachingEnabled) {
|
|
105
141
|
const cached = this.getFromCache(cacheKey);
|
|
@@ -111,10 +147,12 @@ export class NpmRegistryService {
|
|
|
111
147
|
const versionInfo = await this.getPackageVersions(packageName);
|
|
112
148
|
const packageInfo = await this.executeWithRetry(async () => {
|
|
113
149
|
// Only fetch full metadata if we actually need the extended info
|
|
150
|
+
const authConfig = this.getAuthConfig(registryUrl);
|
|
114
151
|
const packument = await pacote.packument(packageName, {
|
|
115
|
-
registry:
|
|
152
|
+
registry: registryUrl,
|
|
116
153
|
timeout: this.timeout,
|
|
117
154
|
fullMetadata: true,
|
|
155
|
+
...authConfig,
|
|
118
156
|
});
|
|
119
157
|
return {
|
|
120
158
|
name: versionInfo.name,
|
|
@@ -205,7 +243,8 @@ export class NpmRegistryService {
|
|
|
205
243
|
* Check for security vulnerabilities
|
|
206
244
|
*/
|
|
207
245
|
async checkSecurityVulnerabilities(packageName, version) {
|
|
208
|
-
const
|
|
246
|
+
const registryUrl = this.getRegistryForPackage(packageName);
|
|
247
|
+
const cacheKey = `security:${registryUrl}:${packageName}@${version}`;
|
|
209
248
|
// Check cache first
|
|
210
249
|
const cached = this.getFromCache(cacheKey);
|
|
211
250
|
if (cached) {
|
|
@@ -219,14 +258,16 @@ export class NpmRegistryService {
|
|
|
219
258
|
requires: {},
|
|
220
259
|
dependencies: {},
|
|
221
260
|
};
|
|
261
|
+
const authConfig = this.getAuthConfig(registryUrl);
|
|
222
262
|
const response = await npmRegistryFetch('/-/npm/v1/security/audits', {
|
|
223
263
|
method: 'POST',
|
|
224
264
|
body: JSON.stringify(auditData),
|
|
225
265
|
headers: {
|
|
226
266
|
'Content-Type': 'application/json',
|
|
227
267
|
},
|
|
228
|
-
registry:
|
|
268
|
+
registry: registryUrl,
|
|
229
269
|
timeout: this.timeout,
|
|
270
|
+
...authConfig,
|
|
230
271
|
});
|
|
231
272
|
const auditResult = await response.json();
|
|
232
273
|
const vulnerabilities = [];
|
|
@@ -306,13 +347,17 @@ export class NpmRegistryService {
|
|
|
306
347
|
async hasPackageAuthorChanged(packageName, fromVersion, toVersion) {
|
|
307
348
|
try {
|
|
308
349
|
// const packageInfo = await this.getPackageInfo(packageName);
|
|
350
|
+
const registryUrl = this.getRegistryForPackage(packageName);
|
|
351
|
+
const authConfig = this.getAuthConfig(registryUrl);
|
|
309
352
|
const fromVersionData = await pacote.manifest(`${packageName}@${fromVersion}`, {
|
|
310
|
-
registry:
|
|
353
|
+
registry: registryUrl,
|
|
311
354
|
timeout: this.timeout,
|
|
355
|
+
...authConfig,
|
|
312
356
|
});
|
|
313
357
|
const toVersionData = await pacote.manifest(`${packageName}@${toVersion}`, {
|
|
314
|
-
registry:
|
|
358
|
+
registry: registryUrl,
|
|
315
359
|
timeout: this.timeout,
|
|
360
|
+
...authConfig,
|
|
316
361
|
});
|
|
317
362
|
// Compare authors/maintainers
|
|
318
363
|
const fromAuthor = this.normalizeAuthor(fromVersionData.author);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NpmRegistryService.js","sourceRoot":"","sources":["../../../src/infrastructure/external-services/NpmRegistryService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NpmRegistryService.js","sourceRoot":"","sources":["../../../src/infrastructure/external-services/NpmRegistryService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NPM/PNPM Configuration Parser
|
|
3
|
+
*
|
|
4
|
+
* Reads and parses .npmrc and .pnpmrc configuration files to extract registry settings
|
|
5
|
+
* for different package scopes. Supports both npm and pnpm configuration formats.
|
|
6
|
+
*/
|
|
7
|
+
export interface NpmrcConfig {
|
|
8
|
+
registry: string;
|
|
9
|
+
scopedRegistries: Map<string, string>;
|
|
10
|
+
authTokens: Map<string, string>;
|
|
11
|
+
config: Map<string, string>;
|
|
12
|
+
}
|
|
13
|
+
export declare class NpmrcParser {
|
|
14
|
+
private static readonly DEFAULT_REGISTRY;
|
|
15
|
+
/**
|
|
16
|
+
* Parse .npmrc/.pnpmrc configuration from multiple sources
|
|
17
|
+
*/
|
|
18
|
+
static parse(workingDirectory?: string, includeGlobal?: boolean): NpmrcConfig;
|
|
19
|
+
/**
|
|
20
|
+
* Parse a single .npmrc file
|
|
21
|
+
*/
|
|
22
|
+
private static parseFile;
|
|
23
|
+
/**
|
|
24
|
+
* Parse npm configuration from environment variables
|
|
25
|
+
*/
|
|
26
|
+
private static parseEnvironment;
|
|
27
|
+
/**
|
|
28
|
+
* Get the appropriate registry URL for a package
|
|
29
|
+
*/
|
|
30
|
+
static getRegistryForPackage(packageName: string, config: NpmrcConfig): string;
|
|
31
|
+
/**
|
|
32
|
+
* Normalize registry URL to ensure it has a trailing slash
|
|
33
|
+
*/
|
|
34
|
+
private static normalizeRegistryUrl;
|
|
35
|
+
/**
|
|
36
|
+
* Get auth token for a registry
|
|
37
|
+
*/
|
|
38
|
+
static getAuthToken(registryUrl: string, config: NpmrcConfig): string | undefined;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=NpmrcParser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NpmrcParser.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/utils/NpmrcParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,WAAW;IAE1B,QAAQ,EAAE,MAAM,CAAC;IAEjB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEtC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAiC;IAEzE;;OAEG;IACH,MAAM,CAAC,KAAK,CACV,gBAAgB,GAAE,MAAsB,EACxC,aAAa,GAAE,OAAc,GAC5B,WAAW;IAiCd;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;IAiDxB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAwB/B;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM;IAmB9E;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAYnC;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS;CAQlF"}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NPM/PNPM Configuration Parser
|
|
3
|
+
*
|
|
4
|
+
* Reads and parses .npmrc and .pnpmrc configuration files to extract registry settings
|
|
5
|
+
* for different package scopes. Supports both npm and pnpm configuration formats.
|
|
6
|
+
*/
|
|
7
|
+
import { existsSync, readFileSync } from 'fs';
|
|
8
|
+
import { join } from 'path';
|
|
9
|
+
import { homedir } from 'os';
|
|
10
|
+
export class NpmrcParser {
|
|
11
|
+
static DEFAULT_REGISTRY = 'https://registry.npmjs.org/';
|
|
12
|
+
/**
|
|
13
|
+
* Parse .npmrc/.pnpmrc configuration from multiple sources
|
|
14
|
+
*/
|
|
15
|
+
static parse(workingDirectory = process.cwd(), includeGlobal = true) {
|
|
16
|
+
const config = {
|
|
17
|
+
registry: this.DEFAULT_REGISTRY,
|
|
18
|
+
scopedRegistries: new Map(),
|
|
19
|
+
authTokens: new Map(),
|
|
20
|
+
config: new Map(),
|
|
21
|
+
};
|
|
22
|
+
// Load config files in order of precedence (later files override earlier)
|
|
23
|
+
// Priority: project .pnpmrc > project .npmrc > global .pnpmrc > global .npmrc
|
|
24
|
+
const configPaths = [];
|
|
25
|
+
// Only include global configs if requested (for production use)
|
|
26
|
+
if (includeGlobal) {
|
|
27
|
+
configPaths.push(join(homedir(), '.npmrc')); // Global npmrc (lowest priority)
|
|
28
|
+
configPaths.push(join(homedir(), '.pnpmrc')); // Global pnpmrc
|
|
29
|
+
}
|
|
30
|
+
configPaths.push(join(workingDirectory, '.npmrc')); // Project npmrc
|
|
31
|
+
configPaths.push(join(workingDirectory, '.pnpmrc')); // Project pnpmrc (highest priority)
|
|
32
|
+
for (const configPath of configPaths) {
|
|
33
|
+
if (existsSync(configPath)) {
|
|
34
|
+
this.parseFile(configPath, config);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// Also check for environment variables (skip in tests if includeGlobal is false)
|
|
38
|
+
this.parseEnvironment(config, includeGlobal);
|
|
39
|
+
return config;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Parse a single .npmrc file
|
|
43
|
+
*/
|
|
44
|
+
static parseFile(filepath, config) {
|
|
45
|
+
try {
|
|
46
|
+
const content = readFileSync(filepath, 'utf-8');
|
|
47
|
+
const lines = content.split('\n');
|
|
48
|
+
for (const line of lines) {
|
|
49
|
+
const trimmedLine = line.trim();
|
|
50
|
+
// Skip comments and empty lines
|
|
51
|
+
if (!trimmedLine || trimmedLine.startsWith('#') || trimmedLine.startsWith(';')) {
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
// Parse key=value pairs
|
|
55
|
+
const separatorIndex = trimmedLine.indexOf('=');
|
|
56
|
+
if (separatorIndex === -1)
|
|
57
|
+
continue;
|
|
58
|
+
const key = trimmedLine.substring(0, separatorIndex).trim();
|
|
59
|
+
const value = trimmedLine.substring(separatorIndex + 1).trim();
|
|
60
|
+
// Handle scoped registries (e.g., @mycompany:registry=https://npm.mycompany.com/)
|
|
61
|
+
if (key.includes(':registry')) {
|
|
62
|
+
const scope = key.replace(':registry', '');
|
|
63
|
+
config.scopedRegistries.set(scope, this.normalizeRegistryUrl(value));
|
|
64
|
+
}
|
|
65
|
+
// Handle default registry
|
|
66
|
+
else if (key === 'registry') {
|
|
67
|
+
config.registry = this.normalizeRegistryUrl(value);
|
|
68
|
+
}
|
|
69
|
+
// Handle auth tokens (e.g., //registry.npmjs.org/:_authToken=...)
|
|
70
|
+
else if (key.includes(':_authToken') || key.includes('_authToken')) {
|
|
71
|
+
// Extract registry URL from the key
|
|
72
|
+
const match = key.match(/\/\/(.*?)\/:/);
|
|
73
|
+
if (match && match[1]) {
|
|
74
|
+
const registryHost = match[1];
|
|
75
|
+
config.authTokens.set(registryHost, value);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
// Store other config values
|
|
79
|
+
else {
|
|
80
|
+
config.config.set(key, value);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
// Silently ignore errors reading npmrc files
|
|
86
|
+
console.debug(`Failed to parse npmrc file ${filepath}:`, error);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Parse npm configuration from environment variables
|
|
91
|
+
*/
|
|
92
|
+
static parseEnvironment(config, includeEnv = true) {
|
|
93
|
+
if (!includeEnv) {
|
|
94
|
+
return; // Skip environment parsing in tests
|
|
95
|
+
}
|
|
96
|
+
// Check for npm_config_registry
|
|
97
|
+
if (process.env.npm_config_registry) {
|
|
98
|
+
config.registry = this.normalizeRegistryUrl(process.env.npm_config_registry);
|
|
99
|
+
}
|
|
100
|
+
// Check for scoped registries in environment
|
|
101
|
+
for (const [key, value] of Object.entries(process.env)) {
|
|
102
|
+
if (key.startsWith('npm_config_') && key.includes('_registry')) {
|
|
103
|
+
// Extract scope from environment variable name
|
|
104
|
+
// e.g., npm_config_@mycompany_registry -> @mycompany
|
|
105
|
+
const match = key.match(/npm_config_(.+)_registry/);
|
|
106
|
+
if (match && match[1] && value) {
|
|
107
|
+
const scope = match[1].replace(/_/g, '/').replace(/\//, '@');
|
|
108
|
+
config.scopedRegistries.set(scope, this.normalizeRegistryUrl(value));
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Get the appropriate registry URL for a package
|
|
115
|
+
*/
|
|
116
|
+
static getRegistryForPackage(packageName, config) {
|
|
117
|
+
// Check if package has a scope (e.g., @mycompany/package)
|
|
118
|
+
if (packageName.startsWith('@')) {
|
|
119
|
+
const scopeEnd = packageName.indexOf('/');
|
|
120
|
+
if (scopeEnd !== -1) {
|
|
121
|
+
const scope = packageName.substring(0, scopeEnd);
|
|
122
|
+
// Check if we have a scoped registry for this scope
|
|
123
|
+
const scopedRegistry = config.scopedRegistries.get(scope);
|
|
124
|
+
if (scopedRegistry) {
|
|
125
|
+
return scopedRegistry;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
// Fall back to default registry
|
|
130
|
+
return config.registry;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Normalize registry URL to ensure it has a trailing slash
|
|
134
|
+
*/
|
|
135
|
+
static normalizeRegistryUrl(url) {
|
|
136
|
+
// Remove any quotes that might be in the config
|
|
137
|
+
url = url.replace(/^["']|["']$/g, '');
|
|
138
|
+
// Ensure trailing slash
|
|
139
|
+
if (!url.endsWith('/')) {
|
|
140
|
+
url += '/';
|
|
141
|
+
}
|
|
142
|
+
return url;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Get auth token for a registry
|
|
146
|
+
*/
|
|
147
|
+
static getAuthToken(registryUrl, config) {
|
|
148
|
+
try {
|
|
149
|
+
const url = new URL(registryUrl);
|
|
150
|
+
return config.authTokens.get(url.hostname);
|
|
151
|
+
}
|
|
152
|
+
catch {
|
|
153
|
+
return undefined;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
//# sourceMappingURL=NpmrcParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NpmrcParser.js","sourceRoot":"","sources":["../../../src/infrastructure/utils/NpmrcParser.ts"],"names":[],"mappings":"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"}
|