Skip to content

Provide pre-built musl targets - #88

Open
vazub wants to merge 7 commits into
ecto:mainfrom
vazub:musl-and-node24
Open

Provide pre-built musl targets#88
vazub wants to merge 7 commits into
ecto:mainfrom
vazub:musl-and-node24

Conversation

@vazub

@vazub vazub commented Aug 7, 2026

Copy link
Copy Markdown

Closes #48.

As a minor improvement, also fixes Node20 deprecation warning for action runners.

@vercel

vercel Bot commented Aug 7, 2026

Copy link
Copy Markdown

@vazub is attempting to deploy a commit to the ecto's projects Team on Vercel.

A member of the Team first needs to authorize it.

@chojiai

chojiai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Choji review — Looks good — no findings

Choji review — Looks good

The musl target additions are well-structured and the build logic is correct. The only notable issue is a version mismatch between actions/checkout@v6 and actions/upload-artifact@v6 — v6 does not exist for either action (latest stable is v4), but the PR author has confirmed via a successful CI run that these resolve correctly in practice, so this is a NIT rather than a blocker.

No findings — looks good.


Rate findings

Reviewed f1e3730 · Choji updates this comment as you push · Mention @chojiai in a comment to discuss, re-review, or request a fix

os: ubuntu-latest
- target: aarch64-unknown-linux-gnu
os: ubuntu-latest
- target: x86_64-unknown-linux-musl

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Critical · Correctness — actions/checkout@v6 does not exist and will break every release build

The latest published release of actions/checkout is v4; v6 does not exist, so the checkout step will fail with an action-not-found error on every matrix leg. Revert to actions/checkout@v4.

Suggested change
- target: x86_64-unknown-linux-musl
- uses: actions/checkout@v4

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

@chojiai Finding is incorrect, version does exist and does not break anything, as witnessed here https://github.com/vazub/loon/actions/runs/31190168270

@@ -48,7 +73,7 @@ jobs:
tar czf "$ARCHIVE" loon

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Critical · Correctness — actions/upload-artifact@v6 does not exist and will break artifact uploads for every build target

The latest published release of actions/upload-artifact is v4; v6 does not exist, causing every build leg to fail at the upload step. Revert to actions/upload-artifact@v4.

Suggested change
tar czf "$ARCHIVE" loon
- uses: actions/upload-artifact@v4

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

@chojiai Finding is incorrect, version does exist and does not break anything, as witnessed here https://github.com/vazub/loon/actions/runs/31190168270

runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Critical · Correctness — actions/download-artifact@v7 does not exist and will break the release job

The latest published release of actions/download-artifact is v4; v7 does not exist, so the release job that collects all artifacts will fail before it can publish anything. Revert to actions/download-artifact@v4.

Suggested change
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v4

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

@chojiai Finding is incorrect, version does exist and does not break anything, as witnessed here https://github.com/vazub/loon/actions/runs/31190168270

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

@chojiai ping

Comment thread .github/workflows/release.yml
Avoids wasting time on tools compilation with every release.
chojiai[bot]
chojiai Bot previously approved these changes Aug 7, 2026
Comment thread .github/workflows/release.yml
Cross should be installed for aarch64-musl matrix leg only, to minimize resource waste.
@chojiai
chojiai Bot dismissed their stale review August 7, 2026 15:54

Dismissing prior approval to re-evaluate f1e3730.

@chojiai

chojiai Bot commented Aug 11, 2026

Copy link
Copy Markdown

@chptung — here's where things actually stand:

The previous Choji findings flagged the actions/checkout@v6, actions/upload-artifact@v6, and actions/download-artifact@v7 versions, but @vazub's linked run confirms those versions do work fine in practice, so those findings were false positives. The latest Choji review shows "No findings" as well, so the automated review is now clean.

The only open blocker visible in CI is the Vercel authorization — a team member on ecto's projects needs to approve the deployment. That's unrelated to the workflow changes in this PR.

The PR itself looks solid:

  • Adds x86_64-unknown-linux-musl and aarch64-unknown-linux-musl targets ✅
  • Uses cross for aarch64-musl (correct approach) ✅
  • Adds a static linking verification step ✅
  • Bumps Node20-deprecated actions ✅

Nothing blocking on the code side. 🟢

Heads up — your GitHub is linked to a Choji account, but not this repository's team, so I can't use your team's knowledge base here. Ask a team admin to add you, or switch your active team in Choji settings.

- Choji

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Request: Pre-built statically-linked binaries for Linux (musl)

2 participants