The 'RemoveDirectory()' function in gclient_utils is deprecated and
rmtree() should be used instead for consistency.
This patch modifies all clients in depot_tools to use rmtree() instead
and removes the RemoveDirectory function.
+ The SVNWrapperTestCase.testRevertNoDotSvn() mocking
expectation has been slightly changed. This was required
because the test invokes code that used to call
gclient_utils.RemoveDirectory() directly, while only
gclient_utils.rmtree() was mocked.
BUG=NONE
R=maruel@chromium.org, ilevy@chromium.org
TEST=manually run gclient_utils_test / gclient_smoketest / scm_unittest / gclient_scm_test
Review URL: https://chromiumcodereview.appspot.com/14134010
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@196133 0039d316-1c4b-4281-b951-d872f2087c98
He has a lot of experience in this directory and we could
use the additional reviewer.
Also remove nsylvain, who is inactive.
R=maruel@chromium.org
Review URL: https://chromiumcodereview.appspot.com/13918011
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@196130 0039d316-1c4b-4281-b951-d872f2087c98
Reverting r195363, r195328 and r195308. gcl upload is hanging for me unless I revert these changes.
f:\src\chrome3\src>gcl upload o0m7
at this point, there's no output. If I press enter, I get:
Got an exception
Command svn diff --config-dir c:\users\jabdel~1\appdata\local\temp\tmp7dwbyp -r 195324:head svn://chrome-svn/chrome/trun
k/src/webkit/glue/dom_operations_unittest.cc returned non-zero exit status 1 in f:\src\chrome3\src
Authentication realm: <svn://chrome-svn:3690> 0039d316-1c4b-4281-b951-d872f2087c98
Password for 'jabdelmalek':
Authentication realm: <svn://chrome-svn:3690> 0039d316-1c4b-4281-b951-d872f2087c98
> Tweak GenerateDiff:
>
> * Update comment for accuracy
> * Keep the base diff command in a variable; this fixes an oversight where GenerateDiff would run svn diff without the --config-dir hack, and makes later refactoring easy
> * Apply review comments from https://codereview.chromium.org/14247007/ to existing code
>
> Review URL: https://chromiumcodereview.appspot.com/14366029TBR=pkasting@chromium.org
Review URL: https://codereview.chromium.org/14297017
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@195422 0039d316-1c4b-4281-b951-d872f2087c98
Reverting r195363, r195328 and r195308. gcl upload is hanging for me unless I revert these changes.
f:\src\chrome3\src>gcl upload o0m7
at this point, there's no output. If I press enter, I get:
Got an exception
Command svn diff --config-dir c:\users\jabdel~1\appdata\local\temp\tmp7dwbyp -r 195324:head svn://chrome-svn/chrome/trun
k/src/webkit/glue/dom_operations_unittest.cc returned non-zero exit status 1 in f:\src\chrome3\src
Authentication realm: <svn://chrome-svn:3690> 0039d316-1c4b-4281-b951-d872f2087c98
Password for 'jabdelmalek':
Authentication realm: <svn://chrome-svn:3690> 0039d316-1c4b-4281-b951-d872f2087c98
> Use --internal-diff on svn 1.7+ to slightly reduce disk thrashing.
>
> This just saves the need to create and remove an empty directory on every call to GenerateDiff.
>
> Review URL: https://chromiumcodereview.appspot.com/14064017TBR=pkasting@chromium.org
Review URL: https://codereview.chromium.org/14122021
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@195421 0039d316-1c4b-4281-b951-d872f2087c98
Reverting r195363, r195328 and r195308. gcl upload is hanging for me unless I revert these changes.
f:\src\chrome3\src>gcl upload o0m7
at this point, there's no output. If I press enter, I get:
Got an exception
Command svn diff --config-dir c:\users\jabdel~1\appdata\local\temp\tmp7dwbyp -r 195324:head svn://chrome-svn/chrome/trun
k/src/webkit/glue/dom_operations_unittest.cc returned non-zero exit status 1 in f:\src\chrome3\src
Authentication realm: <svn://chrome-svn:3690> 0039d316-1c4b-4281-b951-d872f2087c98
Password for 'jabdelmalek':
Authentication realm: <svn://chrome-svn:3690> 0039d316-1c4b-4281-b951-d872f2087c98
Username: svn: Can't read stdin: End of file found
"Fix typo."
> Fix typo.
>
> Review URL: https://chromiumcodereview.appspot.com/13987010TBR=pkasting@chromium.org
Review URL: https://codereview.chromium.org/14304005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@195420 0039d316-1c4b-4281-b951-d872f2087c98
This is a bit of future-proofing. The git hooks in depot_tools/git-templates/hooks all try to forward to build/git-hooks.
Currently, the only actual hook we have is in src/build/git-hooks/pre-commit, which (usefully) makes sure no one inadvertently commits a submodule change. If we want to add more git hooks, we can simply commit them to build/git-hooks, rather than asking everyone to modify .git/hooks in their checkout.
NOTRY=true
Review URL: https://chromiumcodereview.appspot.com/14230012
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@195336 0039d316-1c4b-4281-b951-d872f2087c98
This just saves the need to create and remove an empty directory on every call to GenerateDiff.
Review URL: https://chromiumcodereview.appspot.com/14064017
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@195328 0039d316-1c4b-4281-b951-d872f2087c98
* Update comment for accuracy
* Keep the base diff command in a variable; this fixes an oversight where GenerateDiff would run svn diff without the --config-dir hack, and makes later refactoring easy
* Apply review comments from https://codereview.chromium.org/14247007/ to existing code
Review URL: https://chromiumcodereview.appspot.com/14366029
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@195308 0039d316-1c4b-4281-b951-d872f2087c98
No other code changes, so should be no behavioral change.
Review URL: https://chromiumcodereview.appspot.com/14241038
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@195262 0039d316-1c4b-4281-b951-d872f2087c98
Make it more consistent across the tool. Using \s also includes \n, which
confuses the tool.
Add more tests.
R=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/14265007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@195214 0039d316-1c4b-4281-b951-d872f2087c98
> Second take at handling users with locally overridden diff-cmds.
>
> The first take at https://chromiumcodereview.appspot.com/14130006 tried to pass
> "--diff-cmd diff", which doesn't work for e.g. Windows cmd users who don't have
> a "diff" executable installed.
>
> This take instead passes the "--internal-diff" switch which tells svn to ignore
> any diff-cmd set locally and use its internal diff engine at all times.
>
> While implementing this I found that the existing code tried to work around this
> problem in a different way, by setting up a bogus config dir. Since that
> doesn't seem to work for me, and shouldn't be necessary with this patch anyway,
> removed that code.
>
> Review URL: https://chromiumcodereview.appspot.com/14050007TBR=pkasting@chromium.org
Review URL: https://codereview.chromium.org/14188030
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@195009 0039d316-1c4b-4281-b951-d872f2087c98
The first take at https://chromiumcodereview.appspot.com/14130006 tried to pass
"--diff-cmd diff", which doesn't work for e.g. Windows cmd users who don't have
a "diff" executable installed.
This take instead passes the "--internal-diff" switch which tells svn to ignore
any diff-cmd set locally and use its internal diff engine at all times.
While implementing this I found that the existing code tried to work around this
problem in a different way, by setting up a bogus config dir. Since that
doesn't seem to work for me, and shouldn't be necessary with this patch anyway,
removed that code.
Review URL: https://chromiumcodereview.appspot.com/14050007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194990 0039d316-1c4b-4281-b951-d872f2087c98
Follow the explicit iteration order of the spec keys array instead of relying
on the arbitrary iteration order of the hashtable.
BUG=
Review URL: https://chromiumcodereview.appspot.com/13878009
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194973 0039d316-1c4b-4281-b951-d872f2087c98
On Windows, I got the following error:
f:\src\chrome2\src>gcl commit n3d2
Loaded authentication cookies from C:\Users\jabdelmalek/.codereview_upload_cookies
Running presubmit commit checks ...
checking owners took a long time: 906ms
Got an exception
Command svn diff --diff-cmd diff --config-dir c:\users\jabdel~1\appdata\local\temp\tmpu7bui5 content\browser\web_content
s\web_contents_impl.cc returned non-zero exit status 1 in f:\src\chrome2\src
Index: content/browser/web_contents/web_contents_impl.cc
===================================================================
svn: Can't start process 'diff': The system cannot find the file specified.
> Explicitly pass "--diff-cmd diff" to "svn diff", for users who have set some other diff tool.
>
> Review URL: https://chromiumcodereview.appspot.com/14130006TBR=pkasting@chromium.org
Review URL: https://codereview.chromium.org/13877013
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194945 0039d316-1c4b-4281-b951-d872f2087c98
This is needed because the current implementation commonly fails on Windows due to "directory not empty" errors. Using rd is more reliable.
Review URL: https://chromiumcodereview.appspot.com/13581005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194932 0039d316-1c4b-4281-b951-d872f2087c98
s/This will displayed/This will be displayed/g
BUG=
Review URL: https://chromiumcodereview.appspot.com/13811053
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194907 0039d316-1c4b-4281-b951-d872f2087c98
Here's some background why we need this:
We discovered that google code defines the timestamp of a revision to be the time when a commit was started
rather than when it was finished (apache subversion takes the timestamp when the commit transaction is finished).
This can result in a situation where revision R(i-1) has a higher timestamp than Ri.
See bug: https://code.google.com/p/support/issues/detail?id=30419
When using 'gclient --transitive' we effectively do date-based checkouts.
If a parent has a dependency (without a ...@revision) and that dependency lives in the same repository as the parent does
we'd like to checkout the exact same revision as the parent (if we do a date-based checkout as we do now the google code
bug can result in a situation where we don't get the same revision).
Review URL: https://chromiumcodereview.appspot.com/13814012
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194852 0039d316-1c4b-4281-b951-d872f2087c98
This allows the branch-heads to be pulled even if not configured on the
original clone.
Review URL: https://codereview.chromium.org/13951009
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194382 0039d316-1c4b-4281-b951-d872f2087c98
This will let clients that don't use the heavily filtered canned cpplint
check and want to behave more strictly (aka cc/) reuse any common
settings applied to the cpplint module.
R=maruel@chromium.org
BUG=none
Review URL: https://codereview.chromium.org/13866044
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194264 0039d316-1c4b-4281-b951-d872f2087c98
It was manually tested to work.
R=dpranke@chromium.org,iannucci@chromium.org
Review URL: https://codereview.chromium.org/13832005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194182 0039d316-1c4b-4281-b951-d872f2087c98
Improve temporary storage management.
Print the error message on local GAE instance failure.
Useful to debug when a new version of the GAE SDK breaks something.
TBR=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/13997004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194131 0039d316-1c4b-4281-b951-d872f2087c98
For hash_map and hash_set, we should include "base/hashtables.h", not
the <hash_set> or <hash_map> standard headers.
R=maruel@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/14139002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194047 0039d316-1c4b-4281-b951-d872f2087c98
to tell the user how to recover from partial checkouts and
what to do with an existing checkout.
R=iannucci@chromium.org
BUG=230691
Review URL: https://chromiumcodereview.appspot.com/13945020
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194019 0039d316-1c4b-4281-b951-d872f2087c98
If no `--local` option is passed to git config command line tool, it will relies
on the local repository and then to the user configuration ($HOME/.gitconfig).
In case the user has - for some reason - a svn repository configured in this
user configuration, the checking: `git config --get-regexp ^svn-remote\.` will
accuse that there is svn repo and so the `git cl tool`. This patch just add
the option `--local` to the git config command line tool, avoiding this
situation.
R=maruel@chromium.org,dpranke@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/13884014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@193987 0039d316-1c4b-4281-b951-d872f2087c98
Allow target.os to be a multivalue config option, which will cause
submodules required by any of the listed OSes to be checked out. You can
add additional OSes to the list with "git config --add target.os".
BUG=
Review URL: https://chromiumcodereview.appspot.com/13831004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@193901 0039d316-1c4b-4281-b951-d872f2087c98
This allows non-committers to use fetch to checkout chromium or blink using
$ fetch chromium --nosvn=true
BUG=230357
R=dpranke@chromium.org
Review URL: https://codereview.chromium.org/13910005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@193713 0039d316-1c4b-4281-b951-d872f2087c98
I get the following when doing "gcl upload"
Traceback (most recent call last):
File "f:\src\depot_tools\gcl.py", line 1459, in <module>
sys.exit(main(sys.argv[1:]))
File "f:\src\depot_tools\gcl.py", line 1437, in main
return command(argv[1:])
File "f:\src\depot_tools\gcl.py", line 1070, in CMDchange
description = change_info.GetIssueDescription()
AttributeError: 'ChangeInfo' object has no attribute 'GetIssueDescription'
Sending crash report ...
args: ['f:\\src\\depot_tools\\gcl.py', 'change', 'w4f4']
cwd: f:\src\chrome3\src
exception: 'ChangeInfo' object has no attribute 'GetIssueDesc
host: JABDELMALEK3-W.ad.corp.google.com
stack: File "f:\src\depot_tools\gcl.py", line 1459, in
user: jabdelmalek
version: 2.6.2 (r262:71600, Apr 21 2009, 15:05:37) [MSC v.1
A stack trace has been sent to the maintainers.
"Make gcl use git_cl.py code for consistency in th..."
> Make gcl use git_cl.py code for consistency in the CL description formatting.
>
> This way, git_cl.py's ChangeDescription becomes the canonical CL description
> handler.
>
> R=dpranke@chromium.org
> BUG=
>
> Review URL: https://chromiumcodereview.appspot.com/13800018TBR=maruel@chromium.org
Review URL: https://codereview.chromium.org/14016004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@193555 0039d316-1c4b-4281-b951-d872f2087c98
Include all the preparatory work to eventually update the R= line to match the
actual reviewers.
The goal here is that ChangeDescription becomes the official implementation for
handling and modifying commit messages accross git-cl, gcl and the commit queue.
This change does slightly tweak the spacing between the hot lines.
It is done on purpose to make them consistent.
R=dpranke@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/13741015
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@193514 0039d316-1c4b-4281-b951-d872f2087c98
It makes sure the resulting options.reviewers and options.cc are internally
consistent by splitting comma separated items.
R=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/13843002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@193496 0039d316-1c4b-4281-b951-d872f2087c98
- Improve SVN heuristic by using cutoff of 180 days instead of
120. I've verified this won't cause problems with the repos
we use. (the closest is blink ToT and chrome, blink ToT
refers to a revision in chrome from 9 months ago)
- Alert if using local drover.properties file. Webkit devs had
a drover.properties file that hardcodes svn.webkit.org, which
makes drover point to the wrong revision.
BUG=227168
Review URL: https://chromiumcodereview.appspot.com/13730015
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@192641 0039d316-1c4b-4281-b951-d872f2087c98
This was causing extremely slow gclient sync's, and was preventing gclient from
outputting anything if a slow submodule needed significant updating.
R=cmp@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/13702002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@192475 0039d316-1c4b-4281-b951-d872f2087c98
Building on crrev.com/12670008, add support for blink svn. The svn
revision for blink is sufficiently different from chromium that we
can revert blink changes without further logic changes. The order of
alternative repos corresponds roughly to the expected rate of use.
TEST=Tried reverting some blink revs.
Review URL: https://chromiumcodereview.appspot.com/13448004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@192396 0039d316-1c4b-4281-b951-d872f2087c98
Blink wants to override the maxlen which is currently configurable in CheckLongLines but not in PanProjectChecks. This exposes the parameter on PanProjectChecks.
Review URL: https://chromiumcodereview.appspot.com/13403004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@192394 0039d316-1c4b-4281-b951-d872f2087c98
This reverts commit 6a2e4710bf.
cmp says:
This CL causes NewGit and Git submodules workflows to comingle in ways that result in bad and unexpected failures for new and existing users. One failure is for the new Blink developers who need to use git-svn with their WebKit third_party checkout. Another failure is in the Windows NewGit workflow where gclient sync takes longer than necessary to complete.
The right approach at this point given the costs of this change is to revert it and rethink the best way to get projects the functionality they need while restoring the functionality existing projects have required for over a year now.
Please discuss the recursive/recurseSubmodules code face-to-face with cmp@google.com before attempting to make this live again. Thanks.
R=cmp@chromium.org
BUG=224074
Review URL: https://chromiumcodereview.appspot.com/13470027
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@192236 0039d316-1c4b-4281-b951-d872f2087c98