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

Issue 2544173002: Skip commits that don't generate a patch + fixes to get export working (Closed)

Created:
4 years ago by jeffcarp
Modified:
4 years ago
Reviewers:
qyearsley, foolip
CC:
blink-reviews, blink-reviews-w3ctests_chromium.org, chromium-reviews, Dirk Pranke
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Skip commits that don't generate a patch + fixes to get export working More specifically, this CL: - Modifies ChromiumCommit.format_patch so that it: 1. First gets a list of files changed 2. Filters blacklisted files (e.g. MANIFEST.json) from that list 3. Passes the new list of files to git format-patch - Adds LocalWPT.test_patch, which applies a patch to WPT master and returns the diff - This is to guard against changes like https://crrev.com/2488283003 - Fixes a number of things that broke in the export process Most of this code was written in response to something breaking, so I apologize in advance that it is not super elegant. BUG=657117, 671890

Patch Set 1 #

Total comments: 6

Patch Set 2 : Address CL feedback #

Patch Set 3 : Refactor TestExporter, clean up other parts #

Total comments: 6

Patch Set 4 : Address CL feedback #

Patch Set 5 : Clean up print statements #

Patch Set 6 : Change urrlib2 invocation #

Patch Set 7 : Merge ChromiumWPT functionality into TestExporter, expose exportable_commits #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+322 lines, -265 lines) Patch
M third_party/WebKit/Tools/Scripts/webkitpy/w3c/chromium_commit.py View 1 2 3 4 5 6 2 chunks +29 lines, -5 lines 0 comments Download
M third_party/WebKit/Tools/Scripts/webkitpy/w3c/chromium_commit_unittest.py View 1 2 3 4 2 chunks +29 lines, -1 line 0 comments Download
M third_party/WebKit/Tools/Scripts/webkitpy/w3c/chromium_wpt.py View 1 2 3 4 5 6 1 chunk +0 lines, -88 lines 0 comments Download
D third_party/WebKit/Tools/Scripts/webkitpy/w3c/chromium_wpt_unittest.py View 1 2 3 4 5 6 1 chunk +0 lines, -69 lines 0 comments Download
M third_party/WebKit/Tools/Scripts/webkitpy/w3c/local_wpt.py View 1 2 3 4 6 chunks +48 lines, -21 lines 0 comments Download
M third_party/WebKit/Tools/Scripts/webkitpy/w3c/local_wpt_unittest.py View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Tools/Scripts/webkitpy/w3c/sync_wpt.py View 1 chunk +0 lines, -1 line 0 comments Download
M third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter.py View 1 2 3 4 5 6 4 chunks +90 lines, -26 lines 3 comments Download
M third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter_unittest.py View 1 2 3 4 5 6 2 chunks +92 lines, -24 lines 1 comment Download
M third_party/WebKit/Tools/Scripts/webkitpy/w3c/wpt_github.py View 1 2 3 4 5 2 chunks +30 lines, -26 lines 0 comments Download
M third_party/WebKit/Tools/Scripts/webkitpy/w3c/wpt_github_mock.py View 1 2 1 chunk +3 lines, -3 lines 0 comments Download

Messages

