Skip to content

CircleCI: added job for building SDK with SPM#1860

Merged
NachoSoto merged 2 commits into
mainfrom
swift-build
Aug 23, 2022
Merged

CircleCI: added job for building SDK with SPM#1860
NachoSoto merged 2 commits into
mainfrom
swift-build

Conversation

@NachoSoto

@NachoSoto NachoSoto commented Aug 23, 2022

Copy link
Copy Markdown
Contributor

Fixes CSDK-221.

SPM requires explicit import Foundation statements. Missing these could go unnoticed, so this new step will ensure that we don't break compilation with SPM.

Fixes [CSDK-221].

SPM requires explicit `import Foundation` statements. Missing these could go unnoticed, so this new step will ensure that we don't break compilation with SPM.
@NachoSoto NachoSoto added the test label Aug 23, 2022
@NachoSoto NachoSoto requested a review from a team August 23, 2022 01:03
@aboedo

aboedo commented Aug 23, 2022

Copy link
Copy Markdown
Member

this would also be caught by the SPM installation tests, but if this runs quick enough that we can run it for all commits, I'm all for it

@NachoSoto

Copy link
Copy Markdown
Contributor Author

Yeah this is super fast. I think it makes sense to compile only for every PR and the integration test for releases.

@NachoSoto NachoSoto merged commit 4b857e6 into main Aug 23, 2022
@NachoSoto NachoSoto deleted the swift-build branch August 23, 2022 19:53
@vegaro vegaro mentioned this pull request Aug 26, 2022
kaushikpaperboat pushed a commit to Kiddopia/purchases-ios that referenced this pull request Sep 7, 2022
* rc-4.11.0: (964 commits)
  Update RevenueCat-Swift.h for version 4.11.0
  Version bump for 4.11.0
  skip if needed and adds automatic_release (RevenueCat#1870)
  Fixed crash on `async` SK1 cancelled purchase (RevenueCat#1869)
  Added `beginRefundRequest` overload with completion block (RevenueCat#1861)
  Release/4.10.3 (RevenueCat#1867)
  Update fastlane-plugin-revenuecat_internal and fix release-train job (RevenueCat#1866)
  fix typo in comment (RevenueCat#1863)
  Use Dangerfile repository (RevenueCat#1864)
  `CircleCI`: added job for building SDK with `SPM` (RevenueCat#1860)
  `TrialOrIntroPriceEligibilityChecker`: return `.noIntroOfferExists` if the product has no introductory offer (RevenueCat#1859)
  `Lock`: changed default implementation to use `NSLock` (RevenueCat#1819)
  `Offering: Sendable` conformance (RevenueCat#1826)
  `ReceiptParser: Sendable` conformance (RevenueCat#1825)
  `CustomerInfo: Sendable` conformance (RevenueCat#1824)
  Added `Collection.onlyElement` (RevenueCat#1857)
  README updates (RevenueCat#1856)
  `IntegrationTests`: actually fail test if tests aren't configured (RevenueCat#1855)
  `watchOS`: fixed crash on single-target apps (RevenueCat#1849)
  Prepare next version: 4.11.0-SNAPSHOT (RevenueCat#1854)
  ...

# Conflicts:
#	.circleci/config.yml
#	.jazzy.yaml
#	.version
#	CHANGELOG.latest.md
#	CHANGELOG.md
#	Gemfile.lock
#	Package.swift
#	Purchases/Attribution/RCAttributionFetcher.h
#	Purchases/Attribution/RCAttributionFetcher.m
#	Purchases/Attribution/RCAttributionPoster.m
#	Purchases/Attribution/RCAttributionTypeFactory.h
#	Purchases/Attribution/RCAttributionTypeFactory.m
#	Purchases/Caching/RCDeviceCache.m
#	Purchases/Misc/RCSystemInfo.m
#	Purchases/Networking/RCBackend.h
#	Purchases/Networking/RCBackend.m
#	Purchases/ProtectedExtensions/RCAttributionTypeFactory+Protected.h
#	Purchases/Public/RCPurchases.h
#	Purchases/Public/RCPurchases.m
#	Purchases/Public/RCPurchasesErrorUtils.h
#	Purchases/Public/RCPurchasesErrorUtils.m
#	Purchases/Purchasing/RCOfferingsFactory.m
#	Purchases/Purchasing/RCStoreKitRequestFetcher.h
#	Purchases/Purchasing/RCStoreKitRequestFetcher.m
#	Purchases/SubscriberAttributes/RCSubscriberAttributesManager.h
#	Purchases/SubscriberAttributes/RCSubscriberAttributesManager.m
#	PurchasesCoreSwift.podspec
#	PurchasesCoreSwift/Info.plist
#	PurchasesCoreSwift/Logging/Strings/AttributionStrings.swift
#	PurchasesCoreSwift/Logging/Strings/IdentityStrings.swift
#	PurchasesCoreSwift/Logging/Strings/OfferingStrings.swift
#	PurchasesCoreSwift/Misc/OperationDispatcher.swift
#	PurchasesCoreSwift/SubscriberAttributes/SpecialSubscriberAttributes.swift
#	PurchasesTests/Info.plist
#	PurchasesTests/Mocks/MockAttributionFetcher.swift
#	PurchasesTests/Mocks/MockAttributionTypeFactory.swift
#	PurchasesTests/Mocks/MockBackend.swift
#	PurchasesTests/Mocks/MockOfferingsFactory.swift
#	PurchasesTests/Mocks/MockRequestFetcher.swift
#	PurchasesTests/Networking/BackendTests.swift
#	PurchasesTests/Purchasing/OfferingsTests.swift
#	PurchasesTests/Purchasing/PurchasesTests.swift
#	PurchasesTests/SubscriberAttributes/PurchasesSubscriberAttributesTests.swift
#	RevenueCat.podspec
#	Sources/Info.plist
#	Tests/BackendIntegrationTestApp/Info.plist
#	Tests/BackendIntegrationTests/Info.plist
#	Tests/InstallationTests/CocoapodsInstallation/Gemfile.lock
#	Tests/InstallationTests/XcodeDirectInstallation/XcodeDirectInstallation.xcodeproj/project.pbxproj
#	Tests/UnitTests/Attribution/AttributionTypeFactoryTests.swift
#	Tests/UnitTests/Info.plist
#	Tests/UnitTests/Mocks/MockProductsRequest.swift
#	Tests/UnitTests/Mocks/MockSubscriberAttributesManager.swift
#	Tests/UnitTests/Purchasing/StoreKitRequestFetcherTests.swift
#	fastlane/Fastfile
NachoSoto added a commit that referenced this pull request Sep 13, 2022
See #1860.

We want to ensure that the framework can be correctly compiled with SPM, so I think it makes sense to ensure that the _RELEASE_ version of it can be compiled specifically.
We have a lot of coverage of `DEBUG` builds basically by most other CI jobs, so this provides coverage of the release build as well.

See #1902 for example for the type of change that could break release builds if not covered in CI.
NachoSoto added a commit that referenced this pull request Sep 15, 2022
See #1860.

We want to ensure that the framework can be correctly compiled with SPM,
so I think it makes sense to ensure that the _RELEASE_ version of it can
be compiled specifically.
We have a lot of coverage of `DEBUG` builds basically by most other CI
jobs, so this provides coverage of the release build as well.

See #1902 for example for the type of change that could break release
builds if not covered in CI.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants