@aneuhold/core-ts-lib 2.3.10 → 2.3.12
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/CHANGELOG.md +20 -0
- package/lib/services/DateService/DateService.d.ts +15 -0
- package/lib/services/DateService/DateService.d.ts.map +1 -1
- package/lib/services/DateService/DateService.js +20 -0
- package/lib/services/DateService/DateService.js.map +1 -1
- package/lib/services/DateService/DateService.ts +21 -0
- package/lib/services/DependencyService.d.ts +27 -0
- package/lib/services/DependencyService.d.ts.map +1 -1
- package/lib/services/DependencyService.js +91 -0
- package/lib/services/DependencyService.js.map +1 -1
- package/lib/services/DependencyService.ts +119 -0
- package/lib/types/PackageJson.d.ts +1 -0
- package/lib/types/PackageJson.d.ts.map +1 -1
- package/lib/types/PackageJson.ts +1 -0
- package/package.json +11 -8
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,24 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## 🔖 [2.3.12] (2025-12-03)
|
|
9
|
+
|
|
10
|
+
### ✅ Added
|
|
11
|
+
|
|
12
|
+
- Added `DateService.dateReviver` for automatic ISO date string parsing in JSON responses.
|
|
13
|
+
- Added unit tests for `dateReviver` covering date parsing and edge cases.
|
|
14
|
+
|
|
15
|
+
### 🏗️ Changed
|
|
16
|
+
|
|
17
|
+
- Updated development dependencies: `@types/node`, `nodemon`, `prettier`, `rimraf`, and `vitest` for compatibility.
|
|
18
|
+
|
|
19
|
+
## 🔖 [2.3.11] (2025-11-23)
|
|
20
|
+
|
|
21
|
+
### ✅ Added
|
|
22
|
+
|
|
23
|
+
- Added `propagatePackageVersion` and `validatePackageDependents` utilities to `DependencyService` for automated version propagation and validation across workspace packages.
|
|
24
|
+
- Updated type definitions for `PackageJson` to include `scripts` property.
|
|
25
|
+
|
|
8
26
|
## 🔖 [2.3.10] (2025-11-09)
|
|
9
27
|
|
|
10
28
|
### 🏗️ Changed
|
|
@@ -127,6 +145,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
|
127
145
|
|
|
128
146
|
<!-- Link References -->
|
|
129
147
|
|
|
148
|
+
[2.3.12]: https://github.com/aneuhold/ts-libs/compare/core-ts-lib-v2.3.11...core-ts-lib-v2.3.12
|
|
149
|
+
[2.3.11]: https://github.com/aneuhold/ts-libs/compare/core-ts-lib-v2.3.10...core-ts-lib-v2.3.11
|
|
130
150
|
[2.3.10]: https://github.com/aneuhold/ts-libs/compare/core-ts-lib-v2.3.9...core-ts-lib-v2.3.10
|
|
131
151
|
[2.3.9]: https://github.com/aneuhold/ts-libs/compare/core-ts-lib-v2.3.8...core-ts-lib-v2.3.9
|
|
132
152
|
[2.3.8]: https://github.com/aneuhold/ts-libs/compare/core-ts-lib-v2.3.7...core-ts-lib-v2.3.8
|
|
@@ -138,5 +138,20 @@ export default class DateService {
|
|
|
138
138
|
* @returns True if they are on the same day, false otherwise.
|
|
139
139
|
*/
|
|
140
140
|
static datesAreOnSameDay(first: Date, second: Date): boolean;
|
|
141
|
+
/**
|
|
142
|
+
* Reviver function for JSON.parse to automatically convert ISO date strings
|
|
143
|
+
* back to Date objects.
|
|
144
|
+
*
|
|
145
|
+
* This follows the signature used by JSON.parse for reviver functions.
|
|
146
|
+
*
|
|
147
|
+
* @example
|
|
148
|
+
* ```typescript
|
|
149
|
+
* const parsed = JSON.parse(jsonString, DateService.dateReviver);
|
|
150
|
+
* ```
|
|
151
|
+
*
|
|
152
|
+
* @param _key - The key of the property being parsed. (Not actually used.)
|
|
153
|
+
* @param value - The value of the property being parsed.
|
|
154
|
+
*/
|
|
155
|
+
static dateReviver(this: void, _key: string, value: unknown): unknown;
|
|
141
156
|
}
|
|
142
157
|
//# sourceMappingURL=DateService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateService.d.ts","sourceRoot":"","sources":["../../../src/services/DateService/DateService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,OAAO,CAAC,MAAM,CAAC,aAAa,CAIzB;IAEH,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAM7B;IAEH;;;;;;OAMG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAO5C;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAIvC;;;;;OAKG;IACH,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAIxC;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAI5C;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO;IAU7F;;;;;;OAMG;IACH,MAAM,CAAC,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAS/C;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAczC;;;;;OAKG;IACH,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAK7C;;;;;;OAMG;IACH,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ3D;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI;IA2B5F;;;;;;;;OAQG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAM9C;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAMlD;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhD;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMhD;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAO1C;;;;;;OAMG;IACH,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,OAAO;
|
|
1
|
+
{"version":3,"file":"DateService.d.ts","sourceRoot":"","sources":["../../../src/services/DateService/DateService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,OAAO,CAAC,MAAM,CAAC,aAAa,CAIzB;IAEH,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAM7B;IAEH;;;;;;OAMG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAO5C;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAIvC;;;;;OAKG;IACH,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAIxC;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAI5C;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO;IAU7F;;;;;;OAMG;IACH,MAAM,CAAC,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAS/C;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAczC;;;;;OAKG;IACH,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAK7C;;;;;;OAMG;IACH,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ3D;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI;IA2B5F;;;;;;;;OAQG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAM9C;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAMlD;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhD;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMhD;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAO1C;;;;;;OAMG;IACH,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,OAAO;IAQ5D;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO;CAMtE"}
|
|
@@ -241,5 +241,25 @@ export default class DateService {
|
|
|
241
241
|
first.getMonth() === second.getMonth() &&
|
|
242
242
|
first.getDate() === second.getDate());
|
|
243
243
|
}
|
|
244
|
+
/**
|
|
245
|
+
* Reviver function for JSON.parse to automatically convert ISO date strings
|
|
246
|
+
* back to Date objects.
|
|
247
|
+
*
|
|
248
|
+
* This follows the signature used by JSON.parse for reviver functions.
|
|
249
|
+
*
|
|
250
|
+
* @example
|
|
251
|
+
* ```typescript
|
|
252
|
+
* const parsed = JSON.parse(jsonString, DateService.dateReviver);
|
|
253
|
+
* ```
|
|
254
|
+
*
|
|
255
|
+
* @param _key - The key of the property being parsed. (Not actually used.)
|
|
256
|
+
* @param value - The value of the property being parsed.
|
|
257
|
+
*/
|
|
258
|
+
static dateReviver(_key, value) {
|
|
259
|
+
if (typeof value === 'string' && /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z$/.test(value)) {
|
|
260
|
+
return new Date(value);
|
|
261
|
+
}
|
|
262
|
+
return value;
|
|
263
|
+
}
|
|
244
264
|
}
|
|
245
265
|
//# sourceMappingURL=DateService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateService.js","sourceRoot":"","sources":["../../../src/services/DateService/DateService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DateService.js","sourceRoot":"","sources":["../../../src/services/DateService/DateService.ts"],"names":[],"mappings":"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"}
|
|
@@ -262,4 +262,25 @@ export default class DateService {
|
|
|
262
262
|
first.getDate() === second.getDate()
|
|
263
263
|
);
|
|
264
264
|
}
|
|
265
|
+
|
|
266
|
+
/**
|
|
267
|
+
* Reviver function for JSON.parse to automatically convert ISO date strings
|
|
268
|
+
* back to Date objects.
|
|
269
|
+
*
|
|
270
|
+
* This follows the signature used by JSON.parse for reviver functions.
|
|
271
|
+
*
|
|
272
|
+
* @example
|
|
273
|
+
* ```typescript
|
|
274
|
+
* const parsed = JSON.parse(jsonString, DateService.dateReviver);
|
|
275
|
+
* ```
|
|
276
|
+
*
|
|
277
|
+
* @param _key - The key of the property being parsed. (Not actually used.)
|
|
278
|
+
* @param value - The value of the property being parsed.
|
|
279
|
+
*/
|
|
280
|
+
static dateReviver(this: void, _key: string, value: unknown): unknown {
|
|
281
|
+
if (typeof value === 'string' && /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z$/.test(value)) {
|
|
282
|
+
return new Date(value);
|
|
283
|
+
}
|
|
284
|
+
return value;
|
|
285
|
+
}
|
|
265
286
|
}
|
|
@@ -26,5 +26,32 @@ export default class DependencyService {
|
|
|
26
26
|
* (e.g., "../") or absolute. Defaults to current working directory.
|
|
27
27
|
*/
|
|
28
28
|
static getChildPackageJsons(searchDirectory?: string): Promise<PackageJsonMap>;
|
|
29
|
+
/**
|
|
30
|
+
* Propagates the version of a specific package to all other packages in the workspace
|
|
31
|
+
* that depend on it.
|
|
32
|
+
*
|
|
33
|
+
* @param packageName The name of the package whose version should be propagated
|
|
34
|
+
* @param version The version to propagate
|
|
35
|
+
* @param workspaceRoot Optional workspace root path. Defaults to finding pnpm-workspace.yaml up the tree.
|
|
36
|
+
*/
|
|
37
|
+
static propagatePackageVersion(packageName: string, version: string, workspaceRoot?: string): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* Validates that all other packages in the workspace that depend on the specified package
|
|
40
|
+
* are using the correct version.
|
|
41
|
+
*
|
|
42
|
+
* @param packageName The name of the package to validate dependents for
|
|
43
|
+
* @param version The expected version
|
|
44
|
+
* @param workspaceRoot Optional workspace root path. Defaults to finding pnpm-workspace.yaml up the tree.
|
|
45
|
+
*/
|
|
46
|
+
static validatePackageDependents(packageName: string, version: string, workspaceRoot?: string): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Internal helper to process dependents of a package, either updating them or validating them.
|
|
49
|
+
*
|
|
50
|
+
* @param packageName The name of the package to process dependents for
|
|
51
|
+
* @param version The version to use for update or validation
|
|
52
|
+
* @param mode Whether to update the dependents or just validate them
|
|
53
|
+
* @param workspaceRoot Optional workspace root path
|
|
54
|
+
*/
|
|
55
|
+
private static processPackageDependents;
|
|
29
56
|
}
|
|
30
57
|
//# sourceMappingURL=DependencyService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DependencyService.d.ts","sourceRoot":"","sources":["../../src/services/DependencyService.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAKtD;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC;;;;OAIG;WACU,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDrD;;;;;OAKG;WACU,WAAW,CAAC,WAAW,GAAE,WAA+B,GAAG,OAAO,CAAC,IAAI,CAAC;IAuCrF;;;;;;OAMG;WACU,oBAAoB,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"DependencyService.d.ts","sourceRoot":"","sources":["../../src/services/DependencyService.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAKtD;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC;;;;OAIG;WACU,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDrD;;;;;OAKG;WACU,WAAW,CAAC,WAAW,GAAE,WAA+B,GAAG,OAAO,CAAC,IAAI,CAAC;IAuCrF;;;;;;OAMG;WACU,oBAAoB,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAwCpF;;;;;;;OAOG;WACU,uBAAuB,CAClC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC;IAIhB;;;;;;;OAOG;WACU,yBAAyB,CACpC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC;IAIhB;;;;;;;OAOG;mBACkB,wBAAwB;CA8E9C"}
|
|
@@ -136,5 +136,96 @@ export default class DependencyService {
|
|
|
136
136
|
}));
|
|
137
137
|
return childPackages;
|
|
138
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* Propagates the version of a specific package to all other packages in the workspace
|
|
141
|
+
* that depend on it.
|
|
142
|
+
*
|
|
143
|
+
* @param packageName The name of the package whose version should be propagated
|
|
144
|
+
* @param version The version to propagate
|
|
145
|
+
* @param workspaceRoot Optional workspace root path. Defaults to finding pnpm-workspace.yaml up the tree.
|
|
146
|
+
*/
|
|
147
|
+
static async propagatePackageVersion(packageName, version, workspaceRoot) {
|
|
148
|
+
await this.processPackageDependents(packageName, version, 'update', workspaceRoot);
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Validates that all other packages in the workspace that depend on the specified package
|
|
152
|
+
* are using the correct version.
|
|
153
|
+
*
|
|
154
|
+
* @param packageName The name of the package to validate dependents for
|
|
155
|
+
* @param version The expected version
|
|
156
|
+
* @param workspaceRoot Optional workspace root path. Defaults to finding pnpm-workspace.yaml up the tree.
|
|
157
|
+
*/
|
|
158
|
+
static async validatePackageDependents(packageName, version, workspaceRoot) {
|
|
159
|
+
await this.processPackageDependents(packageName, version, 'validate', workspaceRoot);
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Internal helper to process dependents of a package, either updating them or validating them.
|
|
163
|
+
*
|
|
164
|
+
* @param packageName The name of the package to process dependents for
|
|
165
|
+
* @param version The version to use for update or validation
|
|
166
|
+
* @param mode Whether to update the dependents or just validate them
|
|
167
|
+
* @param workspaceRoot Optional workspace root path
|
|
168
|
+
*/
|
|
169
|
+
static async processPackageDependents(packageName, version, mode, workspaceRoot) {
|
|
170
|
+
const actionName = mode === 'update' ? 'Propagating' : 'Validating';
|
|
171
|
+
DR.logger.info(`${actionName} version ${version} for ${packageName}...`);
|
|
172
|
+
const pnpmWorkspacePath = await FileSystemService.findFileUpTree(workspaceRoot || process.cwd(), 'pnpm-workspace.yaml');
|
|
173
|
+
if (!pnpmWorkspacePath) {
|
|
174
|
+
throw new Error('Could not find pnpm-workspace.yaml');
|
|
175
|
+
}
|
|
176
|
+
const rootDir = path.dirname(pnpmWorkspacePath);
|
|
177
|
+
const childPackages = await this.getChildPackageJsons(rootDir);
|
|
178
|
+
let updatedCount = 0;
|
|
179
|
+
let errorCount = 0;
|
|
180
|
+
await Promise.all(Object.values(childPackages).map(async (childPackageInfo) => {
|
|
181
|
+
const { packageJsonContents, packageJsonPath } = childPackageInfo;
|
|
182
|
+
let modified = false;
|
|
183
|
+
const processDeps = (type, deps) => {
|
|
184
|
+
if (!deps)
|
|
185
|
+
return;
|
|
186
|
+
if (deps[packageName]) {
|
|
187
|
+
const currentDep = deps[packageName];
|
|
188
|
+
const newDep = `^${version}`;
|
|
189
|
+
if (currentDep !== newDep) {
|
|
190
|
+
if (mode === 'update') {
|
|
191
|
+
DR.logger.info(` Updating ${packageJsonContents.name}: ${packageName} ${currentDep} -> ${newDep}`);
|
|
192
|
+
deps[packageName] = newDep;
|
|
193
|
+
modified = true;
|
|
194
|
+
}
|
|
195
|
+
else {
|
|
196
|
+
DR.logger.error(`${packageJsonContents.name} has invalid ${type} for ${packageName}: found "${currentDep}", expected "${newDep}"`);
|
|
197
|
+
errorCount++;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
processDeps('dependencies', packageJsonContents.dependencies);
|
|
203
|
+
processDeps('devDependencies', packageJsonContents.devDependencies);
|
|
204
|
+
processDeps('peerDependencies', packageJsonContents.peerDependencies);
|
|
205
|
+
processDeps('optionalDependencies', packageJsonContents.optionalDependencies);
|
|
206
|
+
// TBH, I don't know why ESLint is saying `modified` is only true. That isn't the case.
|
|
207
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
208
|
+
if (modified && mode === 'update') {
|
|
209
|
+
await writeFile(packageJsonPath, JSON.stringify(packageJsonContents, null, 2));
|
|
210
|
+
updatedCount++;
|
|
211
|
+
}
|
|
212
|
+
}));
|
|
213
|
+
if (mode === 'update') {
|
|
214
|
+
if (updatedCount > 0) {
|
|
215
|
+
DR.logger.success(`Updated ${updatedCount} packages.`);
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
DR.logger.info(`No packages needed updating.`);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
else {
|
|
222
|
+
if (errorCount > 0) {
|
|
223
|
+
throw new Error(`Found ${errorCount} dependency version mismatches for ${packageName}.`);
|
|
224
|
+
}
|
|
225
|
+
else {
|
|
226
|
+
DR.logger.success(`All dependents of ${packageName} are using the correct version.`);
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
139
230
|
}
|
|
140
231
|
//# sourceMappingURL=DependencyService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DependencyService.js","sourceRoot":"","sources":["../../src/services/DependencyService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DependencyService.js","sourceRoot":"","sources":["../../src/services/DependencyService.ts"],"names":[],"mappings":"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"}
|
|
@@ -160,4 +160,123 @@ export default class DependencyService {
|
|
|
160
160
|
);
|
|
161
161
|
return childPackages;
|
|
162
162
|
}
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* Propagates the version of a specific package to all other packages in the workspace
|
|
166
|
+
* that depend on it.
|
|
167
|
+
*
|
|
168
|
+
* @param packageName The name of the package whose version should be propagated
|
|
169
|
+
* @param version The version to propagate
|
|
170
|
+
* @param workspaceRoot Optional workspace root path. Defaults to finding pnpm-workspace.yaml up the tree.
|
|
171
|
+
*/
|
|
172
|
+
static async propagatePackageVersion(
|
|
173
|
+
packageName: string,
|
|
174
|
+
version: string,
|
|
175
|
+
workspaceRoot?: string
|
|
176
|
+
): Promise<void> {
|
|
177
|
+
await this.processPackageDependents(packageName, version, 'update', workspaceRoot);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* Validates that all other packages in the workspace that depend on the specified package
|
|
182
|
+
* are using the correct version.
|
|
183
|
+
*
|
|
184
|
+
* @param packageName The name of the package to validate dependents for
|
|
185
|
+
* @param version The expected version
|
|
186
|
+
* @param workspaceRoot Optional workspace root path. Defaults to finding pnpm-workspace.yaml up the tree.
|
|
187
|
+
*/
|
|
188
|
+
static async validatePackageDependents(
|
|
189
|
+
packageName: string,
|
|
190
|
+
version: string,
|
|
191
|
+
workspaceRoot?: string
|
|
192
|
+
): Promise<void> {
|
|
193
|
+
await this.processPackageDependents(packageName, version, 'validate', workspaceRoot);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* Internal helper to process dependents of a package, either updating them or validating them.
|
|
198
|
+
*
|
|
199
|
+
* @param packageName The name of the package to process dependents for
|
|
200
|
+
* @param version The version to use for update or validation
|
|
201
|
+
* @param mode Whether to update the dependents or just validate them
|
|
202
|
+
* @param workspaceRoot Optional workspace root path
|
|
203
|
+
*/
|
|
204
|
+
private static async processPackageDependents(
|
|
205
|
+
packageName: string,
|
|
206
|
+
version: string,
|
|
207
|
+
mode: 'update' | 'validate',
|
|
208
|
+
workspaceRoot?: string
|
|
209
|
+
): Promise<void> {
|
|
210
|
+
const actionName = mode === 'update' ? 'Propagating' : 'Validating';
|
|
211
|
+
DR.logger.info(`${actionName} version ${version} for ${packageName}...`);
|
|
212
|
+
|
|
213
|
+
const pnpmWorkspacePath = await FileSystemService.findFileUpTree(
|
|
214
|
+
workspaceRoot || process.cwd(),
|
|
215
|
+
'pnpm-workspace.yaml'
|
|
216
|
+
);
|
|
217
|
+
|
|
218
|
+
if (!pnpmWorkspacePath) {
|
|
219
|
+
throw new Error('Could not find pnpm-workspace.yaml');
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
const rootDir = path.dirname(pnpmWorkspacePath);
|
|
223
|
+
const childPackages = await this.getChildPackageJsons(rootDir);
|
|
224
|
+
let updatedCount = 0;
|
|
225
|
+
let errorCount = 0;
|
|
226
|
+
|
|
227
|
+
await Promise.all(
|
|
228
|
+
Object.values(childPackages).map(async (childPackageInfo) => {
|
|
229
|
+
const { packageJsonContents, packageJsonPath } = childPackageInfo;
|
|
230
|
+
let modified = false;
|
|
231
|
+
|
|
232
|
+
const processDeps = (type: string, deps: Record<string, string> | undefined) => {
|
|
233
|
+
if (!deps) return;
|
|
234
|
+
if (deps[packageName]) {
|
|
235
|
+
const currentDep = deps[packageName];
|
|
236
|
+
const newDep = `^${version}`;
|
|
237
|
+
if (currentDep !== newDep) {
|
|
238
|
+
if (mode === 'update') {
|
|
239
|
+
DR.logger.info(
|
|
240
|
+
` Updating ${packageJsonContents.name}: ${packageName} ${currentDep} -> ${newDep}`
|
|
241
|
+
);
|
|
242
|
+
deps[packageName] = newDep;
|
|
243
|
+
modified = true;
|
|
244
|
+
} else {
|
|
245
|
+
DR.logger.error(
|
|
246
|
+
`${packageJsonContents.name} has invalid ${type} for ${packageName}: found "${currentDep}", expected "${newDep}"`
|
|
247
|
+
);
|
|
248
|
+
errorCount++;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
};
|
|
253
|
+
|
|
254
|
+
processDeps('dependencies', packageJsonContents.dependencies);
|
|
255
|
+
processDeps('devDependencies', packageJsonContents.devDependencies);
|
|
256
|
+
processDeps('peerDependencies', packageJsonContents.peerDependencies);
|
|
257
|
+
processDeps('optionalDependencies', packageJsonContents.optionalDependencies);
|
|
258
|
+
|
|
259
|
+
// TBH, I don't know why ESLint is saying `modified` is only true. That isn't the case.
|
|
260
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
261
|
+
if (modified && mode === 'update') {
|
|
262
|
+
await writeFile(packageJsonPath, JSON.stringify(packageJsonContents, null, 2));
|
|
263
|
+
updatedCount++;
|
|
264
|
+
}
|
|
265
|
+
})
|
|
266
|
+
);
|
|
267
|
+
|
|
268
|
+
if (mode === 'update') {
|
|
269
|
+
if (updatedCount > 0) {
|
|
270
|
+
DR.logger.success(`Updated ${updatedCount} packages.`);
|
|
271
|
+
} else {
|
|
272
|
+
DR.logger.info(`No packages needed updating.`);
|
|
273
|
+
}
|
|
274
|
+
} else {
|
|
275
|
+
if (errorCount > 0) {
|
|
276
|
+
throw new Error(`Found ${errorCount} dependency version mismatches for ${packageName}.`);
|
|
277
|
+
} else {
|
|
278
|
+
DR.logger.success(`All dependents of ${packageName} are using the correct version.`);
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
}
|
|
163
282
|
}
|
|
@@ -6,6 +6,7 @@ import type { JsonWithVersionProperty } from './JsonWithVersionProperty.js';
|
|
|
6
6
|
export interface PackageJson extends JsonWithVersionProperty {
|
|
7
7
|
name: string;
|
|
8
8
|
packageManager?: string;
|
|
9
|
+
scripts?: Record<string, string>;
|
|
9
10
|
dependencies?: Record<string, string>;
|
|
10
11
|
devDependencies?: Record<string, string>;
|
|
11
12
|
peerDependencies?: Record<string, string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PackageJson.d.ts","sourceRoot":"","sources":["../../src/types/PackageJson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAE5E;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,uBAAuB;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/C"}
|
|
1
|
+
{"version":3,"file":"PackageJson.d.ts","sourceRoot":"","sources":["../../src/types/PackageJson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAE5E;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,uBAAuB;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/C"}
|
package/lib/types/PackageJson.ts
CHANGED
|
@@ -7,6 +7,7 @@ import type { JsonWithVersionProperty } from './JsonWithVersionProperty.js';
|
|
|
7
7
|
export interface PackageJson extends JsonWithVersionProperty {
|
|
8
8
|
name: string;
|
|
9
9
|
packageManager?: string;
|
|
10
|
+
scripts?: Record<string, string>;
|
|
10
11
|
dependencies?: Record<string, string>;
|
|
11
12
|
devDependencies?: Record<string, string>;
|
|
12
13
|
peerDependencies?: Record<string, string>;
|
package/package.json
CHANGED
|
@@ -2,18 +2,21 @@
|
|
|
2
2
|
"name": "@aneuhold/core-ts-lib",
|
|
3
3
|
"author": "Anton G. Neuhold Jr.",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"version": "2.3.
|
|
5
|
+
"version": "2.3.12",
|
|
6
6
|
"description": "A core library for all of my TypeScript projects",
|
|
7
7
|
"packageManager": "pnpm@10.12.1",
|
|
8
8
|
"type": "module",
|
|
9
9
|
"scripts": {
|
|
10
|
-
"build": "rimraf lib &&
|
|
11
|
-
"
|
|
10
|
+
"build": "rimraf lib && pnpm build:withoutClean",
|
|
11
|
+
"build:withoutClean": "tsc --project tsconfig.build.json && tsx ./scripts/copyTsFiles.ts && pnpm propagateVersion",
|
|
12
|
+
"propagateVersion": "tsx ../../scripts/propagateVersion.ts",
|
|
13
|
+
"watch": "nodemon --ignore lib/ -e ts --exec \"pnpm build:withoutClean\"",
|
|
12
14
|
"lint": "eslint",
|
|
13
15
|
"test": "vitest run",
|
|
14
16
|
"preparePkg": "tsx ./scripts/bumpVersionAndInitializeChangelog.ts",
|
|
15
17
|
"jsr:validate": "tsx ./scripts/validateJsrPublish.ts",
|
|
16
18
|
"npm:validate": "tsx ./scripts/validateNpmPublish.ts",
|
|
19
|
+
"versionPropagation:validate": "tsx ../../scripts/validatePackageVersions.ts",
|
|
17
20
|
"checkAll": "pnpm build && pnpm lint && pnpm test && pnpm jsr:validate",
|
|
18
21
|
"jsr:publish": "tsx ./scripts/publishJsr.ts",
|
|
19
22
|
"npm:publish": "npm publish --access public",
|
|
@@ -64,14 +67,14 @@
|
|
|
64
67
|
"Node.js"
|
|
65
68
|
],
|
|
66
69
|
"devDependencies": {
|
|
67
|
-
"@types/node": "^24.10.
|
|
70
|
+
"@types/node": "^24.10.1",
|
|
68
71
|
"eslint": "^9.39.1",
|
|
69
72
|
"jsr": "^0.13.5",
|
|
70
|
-
"nodemon": "^3.1.
|
|
71
|
-
"prettier": "^3.
|
|
72
|
-
"rimraf": "^6.1.
|
|
73
|
+
"nodemon": "^3.1.11",
|
|
74
|
+
"prettier": "^3.7.2",
|
|
75
|
+
"rimraf": "^6.1.2",
|
|
73
76
|
"tsx": "^4.20.6",
|
|
74
77
|
"typescript": "~5.9.3",
|
|
75
|
-
"vitest": "^4.0.
|
|
78
|
+
"vitest": "^4.0.14"
|
|
76
79
|
}
|
|
77
80
|
}
|