Skip to content

Commit

Permalink
Release: 3.12.0 (#648)
Browse files Browse the repository at this point in the history
* looks like in some rebase createAlias got un-deprecated, re-deprecated it

* updated changelog and version number to 3.12.0

* added missing PR for identity v3 in changelog

* added install swiflint step to more ci jobs

* fix typo in circleci config.yml

* updated the name of the swiftlint step in xcode so it's more obvious at first glance when it fails

* fixed an issue where a few targets wouldn't compile correctly when doing carthage archive because they were pointing to unreleased versions of Purchases.

* re-added the old carthage script for archives

* added `vendor` folder to excluded directories for swiftlint
  • Loading branch information
aboedo authored Jul 15, 2021
1 parent 9581bcc commit 0b890a7
Show file tree
Hide file tree
Showing 25 changed files with 310 additions and 35 deletions.
9 changes: 7 additions & 2 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,9 @@ commands:
directory:
type: string
steps:
- run:
name: Install swiftlint
command: brew install swiftlint
- install-gems:
directory: << parameters.directory >>
- scan-and-archive:
Expand All @@ -89,8 +92,7 @@ commands:
steps:
- install-gems
- run:
name: Update git commit in SPM package
working_directory: IntegrationTests/SPMIntegration/
name: Update git commit in targets that use SPM for dependencies
command: |
bundle exec fastlane update_swift_package_commit
Expand Down Expand Up @@ -158,6 +160,9 @@ jobs:
steps:
- checkout
- trust-github-key
- run:
name: Install swiftlint
command: brew install swiftlint

# Bundler
- restore_cache:
Expand Down
4 changes: 2 additions & 2 deletions .jazzy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ objc: true
sdk: iphonesimulator
module: Purchases
umbrella_header: Purchases/Public/Purchases.h
module_version: 3.12.0-SNAPSHOT
module_version: 3.12.0
github_url: https://github.com/revenuecat/purchases-ios
github_file_prefix: https://github.com/revenuecat/purchases-ios/tree/3.12.0-SNAPSHOT
github_file_prefix: https://github.com/revenuecat/purchases-ios/tree/3.12.0
output: docs
# Leaving this commented out. We used to specify this before, but now it's working without it
# xcodebuild_arguments: [--objc,Purchases/Public/Purchases.h,--,-x,objective-c,-isysroot,$(xcrun --show-sdk-path),-I,$(pwd)]
3 changes: 2 additions & 1 deletion .swiftlint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@ excluded:
- Examples
- IntegrationTests
- StoreKitTests
- vendor
disabled_rules:
- trailing_comma
identifier_name:
max_length:
warning: 60
error: 80
error: 80
2 changes: 1 addition & 1 deletion .version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.12.0-SNAPSHOT
3.12.0
62 changes: 58 additions & 4 deletions CHANGELOG.latest.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,58 @@
- Updates log message for `createAlias` to improve clarity
https://github.com/RevenueCat/purchases-ios/pull/498
- Adds `rc_` to all Foundation extensions to prevent name collisions
https://github.com/RevenueCat/purchases-ios/pull/500

### Identity V3:

#### New methods
- Introduces `logIn`, a new way of identifying users, which also returns whether a new user has been registered in the system.
`logIn` uses a new backend endpoint.
- Introduces `logOut`, a replacement for `reset`.

#### Deprecations
- deprecates `createAlias` in favor of `logIn`
- deprecates `identify` in favor of `logIn`
- deprecates `reset` in favor of `logOut`
- deprecates `allowSharingAppStoreAccount` in favor of dashboard-side configuration

https://github.com/RevenueCat/purchases-ios/pull/453
https://github.com/RevenueCat/purchases-ios/pull/438
https://github.com/RevenueCat/purchases-ios/pull/506


### Other changes:

#### Public additions
##### SharedPurchases nullability
- Fixed `sharedPurchases` nullability
- Introduced new property, `isConfigured`, that can be used to check whether the SDK has been configured and `sharedPurchases` won't be `nil`.
https://github.com/RevenueCat/purchases-ios/pull/508

##### Improved log handling
- Added new property `logLevel`, which provides more granular settings for the log level. Valid values are `debug`, `info`, `warn` and `error`.
- Added new method, `setLogHandler`, which allows developers to use their own code to handle logging, and integrate their existing systems.
https://github.com/RevenueCat/purchases-ios/pull/481
https://github.com/RevenueCat/purchases-ios/pull/515


#### Deprecations
- Deprecated `debugLogsEnabled` property in favor of `LogLevel`. Use `Purchases.logLevel = .debug` as a replacement.

#### Other

- Fixed CI issues with creating pull requests
https://github.com/RevenueCat/purchases-ios/pull/504
- Improved Github Issues bot behavior
https://github.com/RevenueCat/purchases-ios/pull/507
- Added e-tags to reduce network traffic usage
https://github.com/RevenueCat/purchases-ios/pull/509
- Fixed a warning in Xcode 13 with an outdated path in Package.swift
https://github.com/RevenueCat/purchases-ios/pull/522
- Switched to Swift Package Manager for handling dependencies for test targets.
https://github.com/RevenueCat/purchases-ios/pull/527
- Removed all `fatalError`s from the codebase
https://github.com/RevenueCat/purchases-ios/pull/529
https://github.com/RevenueCat/purchases-ios/pull/527
- Updated link for error message when UserDefaults are deleted outside the SDK
https://github.com/RevenueCat/purchases-ios/pull/531
- Improved many of the templates and added `CODE_OF_CONDUCT.md` to make contributing easier
https://github.com/RevenueCat/purchases-ios/pull/534
https://github.com/RevenueCat/purchases-ios/pull/537
https://github.com/RevenueCat/purchases-ios/pull/589
60 changes: 60 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,63 @@
## 3.12.0

### Identity V3:

#### New methods
- Introduces `logIn`, a new way of identifying users, which also returns whether a new user has been registered in the system.
`logIn` uses a new backend endpoint.
- Introduces `logOut`, a replacement for `reset`.

#### Deprecations
- deprecates `createAlias` in favor of `logIn`
- deprecates `identify` in favor of `logIn`
- deprecates `reset` in favor of `logOut`
- deprecates `allowSharingAppStoreAccount` in favor of dashboard-side configuration

https://github.com/RevenueCat/purchases-ios/pull/453
https://github.com/RevenueCat/purchases-ios/pull/438
https://github.com/RevenueCat/purchases-ios/pull/506


### Other changes:

#### Public additions
##### SharedPurchases nullability
- Fixed `sharedPurchases` nullability
- Introduced new property, `isConfigured`, that can be used to check whether the SDK has been configured and `sharedPurchases` won't be `nil`.
https://github.com/RevenueCat/purchases-ios/pull/508

##### Improved log handling
- Added new property `logLevel`, which provides more granular settings for the log level. Valid values are `debug`, `info`, `warn` and `error`.
- Added new method, `setLogHandler`, which allows developers to use their own code to handle logging, and integrate their existing systems.
https://github.com/RevenueCat/purchases-ios/pull/481
https://github.com/RevenueCat/purchases-ios/pull/515


#### Deprecations
- Deprecated `debugLogsEnabled` property in favor of `LogLevel`. Use `Purchases.logLevel = .debug` as a replacement.

#### Other

- Fixed CI issues with creating pull requests
https://github.com/RevenueCat/purchases-ios/pull/504
- Improved Github Issues bot behavior
https://github.com/RevenueCat/purchases-ios/pull/507
- Added e-tags to reduce network traffic usage
https://github.com/RevenueCat/purchases-ios/pull/509
- Fixed a warning in Xcode 13 with an outdated path in Package.swift
https://github.com/RevenueCat/purchases-ios/pull/522
- Switched to Swift Package Manager for handling dependencies for test targets.
https://github.com/RevenueCat/purchases-ios/pull/527
- Removed all `fatalError`s from the codebase
https://github.com/RevenueCat/purchases-ios/pull/529
https://github.com/RevenueCat/purchases-ios/pull/527
- Updated link for error message when UserDefaults are deleted outside the SDK
https://github.com/RevenueCat/purchases-ios/pull/531
- Improved many of the templates and added `CODE_OF_CONDUCT.md` to make contributing easier
https://github.com/RevenueCat/purchases-ios/pull/534
https://github.com/RevenueCat/purchases-ios/pull/537
https://github.com/RevenueCat/purchases-ios/pull/589

## 3.11.1
- Updates log message for `createAlias` to improve clarity
https://github.com/RevenueCat/purchases-ios/pull/498
Expand Down
4 changes: 2 additions & 2 deletions Examples/MagicWeather/MagicWeather.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -451,8 +451,8 @@
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/RevenueCat/purchases-ios.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 3.12.0-SNAPSHOT;
branch = main;
kind = branch;
};
};
/* End XCRemoteSwiftPackageReference section */
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@
"package": "Purchases",
"repositoryURL": "https://github.com/RevenueCat/purchases-ios.git",
"state": {
"branch": null,
"revision": "9e31fb34880e77c598c2f1058b71b3b321f8ff4c",
"version": "3.12.0-beta.1"
"branch": "main",
"revision": "9581bcc9049efe52ae7e4d4e5924cb69169fd368",
"version": null
}
}
]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -418,8 +418,8 @@
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/RevenueCat/purchases-ios.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 3.12.0-SNAPSHOT;
branch = main;
kind = branch;
};
};
/* End XCRemoteSwiftPackageReference section */
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@
"package": "Purchases",
"repositoryURL": "https://github.com/RevenueCat/purchases-ios.git",
"state": {
"branch": null,
"revision": "9e31fb34880e77c598c2f1058b71b3b321f8ff4c",
"version": "3.12.0-beta.1"
"branch": "main",
"revision": "9581bcc9049efe52ae7e4d4e5924cb69169fd368",
"version": null
}
}
]
Expand Down
102 changes: 102 additions & 0 deletions IntegrationTests/SPMIntegration/fastlane/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
fastlane documentation
================
# Installation

