Skip to content

feat(ci): add release and auto-tag workflows#59

Merged
Emin017 merged 9 commits intomainfrom
emin/add-release-ci
Apr 22, 2026
Merged

feat(ci): add release and auto-tag workflows#59
Emin017 merged 9 commits intomainfrom
emin/add-release-ci

Conversation

@Emin017
Copy link
Copy Markdown
Collaborator

@Emin017 Emin017 commented Apr 22, 2026

  • auto-tag.yml: auto-create version tag on pyproject.toml changes
  • release.yml: build wheel in manylinux container + create GitHub Release
  • bump version to 0.1.0-alpha

Emin017 and others added 4 commits April 22, 2026 09:43
- auto-tag.yml: auto-create version tag on pyproject.toml changes
- release.yml: build wheel in manylinux container + create GitHub Release

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Only trigger CI on PRs when code/build-related files change.
Push to main always triggers (changes are already reviewed).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Check pyproject.toml version matches chipcompiler/__version__
before running the full CI build, catching version drift early.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move duplicated version consistency check into a composite action
(.github/actions/check-version) used by both CI and release workflows.
Supports optional tag validation via expected_tag input.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@Emin017 Emin017 added enhancement New feature or request no release labels Apr 22, 2026
@Emin017 Emin017 added this to the 0.1.0-Alpha milestone Apr 22, 2026
Emin017 and others added 2 commits April 22, 2026 10:26
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sync MODULE.bazel version with pyproject.toml (0.1.0-alpha).
Check-version action now verifies all three sources match:
pyproject.toml, MODULE.bazel, and chipcompiler/__version__.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds GitHub Actions workflows to automate version tagging and releases, plus a shared version-consistency check, and bumps the project version for an alpha pre-release.

Changes:

  • Add auto-tag.yml to create/push a v* tag when pyproject.toml version changes on main.
  • Add release.yml to build the wheel in a manylinux container and publish a GitHub Release for v* tags.
  • Introduce a composite action to check version consistency and update repo version strings / wheel output naming.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
pyproject.toml Bump Python package version to an alpha pre-release.
chipcompiler/init.py Bump runtime __version__.
bazel/scripts/build-wheel.sh Update wheel smoke-test version assertion.
MODULE.bazel Update Bazel module version.
BUILD.bazel Update expected raw wheel output filename.
.github/workflows/ci.yml Add version-consistency job; add PR path filtering.
.github/workflows/release.yml New release workflow to build wheel + publish GitHub Release.
.github/workflows/auto-tag.yml New workflow to auto-create a v<version> tag from pyproject.toml.
.github/actions/check-version/action.yml New composite action to validate versions match (and optionally match tag).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread pyproject.toml
Comment thread chipcompiler/__init__.py
Comment thread .github/actions/check-version/action.yml
Comment thread BUILD.bazel
Comment thread bazel/scripts/build-wheel.sh Outdated
Comment thread .github/workflows/ci.yml
Comment thread .github/workflows/release.yml Outdated
Emin017 and others added 3 commits April 22, 2026 10:45
Replace the hard-coded version assertion in build-wheel.sh with a
dynamic extraction from pyproject.toml. This avoids manual script
updates on every version bump and ensures the smoke test validates
consistency between the build manifest and the installed package.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add .github/workflows/release.yml, .github/workflows/auto-tag.yml,
and .github/actions/** to the pull_request.paths filter. This ensures
changes to release/tag workflows and composite actions trigger CI for
validation before merge.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace the unversioned curl download of bazelisk-latest with the
pinned bazel-contrib/setup-bazel@0.14.0 action used in CI. This
eliminates supply-chain risk from unverified latest binaries and
adds bazelisk/disk/repository caching for reproducible, faster
release builds.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@Emin017 Emin017 self-assigned this Apr 22, 2026
@Emin017 Emin017 merged commit 461703c into main Apr 22, 2026
2 checks passed
@Emin017 Emin017 deleted the emin/add-release-ci branch April 22, 2026 08:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request no release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants