The Rust standard library wants to use the os_sync_wait_on_address family of functions to implement its synchronization primitives (my PR). Unfortunately, this API is only available starting with macOS 14.4 and iOS 17.4, which are way above our minimum supported versions (macOS 10.12 and iOS 10). The private API underlying os_sync_wait_on_address (__ulock_wait) is available however, starting with exactly these versions. Thus, Rust wants to use these functions as a fallback when the public API is not available.
To ensure that code using Rust does not break if and when the private functions get removed, we'll use dlsym to look them up dynamically. The question now is just whether using dlsym to access private API in this way is allowed by the App Store guidelines – we'd very much like to avoid breaking the workflow of our users.
Thank you,
Jonas
Topic:
App Store Distribution & Marketing
SubTopic:
App Review