Skip to content

Commit 35247e2

Browse files
committed
Merge branch 'master' into feature/itbl_track_anon_user
# Conflicts: # CHANGELOG.md # Iterable-iOS-AppExtensions.podspec # Iterable-iOS-SDK.podspec # swift-sdk.xcodeproj/project.pbxproj # swift-sdk/Core/Constants.swift # swift-sdk/Internal/InternalIterableAPI.swift # swift-sdk/Internal/IterableUserDefaults.swift # swift-sdk/Internal/Utilities/LocalStorage.swift # swift-sdk/SDK/IterableAPI.swift # swift-sdk/SDK/IterableConfig.swift # tests/common/MockLocalStorage.swift
2 parents 82fdf09 + ab02a03 commit 35247e2

File tree

99 files changed

+2268
-1022
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

99 files changed

+2268
-1022
lines changed

.editorconfig

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
root = true
2+
3+
[*]
4+
indent_style = space
5+
indent_size = 4
6+
tab_width = 4

.github/workflows/build-and-test.yml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on: pull_request
44

55
jobs:
66
run-tests-job:
7-
runs-on: macos-12
7+
runs-on: macos-14
88

99
steps:
1010
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -13,12 +13,17 @@ jobs:
1313
with:
1414
xcode-version: latest-stable
1515

16+
- name: Setup Ruby and xcpretty
17+
run: |
18+
gem install erb
19+
gem install xcpretty
20+
1621
- name: Build and test
1722
run: |
18-
xcodebuild test -project swift-sdk.xcodeproj -scheme swift-sdk -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 13 Pro Max' -enableCodeCoverage YES CODE_SIGNING_REQUIRED=NO | xcpretty && exit ${PIPESTATUS[0]}
23+
xcodebuild test -project swift-sdk.xcodeproj -scheme swift-sdk -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 16 Pro' -enableCodeCoverage YES CODE_SIGNING_REQUIRED=NO | xcpretty && exit ${PIPESTATUS[0]}
1924
2025
- name: CocoaPods lint
21-
run: pod lib lint
26+
run: pod lib lint --allow-warnings
2227

2328
- name: Upload coverage report to codecov.io
2429
run: bash <(curl -s https://codecov.io/bash) -X gcov -J 'IterableSDK' -J 'IterableAppExtensions'

.github/workflows/e2e.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on: pull_request
44

55
jobs:
66
run-e2e-job:
7-
runs-on: macos-12
7+
runs-on: macos-14
88

99
steps:
1010
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1

CHANGELOG.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,28 @@ This project adheres to [Semantic Versioning](http://semver.org/).
1616
- Merge anonymous profiles into an existing, known user profiles (when needed).
1717
- Anonymous user activation is currently in private beta. If you'd like to learn more about it or discuss using it, talk to your Iterable customer success manager (who can also provide detailed documentation).
1818

19+
## [Unreleased]
20+
### Added
21+
- Added `mobileFrameworkInfo` configuration option to `IterableConfig` to identify the mobile framework (Flutter, React Native, or Native) being used with the SDK.
22+
23+
## [6.5.9]
24+
### Added
25+
- Support for JSON-only in-app messages, JSON-only messages are now handled by the onNewInApp handler and consumed after retrieval
26+
- Enhanced notification state tracking to align with system notification permissions changes
27+
28+
### Changed
29+
- reorganized files and updated documentation url in podspec
30+
31+
## [6.5.8]
32+
### Fixed
33+
- Fixed incorrect tracking of pushOpen for push notifications with Wake App enabled. Tracking now happens only when users tap to open the app.
34+
- Fixed the default `notificationsEnabled` value returned when `autoPushRegistration` is set to `false`.
35+
36+
### Changed
37+
- Updated repository name on Fastline script and podspec files.
38+
- Comments out outdated tests that need to be revisited.
39+
- Updated sample app to use generic URLs.
40+
1941
## [6.5.7]
2042
### Fixed
2143
- Fixed deeplink re-routing issue where delegate would only return `false` value. Thanks to @scottasoutherland :)

Iterable-iOS-AppExtensions.podspec

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ Pod::Spec.new do |s|
1616
s.source = { :git => "https://github.com/Iterable/iterable-swift-sdk.git", :tag => s.version }
1717
s.source_files = "notification-extension/*.{h,m,swift}"
1818

19+
s.documentation_url = "https://support.iterable.com/hc/en-us/articles/360035018152-Iterable-s-iOS-SDK"
20+
1921
s.pod_target_xcconfig = {
2022
'SWIFT_VERSION' => '5.3'
2123
}

Iterable-iOS-SDK.podspec

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ Pod::Spec.new do |s|
1616
s.source = { :git => "https://github.com/Iterable/iterable-swift-sdk.git", :tag => s.version }
1717
s.source_files = "swift-sdk/**/*.{h,m,swift}"
1818
s.exclude_files = "swift-sdk/swiftui/**"
19+
20+
s.documentation_url = "https://support.iterable.com/hc/en-us/articles/360035018152-Iterable-s-iOS-SDK"
1921

2022
s.pod_target_xcconfig = {
2123
'SWIFT_VERSION' => '5.3'

swift-sdk.xcodeproj/project.pbxproj

Lines changed: 610 additions & 420 deletions
Large diffs are not rendered by default.

swift-sdk/Constants.swift renamed to swift-sdk/Core/Constants.swift

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,9 @@ enum Const {
7777
static let matchedCriteria = "itbl_matched_criteria"
7878
static let eventList = "itbl_event_list"
7979
static let anonymousUsageTrack = "itbl_anonymous_usage_track"
80+
static let isNotificationsEnabled = "itbl_isNotificationsEnabled"
81+
static let hasStoredNotificationSetting = "itbl_hasStoredNotificationSetting"
82+
8083
static let attributionInfoExpiration = 24
8184
}
8285

@@ -115,6 +118,11 @@ enum Const {
115118
static let location = "Location"
116119
static let setCookie = "Set-Cookie"
117120
}
121+
122+
enum RemoteNotification {
123+
static let aps = "aps"
124+
static let contentAvailable = "content-available"
125+
}
118126
}
119127

120128
enum JsonKey {
@@ -252,6 +260,9 @@ enum JsonKey {
252260
}
253261
}
254262

263+
static let mobileFrameworkInfo = "mobileFrameworkInfo"
264+
265+
static let frameworkType = "frameworkType"
255266

256267
// embedded
257268
static let embeddedSessionId = "session"
@@ -325,6 +336,7 @@ enum JsonKey {
325336
static let packageName = "packageName"
326337
static let sdkVersion = "SDKVersion"
327338
static let content = "content"
339+
static let jsonOnly = "jsonOnly"
328340
}
329341

330342
enum Payload {

0 commit comments

Comments
 (0)