X Tutup
Skip to content

Cleanup release.yml a bit#7499

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

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

Conversation

@ShaharNaveh
Copy link
Contributor

@ShaharNaveh ShaharNaveh commented Mar 24, 2026

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
Copy link
Contributor

coderabbitai bot commented Mar 24, 2026

📝 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
Contributor Author

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

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

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

X Tutup