also looking at this
feat(ios): AR moves to Zig — ratchet 18 -> 13
#126
5 files
+1480
-10
| @@ -43,6 +43,7 @@ const zig_sources = [_][]const u8{ | ||
| 43 | 43 | @embedFile("src/bridge_mobile_watch.zig"), |
| 44 | 44 | @embedFile("src/bridge_mobile_location.zig"), |
| 45 | 45 | @embedFile("src/bridge_mobile_locrecording.zig"), |
| 46 | @embedFile("src/bridge_mobile_ar.zig"), | |
| 46 | 47 | @embedFile("src/bridge_mobile_motion.zig"), |
| 47 | 48 | @embedFile("src/bridge_mobile_imagepicker.zig"), |
| 48 | 49 | @embedFile("src/bridge_mobile_filepicker.zig"), |
| @@ -121,7 +122,7 @@ const dispatch_end = "func webView("; | ||
| 121 | 122 | /// and `deliverErrorCode` landed the day after that was written. Worth |
| 122 | 123 | /// re-reading the other deferrals for the same reason before assuming they |
| 123 | 124 | /// still hold. |
| 124 | const max_not_yet_migrated: usize = 18; | |
| 125 | const max_not_yet_migrated: usize = 13; | |
| 125 | 126 | |
| 126 | 127 | fn dispatcherRegion() []const u8 { |
| 127 | 128 | const begin = std.mem.indexOf(u8, swift_spec, dispatch_begin) orelse return ""; |
| @@ -270,11 +271,6 @@ const deliberate_deferrals = [_]Deferral{ | ||
| 270 | 271 | // 51 namespaces, no `mobile`, and neither `ios.zig` nor `ios_dispatch.zig` |
| 271 | 272 | // reads it — so the boundary is recorded here instead, where the tooling |
| 272 | 273 | // that counts unmigrated actions can see it. |
| 273 | .{ .action = "startAR", .reason = "SceneKit node-graph glue; miserable and low-value through objc_msgSend" }, | |
| 274 | .{ .action = "stopAR", .reason = "SceneKit node-graph glue; miserable and low-value through objc_msgSend" }, | |
| 275 | .{ .action = "getARPlanes", .reason = "SceneKit node-graph glue; miserable and low-value through objc_msgSend" }, | |
| 276 | .{ .action = "placeARObject", .reason = "SceneKit node-graph glue; miserable and low-value through objc_msgSend" }, | |
| 277 | .{ .action = "removeARObject", .reason = "SceneKit node-graph glue; miserable and low-value through objc_msgSend" }, | |
| 278 | 274 | |
| 279 | 275 | // StoreKit 2. Narrower than "no ObjC surface": StoreKit *1* is ObjC and |
| 280 | 276 | // `bridge_iap.zig` already drives it from Zig on macOS, so this is a choice |
| @@ -347,7 +343,7 @@ test "every recorded deferral is real, and still a deferral" { | ||
| 347 | 343 | } |
| 348 | 344 | |
| 349 | 345 | // Non-vacuity: the loop above is satisfied by an empty table. |
| 350 | try testing.expect(deliberate_deferrals.len >= 18); | |
| 346 | try testing.expect(deliberate_deferrals.len >= 13); | |
| 351 | 347 | |
| 352 | 348 | // As of this commit the table happens to cover every unmigrated action, |
| 353 | 349 | // but that is not asserted. Pinning the exact count would make migrating a |