Make sure you have the latest version of the Xcode command line tools installed:

```
xcode-select --install
```

Install _fastlane_ using
```
[sudo] gem install fastlane -NV
```
or alternatively using `brew install fastlane`

# Available Actions
### update_swift_package_commit
```
fastlane update_swift_package_commit
```
Update swift package commit

----

## iOS
### ios setup_dev
```
fastlane ios setup_dev
```
Setup development environment
### ios test
```
fastlane ios test
```
Runs all the tests
### ios bump
```
fastlane ios bump
```
Increment build number
### ios bump_and_update_changelog
```
fastlane ios bump_and_update_changelog
```
Increment build number and update changelog
### ios github_release
```
fastlane ios github_release
```
Make github release
### ios create_sandbox_account
```
fastlane ios create_sandbox_account
```
Create sandbox account
### ios deployment_checks
```
fastlane ios deployment_checks
```
Deployment checks
### ios carthage_archive
```
fastlane ios carthage_archive
```
Run the carthage archive steps to prepare for carthage distribution
### ios archive
```
fastlane ios archive
```
archive
### ios replace_api_key_integration_tests
```
fastlane ios replace_api_key_integration_tests
```
replace API KEY for integration tests
### ios deploy
```
fastlane ios deploy
```
Deploy
### ios prepare_next_version
```
fastlane ios prepare_next_version
```
Prepare next version
### ios export_xcframework
```
fastlane ios export_xcframework
```
Export XCFramework
### ios storekit_tests
```
fastlane ios storekit_tests
```
Run StoreKitTests

