Skip to content

Cleanup release.yml a bit - #7499

Merged
youknowone merged 6 commits into
RustPython:mainfrom
ShaharNaveh:cleanup-release-ci
Mar 25, 2026
Merged

Cleanup release.yml a bit#7499
youknowone merged 6 commits into
RustPython:mainfrom
ShaharNaveh:cleanup-release-ci

Conversation

@ShaharNaveh

@ShaharNaveh ShaharNaveh commented Mar 24, 2026

Copy link
Copy Markdown
Contributor

Behavior changes

  • Enables jit on macos
  • Enables stdio, hoat_env and ssl-rustls features on macos, windows, linux

Other changes

  • Don't use npm cache for release artifacts
  • Pin actions to a commit hash
  • Don't try to upload to gh-pages if running on forks

Summary by CodeRabbit

  • Chores
    • Optimized build and release infrastructure for improved consistency and reliability across platforms.
    • Consolidated platform-specific build configuration and dependencies.
    • Pinned GitHub Actions to specific versions for enhanced security and stability.

@ShaharNaveh ShaharNaveh changed the title cleanup release.ymla bit cleanup release.yml a bit Mar 24, 2026
@ShaharNaveh ShaharNaveh changed the title cleanup release.yml a bit [WIP] cleanup release.yml a bit Mar 24, 2026
@coderabbitai

coderabbitai Bot commented Mar 24, 2026

Copy link
Copy Markdown
Contributor
πŸ“ Walkthrough

Walkthrough

The release workflow in .github/workflows/release.yml has been refactored to restructure the build matrix from platform-based keys to os-based keys, simplify cargo build configuration by removing global environment variables and consolidating feature flags, consolidate macOS dependency setup into a reusable composite action, pin GitHub Actions to commit SHAs, update artifact naming schemes, and add conditional execution for demo deployment steps.

Changes

Cohort / File(s) Summary
CI/CD Workflow Refactoring
.github/workflows/release.yml
Matrix structure renamed from platform to os/target; removed global CARGO_ARGS in favor of explicit --no-default-features --features jit; consolidated macOS dependency installation into reusable ./.github/actions/install-macos-deps composite action; pinned GitHub Actions (upload-artifact, setup-node, download-artifact) to commit SHAs; updated artifact naming to rustpython-${{ runner.os }}-${{ matrix.target }}; added conditional demo deployment execution guarded by github.repository == 'RustPython/RustPython'.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested reviewers

  • youknowone
  • moreal

Poem

🐰 A workflow so neat, with matrices fair,
Features consolidated with utmost care,
Composite actions bundled just right,
Artifacts dancing in SHAs so tight,
Each step now springs with logical might! ✨

πŸš₯ Pre-merge checks | βœ… 3
βœ… Passed checks (3 passed)
Check name Status Explanation
Description Check βœ… Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage βœ… Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check βœ… Passed The title 'Cleanup release.yml a bit' accurately summarizes the main changeβ€”refactoring and improving the release workflow file.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
πŸ§ͺ Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❀️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@ShaharNaveh ShaharNaveh added the skip:ci Skip running the ci label Mar 24, 2026
@ShaharNaveh
ShaharNaveh marked this pull request as ready for review March 24, 2026 09:54
@ShaharNaveh

Copy link
Copy Markdown
Contributor Author

You can see a successful run of this CI at https://github.com/ShaharNaveh/RustPython/actions/runs/23482819851/job/68330699653

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
.github/workflows/release.yml (1)

140-140: Consider pinning peaceiris/actions-gh-pages to a SHA for consistency.

Other actions in this workflow are pinned to commit SHAs, but this one uses @v4. For supply-chain security consistency, consider pinning to a specific commit hash.

πŸ€– Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/release.yml at line 140, The workflow currently uses
peaceiris/actions-gh-pages@v4 without a commit SHA; update the uses entry for
peaceiris/actions-gh-pages (the line referencing
"peaceiris/actions-gh-pages@v4") to a pinned commit by replacing `@v4` with the
corresponding full commit SHA (e.g., @<sha>) to match the other actions’ pinning
strategy; retrieve the latest stable commit SHA for the v4 release from the
action’s GitHub repository and update the workflow so the uses field references
that SHA.
πŸ€– Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In @.github/workflows/release.yml:
- Line 140: The workflow currently uses peaceiris/actions-gh-pages@v4 without a
commit SHA; update the uses entry for peaceiris/actions-gh-pages (the line
referencing "peaceiris/actions-gh-pages@v4") to a pinned commit by replacing `@v4`
with the corresponding full commit SHA (e.g., @<sha>) to match the other
actions’ pinning strategy; retrieve the latest stable commit SHA for the v4
release from the action’s GitHub repository and update the workflow so the uses
field references that SHA.

ℹ️ Review info
βš™οΈ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 4f2b5d1d-8f75-494e-a0f8-eb26b2122255

πŸ“₯ Commits

Reviewing files that changed from the base of the PR and between 82432be and 3ff9361.

πŸ“’ Files selected for processing (1)
  • .github/workflows/release.yml

@ShaharNaveh ShaharNaveh changed the title [WIP] cleanup release.yml a bit Cleanup release.yml a bit Mar 24, 2026
@youknowone
youknowone merged commit 4ebc311 into RustPython:main Mar 25, 2026
18 checks passed
Copilot AI pushed a commit that referenced this pull request Mar 25, 2026
* Cleanup matrix usage. enables jit on macos

* Pin some actions to commit hash

* Disable node cache

* Inline `CARGO_ARGS`

* Add `stdio` and `host_env` features

* Only upload to pages if not running on fork
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip:ci Skip running the ci

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants