Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions build-automation.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -88,13 +88,17 @@ export default async function(github) {
const newVersions = await checkForMuslVersionsAndSecurityReleases(github, versions);
let updatedVersions = [];
for (const [version, newVersion] of Object.entries(newVersions)) {
if (newVersion.muslBuildExists) {
const { stdout } = await exec(`./update.sh ${newVersion.isSecurityRelease ? "-s " : ""}${version}`);
if (newVersion.isSecurityRelease) {
console.log(`Processing security release ${newVersion.fullVersion}`);
const { stdout } = await exec(`./update.sh -s ${version}`);
console.log(stdout);
updatedVersions.push(newVersion.fullVersion);
} else if (newVersion.muslBuildExists) {
Comment on lines +91 to +96
Copy link

Copilot AI Jan 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When a security release doesn't have a musl build yet, it will still be processed with the -s flag which skips Alpine updates. However, according to update.sh line 23, the -s flag 'skip[s] updating the yarn and alpine versions.' This means security releases without musl builds will proceed but Alpine variants won't be updated. The original logic required muslBuildExists to be true before processing any release. Consider whether security releases should also check for muslBuildExists, or if this behavior is intentional and should be documented.

Copilot uses AI. Check for mistakes.
const { stdout } = await exec(`./update.sh ${version}`);
console.log(stdout);
updatedVersions.push(newVersion.fullVersion);
} else {
console.log(`There's no musl build for version ${newVersion.fullVersion} yet.`);
process.exit(0);
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AI suggested this should be removed during a self-review. This would prevent the loop from running to another entry, meaning we wait for another run. Maybe this is intentional?

console.log(`There's no musl build for version ${newVersion.fullVersion} yet. Skipping non-security release.`);
Copy link

Copilot AI Jan 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The removal of process.exit(0) changes the behavior significantly. Previously, the absence of a musl build would stop all processing. Now it continues to the next version in the loop. If multiple versions are being processed and one lacks a musl build, this could lead to partial updates. Consider whether this is the intended behavior and if it should be logged more prominently (e.g., as a warning) to ensure visibility of skipped versions.

Copilot uses AI. Check for mistakes.
}
}
const { stdout } = (await exec(`git diff`));
Expand Down
Loading