Skip to content

Compile the macOS front end - #16

Merged
MAXAWER merged 3 commits into
mainfrom
feat/native-front-ends
Aug 27, 2026
Merged

Compile the macOS front end#16
MAXAWER merged 3 commits into
mainfrom
feat/native-front-ends

Conversation

@MAXAWER

@MAXAWER MAXAWER commented Aug 27, 2026

Copy link
Copy Markdown
Owner

The macOS job in #15 was the first machine ever to compile the Swift front end, and it failed - which is what that job is for. Two real errors:

  • onChange(of:) without an argument in the closure is macOS 14, and the app targets 13.
  • A conditional between two implicit-member colours (.white.opacity(...) and .clear) gives the generic shape-style parameter nothing to infer from.

Three things fixed while it was red anyway: the view is on the main actor, main.swift became MThreadDrawApp.swift so @main stands without an unsafe compiler flag, and standard error is drained rather than left to fill - a pipe nobody reads stops at 64 KB and the writer blocks for ever, so the engine would have hung instead of failing, and its last words are what says why.

The workflow also now triggers on macos/** and winui/**. It did not, which is why the fix for the macOS build could not run the macOS build.

The macOS job is the first machine to have built it, and it found what
was waiting: onChange without an argument is macOS 14 and this targets
13, and a conditional between two implicit member colours has no type to
infer from. Both are the kind of thing no amount of reading finds.

Three things fixed while the build was red anyway. The view is on the
main actor, which is where it was going to end up. main.swift is now
MThreadDrawApp.swift, so @main stands on its own and the package needs
no unsafe compiler flag to allow it. And standard error is drained
rather than left to fill: a pipe nobody reads stops at 64 KB and the
writer blocks for ever, so the engine would have hung instead of
failing - and its last words are exactly what says why.
The previous commit pushed a Swift string literal with an actual line
break in it, which does not compile. Written by a script whose escapes
did not survive the trip through the shell.
The paths that trigger this workflow listed the packaging scripts but
not the two applications they package, so the commit that fixed the
macOS build could not run the macOS build.
@MAXAWER
MAXAWER merged commit 978bf01 into main Aug 27, 2026
13 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.

1 participant