Releases: snowplow/snowplow-ios-tracker
Snowplow iOS Tracker v2.1.0
This version comes with a number of minor fixes and important new feature: the remote configuration.
We will gradually improve the remote configuration of the tracker in the upcoming version but this first version of the remote configuration already allow to configure the fundamental aspects of the tracker: TrackerConfiguration, NetworkConfiguration, SubjectConfiguration and SessionConfiguration.
You can find more information in the upcoming blog post where we will present the feature with more details and examples.
Among the fixes:
- Fixed sessionIndex that started from 0 rather than 1, differently than the Android tracker behaviour and previous versions.
- Fixed an issue that blocked the sending of automatic events when the tracker doesn't have programmatic events to send first.
- Fixed an issue that prevented to instrument the tracker on tvOS apps raising a compiler error.
- Bumped FMDB dependency to 2.7 on Cocoapods spec, like it was already for Swift Package Manager.
- Fixed name clash between SPSelfDescribing and SPSelfDescribingAbstract when used in Swift (both called SelfDescribing).
- Fixed a possible data race caused when multiple threads access the information related to the current screenState used in screen context.
CHANGELOG
Enhancements:
Bug fixes:
- Fix sessionIndex starting from 0 rather than 1 (#616)
- Fix screenView autotracking unable to send events (#614)
- Fix tvOS integration via SwiftPM unable to compile (#611)
- Bump FMDB to version 2.7 (#612)
- Fix Swift names clash for SelfDescribing event (#610)
- Fix data race accessing currentScreenState (#609)
Snowplow iOS Tracker v1.7.1
This release fixes a bug related to a couple of methods of SPUtilities that are not accessible on v1.7 and backports a fix of a bug that prevents the tracker to get IDFA on iOS 14.
CHANGELOG
Bug fixes:
- Fix IDFA not accessible on iOS 14 (#601)
- Fix SNOWPLOW_TARGET not working with Xcode 12.5 (#589) (Contribution of @ejensen)
Internal:
- Test tracker v1 against demo apps v1 (#608)
Snowplow iOS Tracker v2.0.2
This release fix some minor issues and regressions introduced with the version 2.0.
Important to mention:
- An important fix about a bug that prevented the tracker to get IDFA on iOS 14.
- A fix for a regression on v2.0 where the SubjectConfiguration doesn't expose the properties needed for the geolocation context, previously available in the deprecated SPSubject.
CHANGELOG
Bug fixes:
Snowplow iOS Tracker v2.0.1
This release introduces the ability of updating the userID in the SubjectController.
The version 2.0 allowed the configuration of the userID but it was impossible to update it at runtime.
There are also community contributions and improvements to the reliability of the tracker:
- SPM can be used with the macOS target
- Fix for the exception caused by a wrong migration of install events
- Fix for crashes due to wrong conversion of data to json format and viceversa
CHANGELOG
Enhancement:
- Add SubjectController to update userId (#595)
Bug fixes:
- Fix crash if data from Database is corrupted (#596) (Contribution of @glukhanyk)
- Fix NSInvalidArgumentException on first run with v2.0 (#592)
- Fix macOS target for SPM (#593) (Contribution of @Juraldinio)
Snowplow iOS Tracker v2.0.0
This new major release introduces various changes in the API and important new features:
- the ability to run multiple trackers in the same app (not possible with the version 1.x);
- a new API, common between iOS tracker and Android tracker (the API of the version 1.x still available but deprecated with minor breaking changes);
- better integration with Swift.
CHANGELOG
- Set lifecycle tracking off by default (#587)
- Update README (#502)
- Fix GitHub Actions failures due to redirection to macos-10.15 (#583)
- Remove protocol from NetworkController and NetworkConnection (#573)
- Add custom headers for requests (#364)
- Store sessions info separately per tracker namespace (#570)
- Add API reference documentation for configurations and controllers (#568)
- Add NSDictionary as explicit argument in SPSelfDescribingJson (#274)
- Allow multiple instances of the tracker (#566)
- Import corrections from Android tracker (#563)
- Create API for v.2.0 (#558)
- Restructure project source tree (#552)
- Bump deployment target to iOS 9 (#550)
Snowplow iOS Tracker v1.7.0
This release fixes an issue causing app rejection due to the fingerprinting caused by the OpenIDFA feature.
To avoid any issue we have completely removed the OpenIDFA identifier and related code.
Also, we changed the policy for enabling the Apple IDFA. On the new version 1.7.0, the IDFA identifier will be enabled only if the developer adds the AdSupport library to the app project and enables the compiler flag SNOWPLOW_IDFA_ENABLED
in the build settings.
More details here: IDFA tracking
Note: The previous versions of the tracker (before v.1.7.0) used a different flag SNOWPLOW_NO_IFA needed to disable IDFA feature. Instead, since the version 1.7.0 the IDFA will be enabled only if the SNOWPLOW_IDFA_ENABLED is set.
CHANGELOG
Bug fixes:
- Fix issue of OpenIDFA causing App Rejection (#575)
Snowplow iOS Tracker v1.6.2
Snowplow iOS Tracker v1.6.1
This release fixes a couple of bugs related to Crash Reporting and Global Contexts.
The crashes reported with the Crash Reporting feature were sent without the AppID and all the other contexts attached (e.g.: Session). Instead for the Global Contexts feature it was impossible to add a context generator at runtime when the setGlobalContextGenerators
is not declared in the tracker builder.
CHANGELOG
Bug fixes:
Snowplow iOS Tracker v1.6.0
This release fixes an issue about Swift Package Manager where the minimum deployment target version didn't meet the stricter requirements of Xcode 12.
We also refactored the session management which fixes an issue where short session timeout could cause more than one session expiration. Also, the new session management avoids other possible issues as it adopts a different way to check if the session is expired (more details on #497 thread).
CHANGELOG
Bug fixes:
- Enable Xcode 12 support for Swift Package Manager (#544) (Thanks to Marc Schultz contribution)
- Make session uuid rotation dependant on events being tracked (#497)
Under the hood:
Snowplow iOS Tracker v1.5.0
This release enhances the Emitter component splitting it in three parts:
- EventStore: handles the persistence of tracked events not yet sent to the collector;
- NetworkConnection: establish the connection with the collector and perform the requests;
- Emitter: Handle dispatching like backoff and retry of failed requests and aggregation of events in a single request.
The SPEmitter API is still the same, so EventStore and NetworkConnection can be configured automatically by the Emitter from the SPEmitter configuration.
In this release we also introduce tracker diagnostics, which help to track errors which happen inside the tracker in order to spot and diagnose tracking issues. Also tracker logs can be reported to the main app. These features can be helpful for inspecting issues during instrumentation of the tracker or troubleshooting of unexpected behaviours.
CHANGELOG
New features:
Bug fixes:
- Crash connected with method writeSessionToFile in SPSession (#515)
Under the hood:
- Emitter refactoring (#540)