----

This README.md is auto-generated and will be re-generated every time [_fastlane_](https://fastlane.tools) is run.
More information about fastlane can be found on [fastlane.tools](https://fastlane.tools).
The documentation of fastlane can be found on [docs.fastlane.tools](https://docs.fastlane.tools).
4 changes: 2 additions & 2 deletions Purchases.podspec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = "Purchases"
s.version = "3.12.0-SNAPSHOT"
s.version = "3.12.0"
s.summary = "Subscription and in-app-purchase backend service."

s.description = <<-DESC
Expand All @@ -22,7 +22,7 @@ Pod::Spec.new do |s|
s.tvos.deployment_target = '9.0'

s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' }
s.dependency 'PurchasesCoreSwift', '3.12.0-SNAPSHOT'
s.dependency 'PurchasesCoreSwift', '3.12.0'


s.source_files = ['Purchases/**/*.{h,m}']
Expand Down
5 changes: 3 additions & 2 deletions Purchases.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -1480,7 +1480,7 @@
352629FA1F7C4B9100C04F2C /* Frameworks */,
352629FB1F7C4B9100C04F2C /* Headers */,
352629FC1F7C4B9100C04F2C /* Resources */,
B385A1532674324500C6F132 /* ShellScript */,
B385A1532674324500C6F132 /* Swiftlint */,
);
buildRules = (
);
Expand Down Expand Up @@ -1633,7 +1633,7 @@
/* End PBXResourcesBuildPhase section */

/* Begin PBXShellScriptBuildPhase section */
B385A1532674324500C6F132 /* ShellScript */ = {
B385A1532674324500C6F132 /* Swiftlint */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
Expand All @@ -1642,6 +1642,7 @@
);
inputPaths = (
);
name = Swiftlint;
outputFileListPaths = (
);
outputPaths = (
Expand Down
2 changes: 1 addition & 1 deletion Purchases/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>3.12.0-SNAPSHOT</string>
<string>3.12.0</string>
<key>CFBundleVersion</key>
<string>$(CURRENT_PROJECT_VERSION)</string>
<key>NSHumanReadableCopyright</key>
Expand Down
2 changes: 1 addition & 1 deletion Purchases/Misc/RCSystemInfo.m
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ + (BOOL)isSandbox {
}

+ (NSString *)frameworkVersion {
return @"3.12.0-SNAPSHOT";
return @"3.12.0";
}

+ (NSString *)systemVersion {
Expand Down
Loading

0 comments on commit 0b890a7

Please sign in to comment.