Commit Graph

158 Commits (0c20c2fc2397c227961c46e951bd04de7a899327)

Author SHA1 Message Date
dpranke@chromium.org 0c20c2fc23 The parsing of change descriptions had a lot of overlap and inconsistencies between gcl and git-cl. In particular, we weren't handling TBR= consistently, or probably a few other things.
This change moves most of the code into presubmit_support and gclient_utils and just leaves the formatting differences for the messages between the two tools.

Review URL: http://codereview.chromium.org/6719004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@79002 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
dpranke@chromium.org 73ac0f11e3 Apparently when I changed OptionallyDoPresubmitChecks() to return the
output object, I forgot to modify the commit command, and so now we're
ignoring failures complete. That's not good :( 

Landing w/o review (but with unit tests!) to minimize damage.
Review URL: http://codereview.chromium.org/6688017

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78627 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
dpranke@chromium.org 624973b7d8 Fix some of the spacing in the description.
R=chase@chromium.org,maruel@chromium.org
Review URL: http://codereview.chromium.org/6674049

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78601 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
dpranke@chromium.org b68786e8b1 Add tests that were annoyingly missed on the previous checkin, and fix
bugs that for some reason the presubmit missed the first time around.

TBR=chase@chromium.org,maruel@chromium.org

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78497 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
dpranke@chromium.org 30becc2d1a Fix gcl to pass in the suggested owners properly in order to fix the bug introduced in r78329 (we were passing in a generator to the owners object and it needed to be a list). Fix a couple of other minor bugs related to suggesting reviewers while we're at it.
R=chase@chromium.org,maruel@chromium.org
Review URL: http://codereview.chromium.org/6673104

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78486 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
maruel@chromium.org 96b6b3bffd Revert both r78355 and r78329
"Fix regression introduced in r78329."
"Modify gcl to use suggested_reviewer output from presubmit_support."

My quick fix was insufficient.

TBR=dpranke

Review URL: http://codereview.chromium.org/6667042

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78356 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
maruel@chromium.org dbe4058f51 Fix regression introduced in r78329.
This really needs a unit test.

TBR=dpranke
TEST=none

Review URL: http://codereview.chromium.org/6670046

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78355 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
mhm@chromium.org 7a09961f47 Reland again Msysgit Support for gcl and git-cl.
EDITOR environment variable shouldn't be required anymore
can contain quotes and multiple arguments.

Uses shell=True to let the shell parse the quoted string
instead of handling all forms of quotes ourselves. 

By default, msysgit ships with the TERM environment variable
set, when set to 'msys', we prepend 'env' to the executed
command. That is required so msys knows which program
to run the given file.

BUG=none
TEST=On many platforms. Win7, WinXP, Ubuntu.
Review URL: http://codereview.chromium.org/6685062

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78332 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
dpranke@chromium.org 158f438fd2 Modify gcl to use suggested_reviewer output from presubmit_support.
Review URL: http://codereview.chromium.org/6696010

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78329 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
dpranke@chromium.org 5ac2101164 This change moves the code I added to git-cl to parse the results of the presubmit hooks into presubmit_support itself. It also removes a lot of the text-file parsing that is no longer necessary since everything is in process.
It also simplifies all of the PresubmitResult* objects and the way we're using output streams since we can assume more about how the callers are calling us.

Note that I uses PEP-8 style method names where I was adding entirely new classes (or rewriting existing classes completely) since per maruel@ he is trying to new that style for new code.

This change also contains two small changes to git_cl to fix bugs and restore the previous behavior of --force skipping the presubmit checks.

Review URL: http://codereview.chromium.org/6694009

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78328 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
bauerb@chromium.org d3e5754b26 Reland 77470: Don't ignore first argument in TryChange
Original review: http://codereview.chromium.org/6650025/

BUG=none
TEST=`git try foo` gives a proper error message.

Review URL: http://codereview.chromium.org/6612036

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78180 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
thomasvl@chromium.org ca7953a5e8 Revert part of 77946 and 77978 so things work against when EDITOR is set to
something with spaces in it.

BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6686046

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78027 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
mhm@chromium.org 3e48aa74c0 Reland Usage of TERM to distinguish between msys and cygwin.
BUG=70548
TEST=check $TERM in windows
Review URL: http://codereview.chromium.org/6683035

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77978 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
jam@chromium.org 7888d9796b Revert 77954 - Use TERM to distinguish between console and msysgit.
It is cleaner this way since in Win32 console, the
value is always "dumb" while in msysgit it is always
"msys" The user shouldn't change the value of $TERM
in msysgit otherwise their whole copy of msysgit
will be flaky.

BUG=70548
TEST=check $TERM in windows

Review URL: http://codereview.chromium.org/6686027

