-
Notifications
You must be signed in to change notification settings - Fork 40
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
Review Identity extension #271
Comments
@kevinlind @emdobrin can one of you help us review the Identity extension? |
@shalehaha Yes I can take a look, however we've already planned out this sprint. What is the timeline for this to be done? |
Here are my review notes of the Identity extension. Fix CustomIdentity equality
Update CustomIdentity to check two objects for equality just from type :
Also, update test cases to validate the above. For example, with the current code I'm able to call setAdvertisingIdentifier twice and the resulting customerIds list will contain two ad id entries. Remove Opt-out check from handleIdentityRequest:
Only syncIdentifiers is aborted if privacy is opted out, however that method already checks for the privacy status. The other API calls, appendToUrl, getUrlVariables, and Identifiers request are still valid even if privacy is opted out. Remove duplicate default server constant
Rename MID to ECID throughoutEven though the network calls still use
Execute force sync event immediatelyIn
In processPrivacyChange , same as with bootup, there's the possiblity of another event getting queued before this force sync. Also, and more importantly, this delay may cause issues with Target which depends on the ECID when there is a privacy change. We should really consider just calling syncIdentifiers here.
Don't use 'next version' when creating a shared stateSetting the shared state to the latest version can cause issues. This new shared state's version will be greater than the event version of any event in the Identity queue. If any of those events in the queue try to create a shared state it will fail. Instead, as was done in v5, need to add an event to the back of the Identity event queue which will create this shared state with the version of that event.
Update log entryUpdate log message so it's not so dreadful. An aborted sync is common, for example when an app always sets the same Ad ID on launch. Instead try "Ignored an ID sync request because no new IDs to sync after the last request."
|
Comment to track the feedback from @kevinlind
|
Closing as all feedback has been addressed. Thanks for the thoughtful feedback @kevinlind. |
part of #268
The text was updated successfully, but these errors were encountered: