Skip to content
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

Merged
merged 22 commits into from
May 11, 2022

Conversation

emdobrin
Copy link
Contributor

@emdobrin emdobrin commented May 9, 2022

Description

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • I have signed the Adobe Open Source CLA.
  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

sbenedicadb and others added 22 commits February 2, 2022 12:21
Update docs for IdentityMap.swift
…eCustomerIdentifers or removeCustomerIdentifers are called.
[MOB-16019] Set pending state before updating IdentityMap
Bump up version for v1.0.1 release
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
Copy link

codecov bot commented May 9, 2022

Codecov Report

Merging #66 (61c84c8) into feature/adIdConsent (9634424) will increase coverage by 1.77%.
The diff coverage is 92.31%.

@@                   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     

Comment on lines +243 to 253
/// 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
Copy link
Contributor Author

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.

Copy link
Collaborator

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.

Copy link
Contributor Author

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.

@emdobrin emdobrin merged commit 1e14fe7 into adobe:feature/adIdConsent May 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants