Commit Graph

123 Commits (a112f03fcf8f2e8b4119c5582b1ab0910f5f0ea4)

Author SHA1 Message Date
thakis@chromium.org d0b0a5b08c Revert of Another attempt: gclient: delete mismatching checkouts (https://codereview.chromium.org/183283003/)
Reason for revert:
Broke `gclient sync` for me, failing with:

Error: 1> Can't update/checkout /Volumes/MacintoshHD2/src/chrome-git/src if an unversioned directory is present. Delete the directory and try again.


For someone else, it broke it with:

% gclient sync

________ unmanaged solution; skipping src

Error: Command svn info --xml returned non-zero exit status 1 in /Users/pawliger/chromium/src/.

<?xml version="1.0" encoding="UTF-8"?>

<info>

svn: E155007: '/Users/pawliger/chromium/src' is not a working copy

Original issue's description:
> Another attempt: gclient: delete mismatching checkouts
> 
> Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=255930

TBR=iannucci@chromium.org,szager@chromium.org,maruel@chromium.org,mmoss@chromium.org,borenet@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/192323006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@256005 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
borenet@google.com 7ff04292ac Another attempt: gclient: delete mismatching checkouts
Review URL: https://codereview.chromium.org/183283003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@255930 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
hinoka@google.com 267f33e6ad Make gclient_scm.py use cache_dir
Instead of having custom logic for dealing with cache directories, use
git_cache.py to populate caches.

Also fixes a bug in git_cache.py where it was looking for lockfiles in cwd rather than the cache dir.

Other changes:
* _Run now returns output.
* Always print to stdout in CheckCallAndFilterOutput, even if it gets a carriage return.  This is done because git progress report are carriage returns and not newlines and we don't want everything on the same line and not strip out the CRs.
* Removed members changed tests, its not very useful to know a new import is added.

BUG=339171

Review URL: https://codereview.chromium.org/180243006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@254248 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
szager@chromium.org 6c2b49d392 Revert "Re-re-land gclient deletion of mismatching checkouts again"
This reverts commit 6ff5448534.

'fetch --nohooks chromium' is broken with this change.

BUG=

Review URL: https://codereview.chromium.org/177003023

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@253640 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
borenet@google.com 6ff5448534 Re-re-land gclient deletion of mismatching checkouts again
Review URL: https://codereview.chromium.org/164053003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@253616 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
mmoss@chromium.org 50fd47f55f Revert 250482 "Re-reland r245404 ("If the destination directory ..."
> Re-reland r245404 ("If the destination directory doesn't contain the desired repo, delete it")
> 
> BUG=
> 
> Review URL: https://codereview.chromium.org/133073015

TBR=borenet@google.com

Review URL: https://codereview.chromium.org/146583013

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@250878 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
borenet@google.com 255b5d97da Re-reland r245404 ("If the destination directory doesn't contain the desired repo, delete it")
BUG=

Review URL: https://codereview.chromium.org/133073015

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@250482 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
borenet@google.com 3dce24f8bb Revert of Reland r245404 ("If the destination directory doesn't contain the desired repo, delete it") (https://codereview.chromium.org/131743022/)
Reason for revert:
This is still failing third_party DEPS for git-svn...

Original issue's description:
> Reland r245404 ("If the destination directory doesn't contain the desired repo, delete it")
> 
> BUG=
> 
> Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=249143

TBR=iannucci@chromium.org,maruel@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=

Review URL: https://codereview.chromium.org/152933004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@249216 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
borenet@google.com 8456c48528 Reland r245404 ("If the destination directory doesn't contain the desired repo, delete it")
BUG=

Review URL: https://codereview.chromium.org/131743022

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@249143 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
bauerb@chromium.org 30c46d64d7 Merge instead of rebasing upstream changes in `gclient sync` when --merge is given.
Merge ALL the things!

BUG=none

Review URL: https://codereview.chromium.org/61823002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@246575 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
thakis@chromium.org 0a0e31065c Revert of If the destination directory doesn't contain the desired repo, delete it (https://codereview.chromium.org/61623008/)
Reason for revert:
This breaks `gclient sync` for me. Before this patch:
________ found .git directory; skipping src

After this patch:
Error: 1> Can't update/checkout /Volumes/MacintoshHD2/src/chrome-git/src if an unversioned directory is present. Delete the directory and try again.


Original issue's description:
> If the destination directory doesn't contain the desired repo, delete it
> 
> Basic functionality - this may not be in quite the right place.
> 
> Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=245404

TBR=iannucci@chromium.org,ilevy@chromium.org,cmp@chromium.org,maruel@chromium.org,morrita@chromium.org,borenet@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/141633005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@245530 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
borenet@google.com b75a835e65 If the destination directory doesn't contain the desired repo, delete it
Basic functionality - this may not be in quite the right place.

Review URL: https://codereview.chromium.org/61623008

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@245404 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
maruel@chromium.org 1a60dca731 Fix unpinned version to track upstream.
This is a serious bug, if a version is unpinned, it would become stuck at
whatever a local branch 'master' may point to. This is extremely bad when a
pinned dependency is unpinned on purpose, for example on a canary master. We
reproduced this problem on the chromium.swarm master by setting a custom_vars
swarming_revision to '', which then stopped syncing at the expected
origin/master commit but instead got stuck to what happened to be a local master
branch.

This happens on git dependencies if the main solution is using svn. This doesn't
happen on git checkouts using .DEPS.git due to bug 323233.

The issue looks like:
________ running 'git reset --hard HEAD' in '/path/src/tools/swarming_client'
HEAD is now at 4727bd5 Some commit
Checked out revision d908a546e28d1e9f85f5690cf6c3a080f06ba711

Note that HEAD and what is checked out do not match.

Also reduce the hardcoding of 'origin' by creating a variable named 'remote'.

R=petermayo@chromium.org
BUG=322961

Review URL: https://codereview.chromium.org/85473007

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@237332 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
scottmg@chromium.org f547c80c36 Delete nag_max and nag_timer
It's impossible to sync by default on Windows and has been since this was
added: https://www.google.com/search?q=chromium-dev+nag_max

Most recently: https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/CEpATyu9udc

So, remove it. If someone needs it they can figure out a more targeted
implementation.

Keep --no-nag-max for backwards compat so that bot scripts won't fail out.
I'll remove it from bot scripts after this has baked a while, and then
come back and remove the option.

R=iannucci@chromium.org

Review URL: https://chromiumcodereview.appspot.com/24950002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@225730 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
iannucci@chromium.org 2702bcdec7 Add json output for gclient.
This is in order to support 'features' like got_revision for build systems
unwilling to scrape the human-readable output of gclient in order to extract
basic information :)

R=agable@chromium.org, maruel@chromium.org
BUG=265618

Review URL: https://chromiumcodereview.appspot.com/23753008

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@225046 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
ilevy@chromium.org 3534aa56f4 Allow gclient clone in non-empty directories
Add an option in DEPS files to clone a project into a temp dir
and then copy into expected final dir.  This allows checking out a
git repo into a folder which is non-empty. It is useful for projects
that are embedded in src/ but want to specify the revision of
src/ in the embedded project (such as android private).

BUG=165280

Review URL: https://chromiumcodereview.appspot.com/19359002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@212720 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
iannucci@chromium.org e6ebb4efd6 Fix tests for nag_max=30.
Test breakage introduced by f10ffa9069.

TBR=joi@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/18603010

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@210220 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
iannucci@chromium.org 53456aa2a9 Add a git cache for gclient sync operations.
Instead of cloning straight into place, clones are made to a global cache dir,
and then local (using --shared) clones are made from the cache to the final
resting place. This means the 'final' clones are full repos with no shenanigans,
meaning that branches, commits, etc. all work, which should allow the rest of
the gclient ecosystem to work without change as well.

The primary benefit is, of course, reduced network IO, and a much lower cost for
'clobber' operations (assuming we don't clobber the cache). It also means that
a given bot can have a greater number of checkouts, since the entire git history
will only be stored once per machine, instead of once per checkout.

R=dpranke@chromium.org, szager@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/18328003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@210024 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
iannucci@chromium.org d4fffee1c5 Add --upstream option to gclient to scrape git checkouts back to upstream state.
This will be used on the bots when calling apply_patch, which commits to git
repos.

R=dpranke@chromium.org,szager@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/18006002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@209040 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
xusydoc@chromium.org 885a960ba2 Don't delete directories that have been superseded by a broader checkout.
BUG=237388

Review URL: https://chromiumcodereview.appspot.com/14583004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@203384 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
szager@chromium.org 41da24bfb6 Set default nag_timer=6, and make it disable-able.
BUG=242220

Review URL: https://codereview.chromium.org/15367008

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@201859 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
bratell@opera.com 18fa4542d8 Don't "hang" gclient if fast-forward is not possible.
As noticed in the TODO, raw_input (used by ask_for_data) works badly
on background threads. On my Windows it doesn't even print the prompt which
makes it hard to interact with it.

Better to just abort and tell the user of gclient how to proceed.

BUG=

Review URL: https://chromiumcodereview.appspot.com/15421005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@201295 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
maruel@chromium.org 9717013017 Fix many (but not all[1]) depot_tools tests on Windows.
[1] *scm_test.py are deeply broken, svnadmin is missing for svn_bin\.
And the git test are failing at shutdown.

Also Fix SvnCheckout.testMove flakiness.

TBR=ilevy@chromium.org,szager@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/14729012

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@198900 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
szager@chromium.org 12b07e7e55 Refactor nag functionality in to NagTimer class.
Add default 30 second nag timer to gclient subprocesses.

BUG=227537

Review URL: https://chromiumcodereview.appspot.com/14826003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@198207 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
digit@chromium.org dc112ac587 Remove gclient_utils.RemoveDirectory().
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
12 years ago
iannucci@chromium.org 3830a67f5f Make safesync w/ git hash work when lkgr is ahead of clone.
R=maruel@chromium.org, szager@chromium.org
BUG=


Review URL: https://chromiumcodereview.appspot.com/12301002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@183275 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
iannucci@chromium.org 1e7187a595 Make gclient_scm_test pass even if no global user name or email is defined.
R=maruel@chromium.org
BUG=


Review URL: https://chromiumcodereview.appspot.com/12300002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@183044 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
szager@chromium.org c51def3ff4 Restore previous behavior of GetSha1ForSvnRev, so unit tests pass.
Review URL: https://chromiumcodereview.appspot.com/11148019

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@161909 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
shouqun.liu@intel.com 13b522c1aa Fix the svn version check issue, append '--quiet' to get svn version string.
In some enviroments (eg, OSX zh_CN), use 'svn --version' and splitting string
may get error version string. Use 'svn --version --quiet' to do stable svn
version check, which directly returns version string such as '1.7.0'.

BUG=
TEST=


Review URL: https://chromiumcodereview.appspot.com/10805037

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@147670 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
maruel@chromium.org c6ca3a198e Give up on verifying stdout for most git gclient scm tests.
The output is dependent on git's version. This is blocking the CQ.

TBR=petermayo@chromium.org
BUG=
TEST=


Review URL: https://chromiumcodereview.appspot.com/10559075

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@143172 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
szager@chromium.org d4af662bd6 Automatically update submodule config entries on sync.
The effect of this is to preserve the behavior of `git status`,
i.e., only changes in the top-level repository will be reported.

Updated test expectations; I have no idea what I'm doing.

Review URL: https://chromiumcodereview.appspot.com/10454088

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@140396 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
maruel@chromium.org ea15cb7791 Make checkout.*.prepare() delete the svn:ignored files.
Add corresponding support to scm.SVN.Revert() to clobber the svn:ignore'd files.

This makes the commit queue remove all the unversioned files, which could have
improved its stability. It failed in practice to improve it but it's still a
good thing to do overall.

R=petermayo@chromium.org
BUG=
TEST=


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@135333 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
maruel@chromium.org 6208757463 Fix an error in gclient revert where a directory is unexpected and locked
This would spurious try job failures because the gclient revert step would throw
an exception.

R=cmp@chromium.org
BUG=
TEST=


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@133799 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
mukai@chromium.org 9e3e82c1b3 Check binary existence in gclient: 2nd try.
The first approach crrev.com/132446 was reverted due to
Windows build breaks. This approach is more robust because
it actually tests the binary by running the command actually.

BUG=114483
TEST=succeeded on Linux

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@132783 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
maruel@chromium.org 2a0108ebdb Revert r132446 "Check the existence and executability of scm commands"
This completely broke syncing on Windows.

TBR=mukai@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9956149

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@132451 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
mukai@chromium.org d15a8fa135 Check the existence and executability of scm commands
BUG=114483
TEST=manually

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@132446 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
maruel@chromium.org ffcc161fd0 Remove flaky git tests.
The mere fact that they were each looking at two different outputs was already a
bad sign. Then, occasionally, the output would still not match exactly. This
needs to be recoded so remove these tests in the meantime.

TBR=dpranke@chromium.org
BUG=
TEST=


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@123743 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
bashi@chromium.org fcffd48174 Fix compatibility with Xcode4.3 git
Xcode 4.3 git returns the version like below:

git version 1.7.7.5 (Apple Git-26)

Modify GIT.AssertVersion to accept such input.

Also modify tests/gclient_scm_test.py to pass tests, but not sure
the fix is collect.

BUG=chromium:115576
TEST=ran tests/gclient_scm_test.py

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@123399 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
steveblock@chromium.org 98e6945846 If both -R and -D are specified when updating, remove all untracked directories
This is required to avoid the need to clobber the bots when moving a directory 
to deps/. Currently, the directory in question is likely to remain in the 
working copy, despite having been removed, due to the presence of untracked 
files. This causes the checkout from deps/ to fail. 

With this change, when both --reset and --delete_unversioned_trees are 
specified, the the directory in question will be removed from the working copy, 
thereby allowing the copy in deps/ to be checked out correctly. 

Note that untracked directories which are explicitly ignored (ie in .gitignore 
or svn:ignore) will not be removed. 

Note that this was previously landed in http://codereview.chromium.org/9348054 
but reverted due to problems with symlinks in the chromeos build. 

BUG=112887, chromium-os:20759

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@122300 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
maruel@chromium.org 30159da655 Revert r121986 "If both -f and -D are specified when updating, remove all untracked directories"
Caused issues with chromium.chromiumos bots.

TBR=steveblock@chromium.org
BUG=112887

TEST=


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@122098 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
dbeam@chromium.org 2a75fdb0fc [depot_tools] Use git fetch to optimize the properly configured that use git-svn
in the way <http://code.google.com/p/chromium/wiki/UsingNewGit#Initial_checkout>
describes.

R=maruel@chromium.org
TEST=gclient sync with safesync_url is faster.
BUG=109184


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@121988 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
steveblock@chromium.org 93567043f9 If both -f and -D are specified when updating, remove all untracked directories
This is required to avoid the need to clobber the bots when moving a directory
to deps/. Currently, the directory in question is likely to remain in the
working copy, despite having been removed, due to the presence of untracked
files. This causes the checkout from deps/ to fail.

With this change, when both --force and --delete_unversioned_trees are
specified, the the directory in question will be removed from the working copy,
thereby allowing the copy in deps/ to be checked out correctly.

Note that untracked directories which are explicitly ignored (ie in .gitignore
or svn:ignore) will not be removed.

BUG=112887,chromium-os:20759

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@121986 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
dbeam@chromium.org 051c88b9c0 [depot_tools] Disabling new git checkouts with safesync_urls until fixed.
R=maruel@chromium.org
TEST=gclient sync a freshly configured client.
BUG=106015


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@115452 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
dbeam@chromium.org e5d1e61dc3 [depot_tools] Adding safesync_url for git and git-svn checkouts.
R=maruel@chromium.org
TEST=Configure a checkout using the NewGitWorkflow with a safesync_url and everything works (though possibly with a really long git svn fetch time).
BUG=106015

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@115011 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
maruel@chromium.org d579fcf951 Enforces using cwd in all svn calls.
That helps weed out some issues faces with svn plus helped me figure out some
misuses.

Most of the commands have been implicitly depending on os.getcwd(). This change
makes it always consistent and clear when dependence on the current directory is
needed.

Remove default arguments to scm.SVN.GenerateDiff and a few other calls to be
sure the refactoring was done right.

R=dpranke@chromium.org
BUG=
TEST=make sure most commands aren't broke


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@114262 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
igorgatis@gmail.com 4e07567f52 Introduced git+http(s) fake URL schema to support git urls which don't have "filename.git" portion (http://foo/bar vs http://foo/bar/filename.git).
Review URL: http://codereview.chromium.org/8590024

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@110937 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
maruel@chromium.org 0927b7eef8 Create a new testing_support module to move utility modules there
It will simplify importing utility modules from other projects. Otherwise I was getting name conflicts with 'test'.

Reenable W0403 that was disabled in the previous CL.

R=dpranke@chromium.org
BUG=
TEST=


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@109636 0039d316-1c4b-4281-b951-d872f2087c98
13 years ago
maruel@chromium.org 428342a0a7 Standardize the sys.path fix up and fix a few pylint warnings.
Disable temporarily W0403, will be reenabled on the next CL

R=dpranke@chromium.org
BUG=
TEST=

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@109435 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
maruel@chromium.org 8b322b3cb7 Handle cases where '.' show up in svn status and is deleted
This would cause random try job failures, especially when switching around
DEPS <-> svn directory conversion.

R=dpranke@chromium.org
BUG=
TEST=


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@108144 0039d316-1c4b-4281-b951-d872f2087c98
14 years ago
maruel@chromium.org 6c48a304d4 Fix a concurrency issue happening with deep dependencies when the intermediary
directory doesn't exist, on fresh checkout and --jobs >1.

It happens in the case where there is 3 dependencies:
a
a/b/c/d
a/b/c/e

'a' is processed first. Then 'a/b/c/d' and 'a/b/c/e' are fired simultaneously.
If both are not present, both svn checkout tries to mkdir b and b/c and a race
condition occurs between their call for isdir() and mkdir().

This works around the issue by creating the intermediary directories ourself
before calling out svn and managing the error ourself.

TBR=dpranke@chromium.org
BUG=
TEST=fresh checkout shouldn't be flaky


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

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