Skip to content

Commit

Permalink
[AUTOMATIC] Release/4.27.0 (#3270)
Browse files Browse the repository at this point in the history
**This is an automatic release.**

### New Features
* Add `Attribution.setOnesignalUserID` (#3268) via Raquel Diez
(@Raquel10-RevenueCat)
* StoreKit In App messages support (#3252) via Toni Rico (@tonidero)
### Other Changes
* Remove ObjC showStoreMessages API (#3269) via Toni Rico (@tonidero)
* PaywallsTester: add a new tab that calls presentPaywallIfNeeded
(#3259) via Andy Boedo (@aboedo)
* `Paywalls`: small PaywallsTester refactor (#3261) via NachoSoto
(@NachoSoto)
  • Loading branch information
RCGitBot authored Oct 3, 2023
1 parent f06740f commit b39caa5
Show file tree
Hide file tree
Showing 8 changed files with 98 additions and 62 deletions.
2 changes: 1 addition & 1 deletion .version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
4.27.0-SNAPSHOT
4.27.0
23 changes: 6 additions & 17 deletions CHANGELOG.latest.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,7 @@
### RevenueCatUI
* `Paywalls`: polished template 4 layout math (#3249) via NachoSoto (@NachoSoto)
* `Paywalls`: improved template 1 iPad layout and iOS 15 fix (#3241) via NachoSoto (@NachoSoto)
* `Paywalls`: polished `PurchaseButton` on iPad (#3240) via NachoSoto (@NachoSoto)
### Dependency Updates
* Bump cocoapods from 1.12.1 to 1.13.0 (#3251) via dependabot[bot] (@dependabot[bot])
### New Features
* Add `Attribution.setOnesignalUserID` (#3268) via Raquel Diez (@Raquel10-RevenueCat)
* StoreKit In App messages support (#3252) via Toni Rico (@tonidero)
### Other Changes
* `Paywalls`: added previews for `IntroEligibilityStateView` (#3248) via NachoSoto (@NachoSoto)
* `debugRevenueCatOverlay`: added list of active entitlements (#3247) via NachoSoto (@NachoSoto)
* PaywallsTester: allow easy testing of paywall modes for All Offerings tab (#3254) via Andy Boedo (@aboedo)
* PaywallsTester: allow resizing on macOS (#3258) via Andy Boedo (@aboedo)
* PaywallsTester: replace opening default paywall automatically with button (#3256) via Andy Boedo (@aboedo)
* PaywallsTester: fix StoreKit Configuration scheme (#3257) via Andy Boedo (@aboedo)
* PaywallsTester: improve navigation on macOS and iPadOS (#3255) via Andy Boedo (@aboedo)
* `PrivacyInfo.xcprivacy`: changed `NSPrivacyCollectedDataTypePurchaseHistory` to `false` (#3242) via NachoSoto (@NachoSoto)
* `Paywalls`: changed `PaywallsTester` to allow not configuring API key (#3244) via NachoSoto (@NachoSoto)
* `Paywalls`: renamed `SimpleApp` to `PaywallsTester` (#3243) via NachoSoto (@NachoSoto)
* Make revisionID private in PaywallData+Default (#3239) via Cesar de la Vega (@vegaro)
* Remove ObjC showStoreMessages API (#3269) via Toni Rico (@tonidero)
* PaywallsTester: add a new tab that calls presentPaywallIfNeeded (#3259) via Andy Boedo (@aboedo)
* `Paywalls`: small PaywallsTester refactor (#3261) via NachoSoto (@NachoSoto)
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
## 4.27.0
### New Features
* Add `Attribution.setOnesignalUserID` (#3268) via Raquel Diez (@Raquel10-RevenueCat)
* StoreKit In App messages support (#3252) via Toni Rico (@tonidero)
### Other Changes
* Remove ObjC showStoreMessages API (#3269) via Toni Rico (@tonidero)
* PaywallsTester: add a new tab that calls presentPaywallIfNeeded (#3259) via Andy Boedo (@aboedo)
* `Paywalls`: small PaywallsTester refactor (#3261) via NachoSoto (@NachoSoto)

## 4.26.2
### RevenueCatUI
* `Paywalls`: polished template 4 layout math (#3249) via NachoSoto (@NachoSoto)
Expand Down
2 changes: 1 addition & 1 deletion RevenueCat.podspec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = "RevenueCat"
s.version = "4.27.0-SNAPSHOT"
s.version = "4.27.0"
s.summary = "Subscription and in-app-purchase backend service."

s.description = <<-DESC
Expand Down
2 changes: 1 addition & 1 deletion Sources/Misc/SystemInfo.swift
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ class SystemInfo {
}

static var frameworkVersion: String {
return "4.27.0-SNAPSHOT"
return "4.27.0"
}

static var systemVersion: String {
Expand Down
118 changes: 78 additions & 40 deletions Tests/InstallationTests/CommonFiles/RevenueCat-Swift.h
Original file line number Diff line number Diff line change
Expand Up @@ -431,7 +431,7 @@ SWIFT_AVAILABILITY(watchos,unavailable) SWIFT_AVAILABILITY(tvos,unavailable) SWI
/// </ul>
- (void)setMparticleID:(NSString * _Nullable)mparticleID;
/// Subscriber attribute associated with the OneSignal Player ID for the user.
/// Required for the RevenueCat OneSignal integration.
/// Required for the RevenueCat OneSignal integration. Deprecated for OneSignal versions above v9.0.
/// <h4>Related Articles</h4>
/// <ul>
/// <li>
Expand All @@ -440,6 +440,16 @@ SWIFT_AVAILABILITY(watchos,unavailable) SWIFT_AVAILABILITY(tvos,unavailable) SWI
/// </li>
/// </ul>
- (void)setOnesignalID:(NSString * _Nullable)onesignalID;
/// Subscriber attribute associated with the OneSignal User ID for the user.
/// Required for the RevenueCat OneSignal integration with versions v11.0 and above.
/// <h4>Related Articles</h4>
/// <ul>
/// <li>
/// <a href="https://docs.revenuecat.com/docs/onesignal">OneSignal RevenueCat Integration</a>
/// *- Parameter onesignalUserID: Empty String or <code>nil</code> will delete the subscriber attribute.
/// </li>
/// </ul>
- (void)setOnesignalUserID:(NSString * _Nullable)onesignalUserID;
/// Subscriber attribute associated with the Airship Channel ID for the user.
/// Required for the RevenueCat Airship integration.
/// <h4>Related Articles</h4>
Expand Down Expand Up @@ -609,6 +619,18 @@ SWIFT_CLASS_NAMED("Builder")
- (RCConfigurationBuilder * _Nonnull)withStoreKit1Timeout:(NSTimeInterval)storeKit1Timeout SWIFT_WARN_UNUSED_RESULT;
/// Set <code>platformInfo</code>.
- (RCConfigurationBuilder * _Nonnull)withPlatformInfo:(RCPlatformInfo * _Nonnull)platformInfo SWIFT_WARN_UNUSED_RESULT;
/// Set <code>showStoreMessagesAutomatically</code>. Enabled by default.
/// If enabled, if the user has billing issues, has yet to accept a price increase consent or
/// there are other messages from StoreKit, they will be displayed automatically when the app is initialized.
/// If you want to disable this behavior so that you can customize when these messages are shown, make sure
/// you configure the SDK as early as possible in the app’s lifetime, otherwise messages will be displayed
/// automatically.
/// Then use the <code>Purchases/showStoreMessages(for:)</code> method to display the messages.
/// More information: https://rev.cat/storekit-message
/// important:
/// Set this property only if you’re using Swift. If you’re using ObjC, you won’t be able to call
/// the related methods
- (RCConfigurationBuilder * _Nonnull)withShowStoreMessagesAutomatically:(BOOL)showStoreMessagesAutomatically SWIFT_WARN_UNUSED_RESULT;
/// Set <code>Configuration/EntitlementVerificationMode</code>.
/// Defaults to <code>Configuration/EntitlementVerificationMode/disabled</code>.
/// The result of the verification can be obtained from <code>EntitlementInfos/verification</code> or
Expand Down Expand Up @@ -1463,13 +1485,6 @@ SWIFT_CLASS_NAMED("Package")



@class SKProduct;

@interface RCPackage (SWIFT_EXTENSION(RevenueCat))
/// <code>SKProduct</code> assigned to this package. https://developer.apple.com/documentation/storekit/skproduct
@property (nonatomic, readonly, strong) SKProduct * _Nonnull product SWIFT_AVAILABILITY(maccatalyst,obsoleted=1,message="'product' has been renamed to 'storeProduct': Use StoreProduct instead") SWIFT_AVAILABILITY(macos,obsoleted=1,message="'product' has been renamed to 'storeProduct': Use StoreProduct instead") SWIFT_AVAILABILITY(watchos,obsoleted=1,message="'product' has been renamed to 'storeProduct': Use StoreProduct instead") SWIFT_AVAILABILITY(tvos,obsoleted=1,message="'product' has been renamed to 'storeProduct': Use StoreProduct instead") SWIFT_AVAILABILITY(ios,obsoleted=1,message="'product' has been renamed to 'storeProduct': Use StoreProduct instead");
@end


@interface RCPackage (SWIFT_EXTENSION(RevenueCat))
/// \param packageType A <code>PackageType</code>.
Expand All @@ -1486,6 +1501,13 @@ SWIFT_CLASS_NAMED("Package")
+ (enum RCPackageType)packageTypeFrom:(NSString * _Nonnull)string SWIFT_WARN_UNUSED_RESULT;
@end

@class SKProduct;

@interface RCPackage (SWIFT_EXTENSION(RevenueCat))
/// <code>SKProduct</code> assigned to this package. https://developer.apple.com/documentation/storekit/skproduct
@property (nonatomic, readonly, strong) SKProduct * _Nonnull product SWIFT_AVAILABILITY(maccatalyst,obsoleted=1,message="'product' has been renamed to 'storeProduct': Use StoreProduct instead") SWIFT_AVAILABILITY(macos,obsoleted=1,message="'product' has been renamed to 'storeProduct': Use StoreProduct instead") SWIFT_AVAILABILITY(watchos,obsoleted=1,message="'product' has been renamed to 'storeProduct': Use StoreProduct instead") SWIFT_AVAILABILITY(tvos,obsoleted=1,message="'product' has been renamed to 'storeProduct': Use StoreProduct instead") SWIFT_AVAILABILITY(ios,obsoleted=1,message="'product' has been renamed to 'storeProduct': Use StoreProduct instead");
@end


/// Enumeration of all possible <code>Package</code> types, as configured on the package.
/// <h4>Related Articles</h4>
Expand Down Expand Up @@ -2547,33 +2569,6 @@ SWIFT_CLASS_NAMED("PlatformInfo")
@end


@interface RCPurchases (SWIFT_EXTENSION(RevenueCat))
/// Enable debug logging. Useful for debugging issues with the lovely team @RevenueCat.
SWIFT_CLASS_PROPERTY(@property (nonatomic, class) BOOL debugLogsEnabled SWIFT_DEPRECATED_MSG("use Purchases.logLevel instead");)
+ (BOOL)debugLogsEnabled SWIFT_WARN_UNUSED_RESULT;
+ (void)setDebugLogsEnabled:(BOOL)newValue;
/// Deprecated
@property (nonatomic) BOOL allowSharingAppStoreAccount SWIFT_DEPRECATED_MSG("Configure behavior through the RevenueCat dashboard instead");
/// Deprecated
+ (void)addAttributionData:(NSDictionary<NSString *, id> * _Nonnull)data fromNetwork:(enum RCAttributionNetwork)network SWIFT_DEPRECATED_MSG("Use the set<NetworkId> functions instead");
/// Send your attribution data to RevenueCat so you can track the revenue generated by your different campaigns.
/// <h4>Related articles</h4>
/// <ul>
/// <li>
/// <a href="https://docs.revenuecat.com/docs/attribution">Attribution</a>
/// </li>
/// </ul>
/// \param data Dictionary provided by the network.
///
/// \param network Enum for the network the data is coming from, see <code>AttributionNetwork</code> for supported
/// networks.
///
/// \param networkUserId User Id that should be sent to the network. Default is the current App User Id.
///
+ (void)addAttributionData:(NSDictionary<NSString *, id> * _Nonnull)data fromNetwork:(enum RCAttributionNetwork)network forNetworkUserId:(NSString * _Nullable)networkUserId SWIFT_DEPRECATED_MSG("Use the set<NetworkId> functions instead");
@end


@interface RCPurchases (SWIFT_EXTENSION(RevenueCat))
/// Configures an instance of the Purchases SDK with a specified <code>Configuration</code>.
/// The instance will be set as a singleton.
Expand Down Expand Up @@ -2669,6 +2664,33 @@ SWIFT_CLASS_PROPERTY(@property (nonatomic, class) BOOL debugLogsEnabled SWIFT_DE



@interface RCPurchases (SWIFT_EXTENSION(RevenueCat))
/// Enable debug logging. Useful for debugging issues with the lovely team @RevenueCat.
SWIFT_CLASS_PROPERTY(@property (nonatomic, class) BOOL debugLogsEnabled SWIFT_DEPRECATED_MSG("use Purchases.logLevel instead");)
+ (BOOL)debugLogsEnabled SWIFT_WARN_UNUSED_RESULT;
+ (void)setDebugLogsEnabled:(BOOL)newValue;
/// Deprecated
@property (nonatomic) BOOL allowSharingAppStoreAccount SWIFT_DEPRECATED_MSG("Configure behavior through the RevenueCat dashboard instead");
/// Deprecated
+ (void)addAttributionData:(NSDictionary<NSString *, id> * _Nonnull)data fromNetwork:(enum RCAttributionNetwork)network SWIFT_DEPRECATED_MSG("Use the set<NetworkId> functions instead");
/// Send your attribution data to RevenueCat so you can track the revenue generated by your different campaigns.
/// <h4>Related articles</h4>
/// <ul>
/// <li>
/// <a href="https://docs.revenuecat.com/docs/attribution">Attribution</a>
/// </li>
/// </ul>
/// \param data Dictionary provided by the network.
///
/// \param network Enum for the network the data is coming from, see <code>AttributionNetwork</code> for supported
/// networks.
///
/// \param networkUserId User Id that should be sent to the network. Default is the current App User Id.
///
+ (void)addAttributionData:(NSDictionary<NSString *, id> * _Nonnull)data fromNetwork:(enum RCAttributionNetwork)network forNetworkUserId:(NSString * _Nullable)networkUserId SWIFT_DEPRECATED_MSG("Use the set<NetworkId> functions instead");
@end


@interface RCPurchases (SWIFT_EXTENSION(RevenueCat))
@property (nonatomic, readonly, copy) NSString * _Nonnull appUserID;
@property (nonatomic, readonly) BOOL isAnonymous;
Expand Down Expand Up @@ -3024,13 +3046,12 @@ SWIFT_CLASS("_TtC10RevenueCat22PurchasesReceiptParser")




@interface PurchasesReceiptParser (SWIFT_EXTENSION(RevenueCat))
- (BOOL)receiptHasTransactionsWithReceiptData:(NSData * _Nonnull)receiptData SWIFT_WARN_UNUSED_RESULT;
@end




@interface PurchasesReceiptParser (SWIFT_EXTENSION(RevenueCat))
/// A default instance of <code>PurchasesReceiptParser</code>
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong, getter=default) PurchasesReceiptParser * _Nonnull default_;)
Expand All @@ -3039,6 +3060,7 @@ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong, getter=defau




SWIFT_CLASS("_TtC10RevenueCat21RCPurchasesErrorUtils") SWIFT_AVAILABILITY(maccatalyst,obsoleted=1) SWIFT_AVAILABILITY(macos,obsoleted=1) SWIFT_AVAILABILITY(watchos,obsoleted=1) SWIFT_AVAILABILITY(tvos,obsoleted=1) SWIFT_AVAILABILITY(ios,obsoleted=1)
@interface RCPurchasesErrorUtils : NSObject
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
Expand Down Expand Up @@ -3133,6 +3155,22 @@ SWIFT_CLASS("_TtC10RevenueCat22StoreKitRequestFetcher")
- (void)request:(SKRequest * _Nonnull)request didFailWithError:(NSError * _Nonnull)error;
@end

/// Type of messages available in StoreKit
/// <h4>Related Symbols</h4>
/// <ul>
/// <li>
/// <code>Purchases/showStoreMessages(for:)</code>
/// </li>
/// </ul>
typedef SWIFT_ENUM_NAMED(NSInteger, RCStoreMessageType, "StoreMessageType", open) {
/// Message shown when there are billing issues in a subscription
RCStoreMessageTypeBillingIssue = 0,
/// Message shown when there is a price increase in a subscription that requires consent
RCStoreMessageTypePriceIncreaseConsent = 1,
/// Generic Store messages
RCStoreMessageTypeGeneric = 2,
};

enum RCStoreProductType : NSInteger;
enum RCStoreProductCategory : NSInteger;
@class NSNumberFormatter;
Expand Down Expand Up @@ -3408,13 +3446,13 @@ typedef SWIFT_ENUM_NAMED(NSInteger, RCSubscriptionPeriodUnit, "Unit", open) {


@interface RCSubscriptionPeriod (SWIFT_EXTENSION(RevenueCat))
@property (nonatomic, readonly, copy) NSString * _Nonnull debugDescription;
/// The number of units per subscription period
@property (nonatomic, readonly) NSInteger numberOfUnits SWIFT_AVAILABILITY(macos,unavailable,message="'numberOfUnits' has been renamed to 'value'") SWIFT_AVAILABILITY(watchos,unavailable,message="'numberOfUnits' has been renamed to 'value'") SWIFT_AVAILABILITY(tvos,unavailable,message="'numberOfUnits' has been renamed to 'value'") SWIFT_AVAILABILITY(ios,unavailable,message="'numberOfUnits' has been renamed to 'value'");
@end


@interface RCSubscriptionPeriod (SWIFT_EXTENSION(RevenueCat))
/// The number of units per subscription period
@property (nonatomic, readonly) NSInteger numberOfUnits SWIFT_AVAILABILITY(macos,unavailable,message="'numberOfUnits' has been renamed to 'value'") SWIFT_AVAILABILITY(watchos,unavailable,message="'numberOfUnits' has been renamed to 'value'") SWIFT_AVAILABILITY(tvos,unavailable,message="'numberOfUnits' has been renamed to 'value'") SWIFT_AVAILABILITY(ios,unavailable,message="'numberOfUnits' has been renamed to 'value'");
@property (nonatomic, readonly, copy) NSString * _Nonnull debugDescription;
@end


Expand Down
2 changes: 1 addition & 1 deletion scripts/docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="refresh" content="0; url=https://revenuecat.github.io/purchases-ios-docs/4.27.0-SNAPSHOT/documentation/revenuecat"/>
<meta http-equiv="refresh" content="0; url=https://revenuecat.github.io/purchases-ios-docs/4.27.0/documentation/revenuecat"/>
</head>
<body>
</body>
Expand Down
2 changes: 1 addition & 1 deletion scripts/docs/v4_api_migration_guide.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="refresh" content="0; url=https://revenuecat.github.io/purchases-ios-docs/4.27.0-SNAPSHOT/documentation/revenuecat/v4_api_migration_guide"/>
<meta http-equiv="refresh" content="0; url=https://revenuecat.github.io/purchases-ios-docs/4.27.0/documentation/revenuecat/v4_api_migration_guide"/>
</head>
<body>
</body>
Expand Down

0 comments on commit b39caa5

Please sign in to comment.