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

Fix ability to delete other device from the sync chain #11313

Merged
merged 2 commits into from
Nov 30, 2021

Conversation

AlexeyBarabash
Copy link
Contributor

@AlexeyBarabash AlexeyBarabash commented Nov 29, 2021

Basically this PR reverts https://chromium-review.googlesource.com/c/chromium/src/+/3001364 and updates the tests to be aware in future if Chromium will change the behavior near this place.

I had to use patch for src/components/sync_device_info/device_info_sync_bridge.cc.

Resolves brave/brave-browser#19561

Submitter Checklist:

  • I confirm that no security/privacy review is needed, or that I have requested one
  • There is a ticket for my issue
  • Used Github auto-closing keywords in the PR description above
  • Wrote a good PR/commit description
  • Added appropriate labels (QA/Yes or QA/No; release-notes/include or release-notes/exclude; OS/...) to the associated issue
  • Checked the PR locally: npm run test -- brave_browser_tests, npm run test -- brave_unit_tests, npm run lint, npm run gn_check, npm run tslint
  • Ran git rebase master (if needed)

Reviewer Checklist:

  • A security review is not needed, or a link to one is included in the PR description
  • New files have MPL-2.0 license header
  • Adequate test coverage exists to prevent regressions
  • Major classes, functions and non-trivial code blocks are well-commented
  • Changes in component dependencies are properly reflected in gn
  • Code follows the style guide
  • Test plan is specified in PR before merging

After-merge Checklist:

Test Plan:

Use one from brave/brave-browser#19561

const std::string guid = change->storage_key();

// Reupload local device if it was deleted from the server.
+ if (bool false_as_brave_needs_skip_next_if = false)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems like we can follow our patching patterns here and use #define BRAVE_DEVICE_INFO_SYNC_BRIDGE_APPLY_SYNC_CHANGES_SKIP_NEXT_IF if (false) in the chromium_src override.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and you can also add comment in the overridden file

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks @mkarolin @darkdh , I missed that pattern, I'll fix

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AlexeyBarabash AlexeyBarabash force-pushed the sync_fix_delete_other_device branch from 3bb43a4 to 2ac8203 Compare November 29, 2021 19:25
@AlexeyBarabash AlexeyBarabash requested a review from a team as a code owner November 29, 2021 19:25
@@ -13,8 +13,14 @@
#define RefreshLocalDeviceInfoIfNeeded \
RefreshLocalDeviceInfoIfNeeded_ChromiumImpl

// This macro disables Chromium's block which detects whether the local
// device record should be re-uppload to server. We disable it because it
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typo: re-uploaded

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator

@mkarolin mkarolin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Haven't looked at the tests logic, but chromium_src and patches changes LGTM.

@AlexeyBarabash AlexeyBarabash force-pushed the sync_fix_delete_other_device branch from 2ac8203 to a2bc0c2 Compare November 29, 2021 19:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Sync] Devices reappear after removing from the sync chain
3 participants