This allows people to pin a specific version of pylint when running
it. The default behavior is unchanged: we run pylint-1.5.6 still
as we've created a vpython wheel in cipd for it. But for projects
that want to move to a newer version, they can pick any of the new
1.x wrappers. Having the full set of versions here allows projects
to incrementally move to newer versions as the lint delta between
1.5 & 1.6 tends to be much smaller than 1.5 & 1.9.
We don't include support for the newer 2.x series as those only
support Python 3 which the codebase isn't ready for.
Bug: 866772
Test: `./pylint ...` still works & shows pylint-1.5
Test: `./pylint-1.5 ...` runs the v1.5 version
Test: `./pylint-1.8 ...` runs the v1.8 version
Change-Id: I7c47187493564db81e3eb28c6dbd09e6309ead46
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1752507
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Mike Frysinger <vapier@chromium.org>
Collect git traces and prompt the user to upload them
when filling a bug.
Change-Id: Ic89fc848fdbfd497bd220dd54abf4ba35f40c39a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1555513
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
This CL introduces ninjalog_uploader to autoninja for posix environment.
This is to collect build statistics from googler to find user side build performance bottleneck.
ninjalog_uploader_wrapper is used to notify user and manage small config of upload script.
Bug: 900161
Change-Id: I48ac8cd1d52f64e8fdafaec43636d2d79ef9040d
Reviewed-on: https://chromium-review.googlesource.com/c/1345255
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Shinya Kawanaka <shinyak@chromium.org>
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Re-land of bf1446791e.
Enable bundled Python CIPD packages in bleeding-edge mode. This
replaces the ZIP unpacking approach used before, and introduces
validation and management through the CIPD tool. The bleeding edge
version will only install if a sentinel file is present in the
"depot_tools" root; otherwise, default behavior will continue.
This method adds a upgrade and downgrade path to/from ZIP and
CIPD installations. This is done by rewriting the "win_tools.bat"
process:
1) Ensure that a bootstrap Python is present.
2) Use it to run "win_tools.py", which has the functionality of
"git_bootstrap.py" plus Python installation.
3) Run "win_tools.py" with appropriate flags.
Some tricks were employed to handle cases where there is an
already-running Python instance that uses the current Python
installation and executable. This happens on bots because the
system uses the same "depot_tools" checkout at multiple launch
layers. To this end, we use the "python.bat" as the "current Python"
authority and refrain from cleaning up old Python directories if their
"python.exe" binaries are currently in use.
We change the Git bleeding edge file to share the same
sentinel file as Python, ".bleeding_edge".
The new Python should have the same facilities as the original Python
bundle.
BUG=chromium:740171
TEST=local
Change-Id: I51ba6415c60b95c2aaba94b6e21bd9b3fc82f35d
Reviewed-on: https://chromium-review.googlesource.com/568524
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
the revert mechanism for the Python bundle patch relies on the resitual
"python_bin_reldir.txt" file existing. Apparently "bot_update" purges
this file as part of its depot_tools checkout, breaking the revert
mechanism. Whitelist it so that this stops happening.
TBR=tandrii@chromium.org
BUG=chromium:741650
TEST=None
Change-Id: Id6b7c966b6fa3f5084be5e1906b3e10d38ab8b6c
Reviewed-on: https://chromium-review.googlesource.com/568530
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
This reverts commit bf1446791e.
Reason for revert: broke win bots http://o/410053
Original change's description:
> [win_tools] Use bundled Python CIPD packages.
>
> Enable bundled Python CIPD packages in bleeding-edge mode. This
> replaces the ZIP unpacking approach used before, and introduces
> validation and management through the CIPD tool. The bleeding edge
> version will only install if a sentinel file is present in the
> "depot_tools" root; otherwise, default behavior will continue.
>
> This method adds a upgrade and downgrade path to/from ZIP and
> CIPD installations. This is done by rewriting the "win_tools.bat"
> process:
>
> 1) Ensure that a bootstrap Python is present.
> 2) Use it to run "win_tools.py", which has the functionality of
> "git_bootstrap.py" plus Python installation.
> 3) Run "win_tools.py" with appropriate flags.
>
> Some tricks were employed to handle cases where there is an
> already-running Python instance that uses the current Python
> installation and executable. This happens on bots because the
> system uses the same "depot_tools" checkout at multiple launch
> layers. To this end, we use the "python.bat" as the "current Python"
> authority and refrain from cleaning up old Python directories if their
> "python.exe" binaries are currently in use.
>
> We change the Git bleeding edge file to share the same
> sentinel file as Python, ".bleeding_edge".
>
> The new Python should have the same facilities as the original Python
> bundle.
>
> BUG=chromium:740171
> TEST=local
>
> Change-Id: I1b3b7d31d47d1a37a9dba9114d31681bec558736
> Reviewed-on: https://chromium-review.googlesource.com/563036
> Commit-Queue: Daniel Jacques <dnj@chromium.org>
> Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
TBR=iannucci@chromium.org,dnj@chromium.org
Change-Id: I84574a01bbad6596912e4aaa34f019d24720b638
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:740171
Reviewed-on: https://chromium-review.googlesource.com/567009
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Enable bundled Python CIPD packages in bleeding-edge mode. This
replaces the ZIP unpacking approach used before, and introduces
validation and management through the CIPD tool. The bleeding edge
version will only install if a sentinel file is present in the
"depot_tools" root; otherwise, default behavior will continue.
This method adds a upgrade and downgrade path to/from ZIP and
CIPD installations. This is done by rewriting the "win_tools.bat"
process:
1) Ensure that a bootstrap Python is present.
2) Use it to run "win_tools.py", which has the functionality of
"git_bootstrap.py" plus Python installation.
3) Run "win_tools.py" with appropriate flags.
Some tricks were employed to handle cases where there is an
already-running Python instance that uses the current Python
installation and executable. This happens on bots because the
system uses the same "depot_tools" checkout at multiple launch
layers. To this end, we use the "python.bat" as the "current Python"
authority and refrain from cleaning up old Python directories if their
"python.exe" binaries are currently in use.
We change the Git bleeding edge file to share the same
sentinel file as Python, ".bleeding_edge".
The new Python should have the same facilities as the original Python
bundle.
BUG=chromium:740171
TEST=local
Change-Id: I1b3b7d31d47d1a37a9dba9114d31681bec558736
Reviewed-on: https://chromium-review.googlesource.com/563036
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
This file is introduced via Puppet and will be migrated to from
".git_bleeding_edge". In the meantime, ignore it so Git doesn't
think it's an untracked modication.
TBR=iannucci@chromium.org
BUG=chromium:740171
TEST=None
Change-Id: Ia878996c3c32c49e1f7d80293bef55ed0a09dbab
Reviewed-on: https://chromium-review.googlesource.com/565888
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Enable a sentinel file to enable/disable "depot_tools" auto-updating.
This file, if present, indicates that automatic updating should not
occur.
Add a simple control script to enable/disable automatic updating.
BUG=chromium:727917
TEST=local
- Ran locally, --enable, --disable.
R=iannucci@chromium.org, maruel@chromium.org, nodir@chromium.org
Change-Id: Id30a17586248228849d046f79d7e0bc445d97f97
Reviewed-on: https://chromium-review.googlesource.com/521884
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Marc-Antoine Ruel <maruel@chromium.org>
This will help remove confusion when depot_tools' recipes.py
ends up in PATH.
BUG=699120
Change-Id: Id4c21b0cc6bb022ea2c21145abe76bebb0a8d9c1
Reviewed-on: https://chromium-review.googlesource.com/458430
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
This takes advantage of powershell on windows for a cleanish duplicate of the
posix version.
R=dnj@chromium.org, vadimsh@chromium.org
BUG=663843
Change-Id: Ib23a044ff912e3239b58848a26143eb6575826d5
Reviewed-on: https://chromium-review.googlesource.com/414228
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
This was breaking presubmit because the linked gae_ts_mon subdir was absent.
R=andybons@chromium.org, dsansome@chromium.org, dnj@chromium.org
BUG=608490
Review-Url: https://codereview.chromium.org/1959193002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@300511 0039d316-1c4b-4281-b951-d872f2087c98
* `git bash` helper now will either:
* launch an interactive bash prompt in the MinGW Terminal Emulator
* launch a non-interactive bash shell if arguments are provided
* `git bash` now includes python, python/Scripts and svn binaries in
the PATH.
* depot_tools' colorization now works in MinGW Terminal Emulator
* batch scripts are now regenerated if any of them is missing.
R=agable@chromium.org, dnj@chromium.org, mmoss@chromium.org
BUG=598956
Review URL: https://codereview.chromium.org/1847783002 .
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@299616 0039d316-1c4b-4281-b951-d872f2087c98
The vs_files directory is used for VS 2015 builds and needs to be in
.gitignore, along with vs2013_files.
The naming convention for timestamps is changed and .gitignore needs to
be updated for that.
Finally, the .pylint.d directory keeps being created and should be
ignored.
Review URL: https://codereview.chromium.org/1667853004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@298682 0039d316-1c4b-4281-b951-d872f2087c98
Reason for revert:
Exposed recipe engine bug with ambiguous names, causing roller blockage.
Original issue's description:
> Adds bot_update to depot_tools.
>
> This CL imports the bot_update script, along with the bot_update and gclient recipe modules from build. This should allow for recipes to run on swarming.
>
> Also moves the recipe stuff into the infra folder.
>
> bot_update has been modified. See full diff at https://paste.googleplex.com/4969207737352192
>
> TBR=phajdan.jr@chromium.org
>
> BUG=
>
> Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=298490
TBR=iannucci@chromium.org,phajdan.jr@chromium.org,martiniss@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=
Review URL: https://codereview.chromium.org/1651323002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@298505 0039d316-1c4b-4281-b951-d872f2087c98
This CL imports the bot_update script, along with the bot_update and gclient recipe modules from build. This should allow for recipes to run on swarming.
Also moves the recipe stuff into the infra folder.
bot_update has been modified. See full diff at https://paste.googleplex.com/4969207737352192TBR=phajdan.jr@chromium.org
BUG=
Review URL: https://codereview.chromium.org/1641363002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@298490 0039d316-1c4b-4281-b951-d872f2087c98
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 CL introduces new top level command for managing cached auth tokens:
$ depot-tools-auth login codereview.chromium.org
$ depot-tools-auth info codereview.chromium.org
$ depot-tools-auth logout codereview.chromium.org
All scripts that use rietveld.Rietveld internally should be able to use cached
credentials created by 'depot-tools-auth' subcommand. Also 'depot-tools-auth'
is the only way to run login flow. If some scripts stumbles over expired or
revoked token, it dies with the error, asking user to run
'depot-tools-auth login <hostname>'.
Password login is still default. OAuth2 can be enabled by passing --oauth2 to
all scripts.
R=maruel@chromium.org
BUG=356813
Review URL: https://codereview.chromium.org/1074673002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294764 0039d316-1c4b-4281-b951-d872f2087c98
This is for transitioning us out of the horribly outdated gsutil 3.4 thats
currently residing in depot_tools. This script:
1. Downloads GSUtil, pinned to a version (4.6 by default).
2. Executes GSUtil with the given parameters
3. (TODO) Runs the fallback GSUtil if #2 fails.
The transition plan is:
1. Set the fallback as default, making this script a no-op
2. Modify recipes (main consumer of gsutil) to pass in --force_version 4.6
3. Switch 4.6 as the default for gsutil.py
4. Make fallback failure a loud red failure
5. Remove depot_tools/third_party/gsutil
BUG=434422
Review URL: https://codereview.chromium.org/742173002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293320 0039d316-1c4b-4281-b951-d872f2087c98
And for now, defaults to Express.
Main changes:
- Valid hash becomes a set of hashes one for Pro, one for Express
- Include WDK to get an old copy of ATL as that doesn't come
with Express
BUG=323300
R=maruel@chromium.org
Review URL: https://codereview.chromium.org/148453008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@248622 0039d316-1c4b-4281-b951-d872f2087c98
Per comments in linked bug, this is simply moved from chromium. The
only new thing is hooking it into update_depot_tools.bat, and
updating a few paths in the scripts.
This is currently opt-in via "set DEPOT_TOOLS_WIN_TOOLCHAIN=1" but
that will be removed once it's ready for deployment.
R=iannucci@chromium.org, maruel@chromium.org
BUG=323300
Review URL: https://codereview.chromium.org/135933002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@244983 0039d316-1c4b-4281-b951-d872f2087c98
I hope this will fix the problem with presubmits trying to check
the coding styles inside python.
BUG=326975
Review URL: https://codereview.chromium.org/103543003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@239489 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
This broke git cl patch due to escaping. I tried removing the double quotes but
it didn't work out. Reverting in the meantime to unblock people until I figure
out a permanent way.
BUG=313552,241769
TBR=iannucci
Review URL: https://codereview.chromium.org/50293009
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@232112 0039d316-1c4b-4281-b951-d872f2087c98
Fix the git-* wrapper scripts, PRESUBMIT.py and .gitignore.
The previous python wrapping scripts assumed python_bin\python.exe. This CL
modifies the wrapping scripts to use python.bat. This requires some quoting
magic and explicitly defer to cmd.exe.
This may break some cases where double quotes are used as arguments. We can't do
miracles on Windows.
R=iannucci@chromium.org
BUG=
Review URL: https://codereview.chromium.org/50563008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@231888 0039d316-1c4b-4281-b951-d872f2087c98
This CL adds pylint (and its dependencies) to third_party. It plumbs them into presubmit_canned_checks, and exposes a command-line tool to access pylint.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10447014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@143016 0039d316-1c4b-4281-b951-d872f2087c98
These files are created when using msysgit and git-cl on Windows.
R=cmp@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10440016
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@138872 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