Skip to content

fix(release): use if/else for protoc install, add apt-get update for aarch64#56

Merged
polaz merged 1 commit intomainfrom
fix/#55-protoc-if-else
May 3, 2026
Merged

fix(release): use if/else for protoc install, add apt-get update for aarch64#56
polaz merged 1 commit intomainfrom
fix/#55-protoc-if-else

Conversation

@polaz
Copy link
Copy Markdown
Member

@polaz polaz commented May 3, 2026

Summary

Root cause of Build embedded / aarch64 (ubuntu-latest) failures across v1.0.0–v1.0.2:

v1.0.0–v1.0.1: QEMU action SHA broken (fixed in #50)
v1.0.1: dnf not found → apt-get 404 (stale package list, fixed in #53 but incomplete)
v1.0.2: || chain causes both dnf AND yum to run (AlmaLinux 8 has yum as alias for dnf) — both succeed, then apt-get tried and fails with "command not found" inside the manylinux x86_64 container

Fix: replace || chain with if/else:

  • dnf present → manylinux x86_64 (AlmaLinux 8) → dnf install
  • else → rust-cross aarch64 (Debian) → apt-get update && apt-get install

Closes #55

…aarch64

The || chain causes both dnf and yum to run on x86_64 manylinux
(AlmaLinux 8 has yum as alias for dnf) — both complete, then
apt-get is tried and fails with 'command not found'.

The aarch64 rust-cross container is Debian-based and requires
apt-get update before install (stale package list = 404 errors).

Use if/else: dnf for manylinux x86_64, apt-get for aarch64 cross.

Closes #55
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 3, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 114f1bbc-d668-48e3-bf6c-c789e43aca8e

📥 Commits

Reviewing files that changed from the base of the PR and between ce6a673 and e6f17a0.

📒 Files selected for processing (1)
  • .github/workflows/release.yml

📝 Walkthrough

Summary by CodeRabbit

  • Chores
    • Simplified the release workflow's Linux dependency installation logic to improve build reliability and maintainability. Updated the package manager detection and installation process with more efficient fallback handling.

Walkthrough

The release workflow's embedded wheel build step was modified to use if/else logic instead of chained || operators for installing protobuf-compiler. It now prefers dnf detection (x86_64 AlmaLinux) and falls back to apt-get update followed by install (aarch64 Debian), fixing aarch64 build failures.

Changes

Release Workflow CI Configuration

Layer / File(s) Summary
Embedded Wheel Build Dependencies
.github/workflows/release.yml
Before-script-linux logic changed from chained `

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related issues

  • Issue #52: Targets the same before-script-linux package-manager detection logic in the release workflow for installing protobuf-compiler dependencies.

Possibly related PRs

  • PR #53: Modifies the same release workflow before-script-linux section for package manager detection and protobuf-compiler installation.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/#55-protoc-if-else

Tip

💬 Introducing Slack Agent: The best way for teams to turn conversations into code.

Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get your free trial and get 200 agent minutes per Slack user (a $50 value).


Review rate limit: 4/5 reviews remaining, refill in 12 minutes.

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

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 3, 2026

@polaz polaz merged commit 7d7e510 into main May 3, 2026
7 of 8 checks passed
@polaz polaz deleted the fix/#55-protoc-if-else branch May 3, 2026 01:26
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.

fix(release): use if/else for protoc install, add apt-get update for aarch64

1 participant