TBR=mhm@chromium.org
Review URL: http://codereview.chromium.org/6683033

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77972 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
mhm@chromium.org eceda5af1e Use TERM to distinguish between console and msysgit.
It is cleaner this way since in Win32 console, the
value is always "dumb" while in msysgit it is always
"msys" The user shouldn't change the value of $TERM
in msysgit otherwise their whole copy of msysgit
will be flaky.

BUG=70548
TEST=check $TERM in windows

Review URL: http://codereview.chromium.org/6686027

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77954 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
mhm@chromium.org d161d848cf Reland - Support msysgit in gcl and git-cl
An explicit msysgit check is needed since it requires
the usage of 'env' to open the editor.

BUG=70550, 70548
TEST=Win,Linux 
Review URL: http://codereview.chromium.org/6680019

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77946 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
jam@chromium.org 7b8d18f0f0 Revert 77909 - msysgit - Fix issue where gcl doesn't recognize the editor.
gcl is now fully compatible with msysgit.

BUG=70550
TEST=gcl change through msysgit.

Review URL: http://codereview.chromium.org/6689001

TBR=mhm@chromium.org
Review URL: http://codereview.chromium.org/6679026

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77929 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
jam@chromium.org 93efa03156 Revert 77913 - Regression: Editor Linux Fix for gcl.
Editor doesn't come up due to Shell=True

BUG=none
TEST=linux and win works
Review URL: http://codereview.chromium.org/6679023

TBR=mhm@chromium.org
Review URL: http://codereview.chromium.org/6684022

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77928 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
mhm@chromium.org 3843692019 Regression: Editor Linux Fix for gcl.
Editor doesn't come up due to Shell=True

BUG=none
TEST=linux and win works
Review URL: http://codereview.chromium.org/6679023

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77913 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
mhm@chromium.org 0f9ee77b9a msysgit - Fix issue where gcl doesn't recognize the editor.
gcl is now fully compatible with msysgit.

BUG=70550
TEST=gcl change through msysgit.

Review URL: http://codereview.chromium.org/6689001

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77909 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
dpranke@chromium.org d945f368d2 suppress some unimportant lint warnings
Review URL: http://codereview.chromium.org/6658013

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77882 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
bauerb@chromium.org b88c38bc4b Revert "Don't ignore first argument in TryChange."
This reverts commit 39d5bf3d5f.

TBR=maruel

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77475 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
bauerb@chromium.org 39d5bf3d5f Don't ignore first argument in TryChange.
BUG=none
TEST=`git try foo` gives a proper error message.

Review URL: http://codereview.chromium.org/6650025

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77470 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
evan@chromium.org dcd1522a6c patch from issue 5575008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@69888 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
maruel@chromium.org c3a15a2381 Add an alert for python < 2.5.
Don't block execution.

Python 2.4 has been untested for a while and may break unexpectedly.

TEST=manual testing
BUG=none

Review URL: http://codereview.chromium.org/5110009

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@66870 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
maruel@chromium.org 41db6ef3af Fix XSRF token in gcl so we don't need to hack rietveld anymore.
Improve SendToRietveld to hardcode less function arguments.

TEST=manually tested that gcl works on both chromium and non-chromium rietveld instances
BUG=none

Review URL: http://codereview.chromium.org/5015005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@66499 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org b17b55beca Disable the remaining pylint warnings locally and enable pylint warnings in PRESUBMIT.
This causes some code clutter.

TEST=Increased pylint warning level
BUG=none

Review URL: http://codereview.chromium.org/4321006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64913 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org cb2985fb69 Largely reduce the number of pylint warnings and fix one typo.
Most of them are style issues or variable aliasing.

TEST=Can almost enable pylint warnings
BUG=none

Review URL: http://codereview.chromium.org/4360002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64908 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 8e13a09439 Change gcl presubmit to only run commit hooks by default.
Upload hook are only run with the --upload flag.

Most of the time the same hook is run in both case so gcl presubmit is simply 2x
slower than it could be otherwise.

TEST=none
BUG=none

Review URL: http://codereview.chromium.org/4277003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64779 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org bf1fdca798 Add rietveld member to ChangeInfo and use this value to contact rietveld.
This makes gcl to use a specific rietveld instance per change list. This is
useful when moving from one rietveld instance to another, so in-flight reviews
are sent to the right instance.

Also clear gcl.CODEREVIEW_SETTINGS between gcl_unittest tests to remove tests interference.

TEST=updated unit tests
BUG=none

Review URL: http://codereview.chromium.org/4218006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64631 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org fa3843e6af Refactor ChangeInfo.Load() to make it easier to support mulitple format.
TEST=updated unit tests and tested manually
BUG=none

Review URL: http://codereview.chromium.org/4127013

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64601 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 8a8ea02a22 Refactor ChangeInfo.Load() to make it possible to switch to a new format more easily.
The new format will be introduced in the next change.

TEST=not much, mostly manually tested.
BUG=none

