Skip to content

Conversation

@marlon-costa-dc
Copy link

Summary

Add GitHub Actions workflows for continuous integration and automated releases.

CI Workflow (.github/workflows/ci.yml)

Runs on push/PR to master/main branches:

Job Description
Check cargo check --all-features
Clippy cargo clippy -- -D warnings
Format cargo fmt --check
Test Multi-platform tests (Ubuntu, macOS, Windows)
Build Release build verification

Release Workflow (.github/workflows/release.yml)

Triggers on version tags (v*) or manual dispatch:

  • Creates GitHub release automatically
  • Builds and uploads binaries for 9 targets:
    • Linux: x86_64, aarch64, armv7, i686
    • macOS: x86_64, aarch64
    • Windows: x86_64-gnu, x86_64-msvc, aarch64-msvc

Benefits

  • Automated quality gates for all PRs
  • Cross-platform compatibility testing
  • Streamlined release process with pre-built binaries

This PR is part of splitting #1206 into separate focused PRs as requested.

Add CI workflow with:
- cargo check
- cargo clippy (with -D warnings)
- rustfmt check
- tests (on Ubuntu, macOS, Windows)
- cargo build --release

Add Release workflow with:
- Automatic release creation on version tags
- Cross-platform binary uploads (9 targets)
- Supports Linux, macOS, and Windows
Copilot AI review requested due to automatic review settings January 19, 2026 21:42
Copy link

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

This PR adds GitHub Actions workflows to automate continuous integration and release processes for the rust-code-analysis project. The CI workflow enforces code quality through automated checks on every push and pull request, while the release workflow streamlines the creation of multi-platform binary releases.

Changes:

  • Added comprehensive CI workflow with format checking, linting, testing, and build verification across Ubuntu, macOS, and Windows
  • Added automated release workflow that builds and publishes binaries for 9 platform targets on version tag pushes

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
.github/workflows/ci.yml Implements automated quality gates including cargo check, clippy linting with warnings as errors, formatting validation, multi-platform testing, and release build verification
.github/workflows/release.yml Automates GitHub release creation and multi-platform binary distribution for Linux, macOS, and Windows targets using cross-compilation toolchains

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

Copy link
Collaborator

@Luni-4 Luni-4 left a comment

Choose a reason for hiding this comment

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

Just a few minor changes for this PR from my side.

@marco-c do you have any opinions? Can we remove the old CI?

name: Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Copy link
Collaborator

@Luni-4 Luni-4 Jan 19, 2026

Choose a reason for hiding this comment

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

Use the latest checkout version. Please checks that all the other GitHub Actions versions are updated too. If we do not want to do that manually in the future, we can add to this PR a dependabot file that updates actions and crates.io dependencies for us

@marlon-costa-dc
Copy link
Author

Ok, no problem, I will close this one. It is not necessary to merge with upstream.

@marlon-costa-dc
Copy link
Author

⚠️ CI Failure Note

This PR is failing CI due to 18 pre-existing clippy warnings in the upstream codebase (e.g., collapsible_if warnings).

These warnings are not introduced by this PR - they exist in the current master branch and are fixed by PR #1211.

Dependency: This PR requires #1211 to be merged first for CI to pass.

What this PR actually changes:

  • Adds GitHub Actions CI workflow (.github/workflows/ci.yml)
  • Adds GitHub Actions release workflow (.github/workflows/release.yml)

Once #1211 is merged, this PR's CI should pass.

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.

2 participants