modularization improvement: static dependency #319
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This makes a couple of updates to our modularization system:
PurchasesCoreSwift
is now static instead of dynamicPurchases
uses the-all_load
linker flag.This makes it so that developers won't need to make any changes to their code in order to use the swift stuff, meaning that they don't have to manually link
PurchasesCoreSwift
or even know that it exists.The changes here were inspired by this (excellent) blog entry that proposes a modularized structure for iOS apps:
https://medium.com/fluxom/building-a-dynamic-modular-ios-architecture-1b87dc31278b
Tested on:
Tested by running the app on physical device, calling methods from the SDK, in particular using the
Transaction
and `nonSubscriptionTransactions, since those were the problematic ones for #314.As well as running the app on each package manager / build system, I also made an archive.
Requirements: