[5.0.0] Combine less operations with the create user operation#1794
Merged
emawby merged 2 commits intouser-model/mainfrom Aug 10, 2023
Merged
[5.0.0] Combine less operations with the create user operation#1794emawby merged 2 commits intouser-model/mainfrom
emawby merged 2 commits intouser-model/mainfrom
Conversation
* Let's send less data into a create user request to minimize changes that other information in the request payload causes the create user request to fail. * At time of writing, common failure cases are subscriptions over limit or tags over limit. * We won't combine alias, tags, and properties operations to the create user operation. * Ideally we only want to combine the push subscription operations and not any sms or email operations to the create user operation, but it will require more changes to the SDK. * For now, we will send any subscription operations with the create user operation, but no tags, aliases, or properties.
* Delete test `create user with an alias and properties creates a new user` * change arguments to `createUser()` after the `properties` parameter is removed
Base automatically changed from
user_model/fix_outcome_requests
to
user-model/main
August 10, 2023 03:46
emawby
approved these changes
Aug 10, 2023
Merged
jinliu9508
pushed a commit
that referenced
this pull request
Jan 31, 2024
…r_erroring [5.0.0] Combine less operations with the create user operation
jinliu9508
pushed a commit
that referenced
this pull request
Jan 31, 2024
…r_erroring [5.0.0] Combine less operations with the create user operation
jinliu9508
pushed a commit
that referenced
this pull request
Feb 6, 2024
…r_erroring [5.0.0] Combine less operations with the create user operation
jkasten2
added a commit
that referenced
this pull request
Feb 15, 2024
PR #1794 made changes to omit aliases on user create, but the test was never updated. Also the SubscriptionStatus arg part of this test wasn't compare the corret types, causing it to fail the test.
jkasten2
added a commit
that referenced
this pull request
Feb 21, 2024
PR #1794 made changes to omit aliases on user create, but the test was never updated. Also the SubscriptionStatus arg part of this test wasn't compare the corret types, causing it to fail the test.
jkasten2
added a commit
that referenced
this pull request
Apr 8, 2024
All operations must have at least a create or modify key, this is required so operations are not grouped together when they should not be. This fixes a bug where calling addTag() back-to-back with login() would cause the login to be dropped. This is because SetTagOperation.modifyComparisonKey was "" which matched LoginUserOperation.modifyComparisonKey as it was also "" and both these operations we returned by OperationRepo.getGroupableOperations. Both operations were given to UpdateUserOperationExecutor which it would skip the LoginUserOperation silently. This mistake originated from f1d204e which wasn't in the 5.0.0-beta4 release, but was introduced in 5.0.0. The intent of PR #1794 is still preserved in this commit, we just simply fixed the bug noted above.
18 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
One Line Summary
Only send enqueued subscription operations with the CreateUser operation, and not tags, aliases, and properties operations.
Details
Motivation
Modify the create user operation to send less associated info. Let's send less data into a create user request to minimize chances that other information in the request payload causes the create user request to fail.
Scope
Testing
Unit testing
Manual testing
Tested on Pixel emulator on API 30.
New app install creating a guest user
onesignal_idand a push subscription with anidWhen the SDK has an identified user, login to another user
external_idexternal_idand then add many tagsAffected code checklist
Checklist
Overview
Testing
Final pass
This change is