-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge latest dev changes -> feature/adidConsent #66
Merge latest dev changes -> feature/adidConsent #66
Conversation
Update docs for IdentityMap.swift
…eCustomerIdentifers or removeCustomerIdentifers are called.
…lears the identity map.
[MOB-16019] Set pending state before updating IdentityMap
Bump up version for v1.0.1 release
Dev -> Staging (v1.01)
Staging -> Main (v1.0.1)
Bumps [cocoapods-downloader](https://github.com/CocoaPods/cocoapods-downloader) from 1.4.0 to 1.6.3. - [Release notes](https://github.com/CocoaPods/cocoapods-downloader/releases) - [Changelog](https://github.com/CocoaPods/cocoapods-downloader/blob/master/CHANGELOG.md) - [Commits](CocoaPods/cocoapods-downloader@1.4.0...1.6.3) --- updated-dependencies: - dependency-name: cocoapods-downloader dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
merge main -> dev after v1.0.1 release
* Release Drafter Draft Release tool allows for creating draft releases (and real releases if desired), using a separate config from the full repo release flow Documentation for how to use the release drafter tool is also included * Update config to only include explicitly labeled PRs, full changelog link at the bottom Update documentation to reflect feedback and updated output style Remove draft-specific config, and draft tool points to actual changelog config (same as prd) * Update documentation for release drafter: header levels and some text updates Update release drafter config to create Enhancements category and remove redundant bug-type labels
Codecov Report
@@ Coverage Diff @@
## feature/adIdConsent #66 +/- ##
=======================================================
+ Coverage 95.22% 97.00% +1.77%
=======================================================
Files 7 7
Lines 314 333 +19
=======================================================
+ Hits 299 323 +24
+ Misses 15 10 -5 |
/// Save `identityProperties` to persistence and resolves the XDM shared state. | ||
/// - Parameters: | ||
/// - resolveXDMSharedState: function which resolves the XDM shared state | ||
private func saveToPersistence(and resolveXDMSharedState: ([String: Any]) -> Void) { | ||
identityProperties.saveToPersistence() | ||
resolveXDMSharedState(identityProperties.toXdmData()) | ||
} | ||
|
||
/// Save `identityProperties` to persistence and create an XDM shared state. | ||
/// - Parameters: | ||
/// - createXDMSharedState: function which creates an XDM shared state |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The only change in this PR other than the changes from dev is that this function is added back:
private func saveToPersistence(and createXDMSharedState: ([String: Any], Event) -> Void, using event: Event)
In dev the update identity APIs use pending shared state and resolver. If adid does not change when setAdvertisingIdentifier API, I think we should not create a pending shared state and resolve with the same data, but just create a new shared state when the value changed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I hope we dont see the same race condition for adId then in case setAdId and getAdId being called back to back.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is no getAdid, but you can call getIdentities. For the consent use-case the shared state is updated first, then the consent -> edge events are being dispatched, so the data should be up to date at processing time.
Description
Related Issue
Motivation and Context
How Has This Been Tested?
Screenshots (if appropriate):
Types of changes
Checklist: