|
|
Chromium Code Reviews|
Created:
6 years, 8 months ago by iannucci Modified:
6 years, 8 months ago CC:
chromium-reviews, Dirk Pranke, cmp-cc_chromium.org, M-A Ruel, iannucci+depot_tools_chromium.org, ilevy-cc_chromium.org Base URL:
https://chromium.googlesource.com/chromium/tools/depot_tools.git@master Visibility:
Public. |
DescriptionUse get_or_create_merge_base in git-cl-upload to correctly deal with rebased
upstreams.
In the event that users are NOT using the enhanced tooling, this is equivalent
to `git merge-base "@{u}" HEAD`. In the event that they are, this will catch
the case where their parent branch got rebased, but this branch hasn't been
rebased on the parent yet.
R=agable@chromium.org, szager@chromium.org
BUG=
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=261601
Patch Set 1 #Patch Set 2 : fix tests' #Messages
Total messages: 14 (0 generated)
lgtm
The CQ bit was checked by iannucci@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/iannucci@chromium.org/224703002/1
The CQ bit was unchecked by commit-bot@chromium.org
Presubmit check for 224703002-1 failed and returned exit status 1.
Running presubmit commit checks ...
Checking out rietveld...
Running save-description-on-failure.sh
Running push-basic.sh
Running upstream.sh
Running submit-from-new-dir.sh
Running abandon.sh
Running submodule-merge-test.sh
Running upload-local-tracking-branch.sh
Running hooks.sh
Running post-dcommit-hook-test.sh
Running upload-stale.sh
Running patch.sh
Running basic.sh
** Presubmit ERRORS **
Pylint (94 files) (26.86s) failed
************* Module
/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py
R0201:554,2:Changelist.GetCommonAncestorWithUpstream: Method could be a function
tests/git_cl_test.py (0.46s) failed
...ERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual:
(('git', 'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
FERROR:root:@8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual: (('git',
'rev-parse', '--abbrev-ref', 'HEAD'),)
F.
======================================================================
FAIL: test_gerrit_no_reviewer (__main__.TestGitCl)
----------------------------------------------------------------------
Traceback (most recent call last):
File "tests/git_cl_test.py", line 620, in test_gerrit_no_reviewer
[])
File "tests/git_cl_test.py", line 608, in _run_gerrit_upload_test
git_cl.main(['upload'] + upload_args)
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 2536, in main
return dispatcher.execute(OptionParser(), argv)
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/subcommand.py",
line 245, in execute
return command(parser, args[1:])
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 1687, in CMDupload
base_branch = cl.GetCommonAncestorWithUpstream()
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 555, in GetCommonAncestorWithUpstream
return git_common.get_or_create_merge_base(git_common.current_branch())
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 273, in current_branch
return run('rev-parse', '--abbrev-ref', 'HEAD')
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 465, in run
return run_with_stderr(*cmd, **kwargs)[0]
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 497, in run_with_stderr
proc = subprocess2.Popen(cmd, **kwargs)
File "tests/git_cl_test.py", line 107, in _mocked_call
self.fail(msg)
AssertionError: @8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual:
(('git', 'rev-parse', '--abbrev-ref', 'HEAD'),)
======================================================================
FAIL: test_gerrit_reviewer_multiple (__main__.TestGitCl)
----------------------------------------------------------------------
Traceback (most recent call last):
File "tests/git_cl_test.py", line 633, in test_gerrit_reviewer_multiple
['reviewer@example.com', 'another@example.com'])
File "tests/git_cl_test.py", line 608, in _run_gerrit_upload_test
git_cl.main(['upload'] + upload_args)
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 2536, in main
return dispatcher.execute(OptionParser(), argv)
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/subcommand.py",
line 245, in execute
return command(parser, args[1:])
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 1687, in CMDupload
base_branch = cl.GetCommonAncestorWithUpstream()
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 555, in GetCommonAncestorWithUpstream
return git_common.get_or_create_merge_base(git_common.current_branch())
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 273, in current_branch
return run('rev-parse', '--abbrev-ref', 'HEAD')
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 465, in run
return run_with_stderr(*cmd, **kwargs)[0]
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 497, in run_with_stderr
proc = subprocess2.Popen(cmd, **kwargs)
File "tests/git_cl_test.py", line 107, in _mocked_call
self.fail(msg)
AssertionError: @8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual:
(('git', 'rev-parse', '--abbrev-ref', 'HEAD'),)
======================================================================
FAIL: test_gerrit_reviewers_cmd_line (__main__.TestGitCl)
----------------------------------------------------------------------
Traceback (most recent call last):
File "tests/git_cl_test.py", line 626, in test_gerrit_reviewers_cmd_line
['foo@example.com'])
File "tests/git_cl_test.py", line 608, in _run_gerrit_upload_test
git_cl.main(['upload'] + upload_args)
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 2536, in main
return dispatcher.execute(OptionParser(), argv)
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/subcommand.py",
line 245, in execute
return command(parser, args[1:])
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 1687, in CMDupload
base_branch = cl.GetCommonAncestorWithUpstream()
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 555, in GetCommonAncestorWithUpstream
return git_common.get_or_create_merge_base(git_common.current_branch())
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 273, in current_branch
return run('rev-parse', '--abbrev-ref', 'HEAD')
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 465, in run
return run_with_stderr(*cmd, **kwargs)[0]
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 497, in run_with_stderr
proc = subprocess2.Popen(cmd, **kwargs)
File "tests/git_cl_test.py", line 107, in _mocked_call
self.fail(msg)
AssertionError: @8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual:
(('git', 'rev-parse', '--abbrev-ref', 'HEAD'),)
======================================================================
FAIL: test_gerrit_upload_without_change_id (__main__.TestGitCl)
----------------------------------------------------------------------
Traceback (most recent call last):
File "tests/git_cl_test.py", line 614, in test_gerrit_upload_without_change_id
[])
File "tests/git_cl_test.py", line 608, in _run_gerrit_upload_test
git_cl.main(['upload'] + upload_args)
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 2536, in main
return dispatcher.execute(OptionParser(), argv)
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/subcommand.py",
line 245, in execute
return command(parser, args[1:])
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 1687, in CMDupload
base_branch = cl.GetCommonAncestorWithUpstream()
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 555, in GetCommonAncestorWithUpstream
return git_common.get_or_create_merge_base(git_common.current_branch())
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 273, in current_branch
return run('rev-parse', '--abbrev-ref', 'HEAD')
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 465, in run
return run_with_stderr(*cmd, **kwargs)[0]
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_common.py",
line 497, in run_with_stderr
proc = subprocess2.Popen(cmd, **kwargs)
File "tests/git_cl_test.py", line 107, in _mocked_call
self.fail(msg)
AssertionError: @8 Expected: (['git', 'symbolic-ref', 'HEAD'],) Actual:
(('git', 'rev-parse', '--abbrev-ref', 'HEAD'),)
======================================================================
FAIL: test_keep_find_copies (__main__.TestGitCl)
----------------------------------------------------------------------
Traceback (most recent call last):
File "tests/git_cl_test.py", line 434, in test_keep_find_copies
[])
File "tests/git_cl_test.py", line 410, in _run_reviewer_test
git_cl.main(['upload'] + upload_args)
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.py",
line 2536, in main
return dispatcher.execute(OptionParser(), argv)
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/subcommand.py",
line 245, in execute
return command(parser, args[1:])
File "/b/infra_internal/commit_queue/workdir/tools/depot_tools/git_cl.p…
(message too large)
mox strikes again :(
On 2014/04/03 22:55:49, iannucci wrote: > mox strikes again :( why did HEADs turn into masters?
fixed the tests by mocking git_common.get_or_create_merge_base. I think this is justified since get_or_create_merge_base has its own tests (tests/git_common_test.py).
On 2014/04/04 00:21:15, agable wrote:
> On 2014/04/03 22:55:49, iannucci wrote:
> > mox strikes again :(
>
> why did HEADs turn into masters?
Before it would take base(HEAD, @{u}), but since the merge base markers are
keyed on branchname, I opted to use base(branch, @{u}). In practice this should
be fine because you can't use git cl upload on a detached HEAD anyway:
➜ depot_tools git:(0a42737) git cl upload
fatal: ref HEAD is not a symbolic ref
Command "git symbolic-ref HEAD" failed.
The reason the second one is 'master' and not 'origin/master' is because of test
mockery.
lgtm
The CQ bit was checked by iannucci@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/iannucci@chromium.org/224703002/20001
Message was sent while issue was closed.
Change committed as 261601 |
