This CL adds support for running PRESUBMIT.py under either Python2
or Python3 as specified in each PRESUBMIT.py file.
To run the checks under Python3, the PRESUBMIT.py file must contain
a line exactly matching "^USE_PYTHON3 = True$". If the file
does not contain this string, the checks will run under Python2.
Different PRESUBMIT.py files in a single CL may thus contain
a mix of 2- and 3-compatible checks, but each individual file will
only be run in one or the other (it doesn't likely make sense to run
them in both by default).
Bug: 1157663
Change-Id: Ic74977941a6519388089328b6e1dfba2e885924b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2832654
Commit-Queue: Dirk Pranke <dpranke@google.com>
Reviewed-by: Josip Sokcevic <sokcevic@google.com>
This fixes the issue where presubmit_canned_checks issues a warning if
optional arguments in CheckAuthorizedAuthor are not used at all.
This relands commit b09f2bb2f2 with some
additional changes.
R=apolito@google.com
Bug: 1098560
Change-Id: If323d90ab7d6bcca68ed89142ea67edc4be057d2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2373216
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Josip Sokcevic <sokcevic@google.com>
This reverts commit 149a3b7581.
Reason for revert: warnings are issued if no optional parameters
are passed.
Original change's description:
> Warn when non-inclusive parameters are used
>
> R=apolito@google.com
>
> Bug: 1098560
> Change-Id: Iabc2a5d89a6af1418c1228f3c09eacbbd799b5c7
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2355112
> Reviewed-by: Anthony Polito <apolito@google.com>
> Commit-Queue: Josip Sokcevic <sokcevic@google.com>
TBR=apolito@google.com,infra-scoped@luci-project-accounts.iam.gserviceaccount.com,sokcevic@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: 1098560
Change-Id: Ib0f188de90121c692f5c0d7271938ee312917fd1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2376042
Reviewed-by: Josip Sokcevic <sokcevic@google.com>
Commit-Queue: Josip Sokcevic <sokcevic@google.com>
gclient_utils.AskForData will use raw_input on Python 2 and input on Python 3.
Bug: 1063976
Change-Id: I93c059c4e4454d01787716b5a0a2641ad5253f53
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2116370
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
Reviewed-by: Anthony Polito <apolito@google.com>
Auto-Submit: Edward Lesmes <ehmaldonado@chromium.org>
Interrupt tests after 3 min, so that failures can be
surfaced before the presubmit step gets interrupted
on the bot.
Change-Id: Ia0efebaac5a0c5072b974a4fbbcb14fe672017ca
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2098942
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
When running `git rev-parse REV^{commit}` in Windows, `^` must be
escaped.
However, it was escaped more times than necessary.
Split IsValidRevision to call ResolveCommit, add tests to ResolveCommit,
and run scm.py tests on Windows.
Change-Id: I761a820394c8b5410d68b6ccd6c352c41c30c88c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2092904
Reviewed-by: Josip Sokcevic <sokcevic@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
For bonus points, this also fixes PRESUBMIT so that it actually checks
the manifests.
TBR=bpastene@chromium.org, tandrii@chromium.org
Bug: 1032743
Change-Id: I4dac5a520e333e3c429597684a44ece83d21c5fb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1960950
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
I have verified that all JSON files currently in depot_tools
pass this check.
Change-Id: I8247653a8161adf69b20d0a837b9f7723936ade2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1620308
Reviewed-by: Sean McCullough <seanmccullough@chromium.org>
Commit-Queue: Aaron Gable <agable@chromium.org>
The new version uses SHA256 for uploads by default. It also fully supports
$ResolvedVersions and 'selfupdate-roll'.
The roll was generated by:
$ ./cipd selfupdate-roll \
-version-file cipd_client_version \
-version git_revision:fb963f0f43e265a65fb7f1f202e17ea23e947063
BUG=821194, 870166
R=nodir@chromium.org, iannucci@chromium.org
Change-Id: If7c23c43ff2c1bf50c9c50f4e9e17a23e84859b9
Reviewed-on: https://chromium-review.googlesource.com/1227431
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
New packages are built using SHA256 as instance ID (instead of SHA1).
R=iannucci@chromium.org
BUG=821194, 867819, 813782
Change-Id: I61cf71386975725f7f63097eeb62f094ff50e396
Reviewed-on: https://chromium-review.googlesource.com/1165598
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
When updating the CIPD client to be identified by SHA256 hash, old clients (that
have no idea about SHA256) fail during 'selfupdate'.
We'll roll our SHA256 support in two stages:
1. Deploy new client that understand SHA256 using its SHA1 name, so
self-update from old clients works.
2. Deploy same (or newer) client using its SHA256 name. This would work since
the client doing the self-update already understands SHA256 at this point.
But we can't guarantee that ALL depot_tools deployments will update through
stages (1) and (2) sequentially. Some of them may skip (1) and end-up directly
in (2), failing on 'selfupdate'.
This CL makes sure they can recover from this state by rebootstraping the client
from scratch (this works with SHA256 hashes).
R=nodir@chromium.org, iannucci@chromium.org
BUG=821194
Change-Id: I27dece19e0305b5b2d6f8b0130631c1bf5f6499c
Reviewed-on: https://chromium-review.googlesource.com/1149454
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
It seems unfair to completely kill linux-386, while we still provide minimal
best-effort support for more exotic platforms like linux-ppc64 or linux-s390x.
R=iannucci@chromium.org, tandrii@chromium.org
BUG=854300
Change-Id: Ia31ebb42f7e596c495b09bb99ecb376801256d55
Reviewed-on: https://chromium-review.googlesource.com/1111026
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
We no longer support linux-386 and there are no CIPD builders that build
packages for it.
R=tandrii@chromium.org
BUG=854300
Change-Id: Ibfefee828118c898432784c8ef3dd5894a28cfaa
Reviewed-on: https://chromium-review.googlesource.com/1110845
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
This is a good prototypical example of how to do it :-).
TBR for OWNERS change for recipes.cfg.
BUG=564920
R=iannucci@chromium.org,martiniss@chromium.org
TBR=phajdan.jr@chromium.org
Review URL: https://codereview.chromium.org/1494103004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@297851 0039d316-1c4b-4281-b951-d872f2087c98
Reason for revert:
This CL over-aggressively removed the Windows bootstrap code used by /gclient.bat, which in turn downloads/installs the Windows toolchain, including Python. Labs can no longer provision Windows bots because of this.
update_depot_tools.bat did more than initialize the virtualenv. It also downloaded and installed Python, Git, and Subversion on Windows systems.
I'm reverting to restore the toolchain so we can create new Windows bots.
Original issue's description:
> Removed virtualenv from depot_tools
>
> This effectively reverts http://crrev.com/1195423002 and
> http://crrev.com/1205873002.
>
> R=pgervais@chromium.org, tandrii@chromium.org
> TBR=pgervais@chromium.org # i wanna get my Fixit credit today :-)
> BUG=542922,503067
>
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=297491
TBR=pgervais@chromium.org,tandrii@chromium.org,sergiyb@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=542922,503067
Review URL: https://codereview.chromium.org/1431173002 .
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@297493 0039d316-1c4b-4281-b951-d872f2087c98
This is created for the external gsutil since r293320, and was creating
needless churn in presubmit tests when it is present.
R=pgervais@chromium.org,hinoka@google.com
BUG=434422
Review URL: https://codereview.chromium.org/831913003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293574 0039d316-1c4b-4281-b951-d872f2087c98
- Don't pylint files in .gitignore or .git/info/excludes
- Print full path to modules in pylint.
BUG=
Review URL: https://codereview.chromium.org/202773002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@257672 0039d316-1c4b-4281-b951-d872f2087c98
As a slight improvement for making changes on Windows, at least run
the pylint steps. The tests do not currently work with a variety of
failures, but at least running pylint would have caught the regressions
encountered here https://codereview.chromium.org/134313007/#msg19.
R=maruel@chromium.org
BUG=334953
Review URL: https://codereview.chromium.org/137243003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@245420 0039d316-1c4b-4281-b951-d872f2087c98
Actually, don't run presubmit checks on anything starting with
python and ending with _bin.
BUG=326975
Review URL: https://codereview.chromium.org/111643002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@240316 0039d316-1c4b-4281-b951-d872f2087c98
Tested to work now with the repro case of bug 313552.
"/c" was interpreted by cygwin's bash as a path and was replaced with c:/. :(
Using //c seems to be passed through properly.
There is probably other escaping problem but this should be good enough at
this stage.
Ref: http://www.mingw.org/wiki/Posix_path_conversionR=iannucci@chromium.org
BUG=241769
BUG=313552
Review URL: https://codereview.chromium.org/50143013
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@232184 0039d316-1c4b-4281-b951-d872f2087c98