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
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
"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
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
Revert the order back to deleting then svn revert'ing, which is safer than the
reverse. Document a bit better the behavior.
R=dpranke@chromium.org
BUG=none
TEST=commit queue should die less often
Review URL: http://codereview.chromium.org/6681032
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@78224 0039d316-1c4b-4281-b951-d872f2087c98
This change requires us to change the previous signature for the CheckOwners() hook to provide the server address and email regexp to use for parsing approvals from Rietveld.
Review URL: http://codereview.chromium.org/6657028
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77891 0039d316-1c4b-4281-b951-d872f2087c98
Also, this properly wires up the presubmit code to the owners code and adds unit tests.
Review URL: http://codereview.chromium.org/6623074
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77523 0039d316-1c4b-4281-b951-d872f2087c98
Keep an alias to RemoveDirectory, will be removed in a later change.
TEST=new unit test to test this function
BUG=none
Review URL: http://codereview.chromium.org/6628032
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77463 0039d316-1c4b-4281-b951-d872f2087c98
Improve test to make sure svn status comes out clean.
TEST=improved unit tests and scm.SVN.Revert() should now do the right thing
BUG=none
Review URL: http://codereview.chromium.org/6650011
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77391 0039d316-1c4b-4281-b951-d872f2087c98
The tests now base the directory in mkdtemp() which is much safer than using the
source's file directory as before.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6625018
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77278 0039d316-1c4b-4281-b951-d872f2087c98
Ease support for different port if necessary.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6632007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@76968 0039d316-1c4b-4281-b951-d872f2087c98
Add code to wait for the bound port to open and close correctly, removing race
conditions.
BUG=test reliability
TEST=better
Review URL: http://codereview.chromium.org/6627013
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@76966 0039d316-1c4b-4281-b951-d872f2087c98
Add a unit test to catch potential regressions. Remove an old test new code broke.
TEST=unit tests
BUG=none
Review URL: http://codereview.chromium.org/6613025
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@76805 0039d316-1c4b-4281-b951-d872f2087c98
This changes adds the first pass of code needed for OWNERS files.
In total there should probably be maybe four user-visible changes:
* new gcl/git-cl "suggest-reviewers" command
* a presubmit hook on upload to automatically add the reviewers
* an addition to gcl/git-cl status command that tells you
which files still need review/approval.
* a presubmit hook on commit to ensure all of the needed reviewers
have approved the file.
This change implements a core "owners Database" object with the
dumbest possible algorithm for determining a covering set of reviewers,
and the skeleton of the presubmit hooks. This code will not be
used by anything yet, and is also missing unit tests.
Review URL: http://codereview.chromium.org/6581030
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@76342 0039d316-1c4b-4281-b951-d872f2087c98
from the same repository.
TEST=added regression test.
BUG=none
Review URL: http://codereview.chromium.org/6578029
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@75937 0039d316-1c4b-4281-b951-d872f2087c98
To reproduce, svn delete a file, then svn merge -c -N the file to revive it.
Also fix a unit test that was broken for a while.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/6576005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@75835 0039d316-1c4b-4281-b951-d872f2087c98
Unittest is being also updated.
TEST=manual
. run ./presubmit_unittest.py, observe success
.create a CL with code style violations (long lines, traling spaces) and observe the violations reported by 'git cl presubmit'
Patch contributed by Vadim
Review URL: http://codereview.chromium.org/6461011
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@74378 0039d316-1c4b-4281-b951-d872f2087c98
It would fail otherwise when called directly from a git checkout subdirectory.
Updated unit test.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6459010
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@74281 0039d316-1c4b-4281-b951-d872f2087c98
Disable warning W0404 in pylint.
BUG=none
TEST=should now work on googlers workstations
Review URL: http://codereview.chromium.org/6456010
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@74242 0039d316-1c4b-4281-b951-d872f2087c98
There is 2 changes while moving the code:
- Making externals handling an option.
- Not trapping EnvironmentError.
This code will be reused by the commit queue.
TEST=unit tests
BUG=none
Review URL: http://codereview.chromium.org/6250177
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@74181 0039d316-1c4b-4281-b951-d872f2087c98
For example, TODO(foo) is ok, but TODO: do something is not.
BUG=none
TEST=included
Review URL: http://codereview.chromium.org/6413004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@74032 0039d316-1c4b-4281-b951-d872f2087c98
This enables seamless unit tests that check-in files without side-effects on the
remaining unit tests.
BUG=none
TEST=none
TBR=dpranke
Review URL: http://codereview.chromium.org/6250073
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@73456 0039d316-1c4b-4281-b951-d872f2087c98
Also remove the harcoding of the names by putting them in a variable.
This will help testing of the commit queue.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6350013
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@72454 0039d316-1c4b-4281-b951-d872f2087c98
svn:externals are slow to update and are unnecessary in a gclient environment.
TEST=none
BUG=55904
Review URL: http://codereview.chromium.org/3421013
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@71604 0039d316-1c4b-4281-b951-d872f2087c98
FakeRepos is useful for offline SCM tests but it was hardcoded for depot_tools
requirements. Luckily, it was already modular enought that it merely required to
shuffle code around to split it in two classes to be able to reuse the code
as-is.
BUG=
TEST=
Review URL: http://codereview.chromium.org/6029004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@69845 0039d316-1c4b-4281-b951-d872f2087c98
Change RunPylint to parse all .py files when one is modified.
Make all depot_tools/tests pass on pylint. That mostly meant fixing some
builtins aliasing, wrong alignment and turning off most remaining warnings.
BUG=none
TEST=unit tests
Review URL: http://codereview.chromium.org/5695007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@69159 0039d316-1c4b-4281-b951-d872f2087c98
Adding it as I figured out how to make it run correctly on ubuntu 10.4 and it's
used in enough places it warrants a canned check.
BUG=none
TEST=it self tests itself.
Review URL: http://codereview.chromium.org/5682011
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@69051 0039d316-1c4b-4281-b951-d872f2087c98
Python standard library is not thread safe. Work around it by leaking a bit.
The problem is particularly visible on python 2.4.
TEST=none
BUG=60623
Review URL: http://codereview.chromium.org/4465001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@65048 0039d316-1c4b-4281-b951-d872f2087c98
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
This is especially annoying on empty __init__.py files.
TEST=new unit test
BUG=none
Review URL: http://codereview.chromium.org/4310001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64904 0039d316-1c4b-4281-b951-d872f2087c98
Otherwise files containing these characters can be created on the file system,
making it harder to get rid of those files.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/4127014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64782 0039d316-1c4b-4281-b951-d872f2087c98
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
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
Previously, solution's properties would be ignored if there was no DEPS file in
source control. Change the behavior to evaluate the properties anyway.
TEST=new smoke test
BUG=none
Review URL: http://codereview.chromium.org/4154004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64232 0039d316-1c4b-4281-b951-d872f2087c98
To make sure to regression is added while looking into the code more deeply.
BUG=none
TEST=new smoke test
Review URL: http://codereview.chromium.org/4215001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@64230 0039d316-1c4b-4281-b951-d872f2087c98
Otherwise, git try breaks for some users.
Also, make testUpdateCheckout pass if the path to the temp directory contains a symlink (like on Mac OS X).
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3620011
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@61786 0039d316-1c4b-4281-b951-d872f2087c98
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
Added a unit test to verify .hg detection.
Also refactor the test a bit to reduce the amount of reduncdant code.
TEST=fixed unit tests
BUG=none
Review URL: http://codereview.chromium.org/3516015
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@61551 0039d316-1c4b-4281-b951-d872f2087c98
Otherwise the scripts make it looks like they are hung when the presubmit checks
are slow.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/3613007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@61506 0039d316-1c4b-4281-b951-d872f2087c98
This makes the code saner to understand.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/3420014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@60050 0039d316-1c4b-4281-b951-d872f2087c98
Had to update a few tests, removed redundant code in gclient_scm_tests.
TEST=more readable unit tests
BUG=none
Review URL: http://codereview.chromium.org/3473003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@59959 0039d316-1c4b-4281-b951-d872f2087c98
In the next change, we can now remove all the options.stdout bookeeping since
it's not unnecessary.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/3398008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@59795 0039d316-1c4b-4281-b951-d872f2087c98
The end goal is to remove options.stdout, to remove a lot of bookkeeping.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/3418014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@59792 0039d316-1c4b-4281-b951-d872f2087c98
For now that involves disabling a lot of tests when they can't be run.
I'm unsure about the ascii encoding, it fails here if I keep this call on a French UI.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/3333028
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@59137 0039d316-1c4b-4281-b951-d872f2087c98
BUG=54084
TEST=updated smoke test and added a new one + stdout untangling
Review URL: http://codereview.chromium.org/3357020
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@59002 0039d316-1c4b-4281-b951-d872f2087c98
Simplify ExecutionQueue.run() by moving code into utility functions.
Reduce the amount of code in WorkerThread.run() to improve reliability.
Don't trap exceptions in single-threaded usage!
BUG=54084
TEST=none
Review URL: http://codereview.chromium.org/3336015
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@58974 0039d316-1c4b-4281-b951-d872f2087c98
This is needed to improve the git tests further in a later change.
BUG=54084
TEST=none
Review URL: http://codereview.chromium.org/3294017
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@58934 0039d316-1c4b-4281-b951-d872f2087c98
Added try/except to the places where errors are tolerated.
Renamed scm.SVN.CaptureBaseRevision to CaptureRevision and removed CaptureHeadRevision.
BUG=54084
TEST=none
Review URL: http://codereview.chromium.org/3307016
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@58932 0039d316-1c4b-4281-b951-d872f2087c98
An automated work around for python lack of stdout flushing.
This design simplifies life once parallel checkout is enabled.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/3342024
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@58819 0039d316-1c4b-4281-b951-d872f2087c98
Change CheckCallError to inherit from Error. This will simplify try/except changes.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/3324007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@58695 0039d316-1c4b-4281-b951-d872f2087c98
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
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
It will eventually replace 'print_messages' and be used to annotate printed
lines when using --jobs.
Review URL: http://codereview.chromium.org/3174020
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@57092 0039d316-1c4b-4281-b951-d872f2087c98
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
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
gclient_scm_test is really flaky and is a pain to maintain. gclient_scm.py
coverage is good enough with gclient_smokte_test.
TBR=chase
Review URL: http://codereview.chromium.org/3155024
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@56351 0039d316-1c4b-4281-b951-d872f2087c98
This is towards cleaning up the mess with 'options' in gclient_scm.py.
Review URL: http://codereview.chromium.org/3106014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@56213 0039d316-1c4b-4281-b951-d872f2087c98
I've never known why there were added in the first place
Review URL: http://codereview.chromium.org/3155008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@55896 0039d316-1c4b-4281-b951-d872f2087c98
ExecutionQueue takes care of reordering execution depending on each Dependency
requirements. There is no need to sort anymore.
ExecutionQueue also manages the Progress instance and is multithread safe, in preparation to parallel checkout.
Review URL: http://codereview.chromium.org/3112002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@55882 0039d316-1c4b-4281-b951-d872f2087c98
gclient revinfo alone will now not return the actual checked out revisions but simply what's in the .gclient&DEPS.
BUG=none
TEST=add a --snapshot test to make sure it is not broken
Review URL: http://codereview.chromium.org/3130007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@55760 0039d316-1c4b-4281-b951-d872f2087c98
It would modify self.parsed_url even when it's called for a From() keyword
Review URL: http://codereview.chromium.org/3171001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@55574 0039d316-1c4b-4281-b951-d872f2087c98
BUG=36135
TEST=gclient sync on a svn lock'ed directory will work automatically
Review URL: http://codereview.chromium.org/3028053
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@55438 0039d316-1c4b-4281-b951-d872f2087c98
PageSpeed is an example of such ordering dependency.
TBR=bradnelson
Review URL: http://codereview.chromium.org/2809072
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@53377 0039d316-1c4b-4281-b951-d872f2087c98
Bring some OOP and sanity to gclient.py.
- Changed the algorithm from breadth-first to depth-first.
- Added infinite recursion support.
- Fixed From() of From() dependency.
- Fixed cross solution custom deps aliasing.
- Removed support code for old .gclient_entries format.
- Removed IsGitCheckout() in favor for a direct check for .git presence.
TEST=all test pass
The main difference with r51760 is that new smoke tests have been added since which replicates how webkit checkouts with gclient.
Review URL: http://codereview.chromium.org/2917009
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@53205 0039d316-1c4b-4281-b951-d872f2087c98
This is the same as the last cl, but hopefully with the right svn
server.
Review URL: http://codereview.chromium.org/3023008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@53043 0039d316-1c4b-4281-b951-d872f2087c98
Emulate running gclient from a checkout containing .gclient and a DEPS, with the
solution having an url set to None.
TEST=new smoke test
Review URL: http://codereview.chromium.org/2897010
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@52119 0039d316-1c4b-4281-b951-d872f2087c98
This is being abused by WebKit.
TEST=new smoke test
Review URL: http://codereview.chromium.org/2923005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@52096 0039d316-1c4b-4281-b951-d872f2087c98
This case covers the webkit gclient usage.
TEST=improved smoke test
Review URL: http://codereview.chromium.org/2968005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@52092 0039d316-1c4b-4281-b951-d872f2087c98
Add the fix for FileImpl() plus unit tests.
TEST=more tests
Review URL: http://codereview.chromium.org/2808048
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@52005 0039d316-1c4b-4281-b951-d872f2087c98
- Changed the algorithm from breadth-first to depth-first.
- Added infinite recursion support.
- Fixed From() of From() dependency.
- Fixed cross solution custom deps aliasing.
- Removed support code for old .gclient_entries format.
- Removed IsGitCheckout() in favor for a direct check for .git presence.
TEST=all test pass
Review URL: http://codereview.chromium.org/2867047
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@51760 0039d316-1c4b-4281-b951-d872f2087c98
TEST=none, no big deal. I'll get a breakpad report otherwise anyway. This is solely to *reduce* the number of breakpad stack trace that this is done.
Review URL: http://codereview.chromium.org/2885020
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@51739 0039d316-1c4b-4281-b951-d872f2087c98
Remove SUPPORTED_COMMANDS since it is not necessary, change the formating to not introduce an empty line.
Review URL: http://codereview.chromium.org/2836042
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@51640 0039d316-1c4b-4281-b951-d872f2087c98
This allows to recurse in all the entries to operate on them.
Review URL: http://codereview.chromium.org/2862039
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@51419 0039d316-1c4b-4281-b951-d872f2087c98
Fix gclient diff & pack to not throw uncatched exceptions when a directory is missing.
Reorder things in gclient.py for easier diff later
Update revinfo help
Add GetScmName(), it will be needed later.
TEST=unit tests
BUG=none
Review URL: http://codereview.chromium.org/2786013
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@49565 0039d316-1c4b-4281-b951-d872f2087c98
The recursive DEPS is to be used with From() testing.
Didn't enable From() yet since it broke tests and to simplify this change.
Review URL: http://codereview.chromium.org/2699005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@49427 0039d316-1c4b-4281-b951-d872f2087c98
Add a lot of checking for stdout and fix one mis-assumption.
Make the code much more compact.
Make the git_hashes 'revisions' 1-based for consistency.
Review URL: http://codereview.chromium.org/2594001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48925 0039d316-1c4b-4281-b951-d872f2087c98
Turns out that this was added in svn 1.5 and the mac bots
use svn 1.4.4.
Review URL: http://codereview.chromium.org/2623002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48899 0039d316-1c4b-4281-b951-d872f2087c98
command line to gclient, pass the flag to svn update and
svn co too.
This allows updates when we have dirty files left around.
For example, an update may remove a directory, but the
directory still has .vcproj or .mk files in it. If we
try to re-add that directory, svn will error out. If
we add --force, it'll happily allow the update.
Review URL: http://codereview.chromium.org/2560001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48897 0039d316-1c4b-4281-b951-d872f2087c98
I found including a git repo in my DEPS file to be unreliable, esp
since I pinning to a specific commit. Whenever I changed the commit
in the DEPS file, gclient would attempt to do a rebase and this was
failing due to how rebase was being invoked.
While investigating the problem, I decided it might be better to take
a different approach. Namely, when cloning gclient should just checkout
the working tree to a detached HEAD. In this way, gclient can more
easily determine if the user has made any changes in the cloned repo.
Future updates (as long as there are no changes) become a much simpler
operation w/no need to invoke rebase.
This is a series of five commits, but sadly, git cl will squash them
into this single review. Here are the original commit messages:
commit 8cd2213f006a6f4b3f6b8c448a1362b9410d47f1
Author: Jay Soffian <jaysoffian@gmail.com>
Date: Wed Apr 14 18:29:18 2010 -0400
Use rev-parse to determine current branch
Git branch is a so-called porcelain and its output cannot be relied upon;
use git rev-parse instead.
gclient_scm.py | 8 +++-----
1 files changed, 3 insertions(+), 5 deletions(-)
commit 1a09e04554acfa2671f9588ee9eef0bdbe677ed2
Author: Jay Soffian <jaysoffian@gmail.com>
Date: Wed Apr 14 22:16:53 2010 -0400
Detached HEAD does not always imply rebasing; use an _IsRebasing()
function instead.
gclient_scm.py | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
commit 45308a58c3f1e30b760f13abe3a6288267265fa8
Author: Jay Soffian <jaysoffian@gmail.com>
Date: Wed Apr 14 22:19:10 2010 -0400
Clarify comments to use common git terminology
gclient_scm.py | 14 ++++++++------
1 files changed, 8 insertions(+), 6 deletions(-)
commit 5e5a661b7dd9c83b2c9c35950f3267d15b7e840a
Author: Jay Soffian <jaysoffian@gmail.com>
Date: Tue May 4 12:15:40 2010 -0400
Make CaptureStatus use GetUpstreamBranch() instead of assuming 'origin'
scm.py | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
commit 42a8bfebd2e1b1be01025c1324d75920ac6eb0e1
Author: Jay Soffian <jaysoffian@gmail.com>
Date: Wed Apr 14 22:19:29 2010 -0400
Use a detached HEAD when checking out a tag or commit
After cloning, if a tag or commit was specified, leave a detached HEAD. This way
we can reliably detect if the user changed the working tree (since HEAD would no
longer be detached). Further, this simplifies the code path when the dependency
is updated to a new tag/commit. As long as HEAD is detached when we update, we
simply checkout whatever we fetched w/o needing to worry about rebasing.
gclient_scm.py | 126 +++++++++++++++++++++++++++++++-------------
tests/gclient_scm_test.py | 6 +--
2 files changed, 91 insertions(+), 41 deletions(-)
Review URL: http://codereview.chromium.org/1652007
Patch from Jay Soffian <jaysoffian@gmail.com>.
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48722 0039d316-1c4b-4281-b951-d872f2087c98
Make -r invalid@rev a warning and ignore the argument.
Make -r rev use the Nth solution.
Fix a bug in FakeRepos.assertTree().
TEST=updated the smoke test to reflect the new behavior which should be the most compatible with the current buildbot behavior
BUG=chromium-os:3465
Review URL: http://codereview.chromium.org/2430001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48607 0039d316-1c4b-4281-b951-d872f2087c98
Make it work with 'coverage'.
Make FakeRepos initialization lazy. Only generate the repository when needed. It's in part intended for gclient_scm_tests.py but I left it out of this review.
To use:
easy_install coverage
./tests/gclient_smoke.py -c
coverage report
Current coverage with gclient_smoke:
Name Stmts Exec Cover
-----------------------------------------------
gclient 557 416 74%
gclient_scm 496 270 54%
gclient_utils 195 117 60%
scm 439 180 41%
(ignoring irrelevant files)
It's quite good in fact, 74% of gclient.py being executed with the smoke test.
Review URL: http://codereview.chromium.org/2352002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48501 0039d316-1c4b-4281-b951-d872f2087c98
Automatically generate help and enforce stricter argument parsing.
Stops from throwing an exception when run outside a subversion checkout.
Fixed gcl lint.
Review URL: http://codereview.chromium.org/2301003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48386 0039d316-1c4b-4281-b951-d872f2087c98
This may not make sense in practice but is necessary for testing. Add regression test.
TBR=msb
TEST=smoke test
BUG=23328
Review URL: http://codereview.chromium.org/2238004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48317 0039d316-1c4b-4281-b951-d872f2087c98
"""
Enable automatic command and one-liner doc. Reformat pydoc accordingly.
Add parser as an argument and parse_args hook in preparation to move parse_args at the right place, inside the CMDxx functions.
R.I.P. gclient_test.py
"""
original code review at: http://codereview.chromium.org/2253002
In addition:
- Add more smoke tests: vars, hooks, runhooks
- Bugs filed about misbehavior with git checkout
- Fixed gclient runhooks
TEST=smoke test
BUG=23328
Review URL: http://codereview.chromium.org/2265002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48309 0039d316-1c4b-4281-b951-d872f2087c98
"""
Enable automatic command and one-liner doc. Reformat pydoc accordingly.
Add parser as an argument and parse_args hook in preparation to move parse_args at the right place, inside the CMDxx functions.
R.I.P. gclient_test.py
"""
original code review at: http://codereview.chromium.org/2253002
In addition:
- Add more smoke tests: vars, hooks, runhooks
- Bugs filed about misbehavior with git checkout
- Fixed gclient runhooks
TEST=smoke test
BUG=23328
Review URL: http://codereview.chromium.org/2265002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48289 0039d316-1c4b-4281-b951-d872f2087c98
Add parser as an argument and parse_args hook in preparation to move parse_args at the right place, inside the CMDxx functions.
R.I.P. gclient_test.py
Review URL: http://codereview.chromium.org/2253002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48271 0039d316-1c4b-4281-b951-d872f2087c98
gclient sync, revert and status are tested.
GClientSmokeGIT.testRevertAndStatus is known to fail since git-backed revert doesn't work.
Review URL: http://codereview.chromium.org/2189001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@48239 0039d316-1c4b-4281-b951-d872f2087c98
The unit tests are unbearable and the next change forces me to trash them.
Thus adding smoke tests before. The current tests aren't involved enough yet but
are a good base for further testing.
I plan to only test the most important functionalities, the ones used in the continuous build and try server.
TEST=new smoke test
BUG=23328
Review URL: http://codereview.chromium.org/2092012
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@47580 0039d316-1c4b-4281-b951-d872f2087c98
Enable automatic command and one-liner doc. Reformat pydoc accordingly.
Add parser as an argument and parse_args hook in preparation to move parse_args at the right place, inside the CMDxx functions.
Update unit tests
Review URL: http://codereview.chromium.org/2129005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@47449 0039d316-1c4b-4281-b951-d872f2087c98
The next step will be to generate help automatically and remove the command
check loop.
TEST=not much
BUG=me
Review URL: http://codereview.chromium.org/2096003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@47291 0039d316-1c4b-4281-b951-d872f2087c98
This fixes issues with Chromium OS checkout.
BUG=crosbug:3132.
TEST=none
Review URL: http://codereview.chromium.org/2016006
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@46761 0039d316-1c4b-4281-b951-d872f2087c98
svn diff would only generate a diff for modified files but the current code
would not respect full_move=True. full_move=True is necessary to make it work on
the try server.
TEST=svn move chrome chrome2; echo foo>>PRESUBMIT.py
The try job should fail but the diff should be right.
BUG=none
Review URL: http://codereview.chromium.org/1965001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@46566 0039d316-1c4b-4281-b951-d872f2087c98
It now defaults to origin/master when no branch is tracked.
TEST=git-try on untracked branch now doesn't result in an empty diff
BUG=none
Review URL: http://codereview.chromium.org/1739021
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@45935 0039d316-1c4b-4281-b951-d872f2087c98
On a chromeos checkout, -j 10 brings down null sync time from 2 minutes to 16 seconds
Currently -j may break some assumptions about ordering of commands (which may be fine for some clients, but not all), so it's not on by default.
Review URL: http://codereview.chromium.org/1640001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@44869 0039d316-1c4b-4281-b951-d872f2087c98
of svn co --depth.
This should work even if you change svn versions between gclient syncs.
Review URL: http://codereview.chromium.org/1560029
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@44441 0039d316-1c4b-4281-b951-d872f2087c98
allow From() to import when the URL is relative.
For example, if src/DEPS is:
deps = {
'base' = 'svn://svn/base@123',
'main' = From('base', 'src/main'),
}
and base/DEPS is:
deps = {
'src/main': '/main@100',
}
This will checkout svn://svn/main@100 in main.
Review URL: http://codereview.chromium.org/1547026
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@44044 0039d316-1c4b-4281-b951-d872f2087c98
These are the same that the one in chromium's src/PRESUBMIT.py but slightly more
resilitent to exceptions.
Empirical studies have shown that exceptions in presubmit checks result in
disorientation and lack of willingness to commit.
TEST=OMG new unit tests!
Review URL: http://codereview.chromium.org/1119003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@42102 0039d316-1c4b-4281-b951-d872f2087c98
This simplifies the unit tests and clarify what is what.
Ran pychecker on a few files.
Review URL: http://codereview.chromium.org/874002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@41310 0039d316-1c4b-4281-b951-d872f2087c98
Moved tests/pymox to third_party/pymox
Moved upload.py to third_party/upload.py
Fixed tests so they can run standalone
Fixed the executable bit on some scripts
TEST=none
BUG=34376
Review URL: http://codereview.chromium.org/562031
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@37987 0039d316-1c4b-4281-b951-d872f2087c98
We now return the stderr half of the tuple.
This required a clean up of any usage of CheckCall and GIT.Capture.
Patch contributed by Nasser Grainawi <nasser@codeaurora.org>
Review URL: http://codereview.chromium.org/551215
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@37650 0039d316-1c4b-4281-b951-d872f2087c98
It does a regexp search on the file contents to make sure it contains expected license boiler plate.
It is a generalization to implement the equivalent of ubuntu's license check script into the corresponding PRESUBMIT.py files.
TEST=unit tests
BUG=28291
Review URL: http://codereview.chromium.org/558007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@37338 0039d316-1c4b-4281-b951-d872f2087c98
By default, filters out 'ChangeLog'. A pain directly coming from Webkit.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/543012
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@36008 0039d316-1c4b-4281-b951-d872f2087c98
Some external contributors need their CL's try'd quickly, but currently its not easy unless we patch locally. This will allow you to submit the rietveld issue number and will do the rest automatically. As well, renable the dry_run option. It was removed.
BUG=None
TEST=git try --issue 12345
Review URL: http://codereview.chromium.org/481006
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@35881 0039d316-1c4b-4281-b951-d872f2087c98
This is mostly useful with git when diffing against arbitrary branches.
Review URL: http://codereview.chromium.org/524046
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@35684 0039d316-1c4b-4281-b951-d872f2087c98
It was somehow ripped out by accident.
TEST=none
BUG=none
TBR=bradnelson
Review URL: http://codereview.chromium.org/515037
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@35284 0039d316-1c4b-4281-b951-d872f2087c98
Add real logging support.
Fix the patch path mungling that was broken earlier.
Add and proper refactor automatic gclient and gcl settings detection.
Factored so it is possible to add other autodetection algorithms.
Now works standalone in hybrid svn&git checkouts within a gclient meta-checkout.
TEST=bah
BUG=none
TBR=bradnelson
Review URL: http://codereview.chromium.org/517005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@35218 0039d316-1c4b-4281-b951-d872f2087c98
This adds the functionality to try a job spread across multiple checkouts.
TEST=fixed unit tests and tested with hybrid svn-git checkouts
BUG=none
Review URL: http://codereview.chromium.org/504085
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@35168 0039d316-1c4b-4281-b951-d872f2087c98
Make lack of email address an error.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/507072
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@35167 0039d316-1c4b-4281-b951-d872f2087c98
The goal is to (almost) completely remove git-try.
TEST=none
Review URL: http://codereview.chromium.org/501166
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@35144 0039d316-1c4b-4281-b951-d872f2087c98
Fix standalone trychange usage on both svn and git.
Remove implicit dependency on git-cl.
TEST=unit test
Review URL: http://codereview.chromium.org/507061
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@35121 0039d316-1c4b-4281-b951-d872f2087c98
Remove upload dependency.
This is towards making trychange.py work mostly standalone for the webkit try server.
TEST=unit tests and tested both gcl try and git-try.
Review URL: http://codereview.chromium.org/501143
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@35071 0039d316-1c4b-4281-b951-d872f2087c98
This is to reduce trychange.py dependency on gcl.py
Review URL: http://codereview.chromium.org/502085
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@35055 0039d316-1c4b-4281-b951-d872f2087c98
Doing something like basename when concatenating base_url with
relative url.
Added use_relative_urls2 to enable switching between old
implementation and new implementation. Once the old implementation
is deprecated we can remove the use_relative_urls2.
Review URL: http://codereview.chromium.org/500015
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@34563 0039d316-1c4b-4281-b951-d872f2087c98
When a rebase generates a conflict, report an error and exit immediately.
If in an existing conflict (no branch), report an error and exit immediately.
Review URL: http://codereview.chromium.org/496003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@34459 0039d316-1c4b-4281-b951-d872f2087c98
It is much cleaner and works for cases where the directory is not writeable.
Also fix an unrelated unit test.
Review URL: http://codereview.chromium.org/464068
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@34080 0039d316-1c4b-4281-b951-d872f2087c98
On a new Linux box, during git cl dcommit I observed
the error:
fatal: invalid diff option/value: -r
This was caused by the git cl presubmit hooks running:
git diff --name-status -r refs/remotes/origin/trunk.. /path/to/src
By passing a relative path (given by git rev-parse
--show-cdup) instead of an absolute path for
/path/to/src, git diff --name-status does not print an
error and returns the expected list of changed files.
Also fix some broken scm and gclient_scm unit tests.
BUG=none
TEST=git presubmit hooks work from main working
directory
Review URL: http://codereview.chromium.org/438012
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@32999 0039d316-1c4b-4281-b951-d872f2087c98
Save the CL locally prior to attempting to submit
to Rietveld. The CL is saved locally with a dirty-bit
before the upload is attempted. If successful, the CL
is saved locally again with a clean-bit.
On loading a dirty CL for editing, we only load the
CL description from Rietveld if the local CL is clean
(there are no pending changes to upload). Clean CLs
continue to retrieve updated descriptions directly
from Rietveld.
BUG=none
TEST=gcl change <name> saves CL description local
prior to uploading. gcl change <name> after a failed
Rietveld upload uses local CL description instead of
using the associated issue's description from Rietveld.
Changes in this state are reset to the 'clean' state
after the Rietveld update completes.
Review URL: http://codereview.chromium.org/428001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@32791 0039d316-1c4b-4281-b951-d872f2087c98
add this to PRESUBMIT.py in the chromium tree later).
- Update cpplint.py to the latest version from the style guide.
Review URL: http://codereview.chromium.org/395022
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@32180 0039d316-1c4b-4281-b951-d872f2087c98
TEST=none
BUG=none
Move scm functions into a class to make it simpler to manage.
Review URL: http://codereview.chromium.org/391052
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@32057 0039d316-1c4b-4281-b951-d872f2087c98
ssh://test@example.com wasn't being parsed correctly for revinfo.
Fixed by factoring out all code which splits url into a base_url
and revision.
Review URL: http://codereview.chromium.org/391048
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@31910 0039d316-1c4b-4281-b951-d872f2087c98
* Add revinfo as part of SCMWrapper interface.
* Implement revinfo for git and svn.
* Add unit tests.
Review URL: http://codereview.chromium.org/362008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@31280 0039d316-1c4b-4281-b951-d872f2087c98
If you're not running gclient sync with --verbose and you get a conflict on
a file, the conflict message prints *before* the message that you're running
update in the appropriate directory. This is happening because we intercept
stdout but not stderr, and the conflict prompt goes to stderr. redirecting
stderr in the popen() to the pipe fixes this.
R=maruel@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/373003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@31276 0039d316-1c4b-4281-b951-d872f2087c98
I've added two settings to codereview.settings - LINT_REGEX and
LINT_IGNORE_REGEX - to specify which files should be linted. The default
is to lint anything that ends in .cpp, .cc, .inl, or .h, and to ignore
nothing.
I have also modified GetCachedFile() to look for a locally modified version
of codereview.settings before looking in the repository.
R=maruel@chromium.org
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/257054
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@30415 0039d316-1c4b-4281-b951-d872f2087c98
print messages unless the underlying commands actually generate output.
This is a more conservative version of r28271.
BUG=none
TEST=none
R=maruel
Review URL: http://codereview.chromium.org/344004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@30296 0039d316-1c4b-4281-b951-d872f2087c98
pymox auto-checkout never really worked well so check-in pymox directly.
pprint.pformat is non-determinist in one test. Worked around the issue.
TEST=unit tests
BUG=none
Review URL: http://codereview.chromium.org/266043
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@29398 0039d316-1c4b-4281-b951-d872f2087c98
as an answer.
Review URL: http://codereview.chromium.org/268023
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@28557 0039d316-1c4b-4281-b951-d872f2087c98
This reverts commit 28058.
BUG=24081
TEST=gclient sync without --force is not working anymore.
TBR=dpranke
Review URL: http://codereview.chromium.org/269006
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@28271 0039d316-1c4b-4281-b951-d872f2087c98
Expand presubmit_support and gclient_scm to support
getting basic status and changed files from a Git
checkout.
BUG=5339
TEST=presubmit_support.py works from a git checkout,
gcl presubmit works from a svn checkout
Review URL: http://codereview.chromium.org/242140
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@28092 0039d316-1c4b-4281-b951-d872f2087c98
Its side-effect caused tree breakages, at least on the try slaves.
TBR=dpranke
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/251095
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@28058 0039d316-1c4b-4281-b951-d872f2087c98
messages when --verbose is specified or when something actually happens.
Also, remove --manually_grab_svn_rev, because we need this to happen all
the time to get gclient update to shut up if we're comparing against HEAD.
It doesn't look like there are any real side effects of removing this.
An alternative change would be to wrap this behind a --quiet flag.
Note that the change to tests/trychange_unittest.py is an unrelated fix to get
all the tests to pass.
R=maruel@chromium.org
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/257023
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@28039 0039d316-1c4b-4281-b951-d872f2087c98
gclient_tests: add GitWrapper test cases
gclient_scm: make RunGit private and add url check
gclient_scm: add revert, run_hooks, and status
gclient_scm: add git implementations of cleanup, diff, and export
gclient_scm: implment GitSCM::update
gclient_scm: add a checks for unsupported scm and unimplemented method
Review URL: http://codereview.chromium.org/235005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@27241 0039d316-1c4b-4281-b951-d872f2087c98
gclient_scm: use a map for deciding whether or not the scm is supported
gclient_scm: add a checks for unsupported scm and unimplemented method
git_scm: pull out svn code into SVNWrapper
gclient_scm: create a create_scm factory method
Use a factory method to abstract SCMWrapper creation. This method
will eventually return the correct subclass of SCMWrapper. Initially,
there will only be SVNWrapper.
Review URL: http://codereview.chromium.org/215022
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@26823 0039d316-1c4b-4281-b951-d872f2087c98
This method will eventually return the correct subclass of SCMWrapper. Initially, there will only be SVNWrapper.
gclient_scm: add test for unsupported scm
gclient_scm: make SCMWrapper constructor parameters non-optional
gclient_scm: add a checks for unsupported scm and unimplemented method
git_scm: pull out svn code into SVNWrapper
gclient_scm: create a create_scm factory method
TEST=
BUG=none
Review URL: http://codereview.chromium.org/216014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@26602 0039d316-1c4b-4281-b951-d872f2087c98
Add a test case for the UnversionedUnexpected file code path.
TEST=This test case will catch the bug fixed by r26425.
BUG=none
Patch contributed by msb@
Review URL: http://codereview.chromium.org/214005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@26458 0039d316-1c4b-4281-b951-d872f2087c98