Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(233)

Issue 447763002: Implement CSVReader and CSVWriter to be used for password import and export. (Closed)

Created:
6 years, 4 months ago by engedy
Modified:
5 years, 11 months ago
CC:
chromium-reviews, tfarina, gcasto+watchlist_chromium.org, mkwst+watchlist_chromium.org, Peter Kasting
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Implement CSVReader and CSVWriter. These will be used for password import and export. We opted for reinventing the wheel because it seemed to be still less work than reviewing and adding an existing (third party) library into the Chromium code base. The code can be moved into "base" once there is at least one other user for it than the password manager. BUG=341477 Committed: https://crrev.com/972fd742e9c996e5300728b3ea797c66a05782e8 Cr-Commit-Position: refs/heads/master@{#311271}

Patch Set 1 #

Total comments: 38

Patch Set 2 : Address comments, fixed a bug. #

Total comments: 10

Patch Set 3 : Rebase. #

Patch Set 4 : Address comments from vasilii@. #

Total comments: 4

Patch Set 5 : Addressed outstanding comments. #

Patch Set 6 : Rebase. #

Patch Set 7 : Nit. #

Total comments: 54

Patch Set 8 : Addressed comments from vabr@. #

Total comments: 4

Patch Set 9 : Addressed most comments from vabr@. #

Patch Set 10 : Rename macro. #

Patch Set 11 : Changed API interface to avoid stateless classes. #

Total comments: 4

Patch Set 12 : Address last 2 comments. #

Patch Set 13 : Fix whitespace in DEPS. #

Patch Set 14 : Rebase. #

Patch Set 15 : Add build config header. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+826 lines, -0 lines) Patch
M components/components_tests.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +2 lines, -0 lines 0 comments Download
M components/password_manager.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +5 lines, -0 lines 0 comments Download
M components/password_manager/DEPS View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -0 lines 0 comments Download
A components/password_manager/core/browser/export/csv_writer.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +35 lines, -0 lines 0 comments Download
A components/password_manager/core/browser/export/csv_writer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +92 lines, -0 lines 0 comments Download
A components/password_manager/core/browser/export/csv_writer_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +199 lines, -0 lines 0 comments Download
A components/password_manager/core/browser/import/csv_reader.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +41 lines, -0 lines 0 comments Download
A components/password_manager/core/browser/import/csv_reader.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +132 lines, -0 lines 0 comments Download
A components/password_manager/core/browser/import/csv_reader_unittest.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +319 lines, -0 lines 0 comments Download

Messages