Total messages: 15 (3 generated)
jeffcarp
4 years ago (2016-12-02 00:25:10 UTC) #3
qyearsley
Just a few comments for now - I think the main thing that could improve ...
4 years ago (2016-12-02 00:38:46 UTC) #4
jeffcarp
Addressed qyearsley's feedback. I have a couple more things I can clean up too, going ...
4 years ago (2016-12-02 23:55:17 UTC) #5
jeffcarp
On 2016/12/02 at 23:55:17, jeffcarp wrote: > Addressed qyearsley's feedback. I have a couple more ...
4 years ago (2016-12-07 02:11:37 UTC) #6
qyearsley
Didn't see any problems; just have a few more comments. https://codereview.chromium.org/2544173002/diff/40001/third_party/WebKit/Tools/Scripts/webkitpy/w3c/chromium_commit.py File third_party/WebKit/Tools/Scripts/webkitpy/w3c/chromium_commit.py (right): https://codereview.chromium.org/2544173002/diff/40001/third_party/WebKit/Tools/Scripts/webkitpy/w3c/chromium_commit.py#newcode69 ...
4 years ago (2016-12-07 19:05:36 UTC) #7
jeffcarp
Addressed qyearsley's CL feedback. https://codereview.chromium.org/2544173002/diff/40001/third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter.py File third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter.py (right): https://codereview.chromium.org/2544173002/diff/40001/third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter.py#newcode88 third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter.py:88: return On 2016/12/07 at 19:05:36, ...
4 years ago (2016-12-07 20:24:38 UTC) #8
jeffcarp
On 2016/12/07 at 20:24:38, jeffcarp wrote: > Addressed qyearsley's CL feedback. > > https://codereview.chromium.org/2544173002/diff/40001/third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter.py > ...
4 years ago (2016-12-07 20:27:19 UTC) #9
jeffcarp
On 2016/12/07 at 20:27:19, jeffcarp wrote: > On 2016/12/07 at 20:24:38, jeffcarp wrote: > > ...
4 years ago (2016-12-13 22:06:53 UTC) #10
qyearsley
test_exporter.exportable_commits looks generally good :-) But this patch now does lots of different things in ...
4 years ago (2016-12-15 20:59:14 UTC) #12
foolip
I've been neglecting this and some other reviews. If the two of you agree then ...
4 years ago (2016-12-15 22:56:57 UTC) #13
jeffcarp
On 2016/12/15 at 20:59:14, qyearsley wrote: > test_exporter.exportable_commits looks generally good :-) > > But ...
4 years ago (2016-12-16 00:13:16 UTC) #14
qyearsley
4 years ago (2016-12-16 00:34:38 UTC) #15
On 2016/12/16 at 00:13:16, jeffcarp wrote:
> On 2016/12/15 at 20:59:14, qyearsley wrote:
> > test_exporter.exportable_commits looks generally good :-)
> > 
> > But this patch now does lots of different things in different files, so it's
a bit slower to review -- could you separate out separate refactoring CLs and
behavior-changing CLs?
> > 
> >
https://codereview.chromium.org/2544173002/diff/120001/third_party/WebKit/Too...
> > File third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter.py (right):
> > 
> >
https://codereview.chromium.org/2544173002/diff/120001/third_party/WebKit/Too...
> > third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter.py:126: 
> > Possible extra comment: this looks at commits in Chromium after the last
exported commit. To find the last exported commits, it looks in the git log for
web-platform-tests.
> > 
> >
https://codereview.chromium.org/2544173002/diff/120001/third_party/WebKit/Too...
> > third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter.py:128: A list
of ChromiumCommits
> > Nit: period
> > 
> >
https://codereview.chromium.org/2544173002/diff/120001/third_party/WebKit/Too...
> > third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter.py:140:
_log.info('(%d behind chromium@origin/master)',
chromium_commit.num_behind_master())
> > This could potentially be changed to debug-level rather than info-level.
> > 
> >
https://codereview.chromium.org/2544173002/diff/120001/third_party/WebKit/Too...
> > File third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter_unittest.py
(right):
> > 
> >
https://codereview.chromium.org/2544173002/diff/120001/third_party/WebKit/Too...
> > third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_exporter_unittest.py:86:
def test_exportable_commits_since(self):
> > Name: test_exportable_commits
> 
> I can break it up into separate CLs, but no intermediate CL will leave the
codebase in a working state until the last one is landed since all major parts
have bug fixes. Here's a rough list of how I'll split it up:
> 
> - Delete ChromiumWPT CL
> - Change files fed into format-patch CL
> - test_patch CL
> - Address CL feedback CL
> - Add label to PR CL

That sounds OK to me -- since you say that it's a sequence of CLs and the code
isn't in a working state until they're all landed, I should try to review them
all quickly.

In general, if there's no smaller CL that can be made that also leaves the code
in a working state, then it's OK to have a larger CL, although it may take
longer to review. (In this case, if you decide this can't easily be broken up,
I'm also OK with reviewing this CL as-is).

In general, the ideal CL can be summarized easily in one short sentence - if it
contains multiple bug fixes and other changes and it's hard to think of a
concise description, then that's a signal that breaking it up may be good.

Powered by Google App Engine
This is Rietveld 408576698