Closed adorton-adobe closed 1 year ago
Since we agreed to plan to release the username update feature in the same release as this fix, I don't think we need the temporary warning.
Here's the feature branch for username update: https://github.com/adobe-apiplatform/user-sync.py/tree/feature/username-update
Once I get a chance to test it more I'll work on the configuration feature to select which fields to update.
@Luci2015 - are you still testing? I hoped to have this merged a week ago. What can I help you with to get this finished up?
Summary
This is to fix a regression found in
v2.8.0
which prevents the sync tool from updating a user's email address. This was likely caused by the introduction of the email address to the static user key.The fix I propose is to stop indexing user information using this static composite key. It never worked super well because of how the UMAPI and admin console identify users by email address under most circumstances but also require username in others.
I've created a system that indexes user info by multiple keys, but only one key is required to identify a user when looking it up in the index. This is implemented in a new class in the UMAPI engine file called
MultiIndex
.More information can be found in the class's docstring:
Testing Steps
I've tested this with one UMAPI target, primary + secondary and secondary only (which produces the expected UMAPI errors). I've also tested the update with Adobe-only CSV files (read/write).
Fixes #810