Tracking issue for design/implementation changes needed to migrate Passwords to use the new USS architecture.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/044528b4da710fe6e31b1e11070909abdda3d00d commit 044528b4da710fe6e31b1e11070909abdda3d00d Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Wed Nov 07 09:27:33 2018 [Sync::USS] Rename PasswordModelTypeController class This CL renames PasswordModelTypeController class. Currently it is used for the Pseudo USS implementation as an intermediate stage till releasing the full-blown USS implementation for passwords. We should reserve that name for the full-blown implementation. Bug: 902349 Change-Id: I01b9df1e9e4afcb0307f58a95172769a9f249f18 Reviewed-on: https://chromium-review.googlesource.com/c/1320170 Reviewed-by: Mikel Astiz <mastiz@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Cr-Commit-Position: refs/heads/master@{#606001} [modify] https://crrev.com/044528b4da710fe6e31b1e11070909abdda3d00d/components/browser_sync/profile_sync_components_factory_impl.cc [modify] https://crrev.com/044528b4da710fe6e31b1e11070909abdda3d00d/components/password_manager/core/browser/BUILD.gn [rename] https://crrev.com/044528b4da710fe6e31b1e11070909abdda3d00d/components/password_manager/core/browser/password_syncable_service_based_model_type_controller.cc [rename] https://crrev.com/044528b4da710fe6e31b1e11070909abdda3d00d/components/password_manager/core/browser/password_syncable_service_based_model_type_controller.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/59fd8e313ad4b19652bf69a435457da8e6c99ca5 commit 59fd8e313ad4b19652bf69a435457da8e6c99ca5 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Thu Nov 08 20:45:18 2018 [Sync::USS] Move password sync related classes to /sync sub-folder Bug: 902349 Change-Id: I565b746737cc1567cf75abf4924c77eb648c3b46 Reviewed-on: https://chromium-review.googlesource.com/c/1322869 Reviewed-by: Mikel Astiz <mastiz@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Eugene But <eugenebut@chromium.org> Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Cr-Commit-Position: refs/heads/master@{#606595} [modify] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/chrome/browser/sync/chrome_sync_client.cc [modify] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/browser_sync/profile_sync_components_factory_impl.cc [modify] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/BUILD.gn [modify] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/password_store.cc [add] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/sync/OWNERS [rename] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/sync/password_data_type_controller.cc [rename] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/sync/password_data_type_controller.h [rename] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/sync/password_model_worker.cc [rename] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/sync/password_model_worker.h [rename] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/sync/password_syncable_service.cc [rename] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/sync/password_syncable_service.h [rename] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/sync/password_syncable_service_based_model_type_controller.cc [rename] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/sync/password_syncable_service_based_model_type_controller.h [rename] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/components/password_manager/core/browser/sync/password_syncable_service_unittest.cc [modify] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/ios/chrome/browser/sync/ios_chrome_sync_client.mm [modify] https://crrev.com/59fd8e313ad4b19652bf69a435457da8e6c99ca5/ios/web_view/internal/sync/web_view_sync_client.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/194abb348b6be616fd50fc1a91f6026e7c6e8932 commit 194abb348b6be616fd50fc1a91f6026e7c6e8932 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Fri Nov 09 08:07:13 2018 [Sync::USS] Introducing PasswordSyncBridge This CL adds the skeleton of the PasswordSyncBridge and plumps it into PasswordStore. In addition it also include the feature toggle for Passwords USS migration. Bug: 902349 Change-Id: I343f2bb83ecf2c993bacab9e299e7d0deea868b2 Reviewed-on: https://chromium-review.googlesource.com/c/1323653 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Cr-Commit-Position: refs/heads/master@{#606766} [modify] https://crrev.com/194abb348b6be616fd50fc1a91f6026e7c6e8932/components/password_manager/core/browser/BUILD.gn [modify] https://crrev.com/194abb348b6be616fd50fc1a91f6026e7c6e8932/components/password_manager/core/browser/DEPS [modify] https://crrev.com/194abb348b6be616fd50fc1a91f6026e7c6e8932/components/password_manager/core/browser/password_store.cc [modify] https://crrev.com/194abb348b6be616fd50fc1a91f6026e7c6e8932/components/password_manager/core/browser/password_store.h [add] https://crrev.com/194abb348b6be616fd50fc1a91f6026e7c6e8932/components/password_manager/core/browser/sync/password_sync_bridge.cc [add] https://crrev.com/194abb348b6be616fd50fc1a91f6026e7c6e8932/components/password_manager/core/browser/sync/password_sync_bridge.h [modify] https://crrev.com/194abb348b6be616fd50fc1a91f6026e7c6e8932/components/sync/driver/sync_driver_switches.cc [modify] https://crrev.com/194abb348b6be616fd50fc1a91f6026e7c6e8932/components/sync/driver/sync_driver_switches.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/76ceba075153b24ae7b5d0b043fca5bd00f19694 commit 76ceba075153b24ae7b5d0b043fca5bd00f19694 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Wed Nov 14 16:52:19 2018 [Sync::USS] Introducing PasswordModelTypeController Bug: 902349 Change-Id: Ic8f20ba353bf9805d79916f440fe10137a97aff7 Reviewed-on: https://chromium-review.googlesource.com/c/1325981 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Cr-Commit-Position: refs/heads/master@{#608009} [modify] https://crrev.com/76ceba075153b24ae7b5d0b043fca5bd00f19694/components/browser_sync/profile_sync_components_factory_impl.cc [modify] https://crrev.com/76ceba075153b24ae7b5d0b043fca5bd00f19694/components/password_manager/core/browser/BUILD.gn [modify] https://crrev.com/76ceba075153b24ae7b5d0b043fca5bd00f19694/components/password_manager/core/browser/password_store.cc [modify] https://crrev.com/76ceba075153b24ae7b5d0b043fca5bd00f19694/components/password_manager/core/browser/password_store.h [add] https://crrev.com/76ceba075153b24ae7b5d0b043fca5bd00f19694/components/password_manager/core/browser/sync/password_model_type_controller.cc [add] https://crrev.com/76ceba075153b24ae7b5d0b043fca5bd00f19694/components/password_manager/core/browser/sync/password_model_type_controller.h [modify] https://crrev.com/76ceba075153b24ae7b5d0b043fca5bd00f19694/components/sync/model_impl/client_tag_based_model_type_processor.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/bc5163cece5fd716d73d60ce2cc7f9cc29612e34 commit bc5163cece5fd716d73d60ce2cc7f9cc29612e34 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Tue Nov 27 19:01:49 2018 [Sync::USS] Decrypt passwords in the ModelTypeWorker for full-blown USS Bug: 902349 Change-Id: Ibd685911d52ae19c62b06caf47688abad081d243 Reviewed-on: https://chromium-review.googlesource.com/c/1333760 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Cr-Commit-Position: refs/heads/master@{#611233} [modify] https://crrev.com/bc5163cece5fd716d73d60ce2cc7f9cc29612e34/components/sync/base/cryptographer.cc [modify] https://crrev.com/bc5163cece5fd716d73d60ce2cc7f9cc29612e34/components/sync/engine_impl/DEPS [modify] https://crrev.com/bc5163cece5fd716d73d60ce2cc7f9cc29612e34/components/sync/engine_impl/model_type_worker.cc [modify] https://crrev.com/bc5163cece5fd716d73d60ce2cc7f9cc29612e34/components/sync/engine_impl/model_type_worker.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8ea63a762c64a985273fe6959358ded96efe931e commit 8ea63a762c64a985273fe6959358ded96efe931e Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Wed Nov 28 09:54:21 2018 [Sync::USS] Encrypt passwords in NonBlockingTypeCommitContribution This is necessary for full-blown USS. Bug: 902349 Change-Id: I1de4a3ac610151feb236c2f1696ba22b9f047568 Reviewed-on: https://chromium-review.googlesource.com/c/1336129 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Cr-Commit-Position: refs/heads/master@{#611620} [modify] https://crrev.com/8ea63a762c64a985273fe6959358ded96efe931e/components/sync/engine_impl/non_blocking_type_commit_contribution.cc [modify] https://crrev.com/8ea63a762c64a985273fe6959358ded96efe931e/components/sync/engine_impl/non_blocking_type_commit_contribution.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2c65b1d886772e64b039a0dbbb65ef11268b4f88 commit 2c65b1d886772e64b039a0dbbb65ef11268b4f88 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Tue Jan 08 14:49:29 2019 [Sync:USS] Add primary key to LoginDatabase LoginDatabase doesn't have a primary key, however migration to USS requires the concept of storage key which is ideally the primary key of the table. LoginDatabase uses SQLTableBuilder to migrate from different database versions. SQLTableBuilder migration doesn't support adding primary keys at arbitrary version, rather only in the first version. This CL adds the support to introduce primary keys and unique keys at any version and adjusts the migration code accordingly. In addition, it uses the updated SQLTableBuilder to add a primary key to the LoginDatabase. Bug: 902349 Change-Id: I08f0d6f9884c5ef2b99650a76716197ca4f18b9c Reviewed-on: https://chromium-review.googlesource.com/c/1361861 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Cr-Commit-Position: refs/heads/master@{#620713} [modify] https://crrev.com/2c65b1d886772e64b039a0dbbb65ef11268b4f88/components/password_manager/core/browser/BUILD.gn [modify] https://crrev.com/2c65b1d886772e64b039a0dbbb65ef11268b4f88/components/password_manager/core/browser/login_database.cc [modify] https://crrev.com/2c65b1d886772e64b039a0dbbb65ef11268b4f88/components/password_manager/core/browser/login_database.h [modify] https://crrev.com/2c65b1d886772e64b039a0dbbb65ef11268b4f88/components/password_manager/core/browser/login_database_ios.cc [modify] https://crrev.com/2c65b1d886772e64b039a0dbbb65ef11268b4f88/components/password_manager/core/browser/login_database_unittest.cc [modify] https://crrev.com/2c65b1d886772e64b039a0dbbb65ef11268b4f88/components/password_manager/core/browser/sql_table_builder.cc [modify] https://crrev.com/2c65b1d886772e64b039a0dbbb65ef11268b4f88/components/password_manager/core/browser/sql_table_builder.h [modify] https://crrev.com/2c65b1d886772e64b039a0dbbb65ef11268b4f88/components/password_manager/core/browser/sql_table_builder_unittest.cc [add] https://crrev.com/2c65b1d886772e64b039a0dbbb65ef11268b4f88/components/test/data/password_manager/login_db_v20.sql
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fa68f994f0a0838447d9762f50a8190e78a366f2 commit fa68f994f0a0838447d9762f50a8190e78a366f2 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Tue Jan 08 17:05:35 2019 [Sync::USS] Introduce Sync metadata tables in LoginDatabase In order to migrate Passwords to the new USS architecture, sync metadata should be stored together with passoword's model data in the same database. This is to achieve atomic writes of the data and the metadata. This CL is introducing the tables required for storing the per-entitiy and per-model sync metadata tables. (namely sync_entities_metadata and sync_model_metadata respectively). Bug: 902349 Change-Id: Ic1e5cd30880757c4ebb5e312ffe186fdadc9b25b Reviewed-on: https://chromium-review.googlesource.com/c/1369188 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Cr-Commit-Position: refs/heads/master@{#620763} [modify] https://crrev.com/fa68f994f0a0838447d9762f50a8190e78a366f2/components/password_manager/core/browser/BUILD.gn [modify] https://crrev.com/fa68f994f0a0838447d9762f50a8190e78a366f2/components/password_manager/core/browser/login_database.cc [modify] https://crrev.com/fa68f994f0a0838447d9762f50a8190e78a366f2/components/password_manager/core/browser/sql_table_builder.cc [add] https://crrev.com/fa68f994f0a0838447d9762f50a8190e78a366f2/components/test/data/password_manager/login_db_v21.sql
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1b5f7297679474ee41d6b1bca4d90f4189727fe7 commit 1b5f7297679474ee41d6b1bca4d90f4189727fe7 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Tue Jan 08 18:20:36 2019 [Sync::USS] LoginDatabase should implement syncer::SyncMetadataStore USS bridge require a sync metadata store to read and store the sync metadata. LoginDatabase is the best fit for this for Passwords data type. This CL adds implements syncer::SyncMetadataStore in LoginDatabase. Bug: 902349 Change-Id: I1eef9b5aa3bbf99f8d7c5ad1fc20884781ca257b Reviewed-on: https://chromium-review.googlesource.com/c/1371901 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Cr-Commit-Position: refs/heads/master@{#620799} [modify] https://crrev.com/1b5f7297679474ee41d6b1bca4d90f4189727fe7/components/password_manager/core/browser/login_database.cc [modify] https://crrev.com/1b5f7297679474ee41d6b1bca4d90f4189727fe7/components/password_manager/core/browser/login_database.h [modify] https://crrev.com/1b5f7297679474ee41d6b1bca4d90f4189727fe7/components/password_manager/core/browser/login_database_unittest.cc [modify] https://crrev.com/1b5f7297679474ee41d6b1bca4d90f4189727fe7/components/sync/model/metadata_batch.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0fad71db499e559926c900c6e5c2a90be5384c93 commit 0fad71db499e559926c900c6e5c2a90be5384c93 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Wed Jan 09 14:09:05 2019 [Sync::USS] Implement PasswordSyncBridge::GetStorageKey() Bug: 902349 Change-Id: If5d3ff4cfee29561e735af66cca2453a104dba32 Reviewed-on: https://chromium-review.googlesource.com/c/1402444 Reviewed-by: Mikel Astiz <mastiz@chromium.org> Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Cr-Commit-Position: refs/heads/master@{#621136} [modify] https://crrev.com/0fad71db499e559926c900c6e5c2a90be5384c93/components/password_manager/core/browser/sync/password_sync_bridge.cc [modify] https://crrev.com/0fad71db499e559926c900c6e5c2a90be5384c93/components/password_manager/core/browser/sync/password_sync_bridge.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9e5e7dabe5a0edb590cac82c67cd7995a7cab2ba commit 9e5e7dabe5a0edb590cac82c67cd7995a7cab2ba Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Thu Jan 10 17:21:22 2019 [Sync:USS] Implement PasswordSyncBridge::GetClientTag() Bug: 902349 Change-Id: I9128f04839decd324ad6f766b9a700edf5fa6fa8 Reviewed-on: https://chromium-review.googlesource.com/c/1402565 Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Cr-Commit-Position: refs/heads/master@{#621620} [modify] https://crrev.com/9e5e7dabe5a0edb590cac82c67cd7995a7cab2ba/components/password_manager/core/browser/BUILD.gn [modify] https://crrev.com/9e5e7dabe5a0edb590cac82c67cd7995a7cab2ba/components/password_manager/core/browser/sync/password_sync_bridge.cc [add] https://crrev.com/9e5e7dabe5a0edb590cac82c67cd7995a7cab2ba/components/password_manager/core/browser/sync/password_sync_bridge_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/991e5636b44bb07fcc67186aff6302b5b68a1798 commit 991e5636b44bb07fcc67186aff6302b5b68a1798 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Mon Jan 14 14:43:57 2019 [Sync::USS] Add transaction support to PasswordSyncStore USS requires atomic storage of model data and sync metadata. This CL add transaction support to the PasswordSyncStore to fulfill this requirement. Bug: 902349 Change-Id: I6d564d0e579d95ca08915daf802491c69019fe74 Reviewed-on: https://chromium-review.googlesource.com/c/1396034 Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Cr-Commit-Position: refs/heads/master@{#622450} [modify] https://crrev.com/991e5636b44bb07fcc67186aff6302b5b68a1798/components/password_manager/core/browser/login_database.cc [modify] https://crrev.com/991e5636b44bb07fcc67186aff6302b5b68a1798/components/password_manager/core/browser/login_database.h [modify] https://crrev.com/991e5636b44bb07fcc67186aff6302b5b68a1798/components/password_manager/core/browser/mock_password_store.h [modify] https://crrev.com/991e5636b44bb07fcc67186aff6302b5b68a1798/components/password_manager/core/browser/password_store.cc [modify] https://crrev.com/991e5636b44bb07fcc67186aff6302b5b68a1798/components/password_manager/core/browser/password_store.h [modify] https://crrev.com/991e5636b44bb07fcc67186aff6302b5b68a1798/components/password_manager/core/browser/password_store_default.cc [modify] https://crrev.com/991e5636b44bb07fcc67186aff6302b5b68a1798/components/password_manager/core/browser/password_store_default.h [modify] https://crrev.com/991e5636b44bb07fcc67186aff6302b5b68a1798/components/password_manager/core/browser/password_store_sync.h [modify] https://crrev.com/991e5636b44bb07fcc67186aff6302b5b68a1798/components/password_manager/core/browser/test_password_store.cc [modify] https://crrev.com/991e5636b44bb07fcc67186aff6302b5b68a1798/components/password_manager/core/browser/test_password_store.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fccd9c66115a1e55a3c45d081dcb3712f0c70a15 commit fccd9c66115a1e55a3c45d081dcb3712f0c70a15 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Mon Jan 14 20:50:17 2019 [Sync::USS] Expose the MetadataStore in PasswordStoreSync interface This CL exposes the MetadataStore in PasswordStoreSync interface. This will be useful later because the PasswordSyncBridge will require a MetadataStore to persist the metadata. Bug: 902349 Change-Id: I603299846828246a23822ca3a39126c3b4de0f61 Reviewed-on: https://chromium-review.googlesource.com/c/1401047 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Cr-Commit-Position: refs/heads/master@{#622594} [modify] https://crrev.com/fccd9c66115a1e55a3c45d081dcb3712f0c70a15/components/password_manager/core/browser/mock_password_store.h [modify] https://crrev.com/fccd9c66115a1e55a3c45d081dcb3712f0c70a15/components/password_manager/core/browser/password_store_default.cc [modify] https://crrev.com/fccd9c66115a1e55a3c45d081dcb3712f0c70a15/components/password_manager/core/browser/password_store_default.h [modify] https://crrev.com/fccd9c66115a1e55a3c45d081dcb3712f0c70a15/components/password_manager/core/browser/password_store_sync.h [modify] https://crrev.com/fccd9c66115a1e55a3c45d081dcb3712f0c70a15/components/password_manager/core/browser/test_password_store.cc [modify] https://crrev.com/fccd9c66115a1e55a3c45d081dcb3712f0c70a15/components/password_manager/core/browser/test_password_store.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/15cf96733defc7816f5bdd495711fe1c501c2d64 commit 15cf96733defc7816f5bdd495711fe1c501c2d64 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Thu Jan 17 15:27:18 2019 [Sync:USS] LoginDatabase::RemoveLogins*() should return a ChangeList This is a mechanical change that only moves code around to have a more consistent LoginDatabase API. For consistency with AddLogin and UpdateLogin, RemoveLogin* methods should return a PasswordStoreChangeList. This is in preparation for a later patch that would add the primary key to the PasswordStoreChangeList. In addition, this changes makes GetLoginsSyncedBetween() private and replaces push_back with emplace_back to save moving the relatively large struct PasswordStoreChangeList as much as possible. Bug: 902349 Change-Id: Ided5923fbd95768ae3f91179d1dc3648725cbe0b Reviewed-on: https://chromium-review.googlesource.com/c/1409550 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Cr-Commit-Position: refs/heads/master@{#623690} [modify] https://crrev.com/15cf96733defc7816f5bdd495711fe1c501c2d64/chrome/browser/password_manager/password_store_mac.cc [modify] https://crrev.com/15cf96733defc7816f5bdd495711fe1c501c2d64/components/password_manager/core/browser/login_database.cc [modify] https://crrev.com/15cf96733defc7816f5bdd495711fe1c501c2d64/components/password_manager/core/browser/login_database.h [modify] https://crrev.com/15cf96733defc7816f5bdd495711fe1c501c2d64/components/password_manager/core/browser/login_database_ios_unittest.cc [modify] https://crrev.com/15cf96733defc7816f5bdd495711fe1c501c2d64/components/password_manager/core/browser/login_database_unittest.cc [modify] https://crrev.com/15cf96733defc7816f5bdd495711fe1c501c2d64/components/password_manager/core/browser/password_store_default.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d5d89c73d919fce8b7a17afc1d77d811a291fca4 commit d5d89c73d919fce8b7a17afc1d77d811a291fca4 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Thu Jan 17 18:19:12 2019 [Sync::USS] Expose the primary key in PasswordStoreChange Bug: 902349 Change-Id: Ie4fa253d724b69f0a0d5f7265b5218b2df05851c Reviewed-on: https://chromium-review.googlesource.com/c/1405249 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Cr-Commit-Position: refs/heads/master@{#623755} [modify] https://crrev.com/d5d89c73d919fce8b7a17afc1d77d811a291fca4/components/password_manager/core/browser/login_database.cc [modify] https://crrev.com/d5d89c73d919fce8b7a17afc1d77d811a291fca4/components/password_manager/core/browser/login_database.h [modify] https://crrev.com/d5d89c73d919fce8b7a17afc1d77d811a291fca4/components/password_manager/core/browser/login_database_unittest.cc [modify] https://crrev.com/d5d89c73d919fce8b7a17afc1d77d811a291fca4/components/password_manager/core/browser/password_store_change.h [modify] https://crrev.com/d5d89c73d919fce8b7a17afc1d77d811a291fca4/components/password_manager/core/browser/password_store_default.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/aa975217c7a32425595c3f2dc29b6f11277a7455 commit aa975217c7a32425595c3f2dc29b6f11277a7455 Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Fri Jan 18 03:06:12 2019 [Sync::USS] Process local changes in PasswordSyncBridge Bug: 902349 Change-Id: I62a921cd3fbe63971be6f244eb79b6f00bd73da7 Reviewed-on: https://chromium-review.googlesource.com/c/1412484 Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Cr-Commit-Position: refs/heads/master@{#623978} [modify] https://crrev.com/aa975217c7a32425595c3f2dc29b6f11277a7455/components/password_manager/core/browser/password_store.cc [modify] https://crrev.com/aa975217c7a32425595c3f2dc29b6f11277a7455/components/password_manager/core/browser/sync/password_sync_bridge.cc [modify] https://crrev.com/aa975217c7a32425595c3f2dc29b6f11277a7455/components/password_manager/core/browser/sync/password_sync_bridge.h [modify] https://crrev.com/aa975217c7a32425595c3f2dc29b6f11277a7455/components/password_manager/core/browser/sync/password_sync_bridge_unittest.cc
Issue 856941 has been merged into this issue.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/645dd808d17569bdcb98451848199245be1bb18c commit 645dd808d17569bdcb98451848199245be1bb18c Author: Mohamed Amir Yosef <mamir@chromium.org> Date: Tue Jan 22 11:14:29 2019 [Sync::USS] Persist metadata upon local password change Bug: 902349 Change-Id: Icb47bba418b6dc0a9c10631f88aff974a5e15ad9 Reviewed-on: https://chromium-review.googlesource.com/c/1418050 Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org> Reviewed-by: Mikel Astiz <mastiz@chromium.org> Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org> Cr-Commit-Position: refs/heads/master@{#624757} [modify] https://crrev.com/645dd808d17569bdcb98451848199245be1bb18c/components/password_manager/core/browser/password_store.cc [modify] https://crrev.com/645dd808d17569bdcb98451848199245be1bb18c/components/password_manager/core/browser/sync/password_sync_bridge.cc [modify] https://crrev.com/645dd808d17569bdcb98451848199245be1bb18c/components/password_manager/core/browser/sync/password_sync_bridge.h [modify] https://crrev.com/645dd808d17569bdcb98451848199245be1bb18c/components/password_manager/core/browser/sync/password_sync_bridge_unittest.cc [modify] https://crrev.com/645dd808d17569bdcb98451848199245be1bb18c/components/sync/model_impl/sync_metadata_store_change_list.cc [modify] https://crrev.com/645dd808d17569bdcb98451848199245be1bb18c/components/sync/model_impl/sync_metadata_store_change_list.h
Comment 1 by mamir@chromium.org
, Nov 6