Total messages: 42 (9 generated)
engedy
@Vasilii, could you please take a look?
6 years, 4 months ago (2014-08-06 14:37:05 UTC) #1
tfarina
https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/export/csv_writer.h File components/password_manager/core/browser/export/csv_writer.h (right): https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/export/csv_writer.h#newcode12 components/password_manager/core/browser/export/csv_writer.h:12: #include "base/basictypes.h" macros.h https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.h File components/password_manager/core/browser/import/csv_reader.h (right): https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.h#newcode12 components/password_manager/core/browser/import/csv_reader.h:12: ...
6 years, 4 months ago (2014-08-06 16:45:12 UTC) #2
vasilii
https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/export/csv_writer.cc File components/password_manager/core/browser/export/csv_writer.cc (right): https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/export/csv_writer.cc#newcode60 components/password_manager/core/browser/export/csv_writer.cc:60: typedef std::vector<std::string>::const_iterator ConstFieldIterator; ConstColumnIterator? https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/export/csv_writer.cc#newcode78 components/password_manager/core/browser/export/csv_writer.cc:78: AppendValue(it_row->at(*it_column_name), csv); It's ...
6 years, 4 months ago (2014-08-06 17:42:17 UTC) #3
tfarina
https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc File components/password_manager/core/browser/import/csv_reader.cc (right): https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc#newcode97 components/password_manager/core/browser/import/csv_reader.cc:97: std::string& target = records->back()[(*column_names)[i]]; On 2014/08/06 17:42:16, vasilii wrote: ...
6 years, 4 months ago (2014-08-06 18:00:52 UTC) #4
Peter Kasting
https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc File components/password_manager/core/browser/import/csv_reader.cc (right): https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc#newcode97 components/password_manager/core/browser/import/csv_reader.cc:97: std::string& target = records->back()[(*column_names)[i]]; On 2014/08/06 18:00:52, tfarina wrote: ...
6 years, 4 months ago (2014-08-07 03:59:50 UTC) #5
engedy
https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/export/csv_writer.cc File components/password_manager/core/browser/export/csv_writer.cc (right): https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/export/csv_writer.cc#newcode60 components/password_manager/core/browser/export/csv_writer.cc:60: typedef std::vector<std::string>::const_iterator ConstFieldIterator; On 2014/08/06 17:42:16, vasilii wrote: > ...
6 years, 4 months ago (2014-08-08 17:06:14 UTC) #6
vasilii
https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc File components/password_manager/core/browser/import/csv_reader.cc (right): https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc#newcode40 components/password_manager/core/browser/import/csv_reader.cc:40: static RE2 first_field_regex(kFirstFieldRE); On 2014/08/08 17:06:13, engedy wrote: > ...
6 years, 4 months ago (2014-08-11 11:56:39 UTC) #7
engedy
https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc File components/password_manager/core/browser/import/csv_reader.cc (right): https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc#newcode40 components/password_manager/core/browser/import/csv_reader.cc:40: static RE2 first_field_regex(kFirstFieldRE); On 2014/08/11 11:56:38, vasilii wrote: > ...
6 years, 4 months ago (2014-08-12 11:27:12 UTC) #8
vasilii
https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc File components/password_manager/core/browser/import/csv_reader.cc (right): https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc#newcode40 components/password_manager/core/browser/import/csv_reader.cc:40: static RE2 first_field_regex(kFirstFieldRE); On 2014/08/12 11:27:11, engedy wrote: > ...
6 years, 4 months ago (2014-08-12 12:20:01 UTC) #9
engedy
https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc File components/password_manager/core/browser/import/csv_reader.cc (right): https://codereview.chromium.org/447763002/diff/1/components/password_manager/core/browser/import/csv_reader.cc#newcode40 components/password_manager/core/browser/import/csv_reader.cc:40: static RE2 first_field_regex(kFirstFieldRE); On 2014/08/12 12:20:01, vasilii wrote: > ...
6 years, 4 months ago (2014-08-12 13:02:53 UTC) #10
vasilii
lgtm
6 years, 4 months ago (2014-08-12 13:25:16 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/447763002/140001
6 years, 3 months ago (2014-09-18 15:10:31 UTC) #14
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/11845)
6 years, 3 months ago (2014-09-18 15:19:32 UTC) #16
engedy
Vaclav, I am planning to resume work on this. There is still the Win compile ...
6 years, 2 months ago (2014-09-25 12:38:59 UTC) #18
engedy
On 2014/09/25 12:38:59, engedy wrote: > Vaclav, I am planning to resume work on this. ...
6 years, 2 months ago (2014-09-25 12:39:21 UTC) #19
vabr (Chromium)
LGTM with comments. Happy to discuss more. Cheers, Vaclav https://codereview.chromium.org/447763002/diff/140001/components/password_manager/core/browser/export/csv_writer.cc File components/password_manager/core/browser/export/csv_writer.cc (right): https://codereview.chromium.org/447763002/diff/140001/components/password_manager/core/browser/export/csv_writer.cc#newcode22 components/password_manager/core/browser/export/csv_writer.cc:22: ...
6 years, 2 months ago (2014-09-25 14:44:28 UTC) #20
engedy
Thanks for the thorough review. Given the amount of changes, PTAL. https://codereview.chromium.org/447763002/diff/140001/components/password_manager/core/browser/export/csv_writer.cc File components/password_manager/core/browser/export/csv_writer.cc (right): ...
6 years, 1 month ago (2014-11-06 14:55:40 UTC) #21
vabr (Chromium)
Thanks, Balázs! I liked the new tests you added. The only major pushback from me ...
6 years, 1 month ago (2014-11-06 16:16:03 UTC) #22
engedy
Please see my responses -- other than that, I have C++11-ized it, and refactored a ...
6 years, 1 month ago (2014-11-07 16:26:11 UTC) #23
Peter Kasting
Since I'm CCed on this and you guys seem at a difference, here's a random ...
6 years, 1 month ago (2014-11-07 18:38:29 UTC) #25
engedy
https://codereview.chromium.org/447763002/diff/140001/components/password_manager/core/browser/export/csv_writer.h File components/password_manager/core/browser/export/csv_writer.h (right): https://codereview.chromium.org/447763002/diff/140001/components/password_manager/core/browser/export/csv_writer.h#newcode22 components/password_manager/core/browser/export/csv_writer.h:22: class CSVWriter { On 2014/11/07 18:38:29, Peter Kasting wrote: ...
6 years, 1 month ago (2014-11-07 19:39:43 UTC) #26
Peter Kasting
https://codereview.chromium.org/447763002/diff/140001/components/password_manager/core/browser/export/csv_writer.h File components/password_manager/core/browser/export/csv_writer.h (right): https://codereview.chromium.org/447763002/diff/140001/components/password_manager/core/browser/export/csv_writer.h#newcode22 components/password_manager/core/browser/export/csv_writer.h:22: class CSVWriter { On 2014/11/07 19:39:43, engedy wrote: > ...
6 years, 1 month ago (2014-11-07 21:33:44 UTC) #27
engedy
https://codereview.chromium.org/447763002/diff/140001/components/password_manager/core/browser/export/csv_writer.h File components/password_manager/core/browser/export/csv_writer.h (right): https://codereview.chromium.org/447763002/diff/140001/components/password_manager/core/browser/export/csv_writer.h#newcode22 components/password_manager/core/browser/export/csv_writer.h:22: class CSVWriter { On 2014/11/07 21:33:44, Peter Kasting wrote: ...
6 years, 1 month ago (2014-11-10 09:33:29 UTC) #28
vabr (Chromium)
LGTM with two easy comments. Thanks for the changes, Balázs. I also like encapsulating the ...
6 years, 1 month ago (2014-11-11 08:59:49 UTC) #29
engedy
https://codereview.chromium.org/447763002/diff/220001/components/password_manager/core/browser/export/csv_writer.cc File components/password_manager/core/browser/export/csv_writer.cc (right): https://codereview.chromium.org/447763002/diff/220001/components/password_manager/core/browser/export/csv_writer.cc#newcode16 components/password_manager/core/browser/export/csv_writer.cc:16: CSVFormatter(std::string* output) On 2014/11/11 08:59:49, vabr (Chromium) wrote: > ...
6 years, 1 month ago (2014-11-11 11:58:47 UTC) #30
engedy
@Carlos: Could you please review usage of third_party/re2/ for components/password_manager/DEPS?
6 years, 1 month ago (2014-11-11 12:14:11 UTC) #32
vabr (Chromium)
Still LGTM, thanks! Vaclav
6 years, 1 month ago (2014-11-11 12:27:21 UTC) #33
cpu_(ooo_6.6-7.5)
lgtm
6 years, 1 month ago (2014-11-12 03:09:30 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/447763002/280001
5 years, 11 months ago (2015-01-13 13:03:41 UTC) #36
commit-bot: I haz the power
Try jobs failed on following builders: ios_dbg_simulator on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_dbg_simulator/builds/48438)
5 years, 11 months ago (2015-01-13 13:09:02 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/447763002/300001
5 years, 11 months ago (2015-01-13 13:49:02 UTC) #40
commit-bot: I haz the power
Committed patchset #15 (id:300001)
5 years, 11 months ago (2015-01-13 15:19:17 UTC) #41
commit-bot: I haz the power
5 years, 11 months ago (2015-01-13 15:20:17 UTC) #42
Message was sent while issue was closed.
Patchset 15 (id:??) landed as
https://crrev.com/972fd742e9c996e5300728b3ea797c66a05782e8
Cr-Commit-Position: refs/heads/master@{#311271}

Powered by Google App Engine
This is Rietveld 408576698