-
Notifications
You must be signed in to change notification settings - Fork 318
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: RouteOptions conformance to NSCopying in extension breaks archiving with BUILD_LIBRARY_FOR_DISTRIBUTION=YES #3478
Comments
This extension is used by |
@ynnadrules Can you please share what you are trying to do with enabled library evolution? We don't currently support it formally, so, even if we fix the compilation error above, you won't be able to guarantee that next version will be runtime-compatible with the previous version, even if there are no API breaking changes. |
@S2Ler Ah I see. What I'm trying to do is produce a release build of a framework that uses the mapbox sdk, then distribute that binary as a Swift Package. This is my first real foray into distributing a framework this way so I've been fumbling my way through different approaches, but kept running into this compilation error when running Producing a release build seems to work fine w/o |
#3484 implements a targeted workaround to get rid of the need for |
We haven’t audited our enumerations for freezability and may add new cases to some enumerations in the future. If I remember correctly, that can cause problems for binary compatibility even when we’re able to avoid breaking source compatibility. Can you elaborate on why you need to redistribute the SDK as a binary package specifically, as opposed to allowing your package’s users to build it from source? |
@1ec5 My client has an SDK (currently a single framework) that they would like distribute as binary (an xcframework). This SDK offers some features that rely on mapbox, such as maps, navigation, directions. The idea was then to use SPM to distribute this binary as a Swift Package with binary target dependency. Since the Mapbox SDKs don't support library evolution yet, it doesn't seem worth the effort to try to distribute my client's SDK as a closed source binary. On top of that, my client's SDK has swift package dependencies and according to this WWDC talk this type of setup isn't supported. |
Mapbox Navigation SDK version
2.0.0-rc.5
Steps to reproduce
Expected behavior
I expect the archive to complete successfully.
Actual behavior
The archive fails with these errors:
Is this a one-time issue or a repeatable issue?
repeatable
The text was updated successfully, but these errors were encountered: