Skip to content

CI: Build cache with --workspace flag#7889

Merged
youknowone merged 1 commit into
RustPython:mainfrom
ShaharNaveh:cache-workspace
May 17, 2026
Merged

CI: Build cache with --workspace flag#7889
youknowone merged 1 commit into
RustPython:mainfrom
ShaharNaveh:cache-workspace

Conversation

@ShaharNaveh
Copy link
Copy Markdown
Contributor

@ShaharNaveh ShaharNaveh commented May 17, 2026

Summary by CodeRabbit

  • Chores
    • Updated CI cache-building workflow to adjust workspace build scope: excludes specific components from caching while preserving existing build features and flags; change applied uniformly across development, test, and release profiles.

Review Change Stack

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 17, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 37a88908-b31f-4589-92c0-adfee47f7dd6

📥 Commits

Reviewing files that changed from the base of the PR and between 5aafa6a and 1525832.

📒 Files selected for processing (1)
  • .github/workflows/update-caches.yml
🚧 Files skipped from review as they are similar to previous changes (1)
  • .github/workflows/update-caches.yml

📝 Walkthrough

Walkthrough

The CI cache workflow's shared CARGO_ARGS is changed to add --workspace and --exclude the rustpython_wasm, rustpython-compiler-source, and rustpython-venvlauncher crates, while keeping --no-default-features and the existing feature list for dev/test/release cache builds.

Changes

Cache Build Configuration

Layer / File(s) Summary
CARGO_ARGS environment variable update
.github/workflows/update-caches.yml
The cache workflow's CARGO_ARGS now includes --workspace to target the whole workspace and --exclude entries for rustpython_wasm, rustpython-compiler-source, and rustpython-venvlauncher, while retaining --no-default-features and the feature flags across dev, test, and release profile builds.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • RustPython/RustPython#7610: Directly overlaps with prior changes to the update-caches.yml workflow and its shared CARGO_ARGS configuration.

Suggested reviewers

  • fanninpm
  • youknowone

Poem

🐰 I hopped through YAML lines tonight,

Tucked three crates out of CI's sight,
--workspace now hums the build's refrain,
Lighter caches, faster lane—hooray again! 🥕

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: updating the CI workflow to use the --workspace flag for cache building.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
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.

✏️ 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 May 17, 2026
Copy link
Copy Markdown
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/update-caches.yml (1)

22-22: ⚡ Quick win

Consider documenting why these crates are excluded.

Adding a comment explaining the exclusion rationale (e.g., platform-specific, compilation issues, or not needed for cache) would improve maintainability.

📝 Suggested improvement
+  # Build entire workspace except crates that don't need caching or have platform-specific compilation requirements
   CARGO_ARGS: --workspace --no-default-features --features stdlib,importlib,stdio,encodings,sqlite,ssl-rustls,host_env,threading,jit --exclude rustpython_wasm --exclude rustpython-compiler-source --exclude rustpython-venvlauncher
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/update-caches.yml at line 22, Add an inline comment next
to the CARGO_ARGS environment variable explaining why the three crates are
excluded: clarify that rustpython_wasm is platform/wasm-specific and not needed
for CI cache, rustpython-compiler-source is a source-only package excluded
because it breaks caching or rebuilds differently, and rustpython-venvlauncher
is not required for this workflow; reference the CARGO_ARGS line and the
excluded crate names (rustpython_wasm, rustpython-compiler-source,
rustpython-venvlauncher) so future maintainers understand the rationale.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In @.github/workflows/update-caches.yml:
- Line 22: Add an inline comment next to the CARGO_ARGS environment variable
explaining why the three crates are excluded: clarify that rustpython_wasm is
platform/wasm-specific and not needed for CI cache, rustpython-compiler-source
is a source-only package excluded because it breaks caching or rebuilds
differently, and rustpython-venvlauncher is not required for this workflow;
reference the CARGO_ARGS line and the excluded crate names (rustpython_wasm,
rustpython-compiler-source, rustpython-venvlauncher) so future maintainers
understand the rationale.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 020d881e-ab8a-49b1-8c4e-2b47cb4808e8

📥 Commits

Reviewing files that changed from the base of the PR and between 4b9416a and 5aafa6a.

📒 Files selected for processing (1)
  • .github/workflows/update-caches.yml

@youknowone youknowone merged commit ea2a3d9 into RustPython:main May 17, 2026
13 checks passed
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