Skip to content

Run release actions on Node 24 and a pinned runner image - #12

Merged
nicksan222 merged 2 commits into
mainfrom
ci/node24-actions
Oct 4, 2026
Merged

nicksan222 merged 2 commits into
mainfrom
ci/node24-actions

Conversation

@nicksan222

Copy link
Copy Markdown
Owner

The first release run (v0.1.0) annotated two problems in release.yml; the other workflows have none.

  • Node.js 20 deprecation warning: actions/checkout@v4, actions/upload-artifact@v4, actions/download-artifact@v4 and docker/login-action@v3 target Node.js 20. Bumped to checkout@v7, upload-artifact@v7, download-artifact@v8 and login-action@v4, all Node.js 24. None of the breaking changes touch how the workflow uses them (download-artifact v8 now fails on a digest mismatch instead of warning, which is the behavior we want).
  • ubuntu-latest migration notice: the label moves to Ubuntu 26 on October 19. The two ubuntu-latest jobs now use ubuntu-24.04, like every other job.

devcontainers/ci@v0.3, Swatinem/rust-cache@v2 and the composite actions already run on Node.js 24.

This workflow runs only on a pushed tag, so the next release exercises it.

The release workflow still used actions that target Node.js 20, which GitHub deprecates and now forces onto Node.js 24 with a warning. Move checkout, upload-artifact, download-artifact and login-action to their Node.js 24 majors, matching the other workflows.

Pin the release's ubuntu-latest jobs to ubuntu-24.04, like every other job, so the label's move to Ubuntu 26 on October 19 cannot change the release environment unannounced.
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 4, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-04T08:53:01.503074Z c6cc338 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c6cc33851d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/workflows/release.yml
The Linux release jobs ran just check and the packaging inside the devcontainer through devcontainers/ci. There the container user's UID is remapped to the runner's, so it no longer owns the image's cargo home, and the first crate download failed with Permission denied.

Build on the runner with the same setup action CI uses, and run the updater tests like the native jobs. CI already runs the full checks on every commit to main. Ubuntu 24.04's older glibc also makes an AppImage that runs on more distributions than one built on the devcontainer's Debian trixie.
@nicksan222
nicksan222 enabled auto-merge (squash) October 4, 2026 09:00
@nicksan222
nicksan222 disabled auto-merge October 4, 2026 09:00
@nicksan222
nicksan222 merged commit f18d254 into main Oct 4, 2026
@nicksan222
nicksan222 deleted the ci/node24-actions branch October 4, 2026 09:00
nicksan222 added a commit that referenced this pull request Oct 4, 2026
The v0.1.0 release run failed on every platform. Linux was fixed in #12;
this fixes the rest.

- **macOS (Apple Silicon)**: `ERROR unsupported ColorType: Rgba16`.
cargo-packager can't make an icns from the 16-bit `packaging/icon.png`,
so it's re-encoded as 8-bit RGBA (same image).
- **Windows**: `LNK2005` ×83, then `LNK1169`, linking `study-ai`.
tokenizers' default `esaxx_fast` feature builds `esaxx-rs` C++ with
`static_crt(true)` (`libcpmt`), which collides with the dynamic CRT
(`msvcprt`) used everywhere else. `study-ai` now takes tokenizers with
`default-features = false, features = ["onig"]`. esaxx only speeds up
Unigram *training*; Study only loads tokenizers.
- **Intel macOS**: `ort does not provide prebuilt binaries for the
target x86_64-apple-darwin`. Dropped from the release matrix,
`release.sh`'s platform list (so the update feed no longer requires it)
and the README.
- The README's glibc floor now matches the Ubuntu 24.04 build from #12
(2.39).

`cargo test -p study-ai --lib` passes locally. After merge I'll re-point
`v0.1.0` at main to rerun the release (no release was published from the
failed run).
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.

1 participant