Add PayPalCheckout to Demo App - Required to Run on Device #1170
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.
Summary of changes
I spent some time exploring alternatives (using SPM or Cocoapods) for the demo app. The major downside to not using a "direct/carthage" integration is that we would need to be tied to a branch name or version vs linking the library directly like we do today. This would mean when adding features we'd need to change the branch to add the feature to our Demo app, then change it back to main/a specific version post merge in a separate PR.
IMO having to switch the branch around regularly seems like a pain as well as something that could easily get missed and our Demo app would be building on an old SDK version for some time if we forget to open the subsequent PR. The "best" path forward is to continue to link PayPal Checkout via SPM in the demo app as we did previously. The obvious con is that we have removed and added this again multiple times because it is hard to tell running on simulator that it's necessary.
Open question: is there a better way to add "building on device" to our development process or is there a way to automate a on device build via CI in the future? This could potentially eliminate this issue but would be a separate exploration on feasibility.
Checklist
[ ] Added a changelog entryAuthors