Repository navigation
fix(macOS): restore native toolbar bubbles in release builds - #1742
Conversation
|
This pull request has been ignored for the connected project Preview Branches by Supabase. |
|
Claude diff review of 8749703 (no tests executed). Review: PR #1742 @ 8749703Scope: 2 workflow edits, 1 Gradle task, 1 new Python script, 1 new test file. Review is diff-only; I could not verify surrounding Gradle code, the rest of the release workflow, or actual Confirmed defects / inconsistencies1. # Signing the bundle signs its main executable and rebuilds the resource seal.
# Nested libraries are unchanged; the existing native-signing finalizer follows.But mustRunAfter("createDistributable", "stripForeignPlatformNatives", "signPty4jBinaries", "extractCLIToAppResources")The finalizer precedes, it does not follow. The chosen order is the correct one (re-sealing after nested signing), but the stale comment invites a future maintainer to reorder and silently break the seal. Fix the comment. 2. MIN_SDK = (26, 0)
...
run("xcrun", "vtool", "-arch", arch, "-set-build-version",
"macos", minimum, "26.0", "-replace", ...)Bumping 3. 4. 5. 6. Positive note: the Uncertain observations (need verification against code not in the diff)7. Only the non-release Compose task variants are wired. The diff hooks 8. tasks.named("prepareMacOSAppearance") {
mustRunAfter("createDistributable", "stripForeignPlatformNatives", "signPty4jBinaries", "extractCLIToAppResources")
}Unlike the adjacent 9. 10. Release gate is unconditional. The new step in 11. 12. Test gaps
Also worth noting: |
Description
The released BOSS launcher declares macOS SDK 14.2, while the local development Java launcher declares SDK 26.5. AppKit therefore gives the packaged app older toolbar styling even though both paths create the same bordered native toolbar items. This explains the missing icon bubbles in release.
Port BossTerm's launcher preparation step: use Apple's
vtoolto opt each older Mach-O slice into SDK 26.0, preserving its deployment target and executable instructions, then re-sign the bundle. Run this after native trimming, PTY signing and CLI extraction, before DMG packaging. Windows/Linux packaging is unchanged.Apple describes SDK adoption and native toolbar styling in Build an AppKit app with the new design. This adapts the existing BossTerm approach to jpackage's prebuilt launcher rather than changing the Java runtime or copying debug preferences.
Validation
Type and version impact
Separate sidebar resize follow-up: #1741. This PR has no dependency on that change.