Skip to content

Releases: snowplow/snowplow-ios-tracker

Snowplow iOS Tracker 2.2.0

16 Jul 09:56
58432ba
Compare
Choose a tag to compare

This version reverts a breaking change introduced with the version 2.0.
The application_install event reports the time when the app has been launched for the first time after the installation.
Since the version 2.0 that timestamp is added in the true_timestamp field of the event.
Unfortunately, we noticed that it can be cause of issues on data-modelling because the true_timestamp is directly applied to the derived_timestamp field and it's not adapted to the time of the collector (collector_timestamp). The problem is visible when the user device has the device time set on the future, because the derived_timestamp wouldn't be corrected and would store the application_install event as happened in the future.

Since this version, we set the application_install timestamp in the device_created_timestamp. In this way, a wrong time setting in the user device wouldn't affect the correctness of the derived_timestamp in the data model.

It also has a couple of fixes:

  • A typo in an imported header. Thanks for the contribution of Juraldinio.
  • A fix for a deprecated method used for the remote configuration management.

CHANGELOG

Bug fixes:

  • Set application install timestamp on device timestamp field (#625)
  • Avoid deprecated method for configuration serialization (#623)
  • Fix for CaseSensetive file systems (#622) (Contribution of @Juraldinio)

Internal:

  • Remove Demo app builds for iOS 12 on CI (#626)
  • Set amended v_tracker indicating wrapper tracker version (#624)

Snowplow iOS Tracker v2.1.1

24 Jun 14:07
2b0d6b7
Compare
Choose a tag to compare

This version has a patch for a bug introduced with the version 2.1. The bug adds the GDPR context to the events even when disabled.
With this fix it will be added only when configured or enabled at runtime.

CHANGELOG

Bug fixes:

  • Fix GDPR context being tracked without enabling it (#618)

Snowplow iOS Tracker v2.1.0

21 Jun 09:34
1afcf4c
Compare
Choose a tag to compare

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:

  • Add remote configuration (#581)
  • Fix missing base64encoding in remote config (#615)

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

25 May 12:12
Compare
Choose a tag to compare

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

24 May 15:54
30440e5
Compare
Choose a tag to compare

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:

  • Add geolocation to SubjectConfiguration and SubjectController (#604)
  • Fix duplicate NS_SWIFT_NAME macro (#603)
  • Fix IDFA not accessible on iOS 14 (#601)

Snowplow iOS Tracker v2.0.1

12 May 14:57
Compare
Choose a tag to compare

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

27 Apr 11:58
ed0bb83
Compare
Choose a tag to compare

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

03 Apr 08:00
b2a68f0
Compare
Choose a tag to compare

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

12 Jan 15:55
5c3f00d
Compare
Choose a tag to compare

This release fixes a memory leak on SNOWReachability.

CHANGELOG

Bug fixes:

  • Fix leak on SNOWReachability (#559), thanks to @i-dama contribution.

Under the hood

  • Fix internal Carthage issues with Xcode 12.3 (#561)

Snowplow iOS Tracker v1.6.1

24 Nov 11:21
540fbcd
Compare
Choose a tag to compare

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:

  • Fix AddGlobalContext unable to work when GlobalContexts not initialized (#553)
  • Let Crash reporting to add contexts and AppID (#555)