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 @@
-
-
-