Commit Graph

4 Commits

Author SHA1 Message Date
Mel 8ce9d92af8
MOBILESDK-265: Move analytics to StripeCore (#274)
- Migrated `STPAnalyticsClient` & dependent classes into `StripeCore`
- Exposed internally available analytics code with to spi-public using the `STP` namespace so it could be used from other Stripe modules
- Migrated `STPAPIClient.sharedUrlSessionConfiguration` -> `StripeAPIConfiguration.sharedUrlSessionConfiguration` so it can be shared across modules
- Dependency injected the public key from `STPAPIClient` into `STPAnalyticsClient` via a new `PublishableKeyProvider` protocol
- Created wrappers for protocols declared SPI-public inside `StripeCore` to avoid displaying SPI-public conformance in our docs
- Updated `build_documentation.sh` to clean the pod cache for all Stripe pods
2021-07-08 13:25:07 -07:00
Mel d6cf9fad79
MOBILESDK-260 part2: Create empty StripeCore project (#264)
- Created a new `StripeCore` project (with `Placeholder.swift` file)
- Added `StripeCore.podspec` and new `StripeCore` target in `Packages.swift`
- Updated `check_version.rb` and `update_version.sh` to check & update versions in all `*.podspec` files
- Added `check_podspecs_for_branches.sh` to use during deploy process
2021-06-29 20:07:08 -07:00
Mel ffd1a023e7
MOBILESDK-260 part1: Cleanup build configurations so they can be shared (#263)
- Moved `BuildConfigurations` out of `Stripe` folder and into root directory
- Deleted unused xcconfig files (`LocalizationTester*.xcconfig` and `StripeiOSResources.xcconfig`)
- Migrated `StripeiOS`-specific build settings out of shared xcconfig files and onto the project.
- Added `clean_project_build_settings.sh` to ensure `project.pbxproj` files don't overwrite xcconfig settings (more below)
- Removed build settings from the StripeiOS target that were overriding xcconfigs (using `clean_project_build_settings.sh`)
2021-06-29 18:09:02 -07:00
Mel 3a4cb58b28
MOBILESDK-267: Configure all version strings from VERSION file (#224)
This change updates our release process to update fewer version and enables us to more easily share the version string across multiple frameworks when we split the SDK. We will no longer need to manually edit the version strings for:
- `Info.plist`
- `Stripe.podspec`
- `STPAPIClient.swift`

This change:
1. Adds a `Version.xcconfig` file that controls `StripeiOS` project & build version. This will eventually be shared across multiple frameworks.
2. Adds an `update_version.sh` script that will update the version strings in `Version.xcconfig`, `Stripe.podspec`, and `StripeAPIConfiguration+Version.swift` from the `VERSION` file.
3. Migrates hardcoded version string from `STPAPIClient.STPSDKVersion` into `StripeAPIConfiguration+Version.swift`. This file:
    - Is autogenerated from `VERSION`
    - Will be moved to `StripeCore` as part of MOBILESDK-265
2021-06-24 16:26:18 -07:00