diff --git a/.spi.yml b/.spi.yml new file mode 100644 index 0000000000..d3e26d9f87 --- /dev/null +++ b/.spi.yml @@ -0,0 +1,10 @@ +# Configuration file for https://swiftpackageindex.com/braze-inc/braze-swift-sdk +version: 1 +builder: + configs: + - platform: ios + scheme: BrazeKit + - platform: tvos + scheme: BrazeKit +external_links: + documentation: https://braze-inc.github.io/braze-swift-sdk diff --git a/BrazeKit.podspec b/BrazeKit.podspec index ecb7f63310..27c1e3eceb 100644 --- a/BrazeKit.podspec +++ b/BrazeKit.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'BrazeKit' - s.version = '6.3.0' + s.version = '6.3.1' s.summary = 'Braze Main SDK library providing support for analytics and push notifications.' s.homepage = 'https://braze.com' @@ -9,8 +9,8 @@ Pod::Spec.new do |s| s.authors = 'Braze, Inc.' s.source = { - :http => 'https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.0/BrazeKit.zip', - :sha256 => 'fec64ff96daf3d2df758e44d514a26b1276778c62ec9af8646b2d23d21ebffb9' + :http => 'https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.1/BrazeKit.zip', + :sha256 => '13db74470e3fc80e69a28e9827bc6b45cfc983e2736191ea4b0135d14e755cda' } s.swift_version = '5.0' diff --git a/BrazeKitCompat.podspec b/BrazeKitCompat.podspec index c5a18cb5e3..8d5924a619 100644 --- a/BrazeKitCompat.podspec +++ b/BrazeKitCompat.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'BrazeKitCompat' - s.version = '6.3.0' + s.version = '6.3.1' s.summary = 'Compatibility library for users migrating from AppboyKit.' s.homepage = 'https://braze.com' @@ -8,7 +8,7 @@ Pod::Spec.new do |s| s.license = { :type => 'Commercial' } s.authors = 'Braze, Inc.' - s.source = { :git => 'https://github.com/braze-inc/braze-swift-sdk.git', :tag => '6.3.0' } + s.source = { :git => 'https://github.com/braze-inc/braze-swift-sdk.git', :tag => '6.3.1' } s.swift_version = '5.0' s.ios.deployment_target = '11.0' @@ -18,8 +18,8 @@ Pod::Spec.new do |s| s.source_files = 'Sources/BrazeKitCompat/**/*.{h,m}' s.public_header_files = 'Sources/BrazeKitCompat/include/*.h' - s.dependency 'BrazeKit', '6.3.0' - s.dependency 'BrazeLocation', '6.3.0' + s.dependency 'BrazeKit', '6.3.1' + s.dependency 'BrazeLocation', '6.3.1' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' } end diff --git a/BrazeLocation.podspec b/BrazeLocation.podspec index 5afd27d5e7..f34b8a6143 100644 --- a/BrazeLocation.podspec +++ b/BrazeLocation.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'BrazeLocation' - s.version = '6.3.0' + s.version = '6.3.1' s.summary = 'Braze location library providing support for location analytics and geofence monitoring.' s.homepage = 'https://braze.com' @@ -9,8 +9,8 @@ Pod::Spec.new do |s| s.authors = 'Braze, Inc.' s.source = { - :http => 'https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.0/BrazeLocation.zip', - :sha256 => '1b0d46815129130c52633536a94f59fb56571a9507ff6bb87149d9e0c06eaabe' + :http => 'https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.1/BrazeLocation.zip', + :sha256 => '7aee29a6f1d06cf6bf9d13548e68ba4c9cf5787e1bee1ad3a135ba86ac3598b1' } s.swift_version = '5.0' @@ -21,7 +21,7 @@ Pod::Spec.new do |s| # Depends on BrazeKit because BrazeKit includes the internal _BrazeLocationClient symbols required # for linking against BrazeLocation. - s.dependency 'BrazeKit', '6.3.0' + s.dependency 'BrazeKit', '6.3.1' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' } end diff --git a/BrazeNotificationService.podspec b/BrazeNotificationService.podspec index bfdaa5d390..8a7eca6da1 100644 --- a/BrazeNotificationService.podspec +++ b/BrazeNotificationService.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'BrazeNotificationService' - s.version = '6.3.0' + s.version = '6.3.1' s.summary = 'Braze notification service extension library providing support for Rich Push notifications.' s.homepage = 'https://braze.com' @@ -9,8 +9,8 @@ Pod::Spec.new do |s| s.authors = 'Braze, Inc.' s.source = { - :http => 'https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.0/BrazeNotificationService.zip', - :sha256 => '940388c443748821a15b86b4365b34daff4b03984fa1f4c957aac55b76eb63d6' + :http => 'https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.1/BrazeNotificationService.zip', + :sha256 => '2562410cba05596f86d7a1c543ee8efca82dc2ccfe15b05837e2f1c5363bb474' } s.swift_version = '5.0' diff --git a/BrazePushStory.podspec b/BrazePushStory.podspec index f13700221c..f3cd018f9e 100644 --- a/BrazePushStory.podspec +++ b/BrazePushStory.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'BrazePushStory' - s.version = '6.3.0' + s.version = '6.3.1' s.summary = 'Braze notification content extension library providing support for Push Stories.' s.homepage = 'https://braze.com' @@ -9,8 +9,8 @@ Pod::Spec.new do |s| s.authors = 'Braze, Inc.' s.source = { - :http => 'https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.0/BrazePushStory.zip', - :sha256 => '9631dd249e1c6b9775ec3f7a4f8c6dffd20b59c47c9ea52b9b885637fa2305fe' + :http => 'https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.1/BrazePushStory.zip', + :sha256 => '06f54d9a733394aec4b9d5f224a2da3092e38e9504afaa7f0fc74d125753c219' } s.swift_version = '5.0' diff --git a/BrazeUI.podspec b/BrazeUI.podspec index 7f82234d4f..13a23104e8 100644 --- a/BrazeUI.podspec +++ b/BrazeUI.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'BrazeUI' - s.version = '6.3.0' + s.version = '6.3.1' s.summary = 'Braze-provided user interface library for In-App Messages and Content Cards.' s.homepage = 'https://braze.com' @@ -8,7 +8,7 @@ Pod::Spec.new do |s| s.license = { :type => 'Commercial' } s.authors = 'Braze, Inc.' - s.source = { :git => 'https://github.com/braze-inc/braze-swift-sdk.git', :tag => '6.3.0' } + s.source = { :git => 'https://github.com/braze-inc/braze-swift-sdk.git', :tag => '6.3.1' } s.swift_version = '5.0' s.ios.deployment_target = '11.0' @@ -17,7 +17,7 @@ Pod::Spec.new do |s| s.source_files = 'Sources/BrazeUI/**/*.swift' s.resource_bundles = { 'BrazeUI' => ['Sources/BrazeUI/Resources/**/*'] } - s.dependency 'BrazeKit', '6.3.0' + s.dependency 'BrazeKit', '6.3.1' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' } end diff --git a/BrazeUICompat.podspec b/BrazeUICompat.podspec index 32df4619b6..dd5480b670 100644 --- a/BrazeUICompat.podspec +++ b/BrazeUICompat.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'BrazeUICompat' - s.version = '6.3.0' + s.version = '6.3.1' s.summary = 'Compatibility UI library for users migrating from AppboyUI.' s.homepage = 'https://braze.com' @@ -8,7 +8,7 @@ Pod::Spec.new do |s| s.license = { :type => 'Commercial' } s.authors = 'Braze, Inc.' - s.source = { :git => 'https://github.com/braze-inc/braze-swift-sdk.git', :tag => '6.3.0' } + s.source = { :git => 'https://github.com/braze-inc/braze-swift-sdk.git', :tag => '6.3.1' } s.swift_version = '5.0' s.ios.deployment_target = '11.0' @@ -18,7 +18,7 @@ Pod::Spec.new do |s| s.public_header_files = 'Sources/BrazeUICompat/ABK*/**/*.h' s.resource_bundles = { 'BrazeUICompat' => 'Sources/BrazeUICompat/*/Resources/**/*.*' } - s.dependency 'BrazeKitCompat', '6.3.0' + s.dependency 'BrazeKitCompat', '6.3.1' s.dependency 'SDWebImage', '>= 5.8.2', '< 6' s.user_target_xcconfig = { 'CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES' => 'YES' } diff --git a/CHANGELOG.md b/CHANGELOG.md index a345f197cf..581aaa9db1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,18 @@ +## 6.3.1 + +##### Fixed +- Fixes an issue where the previous user's data would not be flushed after calling `changeUser(userId:sdkAuthSignature:)` when the SDK authentication feature is enabled. +- A content card impression can now be logged once per session. Previously, the Braze-provided Content Cards UI would limit to a single impression per card at maximum, irrespective of sessions. +- Fixes an issue that previously caused push notification URLs with percent-encoded characters to fail during decoding. +- Fixes a behavior to automatically set a user's push subscription state to [`optedIn`][opted-in] after push permissions have explicitly been authorized via the Settings app. +- Correctly hides shadows on in-app messages that are configured with a transparent background. +- Fixes a rare crash occurring when deinitializing the Braze instance. + +##### Added +- Adds additional logging for network-related decoding errors. + +[opted-in]: https://braze-inc.github.io/braze-swift-sdk/documentation/brazekit/braze/user-swift.class/subscriptionstate/optedin + ## 6.3.0 ##### Fixed diff --git a/Examples/ObjC/Sources/PushNotifications-Automatic/Info.plist b/Examples/ObjC/Sources/PushNotifications-Automatic/Info.plist deleted file mode 100644 index 8b9d8e4a0d..0000000000 --- a/Examples/ObjC/Sources/PushNotifications-Automatic/Info.plist +++ /dev/null @@ -1,30 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - PushNotifications-Automatic - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - UIBackgroundModes - - remote-notification - - UILaunchStoryboardName - LaunchScreen - - diff --git a/Examples/ObjC/Sources/PushNotifications-Automatic/PushNotifications-Automatic.entitlements b/Examples/ObjC/Sources/PushNotifications-Automatic/PushNotifications-Automatic.entitlements deleted file mode 100644 index 9cad402b51..0000000000 --- a/Examples/ObjC/Sources/PushNotifications-Automatic/PushNotifications-Automatic.entitlements +++ /dev/null @@ -1,12 +0,0 @@ - - - - - aps-environment - development - com.apple.security.application-groups - - group.com.braze.PushNotifications.PushStories - - - diff --git a/Examples/ObjC/Sources/PushNotifications-Manual/Info.plist b/Examples/ObjC/Sources/PushNotifications-Manual/Info.plist deleted file mode 100644 index 571bd81e18..0000000000 --- a/Examples/ObjC/Sources/PushNotifications-Manual/Info.plist +++ /dev/null @@ -1,30 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - PushNotifications-Manual - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - UIBackgroundModes - - remote-notification - - UILaunchStoryboardName - LaunchScreen - - diff --git a/Examples/ObjC/Sources/PushNotifications-Manual/PushNotifications-Manual.entitlements b/Examples/ObjC/Sources/PushNotifications-Manual/PushNotifications-Manual.entitlements deleted file mode 100644 index 9cad402b51..0000000000 --- a/Examples/ObjC/Sources/PushNotifications-Manual/PushNotifications-Manual.entitlements +++ /dev/null @@ -1,12 +0,0 @@ - - - - - aps-environment - development - com.apple.security.application-groups - - group.com.braze.PushNotifications.PushStories - - - diff --git a/Examples/ObjC/manual-integration-setup.sh b/Examples/ObjC/manual-integration-setup.sh index 8e6b7ad7a5..e864f54ad8 100755 --- a/Examples/ObjC/manual-integration-setup.sh +++ b/Examples/ObjC/manual-integration-setup.sh @@ -20,7 +20,7 @@ if [ ! -f "manual-integration-setup.sh" ]; then fi # Constants -url="https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.0/braze-swift-sdk-prebuilt.zip" +url="https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.1/braze-swift-sdk-prebuilt.zip" echo "→" "Cleaning up" rm -rf braze-swift-sdk-prebuilt diff --git a/Examples/Swift/Sources/PushNotifications-Automatic/Info.plist b/Examples/Swift/Sources/PushNotifications-Automatic/Info.plist deleted file mode 100644 index 8b9d8e4a0d..0000000000 --- a/Examples/Swift/Sources/PushNotifications-Automatic/Info.plist +++ /dev/null @@ -1,30 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - PushNotifications-Automatic - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - UIBackgroundModes - - remote-notification - - UILaunchStoryboardName - LaunchScreen - - diff --git a/Examples/Swift/Sources/PushNotifications-Automatic/PushNotifications-Automatic.entitlements b/Examples/Swift/Sources/PushNotifications-Automatic/PushNotifications-Automatic.entitlements deleted file mode 100644 index 9cad402b51..0000000000 --- a/Examples/Swift/Sources/PushNotifications-Automatic/PushNotifications-Automatic.entitlements +++ /dev/null @@ -1,12 +0,0 @@ - - - - - aps-environment - development - com.apple.security.application-groups - - group.com.braze.PushNotifications.PushStories - - - diff --git a/Examples/Swift/Sources/PushNotifications-Manual/Info.plist b/Examples/Swift/Sources/PushNotifications-Manual/Info.plist deleted file mode 100644 index 571bd81e18..0000000000 --- a/Examples/Swift/Sources/PushNotifications-Manual/Info.plist +++ /dev/null @@ -1,30 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - PushNotifications-Manual - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - UIBackgroundModes - - remote-notification - - UILaunchStoryboardName - LaunchScreen - - diff --git a/Examples/Swift/Sources/PushNotifications-Manual/PushNotifications-Manual.entitlements b/Examples/Swift/Sources/PushNotifications-Manual/PushNotifications-Manual.entitlements deleted file mode 100644 index 9cad402b51..0000000000 --- a/Examples/Swift/Sources/PushNotifications-Manual/PushNotifications-Manual.entitlements +++ /dev/null @@ -1,12 +0,0 @@ - - - - - aps-environment - development - com.apple.security.application-groups - - group.com.braze.PushNotifications.PushStories - - - diff --git a/Examples/Swift/manual-integration-setup.sh b/Examples/Swift/manual-integration-setup.sh index 8e6b7ad7a5..e864f54ad8 100755 --- a/Examples/Swift/manual-integration-setup.sh +++ b/Examples/Swift/manual-integration-setup.sh @@ -20,7 +20,7 @@ if [ ! -f "manual-integration-setup.sh" ]; then fi # Constants -url="https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.0/braze-swift-sdk-prebuilt.zip" +url="https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.1/braze-swift-sdk-prebuilt.zip" echo "→" "Cleaning up" rm -rf braze-swift-sdk-prebuilt diff --git a/Package.swift b/Package.swift index 0ea8a55e05..ce1cd70490 100644 --- a/Package.swift +++ b/Package.swift @@ -47,8 +47,8 @@ let package = Package( targets: [ .binaryTarget( name: "BrazeKit", - url: "https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.0/BrazeKit.zip", - checksum: "fec64ff96daf3d2df758e44d514a26b1276778c62ec9af8646b2d23d21ebffb9" + url: "https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.1/BrazeKit.zip", + checksum: "13db74470e3fc80e69a28e9827bc6b45cfc983e2736191ea4b0135d14e755cda" ), .target( name: "BrazeKitResources", @@ -65,18 +65,18 @@ let package = Package( ), .binaryTarget( name: "BrazeLocation", - url: "https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.0/BrazeLocation.zip", - checksum: "1b0d46815129130c52633536a94f59fb56571a9507ff6bb87149d9e0c06eaabe" + url: "https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.1/BrazeLocation.zip", + checksum: "7aee29a6f1d06cf6bf9d13548e68ba4c9cf5787e1bee1ad3a135ba86ac3598b1" ), .binaryTarget( name: "BrazeNotificationService", - url: "https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.0/BrazeNotificationService.zip", - checksum: "940388c443748821a15b86b4365b34daff4b03984fa1f4c957aac55b76eb63d6" + url: "https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.1/BrazeNotificationService.zip", + checksum: "2562410cba05596f86d7a1c543ee8efca82dc2ccfe15b05837e2f1c5363bb474" ), .binaryTarget( name: "BrazePushStory", - url: "https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.0/BrazePushStory.zip", - checksum: "9631dd249e1c6b9775ec3f7a4f8c6dffd20b59c47c9ea52b9b885637fa2305fe" + url: "https://github.com/braze-inc/braze-swift-sdk/releases/download/6.3.1/BrazePushStory.zip", + checksum: "06f54d9a733394aec4b9d5f224a2da3092e38e9504afaa7f0fc74d125753c219" ), .target( name: "BrazeKitCompat", diff --git a/README.md b/README.md index 241f7f0164..6c0630b035 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@

- Version: 6.3.0 + Version: 6.3.1