Skip to content

Conversation

@nikhilsinhaparseable
Copy link
Contributor

@nikhilsinhaparseable nikhilsinhaparseable commented Dec 11, 2025

remove x86_64 configuration from cross.toml as we dont need cross
updated release.yml to use cross only for aarch64 linux builds

Summary by CodeRabbit

  • Chores
    • Streamlined build configuration for Linux releases by simplifying the build matrix structure and removing redundant pre-build environment settings.
    • Optimized the release pipeline to use dynamic cross-compilation flags aligned with the updated build matrix, improving build process consistency.

✏️ Tip: You can customize this high-level summary in your review settings.

remove x86_64 configuration from cross.toml as we dont need cross
updated release.yml to use cross only for aarch64 linux builds
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 11, 2025

Walkthrough

The PR simplifies cross-compilation configuration by restructuring the Linux build matrix in the release workflow to use explicit include entries with per-target cross-compilation flags, and removes pre-build/environment setup from Cross.toml, retaining only the image specification.

Changes

Cohort / File(s) Summary
CI Build Matrix Configuration
.github/workflows/release.yml
Reworked Linux build matrix to use explicit include list with two entries (each specifying target and use-cross flag) instead of direct target entries; updated cargo build step to derive use-cross from matrix instead of hard-coded value.
Cross-compilation Setup
Cross.toml
Removed extensive pre-build and environment configuration (architecture setup, package installations, sysroot/symlink preparations, cross-compiler settings) for aarch64-unknown-linux-gnu target, leaving only image field specification.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Verify that the explicit matrix include list correctly maps all previously-built targets and cross-compilation behavior.
  • Confirm that removing the pre-build/environment configuration from Cross.toml doesn't break the aarch64 build pipeline and that the image field is sufficient for the build process.

Possibly related PRs

Suggested reviewers

  • nitisht

Poem

🐰 Builds are simpler now, hooray!
No tangled config in the way,
Just targets, flags, and images clean—
The smoothest build I've ever seen!

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Description check ❓ Inconclusive The description mentions what was changed but lacks the required structure and detail from the template, including explicit description section with rationale and testing/documentation checkboxes. Expand description to follow template: add explicit 'Description' section with goal and rationale, and include the required checklist items for testing and documentation.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title 'fix cross builds' clearly and concisely describes the main change: addressing issues with cross-compilation configuration across the codebase.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 5f9084d and 30370b1.

📒 Files selected for processing (2)
  • .github/workflows/release.yml (2 hunks)
  • Cross.toml (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (9)
  • GitHub Check: coverage
  • GitHub Check: Build Default aarch64-unknown-linux-gnu
  • GitHub Check: Build Default x86_64-unknown-linux-gnu
  • GitHub Check: Build Default x86_64-pc-windows-msvc
  • GitHub Check: Build Kafka x86_64-unknown-linux-gnu
  • GitHub Check: Build Default aarch64-apple-darwin
  • GitHub Check: Build Kafka aarch64-apple-darwin
  • GitHub Check: Quest Smoke and Load Tests for Distributed deployments
  • GitHub Check: Quest Smoke and Load Tests for Standalone deployments
🔇 Additional comments (3)
.github/workflows/release.yml (2)

31-35: Matrix restructuring is sound.

The switch from an implicit target list to an explicit include structure with per-target use-cross flags is correct. Since ubuntu-latest is x86_64, the x86_64-unknown-linux-gnu build is native (use-cross: false), while aarch64-unknown-linux-gnu requires cross-compilation (use-cross: true). This aligns well with the PR objective and avoids unnecessary overhead for the native build.


47-47: Dynamic use-cross value is correct.

Parameterizing the use-cross flag allows each target in the matrix to control whether it needs the cross tool. This is a clean, maintainable approach that matches the per-target configuration strategy introduced by the matrix restructuring.

Cross.toml (1)

1-2: The simplified Cross.toml configuration is correct and sufficient.

You've correctly simplified the configuration to use the official cross image for aarch64-unknown-linux-gnu. The cross crate provides pre-built Docker images with all necessary toolchain, binutils, and cross-compiler setup bundled in. Specifying only the image digest is the documented pattern and removes unnecessary custom setup. The removed pre-build hooks and environment variables were redundant—the official image handles these requirements by default. No build issues should occur.


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

@nitisht nitisht merged commit 419ef3d into parseablehq:main Dec 11, 2025
12 checks passed
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