Skip to content

Conversation

@Minh141120
Copy link
Member

@Minh141120 Minh141120 commented Sep 15, 2025

This pull request refactors the macOS build process for the Tauri app, moving platform-specific Rust target installation from the GitHub workflow files into the Makefile for improved maintainability and cross-platform compatibility. It also removes manual steps for creating universal binaries for bun and uv from the workflow, streamlining the build pipeline.

image image

Build process improvements:

  • Added a new install-rust-targets target to the Makefile to install both x86_64-apple-darwin and aarch64-apple-darwin Rust targets on macOS, with conditional logic for non-macOS systems.
  • Updated build and build-and-publish targets in the Makefile to depend on install-rust-targets, ensuring required Rust targets are always installed before building.

Workflow simplification:

  • Removed the explicit rustup target add x86_64-apple-darwin step from both .github/workflows/template-tauri-build-macos.yml and .github/workflows/template-tauri-build-macos-external.yml, delegating this responsibility to the Makefile. [1] [2]
  • Eliminated the complex manual steps for downloading, extracting, and combining bun and uv universal binaries from the macOS workflow, likely in favor of a more automated or prebuilt approach.

Important

Refactor macOS build process by moving Rust target installation to Makefile and simplifying workflows for Tauri app.

  • Build Process Improvements:
    • Added install-rust-targets target in Makefile for macOS Rust targets x86_64-apple-darwin and aarch64-apple-darwin.
    • Updated build and build-and-publish targets in Makefile to depend on install-rust-targets.
  • Workflow Simplification:
    • Removed rustup target add x86_64-apple-darwin from .github/workflows/template-tauri-build-macos.yml and .github/workflows/template-tauri-build-macos-external.yml.
    • Eliminated manual steps for bun and uv universal binaries in .github/workflows/template-tauri-build-macos.yml.

This description was created by Ellipsis for 1db67ea. You can customize this summary. It will automatically update as commits are pushed.

Copy link
Contributor

@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

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

Caution

Changes requested ❌

Reviewed everything up to 1db67ea in 1 minute and 46 seconds. Click for details.
  • Reviewed 93 lines of code in 3 files
  • Skipped 0 files when reviewing.
  • Skipped posting 2 draft comments. View those below.
  • Modify your settings and rules to customize what types of comments Ellipsis leaves. And don't forget to react with 👍 or 👎 to teach Ellipsis.
1. .github/workflows/template-tauri-build-macos-external.yml:89
  • Draft comment:
    Removed the explicit 'rustup target add x86_64-apple-darwin' call. Ensure that relying on the Makefile’s 'install-rust-targets' target provides the needed Rust targets consistently.
  • Reason this comment was not posted:
    Decided after close inspection that this draft comment was likely wrong and/or not actionable: usefulness confidence = 10% vs. threshold = 50% This comment is asking for verification that the build will still work, which violates our rules. It's asking the author to "ensure" something works, which is a form of asking for confirmation. The build system will naturally fail if the required rust targets aren't available, so this doesn't need manual verification. Maybe the comment is trying to highlight a potential build reliability issue that could affect other developers? Even if there is a potential issue, the CI build itself will fail if the targets aren't properly installed. We don't need a comment asking for verification. Delete this comment as it's asking for verification of something that would be caught by the build system anyway.
2. .github/workflows/template-tauri-build-macos.yml:45
  • Draft comment:
    The manual steps to download, extract, and combine 'bun' and 'uv' universal binaries have been removed. Confirm that an alternative mechanism (e.g. prebuilt binaries) is in place so that required assets are still available.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.

Workflow ID: wflow_7BeouwcH9gFg9FbI

You can customize Ellipsis by changing your verbosity settings, reacting with 👍 or 👎, replying to comments, or adding code review rules.

yarn build:extensions && yarn build:extensions-web

# Install required Rust targets for macOS universal builds
install-rust-targets:
Copy link
Contributor

Choose a reason for hiding this comment

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

New 'install-rust-targets' target has been added and is now a dependency for both 'build' and 'build-and-publish'. As a best practice, consider declaring these non-file targets (e.g. install-rust-targets, build, build-and-publish) as .PHONY to avoid conflicts if a file with the same name exists.

@github-actions
Copy link
Contributor

Barecheck - Code coverage report

Total: 29.37%

Your code coverage diff: -0.01% ▾

✅ All code changes are covered

@Minh141120 Minh141120 merged commit 55edc71 into release/v0.6.10 Sep 15, 2025
17 checks passed
@Minh141120 Minh141120 deleted the chore/makefile-rust-targets branch September 15, 2025 05:03
@github-project-automation github-project-automation bot moved this to QA in Jan Sep 15, 2025
@github-actions github-actions bot added this to the v0.6.10 milestone Sep 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants