Commit Graph

9012 Commits (d895d01ac42f2556b5db9782b9b6fcb7415bce1b)
 

Author SHA1 Message Date
Bruce Dawson d895d01ac4 Report more issues as errors with presubmit --all
Change crrev.com/c/3788227 fixed one instance of errors being treated as
warnings when running "git cl presubmit" with the --upload option. This
is undesirable when testing "git cl presubmit" with --all or --files,
because it makes the errors harder to find. This change fixes four
more newly discovered instances of this behavior.

That is, this change makes it so that pylint issues and other serious
problems will be reported as errors when running:

  git cl presubmit --force --all --upload

This will make the pylint errors that this command triggers easier to
find and fix:

  git cl presubmit --force --upload --files mojo\public\tools\bindings\*.py

This change does _not_ turn cpplint warnings into errors, even though
they are errors when running non-upload presubmits. That is because
there are several directories that only run cpplint on upload and these
directories have many errors and there is no short-term path to changing
this.

Bug: 1309977
Change-Id: If49f820fc6894dcd1d9aaaf4d932b04f79922bc5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3791744
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Jesse McKenna <jessemckenna@google.com>
3 years ago
Quinten Yearsley faa1111bd0 Update lucicfg version 1.32.0 to 1.32.1
Includes this change:
85ebd26fca

This changes the generation of location_filters from location_regexp
in some cases.

Bug: 1171945
Change-Id: I233281adb2edd62771f47ccb941fa99ade628f75
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3799232
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Commit-Queue: Quinten Yearsley <qyearsley@chromium.org>
3 years ago
Brian Ryner 0c0a46bc40 New vpython to depot_tools.
Contains commits:
7979d954927af292bd5a57dd398a9791cc43099c Use the full paths of bundled interpreters.
ededcc9ee88d285f6c1ea6154b0c61da5cc6fd6a Provide a way to pass in the full python executable path.
376c57dec286030d5321b4aeffbbc26dd297d28c Add a test that inheritable file handles are passed through to Python.

Bug: 1318617
Change-Id: Ib163c6b8d88667dcec5afe975006586d13b2b2f4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3787826
Reviewed-by: Gavin Mak <gavinmak@google.com>
Commit-Queue: Brian Ryner <bryner@google.com>
3 years ago
Joanna Wang 96b57b9b59 [no-sync] bot_update: Remove previous no-sync exp changes and implement new one.
Bug: 1339472
Change-Id: I250dd72dd806d26ba6cbe213280ecd65fbc66123
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3789864
Commit-Queue: Joanna Wang <jojwang@chromium.org>
Reviewed-by: Gavin Mak <gavinmak@google.com>
3 years ago
Joanna Wang 0187079c09 [no-sync] Save previous values to files.
Tested locally with chromium/src.
going from 17s -> <1s

Bug: 1339472
Change-Id: I71b90dcd6a7934ea7c9722dd040d63645792078e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3791746
Commit-Queue: Joanna Wang <jojwang@chromium.org>
Reviewed-by: Gavin Mak <gavinmak@google.com>
3 years ago
recipe-roller 5fb99f65c0 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8807297222984475361

recipe_engine:
dd96320d16
  dd96320 (gerb@google.com)
      resultdb: Ensure Artifacts.contents is binary

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic50d6d209d8ee3d482a13aa2ca46182a06622307
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3793318
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
Allen Xie cec7295ab0 depot_tools: Roll rdb
Include crrev.com/c/3779863 via 0fbf0c3c84

Regenerate cipd_manifest.versions using `cipd ensure-file-resolve -ensure-file ./cipd_manifest.txt`

rdb rollout example: crrev.com/c/3627691

BUG=b:1337692
TEST=No test

Change-Id: I8407e55ed6054131e091a494ff7c016a346f0b5a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3789454
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Chan Li <chanli@chromium.org>
Commit-Queue: Zhihui Xie <zhihuixie@google.com>
Auto-Submit: Zhihui Xie <zhihuixie@google.com>
3 years ago
Arthur Milchior 08cd5fec1f Clarify documentation from `gclient recurse`
Applying a command on a value usually mean to call `cmd value`. Hence
it seemed important to me to clarify that the current working
directory is changed.

Tested:
* Entered `gclient recurse --help` and checked the new message appear.
* Entered both examples in the terminal and checked the output.

Thanks to sdefresne for his help understanding recurse.

Change-Id: I729efc2014ed3cf90112cc89875a283d58ce8af0
Fixed: 1345272
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3769966
Reviewed-by: Arthur Milchior <arthurmilchior@google.com>
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
Commit-Queue: Arthur Milchior <arthurmilchior@google.com>
3 years ago
recipe-roller 3e2f92a3ef Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8807367053469350273

recipe_engine:
0cfa0e6e5b
  0cfa0e6 (mohrr@google.com)
      [autoroll] Update to be Python 3-compatible

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ice762f8df9e6dba516011bc01f002cdc5057b604
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3792804
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
Vadim Shtayura 24f28f2f7c [lucicfg] Update v1.31.5 => v1.32.0.
Changes:
dd9f484..60808fd/lucicfg

BUG=1347252
R=iannucci@chromium.org, ddoman@chromium.org

Change-Id: I92b7f30d4589b116b3c2799a1df8e0d9a55eb356
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3790164
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
3 years ago
Joanna Wang a84a16b863 [no-sync] Set _should_sync and add flag to control if the experiment should be enabled.
Bug:1339472
Change-Id: I19abca1f4319a89cc461935a83d136c8870944dc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3721601
Reviewed-by: Gavin Mak <gavinmak@google.com>
Commit-Queue: Joanna Wang <jojwang@chromium.org>
3 years ago
Bruce Dawson 882f1e2a9a Treat UnitTests failures as presubmit --all errors
When upload presubmits are being run then GetUnitTests would treat
errors as warnings, so as to not stop developers from uploading their
changes. This makes sense when patches are being manually uploaded, but
doesn't make sense when running a "git cl presubmit --all --upload" bot.
This behavior caused nine failures (but not all failures) to be missed
when doing these tests.

This change makes these failures errors when testing with --all
--upload, but leaves them as warnings for other --upload purposes.

Bug: 1309977
Change-Id: Ibf149475e4cdee10bbbbc86fd0ab668b7a679089
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3788227
Reviewed-by: Jesse McKenna <jessemckenna@google.com>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
3 years ago
recipe-roller 5a99ae5312 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8807640106088174017

recipe_engine:
cfdb92cc69~..4b7ba01b8ce8d4052feff1408188ef7932351b91
  cfdb92c (akashmukherjee@google.com)
      [snoopy] Uprev client provenance reporter tool.
  4b7ba01 (olivernewman@google.com)
      [analyze] Fix py3 incompatibility

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic101705474072d9a238219194b0a6836832be4cc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3784103
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
recipe-roller 509a640e7d Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8807647656305646913

recipe_engine:
5db4d2294a
  5db4d22 (mohrr@google.com)
      [lint] Fix Py3 'Disallowed import' failures

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I4b4de2cb018388ba3e68f93de2995dad772a6326
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3784098
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
Mike Frysinger 647cfe6bf1 pylint: drop unversioned program
We want people to use specific pylint-$VER wrappers now to get stable
behavior and make it easier to roll updates.  This one is just a link
to pylint-1.5 which uses Python 2.  Anyone still linting Python 2 code
should be using pylint-1.5 explicitly.

Let's drop this to get it out of $PATH for developers who want pylint
from their host system to "just work".

Change-Id: I14411db7cddd0ecce40a370366c21f496166fe1d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3780302
Commit-Queue: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Brian Ryner <bryner@google.com>
3 years ago
recipe-roller 2cd48234f1 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8807898056175051073

recipe_engine:
8f92d0c510
  8f92d0c (iannucci@chromium.org)
      [python3] Allow repos to be python3-only.

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I700d91111f462a371849459e4638f080692cd003
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3781435
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
Joanna Wang 77da3f2347 Fix flaky testRecursedepsCustomdepsOverride.
Fixed: 1345847
Change-Id: I3d4ea30210f0bf7cb5ace5095d06ca459a7039b5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3783155
Reviewed-by: Gavin Mak <gavinmak@google.com>
Commit-Queue: Joanna Wang <jojwang@chromium.org>
Auto-Submit: Joanna Wang <jojwang@chromium.org>
3 years ago
recipe-roller f353dc3e88 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8807914413282070673

recipe_engine:
5226416ff4
  5226416 (iannucci@chromium.org)
      [legacy_annotations] Only merge properties if legacy_global_nam...

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I9de30ac3c727d55826bcb029f8cf44465d4228c2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3781431
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
Thiago Perrotta 36bf3a82fb yapf: remove unused `re` import
Bug: None
Change-Id: I4c161b05ab5c743cf8d6fddbf40af759f186eccc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3782487
Reviewed-by: Gavin Mak <gavinmak@google.com>
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
Commit-Queue: Thiago Perrotta <tperrotta@chromium.org>
Auto-Submit: Thiago Perrotta <tperrotta@chromium.org>
3 years ago
Thiago Perrotta debf6402b3 Add a fetch config for devtools (internal).
This change has precedent, c.f. 04d16a561 for infra_internal.

R=yangguo

Bug: None
Change-Id: I089b114bcfe110ad138284bb71802cfc5d7f157d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3782488
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
Commit-Queue: Thiago Perrotta <tperrotta@chromium.org>
3 years ago
Thiago Perrotta fcb6206f78 Add a fetch config for chrome (internal).
Although many things are private, the existence of Chrome is not.
This change has precedent, c.f. 04d16a561 for infra_internal.

Bug: None
Change-Id: I6fb9719a44c2e5f5cc492bacb442d9554b0d4480
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3779641
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
Commit-Queue: Thiago Perrotta <tperrotta@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Aravind Vasudevan <aravindvasudev@google.com>
3 years ago
Bruce Dawson 0ba2fd429d Get full paths in presubmit traceback stacks
When investigating presubmits it is sometimes handy to get stacks in
order to understand where a presubmit is being called from. In one
recent investigation to see why CheckOwners was being called multiple
times the traceback just said:

   File "c:\src\depot_tools\presubmit_support.py", line 1646, in _run_check_function
    result = eval(function_name + '(*__args)', context)
   File "<string>", line 1, in <module>
   File "PRESUBMIT.py", line 251, in CheckChangeOnUpload

That's not very helpful because Chromium has 288 files named
PRESUBMIT.py. This change just uses the actual presubmit path as the
filename parameter to compile instead of a hard-coded string, which
means that "PRESUBMIT.py" is replaced with the full path in the
tracebacks.

Bug: 1309977
Change-Id: Icacfae4399444cb24e9cfb07475b90099e2e18d3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3776955
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Gavin Mak <gavinmak@google.com>
3 years ago
recipe-roller 39e33e6eca Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8808073586393338977

recipe_engine:
65f334b082
  65f334b (iannucci@chromium.org)
      [legacy_annotation] Allow recipes to specify legacy mode.

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I61b1d17e983ea5b3042eea4cdf863b645cbc638f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3777903
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
recipe-roller 6967a96b04 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8808080509653586833

recipe_engine:
e57338e3da
  e57338e (iannucci@chromium.org)
      [luciexe] Update engine to emit build streams with MergeBuild.

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I49645bd087ca2c378f837efe26f03fa13760c564
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3777902
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
Thiago Perrotta 16d08f04e3 git-cl: parse baseurl arguments eagerly
Currently, `git cl help baseurl` fails as it tries to execute the
subcommand, completely bypassing the help.

Parse the arguments early so that the help command runs cleanly for
baseurl.

Fixed: 1345909
Change-Id: Icad7aca6cdc7c9938e91a421cb72e08433a30fd4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3776942
Auto-Submit: Thiago Perrotta <tperrotta@chromium.org>
Reviewed-by: Gavin Mak <gavinmak@google.com>
Commit-Queue: Gavin Mak <gavinmak@google.com>
3 years ago
Takuto Ikuta 7298625c85 recipes: use python3 for git_footers.py
Bug: 1327534
Recipe-Nontrivial-Roll: chromiumos
Recipe-Nontrivial-Roll: build
Recipe-Nontrivial-Roll: build_limited
Recipe-Nontrivial-Roll: infra
Change-Id: I5c84648eef8930f51d3809692d1cb3ffa46db6f9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3775846
Commit-Queue: Gavin Mak <gavinmak@google.com>
Reviewed-by: Gavin Mak <gavinmak@google.com>
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
3 years ago
Joanna Wang f3edc50445 [no-sync] Store previous sync commit in memory.
- Instead of expecting the caller to run `rev-parse HEAD` before
  calling gclient, we can just store the latest commit on disk
  - this gets around the problem where gclient might git reset to the
     base checkout after applying patch-refs, so calling rev-parse
     before calling gclient sync might not actually return the latest
     commit of the last sync.
- also moving os.environ[PREVIOUS_CUSTOM_VARS] setting to earlier when
  we only have the solutions in self.dependencies because all other
  dependencies inherit from the solutions so there's no point storing
  custom_vars for the rest.

Bug: 1339472
Change-Id: I6a3570f09153bd8087bbe6bdab7ece4949856aae
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3750491
Reviewed-by: Gavin Mak <gavinmak@google.com>
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
Commit-Queue: Joanna Wang <jojwang@chromium.org>
3 years ago
Chan Li 904ca29621 [depot_tools] roll led
To include change https://chromium-review.googlesource.com/c/infra/luci/luci-go/+/3761317

Bug: 1340318
Change-Id: Ib95bb8a8405695e4f4a93c6c954ca03e5d29d73c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3774444
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Chan Li <chanli@chromium.org>
3 years ago
Quinten Yearsley 164952a179 Revert "Update lucicfg from version 1.31.5 to 1.31.6"
This reverts commit f05fcf7051.

Reason for revert: Reason for revert: I realized it's not yet safe to support directly specifying only location_filters because legacy CQ still triggers tryjobs and doesn't handle location_filters.

Original change's description:
> Update lucicfg from version 1.31.5 to 1.31.6
>
> Changes:
>   - Allow direct use of location_filters in luci.cq_tryjob_verifier(...)
>
> Bug: 1171945
> Change-Id: I0aca6dd01976c66f106906958bc63a81dbd5e6a5
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3770293
> Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
> Commit-Queue: Quinten Yearsley <qyearsley@chromium.org>

Bug: 1171945
Change-Id: Ic7bea4b2ae73413361f8c239e0d6b823c1e7fd8b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3774528
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
Auto-Submit: Quinten Yearsley <qyearsley@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
3 years ago
Chan Li 9585c93796 roll dirmd
To include changes:
- https://chromium-review.googlesource.com/c/infra/infra/+/3763941
- https://chromium-review.googlesource.com/c/infra/infra/+/3756684
- https://chromium-review.googlesource.com/c/infra/infra/+/3756685

Bug: 1343600, 1343601
Change-Id: Id18673ce7355875a207f52315383c039713f7aec
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3773731
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Auto-Submit: Chan Li <chanli@chromium.org>
3 years ago
recipe-roller eec7342360 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8808178026285733873

recipe_engine:
a53cb2cf41
  a53cb2c (iannucci@chromium.org)
      [manual_roll] Allow manual_roll to work even when protoc breaks.

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: Id479cbfd324701c2dfda18c61936cbe4ef5919dc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3774517
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
recipe-roller 56101e1c90 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8808180542829350001

recipe_engine:
0ade4d7c8f
  0ade4d7 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from 46e5b6417320 to 9fbd373abf97

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I63357086edbf39b7b95e39d19270766b85c4ab5b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3774516
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
Takuto Ikuta 90191b14c2 recipes: use vpython3 in gerrit recipe modules
This is to prevent failure like
https://ci.chromium.org/ui/p/chromium/builders/try/mac-rel/1057655/overview

Bug: 1327534
Recipe-Nontrivial-Roll: build
Recipe-Nontrivial-Roll: build_limited
Recipe-Nontrivial-Roll: chrome_release
Recipe-Nontrivial-Roll: chromiumos
Recipe-Nontrivial-Roll: infra
Change-Id: I922dddbd23eae0a02a95e020722b5edd1186ef77
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3771540
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
3 years ago
Quinten Yearsley f05fcf7051 Update lucicfg from version 1.31.5 to 1.31.6
Changes:
  - Allow direct use of location_filters in luci.cq_tryjob_verifier(...)

Bug: 1171945
Change-Id: I0aca6dd01976c66f106906958bc63a81dbd5e6a5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3770293
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Commit-Queue: Quinten Yearsley <qyearsley@chromium.org>
3 years ago
Lei Zhang 26460d8175 Fix typos in PDFium fetch config.
- The extra comma at the end of the url string unintentionally turns
  the url into a list.
- The project name should be "pdfium".

Change-Id: I8944d59d06751716c512030145d29aac10cf13fd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3770290
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
Commit-Queue: Lei Zhang <thestig@chromium.org>
3 years ago
Gavin Mak ea11cc31c5 Remove apply_patch_on_gclient property
This property isn't used anymore.

Bug: 891917
Change-Id: I005f5b320cb33afddb1d3272f3f626542996bb62
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3766100
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
Commit-Queue: Gavin Mak <gavinmak@google.com>
Reviewed-by: Joanna Wang <jojwang@chromium.org>
3 years ago
Quinten Yearsley 8168f76753 Update lucicfg from version 1.31.4 to 1.31.5
Changes:
  - Fix a bug in location_filter generation which affects cases where
    location_regexp matches gerrit host.

Bug: 1171945
Change-Id: Icd4d724b91e0de4652803d4223beaa290d37b810
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3763791
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Commit-Queue: Quinten Yearsley <qyearsley@chromium.org>
3 years ago
recipe-roller 7307e19d13 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8808545442368508161

recipe_engine:
428eeaebf2
  428eeae (iannucci@chromium.org)
      Update buildbucket protos.

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: Iafabacb36f16643a716979b718093986efc137cd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3766137
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
Fumitoshi Ukai 26bc518eae Roll out goma client VERSION=250
Bug: b/237221299
Change-Id: Ic35b9e7e46a91c656c79c249db4ab38d1250dd17
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3758931
Reviewed-by: Takuto Ikuta <tikuta@chromium.org>
Commit-Queue: Fumitoshi Ukai <ukai@google.com>
3 years ago
recipe-roller 398a1e81b5 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8808707136866269553

recipe_engine:
f2ff469965
  f2ff469 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from 32fe5c8d8532 to a0ba80649473

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3949e02ed6016d46daac9f10ad7f76edbca9d715
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3760949
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
Brian Ryner c8fadda5a4 New vpython to depot_tools.
This release contains commits:
e74f8f68337ee619d400e0b6607cbe9df37f78ee Fix so that Python inherits file handles again on Windows.
059bcab0fb866cf8b9bc25b5845beeb8ee90fe3d Bundle the python interpreter on Mac.
e2552b1a6ebed6651aceb5a7ab4639c0d69c0c0e Resolve symlinks when finding the vpython executable.
d5fc7bca58e458258f8c3b8a25ecd070c77581ac Roll infra/go/src/go.chromium.org/luci/ ee2c632ce..82d549a81 (1 commit)
5d9b6ecf87cdfb928e1112d2838d26bc7ede2b48 Roll infra/go/src/go.chromium.org/luci/ 0480658b5..0535bf685 (5 commits)
3076679301d2b9b040bce2c871a63ddc49273c41 [environ] Rename Get => Lookup, GetEmpty => Get.
37f02f9f91aa3918b195931fbcf02750290d0571 Search bundled python paths before looking in PATH.
a4136aa4d9e8c359bcf234fcd6ae026fb5b92925 [go] Format all files.
8349853d4517895a2c5838a00aea3e368ce3f865 [vpython] Make TestLoadForScript pass on OSX when running locally.
d94b5704d8ad151a0306974a1a949d8057c44a18 Revert "Add support for bootstrapping the Python interpreter package."
6dacee57fbe6b5bc5a2fca23b5b7d8ccfea54ee7 Revert "Pass packages to vpython to bootstrap."
03e0afedc841bad5fed8024c4b7fd38d332701ad Pass packages to vpython to bootstrap.
fa3d6effe8906e93944bf54ea6978adcd022f75c go generate all
b5eee61d0153295f3efb2e67b319066c2306ac5b Add support for bootstrapping the Python interpreter package.
cc5fb5e4934445a0a5206bfc324ca486c1285415 [vpython] Skip flaky test.
c04b64ca743703ebbfc064ec5b5c35d3bc378fa4 Add vpython3-only cipd packages.
f14d61370f1d7302a797feb2adc3a2f2449130d1 Remove the VENVOmitUseWheel field now that nothing uses it.
7c739ae11aa23bc37601e6923add677600ae1329 Remove support for old pip versions in pep425 tag probing.
51e3f0a01454d2e18b36de28c7e0ca2f6127ea2b Stop setting the unused VENVOmitUseWheel option.
e0e35a4e2227fb3429f3483c4719b6370eca7e1e Hardcode the venv OmitUseWheel option to true.

Bug: 1318617, 1340653
Change-Id: Ifb94c81492edfa98e1b59fc82e6d43678b82d776
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3756933
Reviewed-by: Gavin Mak <gavinmak@google.com>
Commit-Queue: Brian Ryner <bryner@google.com>
3 years ago
Ryan Heise 968a19bcd0 Update Pinpoint CLI for Octopus
Bug:1159092
Change-Id: I626b7faa21f073030594a82fd98f510177e2f388
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3760945
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Auto-Submit: Ryan Heise <heiserya@google.com>
Commit-Queue: Ryan Heise <heiserya@google.com>
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
3 years ago
Lei Zhang b4a8efbe1d Teach "fetch pdfium" about the checkout_configuration property.
Allow someone interested in checking out a subset of the PDFium source
to do so via:

fetch pdfium --checkout_configuration=small

Along the way, also add support for the target_os and target_os_only
properties, which are carried over from the Chromium fetch config.

Change-Id: I11153fe7cb828c748055328ab2b60224b665ae84
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3758798
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
3 years ago
Bruce Dawson 6757d46962 Rearrange presubmit timing message for easier scanning
Some presubmits can be take orders of magnitude longer than others, but
finding these presubmits is difficult if the time is printed at the end
of the output lines. Moving the time to the start, with enough alignment
for all plausible times, makes scanning the output easy.

Bug: 1309977
Change-Id: I9ba1a599e9825801e1128844a39c7ccafe046f91
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3744130
Reviewed-by: Gavin Mak <gavinmak@google.com>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
3 years ago
Gavin Mak c3ac73ebfa Remove 'Fetching' check in testTrackTag
This check has been failing for a while, and blocks submission of other
depot_tools CLs.

Change-Id: I0f61ff1657c8cc01d0004ed5df9e37465b73c237
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3759629
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
Commit-Queue: Gavin Mak <gavinmak@google.com>
3 years ago
Gavin Mak d22bf60721 Add number of presubmit errors/warnings in header
Headers currently have the format: `** Presubmit ${name} **`. Make these
more helpful by including the number of total errors there are.

Bug: 1341987
Change-Id: Ib41a133c31568d4264d73c14350f0bbd9590356a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3756169
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Commit-Queue: Gavin Mak <gavinmak@google.com>
3 years ago
Jack Neus 1601b3eba0 git_cache: wrap "git remote show" call in retries
BUG=b:236709670
TEST=none

Change-Id: I575dd82260acdbeef3c4c7607e2c2ac8020a44c9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3749247
Commit-Queue: Jack Neus <jackneus@google.com>
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
Reviewed-by: Gavin Mak <gavinmak@google.com>
3 years ago
Richard Wang bb07d9eb0b Remove use_rbe gn arg support
As it is removed in https://crrev.com/c/3744967, this cleans up the check for a no longer existing arg.

Bug: chromium:1247781
Change-Id: Ic7288cf34e63cd52087e2b51f1b4c816bbbc0363
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3745201
Reviewed-by: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Commit-Queue: Richard Wang <richardwa@google.com>
3 years ago
recipe-roller 78c53d11a0 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8809798072144355457

recipe_engine:
bb01260dc9
  bb01260 (alexschulze@chromium.org)
      Revert "[file] Add fail_silently to copy and copytree"

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I8a9a0b99dc04b341eda782dce6b1f8b272159f75
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3741122
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
3 years ago
Bruce Dawson 6e70e86d6f Fix presubmit_support.py to handle CRLF in PRESUBMIT.py
PRESUBMIT.py files should not have CRLF line endings, but if a git repo
is misconfigured this may happen and it is important for the presubmits
to run properly so that they can report on this issue.

In particular, the regex which detects USE_PYTHON3 = True did not work
with CRLF line endings.

It was supposed to handle these, and there is even a comment saying:

  # Accept CRLF presubmit script.

However the line after that uses 'rU' as the file open mode in order to
try to get universal newlines, but FileRead ignores the file mode. So,
the replace method is now used instead.

Bug: angleproject:7475, angleproject:4905
Change-Id: I38321176feca089a5796b24756b371709d852243
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3739269
Reviewed-by: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
3 years ago