Skip to content

Build and test every wheel only where it can find something: build changes, tags, and weekly - #117

Merged
alxmrs merged 1 commit into
mainfrom
ci/release-filter
Oct 30, 2026
Merged

alxmrs merged 1 commit into
mainfrom
ci/release-filter

Conversation

@alxmrs

@alxmrs alxmrs commented Oct 29, 2026

Copy link
Copy Markdown
Member

🪭 Claude (einfold)

The release workflow builds and tests five wheels, on macOS and Linux arm64 among others: the slowest runners, and the scarcest. It ran on every pull request touching python/, though CI's python job already builds the Linux wheel from every pull request and runs every Python test against it. Now it runs on a pull request only when the pull request changes how the package is built (the workflow, pyproject.toml, Cargo.toml or Cargo.lock under python/). It also runs on release tags, as before, and weekly, so that a platform's runner image breaking the build shows up between releases.

Decisions to review

  • The paths: packaging changes only. A change to the package's code that broke one platform's build alone would show up in the next weekly run, or at the release tag, before anything is published.

How it is tested

actionlint passes.

🤖 Generated with Claude Code

https://claude.ai/code/session_01M96xSez6PZwTmfaGh2eJgS

…anges, tags, and weekly

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01M96xSez6PZwTmfaGh2eJgS
@coderabbitai

coderabbitai Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Walkthrough

The Python release workflow now documents its run types, limits pull-request triggers to selected packaging files, and runs weekly on Mondays at 06:17 UTC.

Changes: Python release workflow

Layer / File(s) Summary
Document and configure workflow triggers
.github/workflows/release-python.yml
The comments describe manual, weekly, and qualifying pull-request runs. Pull-request paths are limited to the workflow file and three Python package manifests. A Monday schedule is added.

Priority: Low

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

Change: Other

Possibly related PRs

Merge Risk: Minimal · up to 000db

The workflow changes match the stated trigger strategy without introducing a concrete merge-blocking risk.

Architecture risk: Low · up to 000db

The changed surface does not map to a changed system, dependency edge, entrypoint, or external dependency.

Changed systems: None identified.

Architecture concerns
No architecture-level concerns identified.

Review details

Before / after behavior

  • observed — Modified behavior in .github/workflows/release-python.yml: The comments now document that the workflow builds and tests wheels when run manually, weekly, or for qualifying pull requests, without publishing.
  • observed — Modified behavior in .github/workflows/release-python.yml: Pull-request triggers now match only the workflow file and the three listed Python package manifests, replacing the broader python/** path. A weekly schedule is added for Mondays at 06:17 UTC.
Pre-merge checks: Passed 5
Check name Status Explanation
Title check Passed The title clearly describes the main change: the wheel workflow now runs for relevant build changes, release tags, and weekly checks. It is specific and related to the changeset.
Description check Passed The description explains the workflow trigger changes, the reason for them, the main decision under review, and the actionlint test result. The optional empty-section guidance makes the omitted "Not i…
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.
Full details: Description check

Explanation

The description explains the workflow trigger changes, the reason for them, the main decision under review, and the actionlint test result. The optional empty-section guidance makes the omitted "Not in this pull request" section acceptable. No issue number is provided after "Closes #", but the description is otherwise complete and on topic.

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 0 files. (1 skipped: 1 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

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

@alxmrs
alxmrs merged commit acaf7e0 into main Oct 30, 2026
26 checks passed
@alxmrs
alxmrs deleted the ci/release-filter branch October 30, 2026 01:00
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