pcu 0.3.6 → 0.4.1
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.md +95 -1
- package/README.zh-CN.md +91 -1
- package/dist/application/services/CatalogUpdateService.d.ts +15 -8
- package/dist/application/services/CatalogUpdateService.d.ts.map +1 -1
- package/dist/application/services/CatalogUpdateService.js +259 -47
- package/dist/application/services/CatalogUpdateService.js.map +1 -1
- package/dist/cli/commands/CheckCommand.d.ts +2 -3
- package/dist/cli/commands/CheckCommand.d.ts.map +1 -1
- package/dist/cli/commands/CheckCommand.js +16 -9
- package/dist/cli/commands/CheckCommand.js.map +1 -1
- package/dist/cli/commands/UpdateCommand.d.ts +2 -3
- package/dist/cli/commands/UpdateCommand.d.ts.map +1 -1
- package/dist/cli/commands/UpdateCommand.js +19 -12
- package/dist/cli/commands/UpdateCommand.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +21 -12
- package/dist/cli/index.js.map +1 -1
- package/dist/common/config/ConfigLoader.d.ts +45 -0
- package/dist/common/config/ConfigLoader.d.ts.map +1 -0
- package/dist/common/config/ConfigLoader.js +161 -0
- package/dist/common/config/ConfigLoader.js.map +1 -0
- package/dist/common/config/PackageFilterConfig.d.ts +55 -0
- package/dist/common/config/PackageFilterConfig.d.ts.map +1 -0
- package/dist/common/config/PackageFilterConfig.js +93 -0
- package/dist/common/config/PackageFilterConfig.js.map +1 -0
- package/dist/common/config/index.d.ts +2 -0
- package/dist/common/config/index.d.ts.map +1 -1
- package/dist/common/config/index.js +2 -0
- package/dist/common/config/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 +48 -18
- package/dist/infrastructure/external-services/NpmRegistryService.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -292,7 +292,7 @@ pcu -t --interactive # Interactive theme setup
|
|
|
292
292
|
|
|
293
293
|
### Configuration
|
|
294
294
|
|
|
295
|
-
Create a `.pcurc.json` file in your project root:
|
|
295
|
+
Create a `.pcurc.json` file (PCU configuration file) in your project root:
|
|
296
296
|
|
|
297
297
|
```json
|
|
298
298
|
{
|
|
@@ -323,6 +323,100 @@ Create a `.pcurc.json` file in your project root:
|
|
|
323
323
|
}
|
|
324
324
|
```
|
|
325
325
|
|
|
326
|
+
#### Package Filtering Configuration
|
|
327
|
+
|
|
328
|
+
You can also configure package-specific update rules by creating a `.pcurc.json`
|
|
329
|
+
(PCU configuration file) with filtering options:
|
|
330
|
+
|
|
331
|
+
```json
|
|
332
|
+
{
|
|
333
|
+
// Exclude packages you never want to update
|
|
334
|
+
"exclude": ["typescript", "@types/node", "react", "react-dom"],
|
|
335
|
+
|
|
336
|
+
// Only update specific packages (optional - if not specified, all packages are considered)
|
|
337
|
+
"include": ["lodash*", "chalk", "commander"],
|
|
338
|
+
|
|
339
|
+
// Package-specific update rules
|
|
340
|
+
"packageRules": [
|
|
341
|
+
{
|
|
342
|
+
"patterns": ["react", "react-dom"],
|
|
343
|
+
"target": "minor", // Only minor updates for React
|
|
344
|
+
"requireConfirmation": true, // Always ask before updating
|
|
345
|
+
"relatedPackages": ["@types/react", "@types/react-dom"] // Related packages automatically follow same strategy
|
|
346
|
+
},
|
|
347
|
+
{
|
|
348
|
+
"patterns": ["vue"],
|
|
349
|
+
"target": "minor",
|
|
350
|
+
"relatedPackages": ["@vue/compiler-sfc", "@vue/runtime-core"] // Vue ecosystem packages
|
|
351
|
+
},
|
|
352
|
+
{
|
|
353
|
+
"patterns": ["@types/node"],
|
|
354
|
+
"target": "minor", // Conservative updates for Node.js type definitions
|
|
355
|
+
"requireConfirmation": true
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
"patterns": ["@types/*"],
|
|
359
|
+
"target": "latest", // Other type definitions can update more freely
|
|
360
|
+
"autoUpdate": true
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
"patterns": ["eslint*", "prettier"],
|
|
364
|
+
"target": "minor", // Minor updates for dev tools
|
|
365
|
+
"groupUpdate": true // Update related packages together
|
|
366
|
+
}
|
|
367
|
+
],
|
|
368
|
+
|
|
369
|
+
// Security configuration
|
|
370
|
+
"security": {
|
|
371
|
+
"autoFixVulnerabilities": true, // Automatically check and fix security vulnerabilities
|
|
372
|
+
"allowMajorForSecurity": true, // Allow major version upgrades for security fixes
|
|
373
|
+
"notifyOnSecurityUpdate": true // Show notifications on security updates
|
|
374
|
+
},
|
|
375
|
+
|
|
376
|
+
// Advanced configuration
|
|
377
|
+
"advanced": {
|
|
378
|
+
"concurrency": 5, // Number of concurrent network requests (default: 5)
|
|
379
|
+
"timeout": 30000, // Network request timeout in ms (default: 30000)
|
|
380
|
+
"retries": 3, // Number of retries on failure (default: 3)
|
|
381
|
+
"cacheValidityMinutes": 60 // Cache validity period in minutes (default: 60, set to 0 to disable caching)
|
|
382
|
+
},
|
|
383
|
+
|
|
384
|
+
// Monorepo configuration
|
|
385
|
+
"monorepo": {
|
|
386
|
+
"syncVersions": ["react", "react-dom"], // Packages that need version sync across multiple catalogs
|
|
387
|
+
"catalogPriority": ["default", "latest", "react17"] // Catalog priority order
|
|
388
|
+
},
|
|
389
|
+
|
|
390
|
+
// Override defaults
|
|
391
|
+
"defaults": {
|
|
392
|
+
"target": "minor",
|
|
393
|
+
"createBackup": true
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
```
|
|
397
|
+
|
|
398
|
+
**Related Packages Feature**: `relatedPackages` allows related packages to
|
|
399
|
+
automatically follow the same version strategy
|
|
400
|
+
|
|
401
|
+
- When you configure `react` with `target: "minor"`, `@types/react` will
|
|
402
|
+
automatically apply the same strategy
|
|
403
|
+
- Avoid manually duplicating update rules for related packages
|
|
404
|
+
- Ensures version consistency across ecosystem packages
|
|
405
|
+
|
|
406
|
+
**Configuration priority**: relatedPackages > direct pattern matching > CLI
|
|
407
|
+
options > default configuration
|
|
408
|
+
|
|
409
|
+
**Priority Examples**:
|
|
410
|
+
|
|
411
|
+
```
|
|
412
|
+
@types/react → matches react rule's relatedPackages → uses "minor" strategy
|
|
413
|
+
@types/node → matches @types/node specific rule → uses "minor" strategy
|
|
414
|
+
@types/lodash → matches @types/* general rule → uses "latest" strategy
|
|
415
|
+
```
|
|
416
|
+
|
|
417
|
+
**Pattern matching**: Supports glob patterns like `react*`, `@types/*`,
|
|
418
|
+
`eslint*`
|
|
419
|
+
|
|
326
420
|
## 📁 Project Structure
|
|
327
421
|
|
|
328
422
|
This project follows Domain-Driven Design (DDD) principles:
|
package/README.zh-CN.md
CHANGED
|
@@ -285,7 +285,7 @@ pcu -t --interactive # 交互式主题设置
|
|
|
285
285
|
|
|
286
286
|
### 配置
|
|
287
287
|
|
|
288
|
-
在项目根目录创建 `.pcurc.json`
|
|
288
|
+
在项目根目录创建 `.pcurc.json` 文件(PCU配置文件):
|
|
289
289
|
|
|
290
290
|
```json
|
|
291
291
|
{
|
|
@@ -316,6 +316,96 @@ pcu -t --interactive # 交互式主题设置
|
|
|
316
316
|
}
|
|
317
317
|
```
|
|
318
318
|
|
|
319
|
+
#### 包过滤配置
|
|
320
|
+
|
|
321
|
+
您还可以通过创建包含过滤选项的
|
|
322
|
+
`.pcurc.json`(PCU配置文件)来配置特定包的更新规则:
|
|
323
|
+
|
|
324
|
+
```json
|
|
325
|
+
{
|
|
326
|
+
// 排除您永远不想更新的包
|
|
327
|
+
"exclude": ["typescript", "@types/node", "react", "react-dom"],
|
|
328
|
+
|
|
329
|
+
// 仅更新特定包(可选 - 如果不指定,将考虑所有包)
|
|
330
|
+
"include": ["lodash*", "chalk", "commander"],
|
|
331
|
+
|
|
332
|
+
// 特定包的更新规则
|
|
333
|
+
"packageRules": [
|
|
334
|
+
{
|
|
335
|
+
"patterns": ["react", "react-dom"],
|
|
336
|
+
"target": "minor", // React 只进行 minor 更新
|
|
337
|
+
"requireConfirmation": true, // 更新前总是询问
|
|
338
|
+
"relatedPackages": ["@types/react", "@types/react-dom"] // 相关包自动遵循相同策略
|
|
339
|
+
},
|
|
340
|
+
{
|
|
341
|
+
"patterns": ["vue"],
|
|
342
|
+
"target": "minor",
|
|
343
|
+
"relatedPackages": ["@vue/compiler-sfc", "@vue/runtime-core"] // Vue 生态系统包
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
"patterns": ["@types/node"],
|
|
347
|
+
"target": "minor", // Node.js 类型定义保守更新
|
|
348
|
+
"requireConfirmation": true
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
"patterns": ["@types/*"],
|
|
352
|
+
"target": "latest", // 其他类型定义可以自由更新
|
|
353
|
+
"autoUpdate": true
|
|
354
|
+
},
|
|
355
|
+
{
|
|
356
|
+
"patterns": ["eslint*", "prettier"],
|
|
357
|
+
"target": "minor", // 开发工具进行 minor 更新
|
|
358
|
+
"groupUpdate": true // 相关包一起更新
|
|
359
|
+
}
|
|
360
|
+
],
|
|
361
|
+
|
|
362
|
+
// 安全配置
|
|
363
|
+
"security": {
|
|
364
|
+
"autoFixVulnerabilities": true, // 自动检查并修复安全漏洞
|
|
365
|
+
"allowMajorForSecurity": true, // 为安全修复允许主版本升级
|
|
366
|
+
"notifyOnSecurityUpdate": true // 安全更新时显示通知
|
|
367
|
+
},
|
|
368
|
+
|
|
369
|
+
// 高级配置
|
|
370
|
+
"advanced": {
|
|
371
|
+
"concurrency": 5, // 并发网络请求数量(默认: 5)
|
|
372
|
+
"timeout": 30000, // 网络请求超时时间(毫秒,默认: 30000)
|
|
373
|
+
"retries": 3, // 失败重试次数(默认: 3)
|
|
374
|
+
"cacheValidityMinutes": 60 // 缓存有效期(分钟,默认: 60,设为0禁用缓存)
|
|
375
|
+
},
|
|
376
|
+
|
|
377
|
+
// Monorepo 配置
|
|
378
|
+
"monorepo": {
|
|
379
|
+
"syncVersions": ["react", "react-dom"], // 需要在多个 catalog 间同步版本的包
|
|
380
|
+
"catalogPriority": ["default", "latest", "react17"] // catalog 优先级顺序
|
|
381
|
+
},
|
|
382
|
+
|
|
383
|
+
// 覆盖默认设置
|
|
384
|
+
"defaults": {
|
|
385
|
+
"target": "minor",
|
|
386
|
+
"createBackup": true
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
**关联包功能**: `relatedPackages` 允许相关包自动遵循相同的版本策略
|
|
392
|
+
|
|
393
|
+
- 当配置了 `react` 的 `target: "minor"`,`@types/react` 也会自动应用相同策略
|
|
394
|
+
- 避免手动重复配置相关包的更新规则
|
|
395
|
+
- 确保生态系统包的版本一致性
|
|
396
|
+
|
|
397
|
+
**配置优先级**: relatedPackages > 直接pattern匹配 > CLI选项 > 默认配置
|
|
398
|
+
|
|
399
|
+
**优先级示例**:
|
|
400
|
+
|
|
401
|
+
```
|
|
402
|
+
@types/react → 匹配react规则的relatedPackages → 使用"minor"策略
|
|
403
|
+
@types/node → 匹配@types/node专门规则 → 使用"minor"策略
|
|
404
|
+
@types/lodash → 匹配@types/*通用规则 → 使用"latest"策略
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
**模式匹配**: 支持 glob 模式,如 `react*`、`@types/*`、`eslint*`
|
|
408
|
+
|
|
319
409
|
## 📁 项目结构
|
|
320
410
|
|
|
321
411
|
本项目遵循领域驱动设计 (DDD) 原则:
|
|
@@ -63,6 +63,9 @@ export interface PlannedUpdate {
|
|
|
63
63
|
updateType: 'major' | 'minor' | 'patch';
|
|
64
64
|
reason: string;
|
|
65
65
|
affectedPackages: string[];
|
|
66
|
+
requireConfirmation?: boolean;
|
|
67
|
+
autoUpdate?: boolean;
|
|
68
|
+
groupUpdate?: boolean;
|
|
66
69
|
}
|
|
67
70
|
export interface VersionConflict {
|
|
68
71
|
packageName: string;
|
|
@@ -134,6 +137,10 @@ export declare class CatalogUpdateService {
|
|
|
134
137
|
private readonly workspaceRepository;
|
|
135
138
|
private readonly registryService;
|
|
136
139
|
constructor(workspaceRepository: WorkspaceRepository, registryService: NpmRegistryService);
|
|
140
|
+
/**
|
|
141
|
+
* Create a new CatalogUpdateService with advanced configuration
|
|
142
|
+
*/
|
|
143
|
+
static createWithConfig(workspaceRepository: WorkspaceRepository, workspacePath?: string): CatalogUpdateService;
|
|
137
144
|
/**
|
|
138
145
|
* Check for outdated catalog dependencies
|
|
139
146
|
*/
|
|
@@ -150,14 +157,6 @@ export declare class CatalogUpdateService {
|
|
|
150
157
|
* Analyze the impact of updating a specific dependency
|
|
151
158
|
*/
|
|
152
159
|
analyzeImpact(catalogName: string, packageName: string, newVersion: string, workspacePath?: string): Promise<ImpactAnalysis>;
|
|
153
|
-
/**
|
|
154
|
-
* Check if a specific package should be updated based on filters
|
|
155
|
-
*/
|
|
156
|
-
private shouldCheckPackage;
|
|
157
|
-
/**
|
|
158
|
-
* Check if package matches a pattern (simple glob-like matching)
|
|
159
|
-
*/
|
|
160
|
-
private matchesPattern;
|
|
161
160
|
/**
|
|
162
161
|
* Check if a package needs updating
|
|
163
162
|
*/
|
|
@@ -186,5 +185,13 @@ export declare class CatalogUpdateService {
|
|
|
186
185
|
* Generate recommendations based on analysis
|
|
187
186
|
*/
|
|
188
187
|
private generateRecommendations;
|
|
188
|
+
/**
|
|
189
|
+
* Create sync version updates for packages that should be synchronized across catalogs
|
|
190
|
+
*/
|
|
191
|
+
private createSyncVersionUpdates;
|
|
192
|
+
/**
|
|
193
|
+
* Resolve version conflicts using catalog priority
|
|
194
|
+
*/
|
|
195
|
+
private resolveVersionConflict;
|
|
189
196
|
}
|
|
190
197
|
//# sourceMappingURL=CatalogUpdateService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CatalogUpdateService.d.ts","sourceRoot":"","sources":["../../../src/application/services/CatalogUpdateService.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AAGvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8DAA8D,CAAC;
|
|
1
|
+
{"version":3,"file":"CatalogUpdateService.d.ts","sourceRoot":"","sources":["../../../src/application/services/CatalogUpdateService.ts"],"names":[],"mappings":"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"}
|