Skip to content

ci: faster shared workflows (actions v2.1.1), Node 24 - #26

Open
blockiosaurus wants to merge 4 commits into
mainfrom
ci/faster-ci
Open

blockiosaurus wants to merge 4 commits into
mainfrom
ci/faster-ci

Conversation

@blockiosaurus

@blockiosaurus blockiosaurus commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Regenerated from scripts/specs/<repo>.json in metaplex-foundation/actions and pinned to v2.1.1 (e254cd6).

What changes for this repository:

  • generate_clients no longer waits for build_programs and no longer gates the client tests; test_js and test_rust_client (and the benchmark jobs, where present) wait for build_programs alone. The drift check still fails the run.
  • build_rust_client is gone: test_rust_client runs clippy and the tests in one job, sharing one dependency build.
  • JS clients are tested on NODE_VERSION only, now 24.x (no Node matrix).
  • On the actions side (v2.1.0, actions#22), the cargo caches for the test, coverage and Rust client jobs work again, and cargo-build-sbf / cargo-test-sbf are cached instead of compiled from source where sbf_tools_version is set.
  • v2.1.1 (actions#25) fixes the publish workflows: the shared actions checkout is no longer deleted before the job's post steps run (the failure that hit the genesis and mpl-toolbox JS publishes after npm had already accepted the package), and the publish and release steps wait for npm to serve a freshly published version.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Updated project automation to use the newer shared workflows for building, testing, publishing, and releasing.
    • Expanded Rust client testing across the identity, reputation, validation, and tools clients, with all features enabled.
    • Streamlined client validation and publishing steps by combining build and test stages.
    • Updated the Node.js version used by project automation from 22.x to 24.x.

Regenerated from the shared-CI spec against metaplex-foundation/actions
ci/faster-ci: generate_clients runs alongside the client tests instead of
in front of them, the Rust client clippy and tests share one job, the JS
client is tested on NODE_VERSION only, and NODE_VERSION moves to 24.x.
The actions side fixes the cargo caches and caches the SBF test tools.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Nov 4, 2026 •

Copy link
Copy Markdown

Explain Change →

No actionable comments were generated in the recent review.

Walkthrough

The GitHub Actions configuration updates reusable workflows from v2.0.1 to v2.1.1. It changes client test matrices and job dependencies, removes separate Rust client build jobs, and sets the configured Node.js version to 24.x.

Changes

GitHub Actions workflow updates

Layer / File(s) Summary
Main CI workflow and runtime
.github/.env, .github/workflows/main.yml
The configured Node.js version changes to 24.x. The main workflow updates reusable workflow references and client job dependencies, removes the separate Rust client build job, and configures Rust tests with a client matrix and --all-features.
Release and deploy validation
.github/workflows/create-release.yml, .github/workflows/deploy-program.yml
The workflows update reusable workflow references. JavaScript tests no longer receive a Node.js matrix. Rust tests receive a matrix of four client directories and --all-features.
Client publish and release workflows
.github/workflows/publish-js-client.yml, .github/workflows/publish-rust-client.yml, .github/workflows/release-js-client.yml, .github/workflows/release-rust-client.yml
The workflows update reusable workflow references. JavaScript tests no longer receive a Node.js matrix. The Rust publish workflow removes its separate client build job and configures Rust tests with four client directories and --all-features.

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Other

Possibly related PRs

Merge Risk: Minimal · up to 4afd0

This change updates CI workflow pins and job configuration. No concrete merge-blocking risk was found in the supplied changes.

Pre-merge checks: Passed 5

Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage Passed No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Title check Passed The title clearly summarizes the shared workflow updates and the Node.js version change.
Full details: Docstring Coverage

Explanation

No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 1 files. (7 skipped: 7 unsupported.)

Finishing Touches

Generate unit tests (beta)

  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

A rabbit checks the workflow trail,
New versions hop across the yaml.
Four Rust clients join the test,
Node 24 takes its place to rest.
Release steps follow, neat and bright,
Then carrots wait at close of night.

Recent review info

Run configuration

Commits

Reviewing files that changed from the base of the PR and between 2a068d4 and 4afd059.

Files selected for processing: 7

  • .github/workflows/create-release.yml
  • .github/workflows/deploy-program.yml
  • .github/workflows/main.yml
  • .github/workflows/publish-js-client.yml
  • .github/workflows/publish-rust-client.yml
  • .github/workflows/release-js-client.yml
  • .github/workflows/release-rust-client.yml
Files skipped from review as they are similar to previous changes: 7

  • .github/workflows/create-release.yml
  • .github/workflows/release-js-client.yml
  • .github/workflows/deploy-program.yml
  • .github/workflows/publish-js-client.yml
  • .github/workflows/publish-rust-client.yml
  • .github/workflows/release-rust-client.yml
  • .github/workflows/main.yml

Included review availability: This review used your included allowance. 3 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 8 reviews per hour.

blockiosaurus and others added 2 commits November 5, 2026 14:36
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@blockiosaurus
blockiosaurus marked this pull request as ready for review November 5, 2026 20:01
v2.1.1 fixes the publish workflows: the shared actions checkout is no
longer deleted before the job's post steps run, and the publish and
release steps wait for npm to serve a freshly published version.

Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
@blockiosaurus blockiosaurus changed the title ci: faster shared workflows (actions v2.1.0 candidate), Node 24 ci: faster shared workflows (actions v2.1.1), Node 24 Nov 10, 2026

This branch has not been deployed

No deployments
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