**This is an automatic release.**
### Bugfixes
* [Customer Center] Build `WrongPlatformView` from JSON (#4234) via
Cesar de la Vega (@vegaro)
* Add `feedbackSurveyCompleted` event to Customer Center events (#4194)
via Cesar de la Vega (@vegaro)
### Other Changes
* [Diagnostics] Add `backend_error_code` property (#4236) via Toni Rico
(@tonidero)
* Update README.md (#3986) via Khoa (@onmyway133)
**This is an automatic release.**
### Bugfixes
* Fix `compatibleTopBarTrailing` in MacOS and api tests (#4226) via
Cesar de la Vega (@vegaro)
* [Paywall] Fix restoreStarted not being called on
`presentPaywallIfNeeded` when using `requiredEntitlementIdentifier`
(#4223) via Josh Holtz (@joshdholtz)
* [CustomerCenter] Move sheet and restore alert creation to
`ManageSubscriptionsView` (#4220) via Cesar de la Vega (@vegaro)
* [EXTERNAL] `Custom Entitlements Computation`: fix support display on
debug screen (#4215) by @NachoSoto (#4218) via Toni Rico (@tonidero)
* [Customer Center] Add padding to `No thanks` in promotional offer
screen (#4221) via Cesar de la Vega (@vegaro)
* Fix version number in plist files (#4213) via Cesar de la Vega
(@vegaro)
* fix mac os sandbox check slowness (#3879) via Andy Boedo (@aboedo)
* [Customer Center] Fix `FeedbackSurveyView` not opening (#4208) via
Cesar de la Vega (@vegaro)
* Remove `unneeded_override` disable to fix linter (#4209) via Cesar de
la Vega (@vegaro)
### Dependency Updates
* Bump rexml from 3.3.3 to 3.3.6 in
/Tests/InstallationTests/CocoapodsInstallation (#4210) via
dependabot[bot] (@dependabot[bot])
* Bump rexml from 3.3.3 to 3.3.6 (#4211) via dependabot[bot]
(@dependabot[bot])
### Other Changes
* Update readme wording (#3914) via James Borthwick (@jamesrb1)
* Set a maximum duration for iOS 15 tests (#4229) via Cesar de la Vega
(@vegaro)
* Paywall Components Initial Commit (#4224) via James Borthwick
(@jamesrb1)
* [CustomerCenter] Open App Store when the user wants to update their
app (#4199) via JayShortway (@JayShortway)
* [Customer Center] Shows a warning when the app is not the latest
version (#4193) via JayShortway (@JayShortway)
* Fix integration tests simulator version (#4219) via Cesar de la Vega
(@vegaro)
* Pin swift-docc-plugin to 1.3.0 (#4216) via James Borthwick (@jamesrb1)
**This is an automatic release.**
### New Features
* Price rounding logic (#4132) via James Borthwick (@jamesrb1)
### Bugfixes
* [Customer Center] Migrate to List style (#4190) via Cody Kerns
(@codykerns)
* [Paywalls] Improve locale consistency (#4158) via Josh Holtz
(@joshdholtz)
* Set Paywalls Tester deployment target to iOS 15 (#4196) via James
Borthwick (@jamesrb1)
* [Customer Center] Hide Contact Support button if URL can't be created
(#4192) via Cesar de la Vega (@vegaro)
* Fix the setting for SKIP_INSTALL in Xcode project (#4195) via Andy
Boedo (@aboedo)
* [Customer Center] Improving customer center buttons (#4165) via Cody
Kerns (@codykerns)
* Revert workaround for iOS 18 beta 5 SwiftUI crash (#4173) via Mark
Villacampa (@MarkVillacampa)
* [Paywalls] Make iOS version calculation lazy (#4163) via Mark
Villacampa (@MarkVillacampa)
* [Paywalls] Observe `PurchaseHandler` when owned externally (#4097) via
James Borthwick (@jamesrb1)
### Other Changes
* [Customer Center] Clean up colors in WrongPlatformView and
NoSubscriptionsView (#4204) via Cesar de la Vega (@vegaro)
* Fix failing `all-tests` and retry more flaky tests (#4188) via Josh
Holtz (@joshdholtz)
* Compatibility content unavailable improvements (#4197) via James
Borthwick (@jamesrb1)
* Create lane to enable customer center (#4191) via Cesar de la Vega
(@vegaro)
* XCFramework artifacts in CircleCI (#4189) via Andy Boedo (@aboedo)
* [Customer Center] CustomerCenterViewModel checks whether the app is
the latest version (#4169) via JayShortway (@JayShortway)
* export RevenueCatUI xcframework (#4172) via Andy Boedo (@aboedo)
* Corrects references from ManageSubscriptionsButtonStyle to
ButtonsStyle. (#4186) via JayShortway (@JayShortway)
* Speed up carthage installation tests (#4184) via Andy Boedo (@aboedo)
* Customer center improvements (#4166) via James Borthwick (@jamesrb1)
* replace `color(from colorInformation:)` global with extension (#4183)
via Andy Boedo (@aboedo)
* Fix tests in main (#4174) via Andy Boedo (@aboedo)
* Enable customer center tests (#4171) via James Borthwick (@jamesrb1)
* [Customer Center] Initial implementation (#3967) via Cesar de la Vega
(@vegaro)
---------
Co-authored-by: Josh Holtz <me@joshholtz.com>
**This is an automatic release.**
### Bugfixes
* Fix Paywalls crash on iOS 18 beta (#4154) via Andy Boedo (@aboedo)
### Dependency Updates
* Bump danger from 9.4.3 to 9.5.0 (#4143) via dependabot[bot]
(@dependabot[bot])
* Bump nokogiri from 1.16.6 to 1.16.7 (#4129) via dependabot[bot]
(@dependabot[bot])
* Bump fastlane from 2.221.1 to 2.222.0 (#4130) via dependabot[bot]
(@dependabot[bot])
### Other Changes
* Update deployment targets for tests (#4145) via Andy Boedo (@aboedo)
* Deploy purchaserTester: clean up dry-run parameter (#4140) via Andy
Boedo (@aboedo)
* Clean up API Testers (#4141) via Andy Boedo (@aboedo)
* More project structure cleanup (#4131) via Andy Boedo (@aboedo)
* temporarily disables purchasetester deploy (#4133) via Andy Boedo
(@aboedo)
* Fix trigger all tests branch (#4135) via Andy Boedo (@aboedo)
* Clean up XCWorkspace and testing apps (#4111) via Andy Boedo (@aboedo)
* tests trigger: add target-branch parameter to trigger from the right
branch (#4121) via Andy Boedo (@aboedo)
* Re-added the RevenueCatUI tests job on every commit (#4113) via Andy
Boedo (@aboedo)
## More project structure cleanup:
- Removes redundant workspace and project files for PurchaseTester
- Cleans up bad references
- Cleans up certificates
- Re-does the process to deploy PurchaseTester, since it was designed to
run from the xcworkspace, which doesn't work anymore.
- adds a `dry-run` option to deploying PurchaseTester and adds a job for
it in the all-tests workflow. It tries building it and archiving but
doesn't actually publish to TestFlight. We didn't really have a test for
this, so it's another thing that could have broken in production.
**This is an automatic release.**
### New Features
* Added new paywall template to support multiple tiered subscriptions
(#4022) via Josh Holtz (@joshdholtz)
### Bugfixes
* Fix certain completion blocks not being dispatched on the main thread
(#4058) via Mark Villacampa (@MarkVillacampa)
* Only checks staged files for leftover API keys. (#4073) via
JayShortway (@JayShortway)
### Other Changes
* [Ci] Fix trigger to run all tests from github actions (#4075) via Andy
Boedo (@aboedo)
* added new workflow to trigger all tests (#4051) via Andy Boedo
(@aboedo)
* Reduce CI jobs (#4025) via Andy Boedo (@aboedo)
---------
Co-authored-by: Andy Boedo <andresboedo@gmail.com>
**This is an automatic release.**
### New Features
* Paywalls with custom purchase and restore logic handlers (#3973) via
James Borthwick (@jamesrb1)
### Bugfixes
* Prevent paywall PurchaseHandler from being cleared on rerender (#4035)
via Josh Holtz (@joshdholtz)
* Update Purchase Tester for 5.0.0 (#4015) via Will Taylor
(@fire-at-will)
### Dependency Updates
* Bump fastlane from 2.221.0 to 2.221.1 (#3977) via dependabot[bot]
(@dependabot[bot])
### Other Changes
* Bring official `xcodes` back to CI (#4029) via Cesar de la Vega
(@vegaro)
* Paywalls tester with sandbox purchases (#4024) via James Borthwick
(@jamesrb1)
* Update v5 migration guide to contain current latest version (#4019)
via Toni Rico (@tonidero)
* CI Build Docs Improvements (#4014) via Will Taylor (@fire-at-will)
* Use available resource class for backend-integration-tests-offline-job
(#4013) via Will Taylor (@fire-at-will)
* Add `X-Preferred-Locales` header (#4008) via Cesar de la Vega
(@vegaro)
---------
Co-authored-by: Toni Rico <antonio.rico.diez@revenuecat.com>
Co-authored-by: Josh Holtz <me@joshholtz.com>
### Description
This should be on the latest version so our automations perform the
replacements correctly. Otherwise, the matching won't work correctly
**This is an automatic release.**
### Dependency Updates
* Bump fastlane from 2.220.0 to 2.221.0 (#3971) via dependabot[bot]
(@dependabot[bot])
* Bump rexml from 3.2.6 to 3.2.8 (#3907) via dependabot[bot]
(@dependabot[bot])
* Bump fastlane-plugin-revenuecat_internal from `8ec0072` to `5f55466`
(#3938) via dependabot[bot] (@dependabot[bot])
### Other Changes
* Fix cocoapods installation tests (#3981) via Toni Rico (@tonidero)
* Remove carthage from CI and update release jobs to use xcode 15 and M1
(#3927) via Cesar de la Vega (@vegaro)
* Bring back offline integration tests on M1 (#3976) via Toni Rico
(@tonidero)
* Fix Carthage (#3978) via James Borthwick (@jamesrb1)
* Revert "Run offline backend integration tests on M1 machines (#3961)"
(#3974) via Toni Rico (@tonidero)
* Run offline backend integration tests on M1 machines (#3961) via Toni
Rico (@tonidero)
* Xcode project with RevenueCatUI + Tests (#3960) via James Borthwick
(@jamesrb1)
* Clone to spm using fastlane (#3926) via James Borthwick (@jamesrb1)
* finishTransactions/ObserverMode -> PurchasesAreCompletedBy (#3947) via
James Borthwick (@jamesrb1)
* Switch tests for iOS 12 and 13 to M1 (#3958) via Toni Rico (@tonidero)
* Fix prepare next version job (#3939) via Toni Rico (@tonidero)
Version 5 is removing carthage support in
https://github.com/RevenueCat/purchases-ios/pull/3582/files since it is
not compatible with M1 machines.
Since CircleCI is sunsetting intel machines on June 28th, I thought it
would be ideal to have this PR ready, in case we don't merge v5 before
that date.
Until then, we can keep using intel and xcode 14 for releases