feat: publish changed packages independently
Quality / quality (ubuntu-latest) (push) Failing after 21s
Quality / quality (windows-latest) (push) Canceled after 0s

This commit is contained in:
2026-08-11 15:32:36 +05:30
parent feff30a2b5
commit 8d044565e3
67 changed files with 10935 additions and 876 deletions
+17 -8
View File
@@ -59,19 +59,28 @@ check(
);
check("root version is a 0.8 release", /^0\.8\.\d+$/.test(releaseVersion));
check(
`all framework packages use ${releaseVersion}`,
packageManifests.every((manifest) => manifest.version === releaseVersion),
"all framework packages use valid independent 0.8 versions",
packageManifests.every((manifest) => /^0\.8\.\d+$/.test(manifest.version)),
);
const bunLockPackageVersions = [
const bunLockPackages = [
...text("bun.lock").matchAll(/^ {4}"packages\/[^"\r\n]+": \{\r?\n([\s\S]*?)^ {4}\},?$/gm),
].map((match) => /^ {6}"version": "([^"]+)"/m.exec(match[1])?.[1]);
].map((match) => ({
name: /^ {6}"name": "([^"]+)"/m.exec(match[1])?.[1],
version: /^ {6}"version": "([^"]+)"/m.exec(match[1])?.[1],
}));
const packageVersions = new Map(
packageManifests.map((manifest) => [manifest.name, manifest.version]),
);
check(
`bun.lock framework workspaces use ${releaseVersion}`,
bunLockPackageVersions.length === packageManifests.length &&
bunLockPackageVersions.every((version) => version === releaseVersion),
"bun.lock matches each independent framework package version",
bunLockPackages.length === packageManifests.length &&
bunLockPackages.every(({ name, version }) => packageVersions.get(name) === version),
);
const editorManifest = JSON.parse(text("editors/vscode/package.json"));
check(`VS Code extension uses ${releaseVersion}`, editorManifest.version === releaseVersion);
check(
"VS Code extension uses a valid independent 0.8 version",
/^0\.8\.\d+$/.test(editorManifest.version),
);
check(
"standalone realtime package exists",
existsSync(join(root, "packages/realtime/src/index.ts")) &&