-
Notifications
You must be signed in to change notification settings - Fork 893
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
Enable History datatype for Sync #20329
Merged
Merged
Conversation
This file contains 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
github-actions
bot
added
the
CI/run-upstream-tests
Run upstream unit and browser tests on Linux and Windows (otherwise only on Linux)
label
Sep 28, 2023
AlexeyBarabash
force-pushed
the
sync_history_datatype
branch
from
September 28, 2023 16:38
4a5db86
to
660bac9
Compare
Removed |
AlexeyBarabash
changed the title
Reverted PR#16705 (Sync all history)
Enable History datatype for Sync
Sep 28, 2023
DJAndries
force-pushed
the
sync_history_datatype
branch
from
October 6, 2023 23:41
c4da1d5
to
8a58dfb
Compare
AlexeyBarabash
force-pushed
the
sync_history_datatype
branch
5 times, most recently
from
October 12, 2023 10:10
3c8701e
to
0ba403c
Compare
AlexeyBarabash
requested review from
sangwoo108,
cdesouza-chromium and
bridiver
October 12, 2023 11:41
components/history/core/browser/sync/brave_history_delete_directives_model_type_controller.cc
Show resolved
Hide resolved
2 tasks
…tivesModelTypeController to work when encrypt everything option is on
…l field, as it is unencrypted
…fics::UrlDirective
AlexeyBarabash
force-pushed
the
sync_history_datatype
branch
from
October 19, 2023 18:34
72cc7e9
to
891df29
Compare
This was referenced Oct 23, 2023
25 tasks
emerick
pushed a commit
that referenced
this pull request
Oct 25, 2023
* Reverted PR#16705 (Sync all history) * Reverted PR#16478 (Display history sync diagnostic info) * Reverted PR#20071 (Disable history sync datatype to fallback to typed urls datatype) * Added overrides for HistoryModelTypeController and HistoryDeleteDirectivesModelTypeController to work when encrypt everything option is on * Add patch to sync history delete directives and history entities together * Added unit test for LowPriorityUserTypes * Enable encryption of history sync entities * Added test for precondition state of history datatype controllers * Modified: clean out HistoryDeleteDirectiveSpecifics::UrlDirective::url field, as it is unencrypted * Added test to ensure we don't send url at HistoryDeleteDirectiveSpecifics::UrlDirective * Modified ModelTypeTest.EncryptableUserTypes test to check History type * Removed 'path_excludes' for the files removed in the current PR --------- Co-authored-by: Darnell Andries <[email protected]>
kjozwiak
pushed a commit
that referenced
this pull request
Oct 26, 2023
* Enable History datatype for Sync (#20329) * Reverted PR#16705 (Sync all history) * Reverted PR#16478 (Display history sync diagnostic info) * Reverted PR#20071 (Disable history sync datatype to fallback to typed urls datatype) * Added overrides for HistoryModelTypeController and HistoryDeleteDirectivesModelTypeController to work when encrypt everything option is on * Add patch to sync history delete directives and history entities together * Added unit test for LowPriorityUserTypes * Enable encryption of history sync entities * Added test for precondition state of history datatype controllers * Modified: clean out HistoryDeleteDirectiveSpecifics::UrlDirective::url field, as it is unencrypted * Added test to ensure we don't send url at HistoryDeleteDirectiveSpecifics::UrlDirective * Modified ModelTypeTest.EncryptableUserTypes test to check History type * Removed 'path_excludes' for the files removed in the current PR --------- Co-authored-by: Darnell Andries <[email protected]> * Fix #33746: Cleanup Brave-Core iOS chromium_src overrides & initialization code (#20598) - Cleanup Brave-Core IOS Chromium_SRC overrides. - Add new cleaner Chromium_SRC overrides and simplify app launch logic. * Don't redefine static_assert (#20440) (Instead, we make sure the static_assert passes here by locally restoring kCoarseResolutionMicroseconds back to its original Chromium value.) * Use `PrefService` with `MigrateObsoleteProfilePrefs` (#20396) Upstream is changing `MigrateObsoleteProfilePrefs` to take a `PrefService` pointer, rather than `Profile`, as this is more expressive of the data actually being accessed. This change aligns all places where we have procedures similar to `MigrateObsoleteProfilePrefs`, to receive a `PrefService*` instance as well. Chromium change: https://chromium.googlesource.com/chromium/src/+/d848587fe1f19123940de4e4c0cec328bc23001f commit d848587fe1f19123940de4e4c0cec328bc23001f Author: Mikel Astiz <[email protected]> Date: Mon Oct 2 09:28:03 2023 +0000 [sync] Remove legacy SyncRequested pref It has been practically unused for some time, and most of it is dead code ever since the feature toggle was cleaned up in https://crrev.com/c/4886256. On Ash, it needs to be migrated to a newly-introduced preference tailored to the actual underlying need, which is being able to remember that the server returned DISABLE_SYNC_ON_CLIENT (i.e. the user reset sync via dashboard). Change-Id: I0239447173b32d7d007ebf733dde23a5de1859e1 Bug: 1443446, 1219990 * Ignore formatting for crates under `third_party` (#20390) This changes adds a patch to add brave's own third party crates path to the list of rust paths to be ignored during formatting. * Merge pull request #20642 from brave/ios/bugfix/sync_all_history * Merge pull request #20664 from brave/cr119-followup-disable-power-bookmarks Disable kPowerBookmarksSidePanel feature flag * [Android] Fix for private tab badge padding Chromium change: https://source.chromium.org/chromium/chromium/src/+/37d04b2089c15cb152a8a559887a7d10c66572be [APS] Update tooltip visibility and remove hover highlight for StatusView - Remove tooltip when StatusIconView is not visible. - remove hover highlight when StatusIconView is not visible(e.g. default engine is not Google). - remove hover highlight when VerboseStatusText is visible(e.g. offline). demo(default engine not Google): https://drive.google.com/file/d/1DPIhHtWN4RnjPvkysyCSfV_gd73ZMjPb/view?usp=sharing demo(offline) https://drive.google.com/file/d/1-1Y_t59i8AcxFv6sLpBE-kG2tsSGoi4s/view?usp=sharing TODO: relocate the logic in StatusView to StatusViewBinder or StatusProperties. Bug: 1476816, 1476802 * Merge pull request #20314 from brave/cr119 Upgrade from Chromium 118 to Chromium 119 --------- Co-authored-by: AlexeyBarabash <[email protected]> Co-authored-by: Darnell Andries <[email protected]> Co-authored-by: Brandon-T <[email protected]> Co-authored-by: Arthur Edelstein <[email protected]> Co-authored-by: cdesouza-chromium <[email protected]> Co-authored-by: Soner YUKSEL <[email protected]> Co-authored-by: Artem Samoilenko <[email protected]>
ghost
mentioned this pull request
Nov 5, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
CI/run-network-audit
Run network-audit
CI/run-upstream-tests
Run upstream unit and browser tests on Linux and Windows (otherwise only on Linux)
feature/sync
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.
Resolves brave/brave-browser#32876
This PR enables History datatype in Brave, becasue after CR119 the old TypedUrls datatype, which was used for History Sync, is wiped out from Chromium codebase.
Related server PR brave/go-sync#176 .
Key points of the PR:
HistoryModelTypeController
andHistoryDeleteDirectivesModelTypeController
to allow start when encrypt everything option is enabled;HistoryDeleteDirectiveSpecifics::UrlDirective::url
field is forcibly cleaned out not to leak, chrome.history.deleteUrl extension API will not work properly;LowPriorityUserTypes
-HISTORY
is removed,HISTORY_DELETE_DIRECTIVES
added. We need this to make device first download History and then delete directives download and apply after. This patch will be reverted when the server will support delete directives.Note: history entries created before enabling sync and turn history type on will not be sent to the server - inherited from upstream behavior .
Submitter Checklist:
QA/Yes
orQA/No
;release-notes/include
orrelease-notes/exclude
;OS/...
) to the associated issuenpm run test -- brave_browser_tests
,npm run test -- brave_unit_tests
wikinpm run lint
,npm run presubmit
wiki,npm run gn_check
,npm run tslint
git rebase master
(if needed)Reviewer Checklist:
gn
After-merge Checklist:
changes has landed on
Test Plan:
Please note, this PR requires updated server, either built from brave/go-sync#176 or wait till it will be merged/deployed.
I. Browse/manual remove history entries
https://search.brave.com/search?q=1000001&source=web
https://search.brave.com/search?q=1000002&source=web
https://search.brave.com/search?q=1000003&source=web
https://search.brave.com/search?q=2000001&source=web
https://search.brave.com/search?q=2000002&source=web
https://search.brave.com/search?q=2000003&source=web
II. Time-based history cleanup
You may use what you have left from test (I), or you join two devices to the sync chain, enable history, and do some browsing.
Browsing history
andTime range
Last hour
, pressClear data
III. Ensure url from
chrome.history.deleteUrl
is not leaked. This is test plan for developers or for security engineers, imho QA engineers may not go over the steps below./brave --enable-logging=stderr --v=0 --vmodule=commit.cc=3,*/sync/engine/*=3,traffic_logger=1
from terminal;inspect
under Brave extension"url_directive": {
in terminal.Expected not to find such records.
IV. Android