This will make it easier to support git-submodule and gclient at
the same time.
Review URL: http://codereview.chromium.org/9692022
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@126428 0039d316-1c4b-4281-b951-d872f2087c98
Enforces that each builder and builder:test association must be in its own list item in PRESUBMIT.py/GetPreferredTrySlaves().
If a user run git try -t foo, trychange.py will now take the list of all the
slaves, will skip any :compile builder, and apply the test filter to them.
Currently, git try -t foo on a chromium checkout throws an exception because of
PRESUBMIT.py files containing test specification.
R=petermayo@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9664015
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@125975 0039d316-1c4b-4281-b951-d872f2087c98
Previously, it would apply the test filter only on the last bot.
TBR=dpranke@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9634011
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@125622 0039d316-1c4b-4281-b951-d872f2087c98
The previous behavior would cause inproper parsing;
- the bot=bot1 flag would add 'bot1': ['defaulttests'] to the dictionary.
- the testfilter=test1 flag would append 'test1' to the list, causing the value
to look like 'bot1': ['defaulttests', 'test1'].
I think on the long run the best is to keep --testfilter as a user interface but
not on the try server. This effectively stops sending testfilter=foo to the
server.
Add unit test to verify it's working properly. Refactor a bit to make unit
testing simpler.
R=petermayo@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9599012
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@125405 0039d316-1c4b-4281-b951-d872f2087c98
This permits running git grep over the dependencies. With --ignore, gclient
recurse continues even if nothing is found in a dependency. Without this flag,
git grep returns 1 when nothing is found, causing gclient to stop processing the
remaining dependencies.
TBR=nsylvain@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9600010
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@124914 0039d316-1c4b-4281-b951-d872f2087c98
Support --jobs in 'fetch' and 'recurse' commands.
BUG=115840
TEST=
Review URL: http://codereview.chromium.org/9560010
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@124657 0039d316-1c4b-4281-b951-d872f2087c98
The fetch command is simply an alias for:
gclient recurse -s git git fetch origin
Rework 'recurse' command to use a WorkQueue so that --jobs is supported.
BUG=115840
TEST=
Review URL: http://codereview.chromium.org/9463044
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@124334 0039d316-1c4b-4281-b951-d872f2087c98
- Support quiet option on ninja-deplist-helper.
- Add "overprint" mode to ninja when attached to a console.
- Fix slash handling in creating output directories.
- Merge response file support from master branch
Review URL: https://chromiumcodereview.appspot.com/9539015
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@124266 0039d316-1c4b-4281-b951-d872f2087c98
r123775 contained copy-paste left-over that caused the code to throw a NameError
instead of a HTTPError.
R=petermayo@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9536014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@124184 0039d316-1c4b-4281-b951-d872f2087c98
Occasionally, AppEngine throws HTTP 500. In practice it's not a big deal but
upload.py converts them into sys.exit() call which is problematic. This breaks
the commit queue since this behaviors forces the CQ to quit.
R=dpranke@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9480005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@123775 0039d316-1c4b-4281-b951-d872f2087c98
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
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
An example use case is github over ssh at a pinned revision.
R=petermayo@chromium.org
BUG=115202
TEST=
Review URL: http://codereview.chromium.org/9443025
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@123325 0039d316-1c4b-4281-b951-d872f2087c98
Chrome for Android introduced the requirement for java files.
Android's style guide:
http://source.android.com/source/code-style.html#limit-line-length
defines 100 columns for .java files.
This patch changes the presubmit tests which are also used by chromium's CQ.
TEST=testCannedCheckJavaLongLines
Review URL: http://codereview.chromium.org/9417023
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@122938 0039d316-1c4b-4281-b951-d872f2087c98
When a diff contains utf8 character, the filename would be stored as a unicode
object instead of a str. This is even if the buffer is originally sent as a
utf-8 encoded str. Then once the diff is reconstructed to be sent to 'patch', a
unicode object instead of a str would be sent, confusing patch.
R=cmp@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9387024
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@122361 0039d316-1c4b-4281-b951-d872f2087c98
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
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
Now accepts duplicate keys, it simplifies parsing, like when multiple bots are
used, each with their own test filter. This enables full test specification per builder.
R=petermayo@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9380022
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@121842 0039d316-1c4b-4281-b951-d872f2087c98
The major use case was for ChromiumOS devs who were using repo. It's not a
frequent use case anymore. Having git-cl sync on each invocation is costly.
TBR=nsylvain@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9389030
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@121834 0039d316-1c4b-4281-b951-d872f2087c98
This version of upload.py is slightly less annoying, it won't cancel out if no
patchset title is provided and disable colors all the time.
R=cmp@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9233057
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@121826 0039d316-1c4b-4281-b951-d872f2087c98
also, use http download instead of scp,
because scp won't work well on Windows.
BUG=chromium:113153
Review URL: https://chromiumcodereview.appspot.com/9369023
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@121820 0039d316-1c4b-4281-b951-d872f2087c98
Should be no functional change.
Necessary for a follow-up change I'm making.
Review URL: http://codereview.chromium.org/9385017
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@121590 0039d316-1c4b-4281-b951-d872f2087c98
Everyone at this point should have been migrated to the new format.
Review URL: http://codereview.chromium.org/9385010
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@121509 0039d316-1c4b-4281-b951-d872f2087c98
Prints the bots a tryjob would use if sent out.
(Does not send out the job.)
Review URL: http://codereview.chromium.org/9348068
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@121409 0039d316-1c4b-4281-b951-d872f2087c98
If we quote as --receive-pack="git receive-pack --reviewer=foo@example.com",
git will try to run "git receive-pack --reviewer=foo@example.com" command
and failed like this
Gerrit Code Review: git receive-pack --reviewer=foo@example.com: not found
fatal: The remote end hung up unexpectedly
Command "git push --receive-pack="git receive-pack --reviewer=foo@example.com" origin HEAD:refs/for/master" failed.
Review URL: http://codereview.chromium.org/9325018
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@120337 0039d316-1c4b-4281-b951-d872f2087c98
For some reason, on Mac setup_tools won't create the installation directory if
it doesn't exist, while it appears to do so on Linux and Windows.
BUG=
TEST=
Review URL: http://codereview.chromium.org/9323030
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@120331 0039d316-1c4b-4281-b951-d872f2087c98
This is the bare beginnings of Gerrit support for (non-repo) depot_tools,
based on Roland's work.
Differnt from http://codereview.chromium.org/8826015/
it read codereview.settings and if it has GERRTI_HOST and GERRIT_PORT,
then "git cl config" configured it for gerrit.
installs hooks/commit-msg
git config gerrit.host $GERRIT_HOST
git config gerrit.port $GERRIT_PORT
if it has gerrit.host config, "git cl upload" will upload a change
to gerrit as
"git push --receive-pack=... origin master"
it scans description and extract reviewers from R= line.
Review URL: http://codereview.chromium.org/9264065
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@120276 0039d316-1c4b-4281-b951-d872f2087c98
This CL introduces package_management.py, a module for managing third-party Python packages in a site directory within depot_tools. A future CL will integrate this with depot_tools, causing the packages to be downloaded and installed on first run after that CL lands. Once in place presubmit_canned_checks will be extended to make use of the locally installed version of pylint.
BUG=
TEST=
Review URL: http://codereview.chromium.org/8965033
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@120225 0039d316-1c4b-4281-b951-d872f2087c98
this forces license headers, no line-end whitespace, etc.
Also update the default license header regex to allow concluding */ on the final line.
Review URL: http://codereview.chromium.org/9109001
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@119448 0039d316-1c4b-4281-b951-d872f2087c98
It also removes the need of manually creating a subject argument.
Other related changes in this CL:
- Reenable the prompt for patchset title in gcl. I'm not sure why it was disabled.
- Remove git cl upload --desc_from_logs flag. --force is already meaningful.
R=cmp@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9193023
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@119066 0039d316-1c4b-4281-b951-d872f2087c98
It speeds up significantly these tests.
R=cmp@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/9283041
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@118912 0039d316-1c4b-4281-b951-d872f2087c98