Releases: Tealium/tealium-swift
Releases · Tealium/tealium-swift
2.6.5
2.6.4
Low Impact Changes
- Improved logic for storing and updating
visitorId
for audience stream visitor profile. - Added the config flag
enableBackgroundLocation
to allow for location updates when the app is in the background. - Fixed
dispatchExpiration
logic to accept -1 as a never expire for queued tracking events. - Removed support for catalyst in the prebuilt frameworks to solve sole building errors.
- Fixed remote commands name and version tracking.
2.6.3
Low Impact Changes
- Fixed bug that could cause publish settings to be retrieved more than once.
- Fixed bug that caused dataLayer variables with
untilRestart
expiration not to be deleted. - Deprecated LocationModule
createdGeofences
,lastLocation
,monitoredGeofences
variables in favor of the respective getters:getCreatedGeofences(completion:)
,getLastLocation(completion:)
,getMonitoredGeofences(completion:)
2.6.2
2.6.1
2.6.0
Medium Impact Changes
- Added a new
TealiumInAppPurchase
module to automatically track in app purchases.
Low Impact Changes
- Added remote commands names and versions to the data layer.
- Added a workaround in
isLowPowerModeEnabled
for the iOS 15 internal crash. - Internally refactored the handling of lifecycle events.
- Replaced internal usage of deprecated NSKeyedUnarchiver in the migrator from the legacy Teealiym Objective-C library.
- Fixed an issue that caused duplicated JSON remote commands the first time we requested the remote configuration.
- Fixed a typo in
gatherTrackData
.
2.5.1
Medium Impact Changes
- Fixed import of Swift code in Objective-C files in case of tealium being compiled as a static library (i.e. Cocoapods without
use_frameworks!
set, or our own react native library).
Low Impact Changes
- Prevented automatic deeplink tracking from digesting AppDelegate's deeplinks, in order to allow other implementations to handle their own deeplinks.
- Fixed threading issues for
TagManagementModule
andTealiumConfig
.
2.5.0
High Impact Changes
- New complete version of autotracking, available for all platforms (see documentation here).
Medium Impact Changes
- Added SPM support for Autotracking module.
- Added automatic handling of DeepLinks for SceneDelegate and SwiftUI apps.
- Added an info.plist flag
TealiumAutotrackingDeepLinkEnabled
with the value of false to disable automatic deeplink tracking. - For manual DeepLinking autotracking: on SwiftUI you can use our
trackingAppOpenUrl
View modifier orTealiumAppTrackable
container View; on UIKit you can call our methodhandleDeepLink
from your AppDelegate or SceneDelegate.
Low Impact Changes
- Exposed all data layer and collectors variables via the method
gatherTrackData
. - Moved tealium data keys from
TealiumKeys
toTealiumDataKeys
. - Improved Codable support by ignoring non-codable values in release builds and causing a crash in debug builds.
- Reduced Geofences loading usage of main thread.
Known Issues
- Cocoapods platform iOS version is increased to 11 due to linting issues (but, if required, it's safe to lower it to 9 with a post-install script).
- Carthage generates warnings with xcode 13 (Carthage/Carthage#3238).
2.4.6
- Fixed a bug that could cause a crash when deallocating a RemoteCommand before sending HTTP requests to our internal command.
- Fixed a bug that was preventing keys added to the data layer to be kept in the data layer for the whole duration of a session if it lasted more than 30 minutes.
- Avoided registration for
lowPowerNotification
if thebatterySaver
feature is not enabled, completely avoiding possible crashes on an iOS 15 bug. - Fixed a bug where giving consent didn't automatically dequeue previous track calls.
2.4.5
2.4.5
High Impact Changes
- Fixed a bug that caused Apple Watches to never send events.
- Fixed a bug that prevented to automatically track deeplinks received in the AppDelegate.
Medium Impact Changes
- Fixed a bug that caused lifecycle to crash when migrating from the objective-c library without the lifecycle.
Low Impact Changes
- Made
visitorServiceDelegate
andwebViewDelegates
weak references in the config to avoid potential memory leaks. - Made impossible to add two remote commands with the same
commandId
. - Added the new keys
deep_link_referrer_app
anddeep_link_referrer_url
that are added when a deepLink is automatically detected and a referrer is present, or when passed to the methodTealium.handleDeepLink(_:referrer:)
. - Improved query params handling for deepLinks by removing old query parameters when receiving multiple deepLinks during the same session.
- Updated list of device model names to include latest iPhone, iPad and AppleWatch models.