Review URL: http://codereview.chromium.org/4106011

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64600 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 79b7ef0500 Make gcl delete foo more useful by being able to delete corrupted change.
TEST=none
BUG=none

Review URL: http://codereview.chromium.org/4135011

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64599 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 3a17425279 Reduce the number of pylint warnings in gcl.py to make refactoring simpler.
Doing static analysis on the script greatly easy refactoring since it reduces
the chances of leaving a typo in rarely executed & untested & untested code.

This is in preparation to refactor changelist on-disk format to use json.

TEST=none
BUG=none

Review URL: http://codereview.chromium.org/4184008

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64427 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 09c0dba98f Fix a None reference exception when searching for presubmit scripts.
It happens when a user uses --diff foo.diff so the list of file is not defined.

TEST=none
BUG=none

Review URL: http://codereview.chromium.org/3763004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@62547 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
joi@chromium.org 42c7f66733 Reuse gcl.py's code review settings when running [gcl try], as gcl is
smarter about finding the most appropriate settings file.

Before this change, I inadvertently did a [gcl try] on a chrome-internal
change (it was a trivial change and not really secret, so no harm done).
After this change, that won't be possible.

Also, change breakpad to not upload the exception that is thrown when 
the user fails to provide correct log-on credentials.

TEST=none
BUG=none


Review URL: http://codereview.chromium.org/3390013

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@61738 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 7633e473f1 Even if HTTPError subclasses URLError, it doesn't have the member reason.
That's so pythonic. Use str() instead.

TBR=bradnelson
TEST=none
BUG=none

Review URL: http://codereview.chromium.org/3415019

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@60211 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 58c1938777 Swallow HTTPError exceptions for HTTP 500 so they aren't logged in breakpad.
It doesn't give me useful information.

TEST=none
BUG=none

Review URL: http://codereview.chromium.org/3493005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@60209 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org c8f3cf80e0 Add a check when people specify wrong change list name to give a meaningful message.
I saw that in the exceptions and the current error (file not found) is not useful.

TEST=none
BUG=none

Review URL: http://codereview.chromium.org/3332017

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@58978 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
thestig@chromium.org 1736800a67 Fix GetCachedFile.
BUG=none
TEST=gcl upload works when there's no codereview.settings in the cache.
Review URL: http://codereview.chromium.org/3366001

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@58270 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 17d01795a6 Cleanup the code in gclient_utils to standardize on CheckCall nomenclature.
Simplify code by removing fail_status
Rename print_messages to always
Simplify the doc.

Review URL: http://codereview.chromium.org/3104036

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@58201 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org b3b494f3df Don't cache the fact that codereview.settings wasn't found.
It must always be present.

BUG=none
TBR=none

Review URL: http://codereview.chromium.org/3280013

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@58060 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 02913a53a4 Blacklist --non-interactive on MacOSX
It's broken on 10.5.2.

TEST=gcl works all the time on Mac
TBR=nsylvain

Review URL: http://codereview.chromium.org/3169044

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@57381 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 2b9aa8e0b3 Refactor SubprocessCallAndFilter() to remove positional arguments.
This way the function is much more similar to subprocess.call(). Further changes
will be done, to be able to convert all the function, to be able to parallelize
output without corrupting it.

Used pylint to verify call graph correctness, causing some other unrelated
changes.

TEST=unit tests
BUG=none

Review URL: http://codereview.chromium.org/3117039

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@57369 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 10ccd1124c Disable the use of -s or --server with gcl upload.
It contradicts the previous changes to enforce codereview.settings.

TEST=new unit test
BUG=none

Review URL: http://codereview.chromium.org/3171026

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@57195 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 3a292688b6 Redo of r56893 with fix to support python 2.5.
Original Description:

Remove code duplication and improve style.

Create a Popen function to reduce code duplication.
Use RemoveDirectory where relevant.
Make drover slightly more posix friendly.

Review URL: http://codereview.chromium.org/3199011

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@57083 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org dd218e5997 Make codereview.setting syntax more liberal and add more unit tests.
Improve gclient_utils to test output lacking trailing LF

BUG=none
TEST=new unit tests

Review URL: http://codereview.chromium.org/3140023

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@57047 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org ad0b13da3d Revert "Remove code duplication and improve style."
This reverts commit 850ee065dd.

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@56894 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 850ee065dd Remove code duplication and improve style.
Create a Popen function to reduce code duplication.
Use RemoveDirectory where relevant.
Make drover slightly more posix friendly.

Review URL: http://codereview.chromium.org/3126020

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@56893 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago
maruel@chromium.org 3c84298e76 Add an error message for MacOSX 10.5.2 users
TBR=bradnelson

Review URL: http://codereview.chromium.org/3201005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@56880 0039d316-1c4b-4281-b951-d872f2087c98
15 years ago