diff --git a/package.json b/package.json index a1c1d51..763d5b0 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,8 @@ "scripts": { "test": "turbo run --concurrency=1 --ui=stream test", "build": "turbo run --concurrency=1 --ui=stream build", - "knip": "knip" + "knip": "knip", + "sync-versions": "node ./scripts/sync-versions.mjs" }, "devDependencies": { "@types/node": "^24.10.1", diff --git a/packages/api-key/CHANGELOG.md b/packages/api-key/CHANGELOG.md index ed90a1f..109a00d 100644 --- a/packages/api-key/CHANGELOG.md +++ b/packages/api-key/CHANGELOG.md @@ -1,5 +1,11 @@ # @lowerdeck/api-key +## 1.0.3 + +### Patch Changes + +- bf44aff: Bump to latest version + ## 1.0.2 ### Patch Changes diff --git a/packages/api-key/package.json b/packages/api-key/package.json index f004858..df25f0d 100644 --- a/packages/api-key/package.json +++ b/packages/api-key/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/api-key", - "version": "1.0.2", + "version": "1.0.3", "publishConfig": { "access": "public" }, @@ -36,6 +36,6 @@ "vitest": "^3.2.4" }, "dependencies": { - "@lowerdeck/id": "^1.0.6" + "@lowerdeck/id": "^1.0.8" } } diff --git a/packages/cache/CHANGELOG.md b/packages/cache/CHANGELOG.md index 6f126c0..59a4f7c 100644 --- a/packages/cache/CHANGELOG.md +++ b/packages/cache/CHANGELOG.md @@ -1,5 +1,13 @@ # @lowerdeck/cache +## 1.0.2 + +### Patch Changes + +- bf44aff: Bump to latest version +- Updated dependencies [bf44aff] + - @lowerdeck/redis@1.0.6 + ## 1.0.1 ### Patch Changes diff --git a/packages/cache/package.json b/packages/cache/package.json index 17a6c89..87d463a 100644 --- a/packages/cache/package.json +++ b/packages/cache/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/cache", - "version": "1.0.1", + "version": "1.0.2", "publishConfig": { "access": "public" }, @@ -30,7 +30,7 @@ "build": "rm -rf ./dist && microbundle" }, "dependencies": { - "@lowerdeck/redis": "^1.0.4", + "@lowerdeck/redis": "^1.0.6", "@lowerdeck/sentry": "^1.0.2", "lru-cache": "^11.2.4", "superjson": "^2.2.6" diff --git a/packages/cron/CHANGELOG.md b/packages/cron/CHANGELOG.md index bc07078..c5cd7a6 100644 --- a/packages/cron/CHANGELOG.md +++ b/packages/cron/CHANGELOG.md @@ -1,5 +1,15 @@ # @lowerdeck/cron +## 1.1.1 + +### Patch Changes + +- bf44aff: Bump to latest version +- Updated dependencies [bf44aff] + - @lowerdeck/execution-context@1.1.1 + - @lowerdeck/queue@1.0.9 + - @lowerdeck/redis@1.0.6 + ## 1.1.0 ### Minor Changes diff --git a/packages/cron/package.json b/packages/cron/package.json index 1589df4..ae87a30 100644 --- a/packages/cron/package.json +++ b/packages/cron/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/cron", - "version": "1.1.0", + "version": "1.1.1", "publishConfig": { "access": "public" }, @@ -30,10 +30,10 @@ "build": "rm -rf ./dist && microbundle" }, "dependencies": { - "@lowerdeck/execution-context": "^1.1.0", - "@lowerdeck/id": "^1.0.6", - "@lowerdeck/queue": "^1.0.7", - "@lowerdeck/redis": "^1.0.4", + "@lowerdeck/execution-context": "^1.1.1", + "@lowerdeck/id": "^1.0.8", + "@lowerdeck/queue": "^1.0.9", + "@lowerdeck/redis": "^1.0.6", "@lowerdeck/sentry": "^1.0.2", "bullmq": "^5.34.3" }, diff --git a/packages/encryption/CHANGELOG.md b/packages/encryption/CHANGELOG.md index 4592105..463b549 100644 --- a/packages/encryption/CHANGELOG.md +++ b/packages/encryption/CHANGELOG.md @@ -1,5 +1,11 @@ # @lowerdeck/encryption +## 1.0.8 + +### Patch Changes + +- bf44aff: Bump to latest version + ## 1.0.7 ### Patch Changes diff --git a/packages/encryption/package.json b/packages/encryption/package.json index e89fee4..0ce79c5 100644 --- a/packages/encryption/package.json +++ b/packages/encryption/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/encryption", - "version": "1.0.7", + "version": "1.0.8", "publishConfig": { "access": "public" }, @@ -31,7 +31,7 @@ }, "dependencies": { "@lowerdeck/base62": "^1.0.4", - "@lowerdeck/id": "^1.0.6", + "@lowerdeck/id": "^1.0.8", "base-x": "^5.0.0" }, "devDependencies": { diff --git a/packages/env/CHANGELOG.md b/packages/env/CHANGELOG.md index 3778e36..e4905ea 100644 --- a/packages/env/CHANGELOG.md +++ b/packages/env/CHANGELOG.md @@ -1,5 +1,14 @@ # @lowerdeck/env +## 1.0.6 + +### Patch Changes + +- bf44aff: Bump to latest version +- Updated dependencies [bf44aff] +- Updated dependencies [bf44aff] + - @lowerdeck/validation@1.0.10 + ## 1.0.5 ### Patch Changes diff --git a/packages/env/package.json b/packages/env/package.json index 8a2b295..f1db610 100644 --- a/packages/env/package.json +++ b/packages/env/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/env", - "version": "1.0.5", + "version": "1.0.6", "publishConfig": { "access": "public" }, @@ -30,7 +30,7 @@ "build": "rm -rf ./dist && microbundle" }, "dependencies": { - "@lowerdeck/validation": "^1.0.8" + "@lowerdeck/validation": "^1.0.10" }, "devDependencies": { "microbundle": "^0.15.1", @@ -38,4 +38,4 @@ "typescript": "5.8.2", "vitest": "^3.1.2" } -} \ No newline at end of file +} diff --git a/packages/error/CHANGELOG.md b/packages/error/CHANGELOG.md index a3248aa..d8b4207 100644 --- a/packages/error/CHANGELOG.md +++ b/packages/error/CHANGELOG.md @@ -1,5 +1,14 @@ # @lowerdeck/error +## 1.2.3 + +### Patch Changes + +- bf44aff: Bump to latest version +- Updated dependencies [bf44aff] +- Updated dependencies [bf44aff] + - @lowerdeck/validation@1.0.10 + ## 1.2.2 ### Patch Changes diff --git a/packages/error/package.json b/packages/error/package.json index 1c3281e..f8b45f8 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/error", - "version": "1.2.2", + "version": "1.2.3", "publishConfig": { "access": "public" }, @@ -31,7 +31,7 @@ }, "dependencies": { "@lowerdeck/case": "^1.0.9", - "@lowerdeck/validation": "^1.0.8" + "@lowerdeck/validation": "^1.0.10" }, "devDependencies": { "microbundle": "^0.15.1", @@ -39,4 +39,4 @@ "typescript": "5.8.2", "vitest": "^3.1.2" } -} \ No newline at end of file +} diff --git a/packages/execution-context/CHANGELOG.md b/packages/execution-context/CHANGELOG.md index 09f97c1..77ce509 100644 --- a/packages/execution-context/CHANGELOG.md +++ b/packages/execution-context/CHANGELOG.md @@ -1,5 +1,11 @@ # @lowerdeck/execution-context +## 1.1.1 + +### Patch Changes + +- bf44aff: Bump to latest version + ## 1.1.0 ### Minor Changes diff --git a/packages/execution-context/package.json b/packages/execution-context/package.json index 635318c..b8ad694 100644 --- a/packages/execution-context/package.json +++ b/packages/execution-context/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/execution-context", - "version": "1.1.0", + "version": "1.1.1", "publishConfig": { "access": "public" }, @@ -31,7 +31,7 @@ }, "dependencies": { "@opentelemetry/api": "^1.9.0", - "@lowerdeck/id": "^1.0.6", + "@lowerdeck/id": "^1.0.8", "@lowerdeck/sentry": "^1.0.2" }, "devDependencies": { diff --git a/packages/hono/CHANGELOG.md b/packages/hono/CHANGELOG.md index 45e5222..b73b112 100644 --- a/packages/hono/CHANGELOG.md +++ b/packages/hono/CHANGELOG.md @@ -1,5 +1,15 @@ # @lowerdeck/hono +## 1.0.10 + +### Patch Changes + +- bf44aff: Bump to latest version +- Updated dependencies [bf44aff] +- Updated dependencies [bf44aff] + - @lowerdeck/validation@1.0.10 + - @lowerdeck/error@1.2.3 + ## 1.0.9 ### Patch Changes diff --git a/packages/hono/package.json b/packages/hono/package.json index c7991f2..e5904a9 100644 --- a/packages/hono/package.json +++ b/packages/hono/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/hono", - "version": "1.0.9", + "version": "1.0.10", "publishConfig": { "access": "public" }, @@ -32,8 +32,8 @@ "dependencies": { "hono": "^4.5.5", "@lowerdeck/forwarded-for": "^1.0.4", - "@lowerdeck/validation": "^1.0.8", - "@lowerdeck/error": "^1.2.2" + "@lowerdeck/validation": "^1.0.10", + "@lowerdeck/error": "^1.2.3" }, "devDependencies": { "microbundle": "^0.15.1", @@ -41,4 +41,4 @@ "typescript": "5.8.2", "vitest": "^3.1.2" } -} \ No newline at end of file +} diff --git a/packages/lock/CHANGELOG.md b/packages/lock/CHANGELOG.md index c5e9083..94eeb51 100644 --- a/packages/lock/CHANGELOG.md +++ b/packages/lock/CHANGELOG.md @@ -1,5 +1,13 @@ # @lowerdeck/lock +## 1.0.6 + +### Patch Changes + +- bf44aff: Bump to latest version +- Updated dependencies [bf44aff] + - @lowerdeck/redis@1.0.6 + ## 1.0.5 ### Patch Changes diff --git a/packages/lock/package.json b/packages/lock/package.json index 828e382..0b465e8 100644 --- a/packages/lock/package.json +++ b/packages/lock/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/lock", - "version": "1.0.5", + "version": "1.0.6", "publishConfig": { "access": "public" }, @@ -30,7 +30,7 @@ "build": "rm -rf ./dist && microbundle" }, "dependencies": { - "@lowerdeck/redis": "^1.0.4", + "@lowerdeck/redis": "^1.0.6", "@lowerdeck/delay": "^1.0.4", "@types/bun": "^1.2.11", "ioredis": "^5.4.1", diff --git a/packages/pagination/CHANGELOG.md b/packages/pagination/CHANGELOG.md index 71d47a9..83b020b 100644 --- a/packages/pagination/CHANGELOG.md +++ b/packages/pagination/CHANGELOG.md @@ -1,5 +1,15 @@ # @lowerdeck/pagination +## 1.0.8 + +### Patch Changes + +- bf44aff: Bump to latest version +- Updated dependencies [bf44aff] +- Updated dependencies [bf44aff] + - @lowerdeck/validation@1.0.10 + - @lowerdeck/error@1.2.3 + ## 1.0.7 ### Patch Changes diff --git a/packages/pagination/package.json b/packages/pagination/package.json index 95d94f2..a0e20ad 100644 --- a/packages/pagination/package.json +++ b/packages/pagination/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/pagination", - "version": "1.0.7", + "version": "1.0.8", "publishConfig": { "access": "public" }, @@ -38,7 +38,7 @@ }, "dependencies": { "@lowerdeck/base62": "^1.0.4", - "@lowerdeck/error": "^1.2.2", - "@lowerdeck/validation": "^1.0.8" + "@lowerdeck/error": "^1.2.3", + "@lowerdeck/validation": "^1.0.10" } -} \ No newline at end of file +} diff --git a/packages/presenter/CHANGELOG.md b/packages/presenter/CHANGELOG.md index c6d7259..c114514 100644 --- a/packages/presenter/CHANGELOG.md +++ b/packages/presenter/CHANGELOG.md @@ -1,5 +1,14 @@ # @lowerdeck/presenter +## 1.0.3 + +### Patch Changes + +- bf44aff: Bump to latest version +- Updated dependencies [bf44aff] +- Updated dependencies [bf44aff] + - @lowerdeck/validation@1.0.10 + ## 1.0.2 ### Patch Changes diff --git a/packages/presenter/package.json b/packages/presenter/package.json index cac7c1e..2adc211 100644 --- a/packages/presenter/package.json +++ b/packages/presenter/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/presenter", - "version": "1.0.2", + "version": "1.0.3", "publishConfig": { "access": "public" }, @@ -36,6 +36,6 @@ "vitest": "^3.2.4" }, "dependencies": { - "@lowerdeck/validation": "^1.0.8" + "@lowerdeck/validation": "^1.0.10" } -} \ No newline at end of file +} diff --git a/packages/queue/CHANGELOG.md b/packages/queue/CHANGELOG.md index e7e84ea..c59d4d8 100644 --- a/packages/queue/CHANGELOG.md +++ b/packages/queue/CHANGELOG.md @@ -1,5 +1,14 @@ # @lowerdeck/queue +## 1.0.9 + +### Patch Changes + +- bf44aff: Bump to latest version +- Updated dependencies [bf44aff] + - @lowerdeck/execution-context@1.1.1 + - @lowerdeck/redis@1.0.6 + ## 1.0.8 ### Patch Changes diff --git a/packages/queue/package.json b/packages/queue/package.json index 4267d43..36a22d7 100644 --- a/packages/queue/package.json +++ b/packages/queue/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/queue", - "version": "1.0.8", + "version": "1.0.9", "publishConfig": { "access": "public" }, @@ -31,12 +31,12 @@ }, "dependencies": { "@lowerdeck/delay": "^1.0.4", - "@lowerdeck/execution-context": "^1.0.4", - "@lowerdeck/id": "^1.0.6", + "@lowerdeck/execution-context": "^1.1.1", + "@lowerdeck/id": "^1.0.8", "@lowerdeck/memo": "^1.0.4", - "@lowerdeck/redis": "^1.0.4", + "@lowerdeck/redis": "^1.0.6", "@lowerdeck/sentry": "^1.0.2", - "@lowerdeck/telemetry": "^1.0.1", + "@lowerdeck/telemetry": "^1.1.1", "bullmq": "^5.66.0", "superjson": "^2.2.6" }, diff --git a/packages/redis/CHANGELOG.md b/packages/redis/CHANGELOG.md index 44fdb39..e1f26ad 100644 --- a/packages/redis/CHANGELOG.md +++ b/packages/redis/CHANGELOG.md @@ -1,5 +1,11 @@ # @lowerdeck/redis +## 1.0.6 + +### Patch Changes + +- bf44aff: Bump to latest version + ## 1.0.5 ### Patch Changes diff --git a/packages/redis/package.json b/packages/redis/package.json index cb12d5f..19f2e03 100644 --- a/packages/redis/package.json +++ b/packages/redis/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/redis", - "version": "1.0.5", + "version": "1.0.6", "publishConfig": { "access": "public" }, @@ -37,7 +37,7 @@ }, "dependencies": { "@lowerdeck/memo": "^1.0.4", - "@lowerdeck/id": "^1.0.6", + "@lowerdeck/id": "^1.0.8", "@lowerdeck/serialize": "^1.0.4", "@lowerdeck/random-number": "^1.0.4", "ioredis": "^5.8.2", diff --git a/packages/rpc-server/CHANGELOG.md b/packages/rpc-server/CHANGELOG.md index 8425a48..072969b 100644 --- a/packages/rpc-server/CHANGELOG.md +++ b/packages/rpc-server/CHANGELOG.md @@ -1,5 +1,16 @@ # @lowerdeck/rpc-server +## 1.0.11 + +### Patch Changes + +- bf44aff: Bump to latest version +- Updated dependencies [bf44aff] +- Updated dependencies [bf44aff] + - @lowerdeck/validation@1.0.10 + - @lowerdeck/execution-context@1.1.1 + - @lowerdeck/error@1.2.3 + ## 1.0.10 ### Patch Changes diff --git a/packages/rpc-server/package.json b/packages/rpc-server/package.json index 7fe1c3d..5bcc784 100644 --- a/packages/rpc-server/package.json +++ b/packages/rpc-server/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/rpc-server", - "version": "1.0.10", + "version": "1.0.11", "publishConfig": { "access": "public" }, @@ -36,14 +36,14 @@ "vitest": "^3.2.4" }, "dependencies": { - "@lowerdeck/error": "^1.2.2", - "@lowerdeck/execution-context": "^1.0.4", + "@lowerdeck/error": "^1.2.3", + "@lowerdeck/execution-context": "^1.1.1", "@lowerdeck/id": "^1.0.8", "@lowerdeck/memo": "^1.0.4", "@lowerdeck/sentry": "^1.0.2", "@lowerdeck/serialize": "^1.0.4", - "@lowerdeck/telemetry": "^1.0.1", - "@lowerdeck/validation": "^1.0.8", + "@lowerdeck/telemetry": "^1.1.1", + "@lowerdeck/validation": "^1.0.10", "cookie": "^1.1.1" } -} \ No newline at end of file +} diff --git a/packages/service/CHANGELOG.md b/packages/service/CHANGELOG.md index baf8244..626fde3 100644 --- a/packages/service/CHANGELOG.md +++ b/packages/service/CHANGELOG.md @@ -1,5 +1,11 @@ # @lowerdeck/service +## 1.0.5 + +### Patch Changes + +- bf44aff: Bump to latest version + ## 1.0.4 ### Patch Changes diff --git a/packages/service/package.json b/packages/service/package.json index d706ef5..e4027d8 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/service", - "version": "1.0.4", + "version": "1.0.5", "publishConfig": { "access": "public" }, @@ -30,7 +30,7 @@ "build": "rm -rf ./dist && microbundle" }, "dependencies": { - "@lowerdeck/telemetry": "^1.0.1" + "@lowerdeck/telemetry": "^1.1.1" }, "devDependencies": { "microbundle": "^0.15.1", diff --git a/packages/sign/CHANGELOG.md b/packages/sign/CHANGELOG.md index 2b7d617..eed6f95 100644 --- a/packages/sign/CHANGELOG.md +++ b/packages/sign/CHANGELOG.md @@ -1,5 +1,11 @@ # @lowerdeck/sign +## 1.0.6 + +### Patch Changes + +- bf44aff: Bump to latest version + ## 1.0.5 ### Patch Changes diff --git a/packages/sign/package.json b/packages/sign/package.json index a7f2c8e..89684ba 100644 --- a/packages/sign/package.json +++ b/packages/sign/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/sign", - "version": "1.0.5", + "version": "1.0.6", "publishConfig": { "access": "public" }, @@ -31,7 +31,7 @@ }, "dependencies": { "@lowerdeck/base62": "^1.0.4", - "@lowerdeck/id": "^1.0.6" + "@lowerdeck/id": "^1.0.8" }, "devDependencies": { "microbundle": "^0.15.1", diff --git a/packages/slugify/CHANGELOG.md b/packages/slugify/CHANGELOG.md index 02c739e..32233ad 100644 --- a/packages/slugify/CHANGELOG.md +++ b/packages/slugify/CHANGELOG.md @@ -1,5 +1,11 @@ # @lowerdeck/slugify +## 1.0.6 + +### Patch Changes + +- bf44aff: Bump to latest version + ## 1.0.5 ### Patch Changes diff --git a/packages/slugify/package.json b/packages/slugify/package.json index eb39603..c2a7f4d 100644 --- a/packages/slugify/package.json +++ b/packages/slugify/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/slugify", - "version": "1.0.5", + "version": "1.0.6", "publishConfig": { "access": "public" }, @@ -30,7 +30,7 @@ "build": "rm -rf ./dist && microbundle" }, "dependencies": { - "@lowerdeck/id": "^1.0.6", + "@lowerdeck/id": "^1.0.8", "slugify": "^1.6.6" }, "devDependencies": { diff --git a/packages/validation/CHANGELOG.md b/packages/validation/CHANGELOG.md index c20dc92..670c721 100644 --- a/packages/validation/CHANGELOG.md +++ b/packages/validation/CHANGELOG.md @@ -1,5 +1,12 @@ # @lowerdeck/validation +## 1.0.10 + +### Patch Changes + +- bf44aff: Export object undefined +- bf44aff: Bump to latest version + ## 1.0.8 ### Patch Changes diff --git a/packages/validation/package.json b/packages/validation/package.json index db99703..226836c 100644 --- a/packages/validation/package.json +++ b/packages/validation/package.json @@ -1,6 +1,6 @@ { "name": "@lowerdeck/validation", - "version": "1.0.9", + "version": "1.0.10", "publishConfig": { "access": "public" }, diff --git a/packages/validation/src/index.ts b/packages/validation/src/index.ts index 58a72a3..fd46456 100644 --- a/packages/validation/src/index.ts +++ b/packages/validation/src/index.ts @@ -15,6 +15,8 @@ import * as modifiers from './modifiers'; import * as transformers from './transformers'; import * as validators from './validators'; +export type { UndefinedIsOptional } from './validators/object'; + // export default { // ...modifiers, // ...introspect, diff --git a/scripts/sync-versions.mjs b/scripts/sync-versions.mjs new file mode 100644 index 0000000..94fb733 --- /dev/null +++ b/scripts/sync-versions.mjs @@ -0,0 +1,96 @@ +import { readFile, readdir, writeFile } from "node:fs/promises"; +import path from "node:path"; +import process from "node:process"; + +const rootDir = process.cwd(); +const packagesDir = path.join(rootDir, "packages"); +const dependencyFields = [ + "dependencies", + "devDependencies", + "peerDependencies", + "optionalDependencies", +]; + +const readJson = async (filePath) => JSON.parse(await readFile(filePath, "utf8")); + +const getPackageJsonPaths = async () => { + const entries = await readdir(packagesDir, { withFileTypes: true }); + + return entries + .filter((entry) => entry.isDirectory()) + .map((entry) => path.join(packagesDir, entry.name, "package.json")); +}; + +const getWorkspaceVersions = async (packageJsonPaths) => { + const versions = new Map(); + + for (const packageJsonPath of packageJsonPaths) { + const packageJson = await readJson(packageJsonPath); + + if (packageJson.name?.startsWith("@lowerdeck/") && packageJson.version) { + versions.set(packageJson.name, packageJson.version); + } + } + + return versions; +}; + +const syncManifest = (packageJson, workspaceVersions) => { + let changed = false; + + for (const field of dependencyFields) { + const dependencies = packageJson[field]; + + if (!dependencies) { + continue; + } + + for (const [name, currentRange] of Object.entries(dependencies)) { + const workspaceVersion = workspaceVersions.get(name); + + if (!workspaceVersion) { + continue; + } + + const nextRange = `^${workspaceVersion}`; + + if (currentRange !== nextRange) { + dependencies[name] = nextRange; + changed = true; + } + } + } + + return changed; +}; + +const main = async () => { + const rootPackageJsonPath = path.join(rootDir, "package.json"); + const packageJsonPaths = [rootPackageJsonPath, ...(await getPackageJsonPaths())]; + const workspaceVersions = await getWorkspaceVersions(packageJsonPaths.slice(1)); + const updatedFiles = []; + + for (const packageJsonPath of packageJsonPaths) { + const packageJson = await readJson(packageJsonPath); + + if (!syncManifest(packageJson, workspaceVersions)) { + continue; + } + + await writeFile(packageJsonPath, `${JSON.stringify(packageJson, null, 2)}\n`); + updatedFiles.push(path.relative(rootDir, packageJsonPath)); + } + + if (updatedFiles.length === 0) { + console.log("All local package versions are already in sync."); + return; + } + + console.log(`Updated ${updatedFiles.length} package.json file(s):`); + + for (const filePath of updatedFiles) { + console.log(`- ${filePath}`); + } +}; + +await main();