Add opt-in Skip Fuse support for Android transpilation#20
Merged
Conversation
Gated behind SKIP_FUSE=1 so normal builds are unaffected. Skip Lite (Kotlin transpilation) was attempted first but CoreModel's macros, retroactive Foundation conformances, and generic initializers aren't representable in Kotlin; Fuse compiles real Swift natively via the Swift Android SDK, so it builds CoreModel unmodified.
Mirrors the local verification: builds the CoreModel target with SKIP_FUSE=1 so the new opt-in Fuse dependency wiring in Package.swift is exercised on every push.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
SKIP_FUSE=1build configuration that depends onSkipFuseand attaches theskipstoneplugin to theCoreModeltarget, enabling native Skip Fuse compilation for Android.Sources/CoreModel/Skip/skip.ymlconfigured formode: 'native'.swift build/swift test) are unaffected since this only activates underSKIP_FUSE=1.Skip Lite (Kotlin transpilation) was evaluated first but rejected: CoreModel's macros, retroactive Foundation conformances (
UUID/String/Optional), and generic initializers aren't representable in Kotlin's type system. Skip Fuse compiles real Swift natively via the Swift Android SDK/JNI bridge, soCoreModelbuilds for Android unmodified.Test plan
swift build/swift testpass unchanged (17 tests, 6 suites)SKIP_FUSE=1 swift build --target CoreModelsucceeds (verified locally)