7.2.1 (Jul, 18, 2023)

7.2.0 (June, 23, 2023)

7.1.1 (June, 12, 2023)

7.1.0 (May, 09, 2023)

7.0.3 (Mar, 23, 2023)

7.0.2 (Feb, 24, 2023)

7.0.1 (Feb, 08, 2023)

7.0.0 (Jan, 20, 2023)

We have rewritten the network layer of the SDK almost in its entirety. Version 7 of the SDK uses new, "CDNed", heavily cached, endpoints and, as a result, it is now faster and less effected by service outages. On top of that, we have expanded our suit of tests as well as re-rewritten the majority of our UI specs to run faster and be less prone to "test flakiness".

Migrating from version 6.x.y

We worked hard to keep the public API as close as possible to the previous version in order to keep your migration effort to a minimum.

// constructor
SPConsentManager(
    accountId: 123,
+   propertyId: 123
    propertyName: try! SPPropertyName("myPropertyName"),
-   campaignsEnv: .Public, // optional - Public by default
    campaigns: SPCampaigns(
        gdpr: SPCampaign(),   // optional
        ccpa: SPCampaign(),   // optional
        ios14: SPCampaign(),  // optional
+       environment: .Public  // optional - .Public by default
    ),
    delegate: self
)

And that's it!

Notice: the internal data structure kept by the SDK in the UserDefaults has changed. If your app relied on data that was not publicly available through the SPDelegate protocol, you might face some issues. That does not impact the data described by the TCF spec (ie. data keyed and prefixed by IABTCF_).

⚠️ We are currently working on supporting TvOS in the next patch release. In other words, if you use our TvOS product, you should not upgrade to version 7.0.0 just yet.

6.7.3 (Dec, 16, 2022)

6.7.2 (Oct, 26, 2022)

6.7.1 (Sep, 22, 2022)

We took the decision to switch the default behaviour because it made sense to most use cases in which the App can decide wether to use the locally stored consent data or not when something goes wrong.

6.7.0 (May, 06, 2022)

6.6.0 (May, 06, 2022)

6.5.1 (Apr, 07, 2022)

We have received a lot of valuable feedback from you and we listened. This release is all about fixing and improving our TvOS UI and layout.

6.5.0 (Feb, 21, 2022)

6.4.1 (Feb, 01, 2022)

6.4.0 (Jan, 31, 2022)

6.3.1 (Nov, 17, 2021)

6.3.0 (Oct, 26, 2021)

6.2.1 (Oct, 20, 2021)

6.2.0 (August, 25, 2021)

6.1.7 (August, 25, 2021)

6.1.6 (August, 17, 2021)

6.1.5 (July, 23, 2021)

6.1.4 (July, 20, 2021)

6.1.3 (July, 6, 2021)

6.1.2 (July, 5, 2021)

6.1.1 (July, 1, 2021)

6.1.0 (July, 1, 2021)

6.0.4 (June, 30, 2021)

6.0.3 (June, 04, 2021)

6.0.2 (May, 21, 2021)

6.0.1 (May, 3, 2021)

6.0.0 (April, 30, 2021)

These are only a few of the changes we are bringing to this new major version of the SDK. Are you worried it's going to be too much work to migrate from v5? We got you covered, check our Migration Guide. For a more comprehensive explanation of how the SDK works and what you can do with it, check our beloved README.

As always, don't hesitate to reach out to us either via GitHub issues, slack or to your account manager directly. We appreciate your feedback.

5.3.6 (March, 04, 2021)

5.3.5 (Feb, 11, 2021)

5.3.4 (Jan, 20, 2021)

5.3.3 (Nov, 23, 2020)

5.3.2 (Nov, 23, 2020)

5.3.1 (Nov, 23, 2020)

5.3.0 (Oct, 16, 2020)

5.2.10 (Oct, 15, 2020)

5.2.9 (Oct, 13, 2020)

5.2.8 (Aug, 19, 2020)

5.2.7 (Aug, 19, 2020)

5.2.6 (Aug, 11, 2020)

5.2.5 (Jul, 3, 2020)

5.2.4 (Jun, 25, 2020)

5.2.3 (Jun, 09, 2020)

5.2.2 (Jun, 04, 2020)

[
  "vendorId1": VendorGrant(
    vendorGrant: Bool,
    purposeGrants: [
      "purposeId1": Bool,
      "purposeId2": Bool,
      // more purposes here
    ]
  )
  // more vendors here
]

The vendorGrant attribute is derived from purposeGrants and will be true if all purposes are also true.

5.2.1 (May, 27, 2020)

5.2.0 (May, 15, 2020)

5.1.0 (April, 16, 2020)

This is big one. We're moving more and more towards a stable API, so bare with us.

5.0.3 (April, 03, 2020)

5.0.2 (March, 26, 2020)

5.0.1 (March, 23, 2020)

5.0.0 (January, 11, 2020)

4.1.2 (January, 13, 2020)

4.1.1 (January, 10, 2020)

4.1.0 (January, 05, 2020)

Wow, that's huge! Behold the native message! Now you are be able to build your own consent message using naive elements and layout. It's a lot to cover in one CHANGELOG entry so please refer to the this nice wiki our team put together.

4.0.1 (January, 27, 2020)

4.0.0 (January, 17, 2020)

Alright ladies and gentlemen, what your're that's not a regular release... THAT'S A FULL-ON REWRITE 🔥 There are many small changes in the public API so instead of listing them here we kindly ask you to check the README. It should provide you with everything you need to get up and running with the changes.

Long story short we have:

As usual, if you see something wrong or have a question feel free to create an issue in our repo or contact us via slack directly.

3.1.0 (December, 4, 2019)

3.0.0 (October, 4, 2019)

Oh wow, time flies when we're having fun huh? This is a major release and, with major releases comes major responsibilities changes.

New Message script

Our Web Team worked pretty hard to slim down our consent message platform and improve its performance. In this release we make use of the new message script.

It's important to notice, SDK version 3 onwards will only be compatible with messages built using the new message builder.

Consent message lifecycle

TODO: Add a flowchart on how the lifecycle callbacks work (order and conditions)

Plug & Play Privacy Manager

Prior to this release, there was no way to show the Privacy Manager programmatically, without relying on setting up a tricky scenario on our Dashboard.

We've changed that (keep reading).

Constructor changes

In order to support the Plug & Play Privacy Manager and the ConsentDelegate protocol, we needed to add extra parameters to the constructor. The additional parameters are:

Other improvements


2.4.1 (August, 16, 2019)

2.4.0 (June, 27, 2019)

2.3.1 (May, 20, 2019)

2.3.0 (May, 20, 2019)

2.2.4 (April 20, 2019)

2.2.3 (April 09, 2019)

2.2.2 (April 08, 2019)

2.1.2 (April 08, 2019)

2.1.1 (April 04, 2019)

2.1.0 (March 29, 2019)

2.0.1 (March 21, 2019)

2.0.0 (March 15, 2019)

Look at that, we barely released version 1.x and we're already launching v2.0 🎉

This is a major release that includes several bug fixes and improved stability.

Having all those great advantages does come with a price. However, it's a rather small one. I promise.

The Migration Guide below will tell you all you need to know about using v2.0 coming from v1.x

Migration Guide

For more information make sure to check Usage section of our README.