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

Issue 1149653002: [depot_tools] Find, upload and apply patchset dependencies (Closed)

Created:
5 years, 7 months ago by rmistry
Modified:
5 years, 6 months ago
Reviewers:
jrobbins, agable
CC:
chromium-reviews, dpranke+depot_tools_chromium.org, iannucci+depot_tools_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/tools/depot_tools.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Find, upload and apply patchset dependencies. Here is an explanation of the changes in each module: * git_cl.py - IF a local branch is being tracked AND a CL has been uploaded there THEN use the CL's issue number and latest patchset as a dependency. * upload.py - Uploads the patchset dependency, if it exists, to Rietveld (Rietveld will be able to parse this when https://codereview.chromium.org/1155513002/ lands). * rietveld.py - Adds utility methods to get patchset dependencies from the new Rietveld endpoint (the endpoint will exist when https://codereview.chromium.org/1155513002/ lands). * apply_issue.py - If CL3 depends on CL2 which in turn depends on CL1 then apply_issue will gather a list of all issues and patchsets to apply (Eg: [CL1:PS1, CL2:PS1, CL3:PS2]). apply_issue will then loop over the list applying each dependency. Note: The apply_issue.py diff looks much worse than it is. Please see my comment in https://codereview.chromium.org/1149653002/diff/260001/apply_issue.py#oldcode169 Tested end-to-end using a test Git repository (https://skia.googlesource.com/skiabot-test/) and the following CLs created in my test Rietveld instance: * https://skia-codereview-staging.appspot.com/931002 ('Branch1 CL') * https://skia-codereview-staging.appspot.com/5001001 ('Branch2 CL') * https://skia-codereview-staging.appspot.com/9881001 ('Branch3 CL') * https://skia-codereview-staging.appspot.com/3951001 ('Branch3.1 CL') Opt into the new UI and observe the new 'Depends on Patchset' and 'Dependent Patchsets' sections in the above CLs. Design doc is here: https://docs.google.com/document/d/1KZGFKZpOPvco81sYVRCzwlnjGctup71RAzY0MSb0ntc/edit#heading=h.6r6lt4tsvssw BUG=502255 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=295778 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=295799

Patch Set 1 : Checkpoint with branch traversing #

Patch Set 2 : Checkpoint #

Patch Set 3 : Working end to end #

Patch Set 4 : Cleanup and improve logging #

Patch Set 5 : Add more logging #

Patch Set 6 : git_cl.py cleanup and logging #

Patch Set 7 : rietveld.py cleanup #

Patch Set 8 : More logging improvements #

Patch Set 9 : dependent_issue -> dependent_patchset #

Patch Set 10 : Dependent -> DependsOn #

Patch Set 11 : Handle deleted patchsets and issues #

Patch Set 12 : If rietveld endpoint does not exist then ignore #

Patch Set 13 : Minor fix #

Total comments: 1

Patch Set 14 : Upload dependencies even if closed #

Total comments: 10

Patch Set 15 : Addressing comments #

Patch Set 16 : Rebase #

Patch Set 17 : Fix lint issue #

Patch Set 18 : Rebase #

Patch Set 19 : Also catch ValueError #

Unified diffs Side-by-side diffs Delta from patch set Stats (+125 lines, -46 lines) Patch
M apply_issue.py View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +80 lines, -46 lines 0 comments Download
M git_cl.py View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +22 lines, -0 lines 0 comments Download
M rietveld.py View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +17 lines, -0 lines 0 comments Download
M third_party/upload.py View 1 2 3 4 5 6 7 8 9 2 chunks +6 lines, -0 lines 0 comments Download

Messages

Total messages: 29 (13 generated)
rmistry
https://codereview.chromium.org/1149653002/diff/260001/apply_issue.py File apply_issue.py (left): https://codereview.chromium.org/1149653002/diff/260001/apply_issue.py#oldcode169 apply_issue.py:169: print('Downloading the patch.') The diff here looks worse than ...
5 years, 6 months ago (2015-06-03 13:30:01 UTC) #2
rmistry
5 years, 6 months ago (2015-06-08 14:05:35 UTC) #4
agable
https://codereview.chromium.org/1149653002/diff/280001/apply_issue.py File apply_issue.py (right): https://codereview.chromium.org/1149653002/diff/280001/apply_issue.py#newcode172 apply_issue.py:172: depends_on_info_tokens = depends_on_info.split(':') I realize this comment is more ...
5 years, 6 months ago (2015-06-08 20:05:53 UTC) #6
rmistry
https://codereview.chromium.org/1149653002/diff/280001/apply_issue.py File apply_issue.py (right): https://codereview.chromium.org/1149653002/diff/280001/apply_issue.py#newcode172 apply_issue.py:172: depends_on_info_tokens = depends_on_info.split(':') On 2015/06/08 20:05:51, agable wrote: > ...
5 years, 6 months ago (2015-06-09 16:16:45 UTC) #7
agable
lgtm
5 years, 6 months ago (2015-06-09 17:20:45 UTC) #8
rmistry
On 2015/06/09 17:20:45, agable wrote: > lgtm I plan to submit this on Monday morning ...
5 years, 6 months ago (2015-06-19 16:41:34 UTC) #10
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1149653002/340001
5 years, 6 months ago (2015-06-19 16:42:10 UTC) #13
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1149653002/360001
5 years, 6 months ago (2015-06-19 16:46:38 UTC) #16
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 6 months ago (2015-06-19 16:49:31 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1149653002/360001
5 years, 6 months ago (2015-06-22 12:17:02 UTC) #20
commit-bot: I haz the power
Committed patchset #17 (id:360001) as http://src.chromium.org/viewvc/chrome?view=rev&revision=295778
5 years, 6 months ago (2015-06-22 12:19:25 UTC) #21
rmistry
A revert of this CL (patchset #17 id:360001) has been created in https://codereview.chromium.org/1200773003/ by rmistry@google.com. ...
5 years, 6 months ago (2015-06-22 15:19:33 UTC) #22
rmistry
I re-opened this CL and added a fix for the failure in https://uberchromegw.corp.google.com/i/internal.infra.try/builders/infra-internal-presubmit/builds/62/steps/steps/logs/stdio @patchset19. PTAL.
5 years, 6 months ago (2015-06-22 17:15:06 UTC) #24
rmistry
On 2015/06/22 17:15:06, rmistry wrote: > I re-opened this CL and added a fix for ...
5 years, 6 months ago (2015-06-23 11:10:52 UTC) #25
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1149653002/420001
5 years, 6 months ago (2015-06-23 11:22:08 UTC) #28
commit-bot: I haz the power
5 years, 6 months ago (2015-06-23 11:24:12 UTC) #29
Message was sent while issue was closed.
Committed patchset #19 (id:420001) as
http://src.chromium.org/viewvc/chrome?view=rev&revision=295799

Powered by Google App Engine
This is Rietveld 408576698