mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-01-27 10:18:54 +00:00
As far as I can tell, the `async_runtime` config option doesn't exist in UniFFI, hence we remove that. Whilst going through the UniFFI docs, I also noticed that there is a specific flag about Android that we can toggle on. Effectively, this uses the shared [`SystemCleaner`](https://developer.android.com/reference/android/system/SystemCleaner) instead of a per-thread one which is supposed to be more performant. Finally, using immutable records seems like a good idea as mutating any FFI-originated field is not going to be reflected in connlib's state. Preventing that at compile-time has a good chance of reducing bugs.
13 lines
304 B
TOML
13 lines
304 B
TOML
# UniFFI Configuration for client-ffi
|
|
|
|
[bindings.swift]
|
|
# Enable experimental features for better async support
|
|
experimental_sendable_value_types = true
|
|
|
|
# Generate proper Swift concurrency annotations
|
|
generate_immutable_records = true
|
|
|
|
[bindings.kotlin]
|
|
android = true
|
|
generate_immutable_records = true
|