ReactiveX / RxSwift

Reactive Programming in Swift
MIT License
24.37k stars 4.17k forks source link

Explicitly declare `APPLICATION_EXTENSION_API_ONLY` for CocoaPods #2475

Closed lickel closed 1 year ago

lickel commented 1 year ago

This explicitly declares that RxSwift only uses extension safe APIs (and/or APIs in an extension-safe way). The code was already extension safe; this just forward declares it and enforces it at compile time for CocoaPods.

If I can enforce this here, then I can enforce it in Workflow which is dependent on this library. Without this explicit conformance, it is not straightforward to write CI validation that these libraries remain extension safe.

There is zero harm in explicit conformance. Non-extension applications can call into extension-safe libraries without any restrictions.

There was an equivalent PR for ReactiveSwift).

If possible, once this lands, would you be willing to publish a new release as well? That way I would be unblocked in making/landing the change to Workflow. And, thanks!

lickel commented 1 year ago

Thanks!