Skip to content

Commit 3af500f

Browse files
committed
Add opt-in Skip Fuse support for Android transpilation
Gated behind SKIP_FUSE=1 so normal builds are unaffected. Adds a Sources/CoreModelSQLite/Skip/skip.yml configured for mode: native and a CI job that builds with the flag set.
1 parent 5b6c22e commit 3af500f

3 files changed

Lines changed: 36 additions & 0 deletions

File tree

‎.github/workflows/swift.yml‎

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,17 @@ jobs:
3838
- name: Test
3939
run: swift test -c ${{ matrix.config }}
4040

41+
skip-fuse:
42+
name: Skip Fuse (Android)
43+
runs-on: macos-26
44+
steps:
45+
- name: Checkout
46+
uses: actions/checkout@v4
47+
- name: Swift Version
48+
run: swift --version
49+
- name: Build (Skip Fuse)
50+
run: SKIP_FUSE=1 swift build --target CoreModelSQLite
51+
4152
android:
4253
name: Android
4354
runs-on: macos-15

‎Package.swift‎

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,3 +58,26 @@ let package = Package(
5858
)
5959
]
6060
)
61+
62+
// Skip (skip.dev) Fuse (native) transpilation support
63+
let enableSkipFuse = ProcessInfo.processInfo.environment["SKIP_FUSE"] == "1"
64+
if enableSkipFuse {
65+
// Skip requires higher minimum deployment targets
66+
package.platforms = [
67+
.macOS(.v13),
68+
.iOS(.v16),
69+
.watchOS(.v9),
70+
.tvOS(.v16),
71+
.macCatalyst(.v16),
72+
]
73+
package.dependencies += [
74+
.package(url: "https://source.skip.tools/skip.git", from: "1.9.0"),
75+
.package(url: "https://source.skip.tools/skip-fuse.git", from: "1.0.0"),
76+
]
77+
package.targets[0].dependencies += [
78+
.product(name: "SkipFuse", package: "skip-fuse")
79+
]
80+
package.targets[0].plugins = (package.targets[0].plugins ?? []) + [
81+
.plugin(name: "skipstone", package: "skip")
82+
]
83+
}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
skip:
2+
mode: 'native'

0 commit comments

Comments
 (0)