Commit Graph

6530 Commits (41be80f6159c6c91914dbfc4dcd6b59d183f9f3b)
 

Author SHA1 Message Date
recipe-roller 41be80f615 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/97ead225e3da23cbd18605e0f4cec0417412da64 isolated: roll isolated (tikuta@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Icf7453d63b380f64d03fec04e43a81eeceb5094b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1900598
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
6 years ago
Vadim Shtayura d39c0496a1 [lucicfg] Update from v1.11.5 to v1.11.6.
Contains a fix for crbug.com/1021520.

R=nodir@chromium.org, tandrii@chromium.org
BUG=1021520

Change-Id: I7f0ac984f9740613b34adf45a2f3d8013923c7ab
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1900490
Auto-Submit: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
6 years ago
recipe-roller 2150a694c7 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/482cd39e373ee9af9c4726064a1a62efcc8bfb2a [buildbucket] Don't accept project=None in schedule_request (olivernewman@google.com)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ie312133f20be523ac0b6f463348ad21a8256d87d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1900323
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
6 years ago
Vadim Shtayura 0e2a4d97fd [lucicfg] Update from v1.11.4 to v1.11.5.
Adds `strutil.template(...)` function.

R=nodir@chromium.org, tandrii@chromium.org

Change-Id: Id1a160c02bb63647cbc5215347d6024bc5d14ad1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1899569
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Auto-Submit: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
6 years ago
danakj c41f72cf44 Allow the bot_update api to not fetch tags from the git server.
There are 3 layers modified, starting from the bottom up:

1. git_cache.py populate

Now takes a --no-fetch-tags option. If specified, the cache will not
fetch updated tags from the server by passing --no-tags to git fetch.
This prevents the server from sending all the tag refs. In chromium
this prevents significant time bottlenecks dealing with 10k+ tags.

2. bot_update.py

bot_update has to deal with multiple git repos, it has the root repo
that is checked out through git-cache, as well as repos synched via
DEPS and gclient.

The script now takes a --no_fetch_tags option. If specified,
the git-cache populate call will include --no-fetch-tags. Otherwise, it
won't. So this controls (for chromium) if fetches to the src.git server
are passed --no-tags.

3. bot_update/api.py

This is the entry point for recipes and also has to deal with multiple
git repos. The behaviour at this point is not changed from the default.
A |no_fetch_tags| parameter is added to ensure_checkout() that defaults
to False.


This CL is a refactor with no intended behavior change.

The next step will be to change the chromium build repo to pass True
for ensure_checkout(no_fetch_tags) on chromium trybots.

This represents solution #2 in
https://docs.google.com/document/d/1hDIunJjjfpmr50y3YnZ4o3aq1NZF4gJa1TS0p7AIL64/edit#

Bug: 1019824
Change-Id: I935430603299daa9e301a95a5184c0ce486fd912
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1894352
Reviewed-by: Aaron Gable <agable@chromium.org>
Reviewed-by: Erik Chen <erikchen@chromium.org>
Commit-Queue: danakj <danakj@chromium.org>
Auto-Submit: danakj <danakj@chromium.org>
6 years ago
Edward Lesmes f6a2232b48 Revert "git-cl: Fix some python3 compatibility errors."
This reverts commit c87ed60623.

Reason for revert: 
Causes a regressions for CL descriptions on Windows

Original change's description:
> git-cl: Fix some python3 compatibility errors.
> 
> Also, fix bug in git cl status where the 'updated' field was used to compare messages, even though
> it doesn't exist (see [1]). This CL modifies it to use 'date', which does exist.
> 
> [1] https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#change-message-info
> 
> Bug: 1002209
> Change-Id: I5a5e1193b8502c3ad35d94808ea178cad7f44ac6
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1891259
> Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
> Reviewed-by: Anthony Polito <apolito@google.com>

TBR=ehmaldonado@chromium.org,apolito@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 1002209
Change-Id: I004f202b12c6b99cb6b24cb12a14fba7898569e2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1898547
Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Edward Lemur 288e358f3f owners_finder: Fix flaky tests.
Sorting owners by score is non-deterministic, so sort by
name too.

Bug: 1009814
Change-Id: I93a9370a5852634b4bbb2768b9ebbb5b866348e6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1891665
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
Reviewed-by: Anthony Polito <apolito@google.com>
6 years ago
Edward Lesmes 94d6f48ba1 gsutil: Decode output from subprocess.
Bug: 1007872, 1009819
Change-Id: Icb24badc0429012dc66912d7d35e03a456512787
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1894354
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
recipe-roller 79d9e4b850 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/e9ca19a0946a226ba6011bfadcc19a13340268dd Improve docstrings for step module. (gbeaty@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I09a43f8540b9e545a38203ea497ff2e24387bb65
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1895977
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
6 years ago
Robert Iannucci c39a77883d [gclient] Reset to parent commit with rebase_patch_ref=False instead of master.
This makes no-rebase-patch-ref correctly populate `file_list` and work with
`git diff --cached` (i.e. they will show only the files affected by the
patchset).

Previously gclient would `reset --soft` to master. Because we didn't rebase
on top of master with `no-rebase-patch-ref`, it has roughly nothing to do
with the patchref we just checked out.

R=gbeaty@chromium.org, ltina@google.com, tandrii@chromium.org

Context:
Tricium recipes sometimes need to use no-rebase-patch-ref in order to get
accurate linenumbers in the diff (i.e. so that the tricium comments will
actually line up correctly with the patchset the user uploaded); Tricium
recipes also need to accurately get the diff file list in this mode.
Change-Id: I5f3c95cd4958cf407a83b96c238b8c55c452ac81
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1895041
Auto-Submit: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@google.com>
Commit-Queue: Andrii Shyshkalov <tandrii@google.com>
6 years ago
danakj ab7bec3434 Make find_owners_test.py pass consistently.
The finder.owners_queue contains a set of owners but they appear in an
arbitrary order on each invocation of the test. The current method of
assertEqual() with a list fails randomly because of the ordering being
different.

Example: https://ci.chromium.org/p/infra/builders/try/Depot%20Tools%20Presubmit%20(win)/b8897976148721436512

This changes comparisons of owners_queue to use an assertEqualSets()
which does a comparison that is order-independent.

Change-Id: Ia827795af283dadeb56f76ae0cf14fa4ad7e9eeb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1895699
Reviewed-by: Aaron Gable <agable@chromium.org>
Reviewed-by: Garrett Beaty <gbeaty@chromium.org>
Commit-Queue: danakj <danakj@chromium.org>
6 years ago
recipe-roller 540178c754 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/afc73d4e075d241d52b01b744e73111ee3f0c47c [buildbucket] Support custom field masks (smut@google.com)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I10e814d8debb98801cd2b62f77f698da903b165f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1894402
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
6 years ago
Edward Lemur c87ed60623 git-cl: Fix some python3 compatibility errors.
Also, fix bug in git cl status where the 'updated' field was used to compare messages, even though
it doesn't exist (see [1]). This CL modifies it to use 'date', which does exist.

[1] https://gerrit-review.googlesource.com/Documentation/rest-api-changes.html#change-message-info

Bug: 1002209
Change-Id: I5a5e1193b8502c3ad35d94808ea178cad7f44ac6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1891259
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
Reviewed-by: Anthony Polito <apolito@google.com>
6 years ago
Edward Lemur b983024505 presubmit_support: Fix tests on Python 3.
The problems on crbug.com/1017367 should have been fixed by crrev.com/c/1880013

Bug: 1009814
Change-Id: Ia98304ca983b4e7e293fedb9df1fee589de58ba9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1887714
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Edward Lemur 14705d8ce0 depot_tools: Make owners tests run on Python 3
Bug: 1009814
Change-Id: Ifb073dc0b54a3291f1f874866da3c0fbbeab2db9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1888443
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Edward Lemur 9bb7b96c4d git-rebase-update: Make tests run on Python 3.
Bug: 1009809
Change-Id: I47c9a468b2922248b823ebae5e71863a698c30f0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1889166
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Edward Lemur 48cda092cd gerrit_util: Remove RemoveReviewers.
It's not used and uses basestring, which is not supported in Python 3.

Bug: 1002209
Change-Id: I9df900076978636c4a5c75e84432a8cc02d46909
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1891654
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Edward Lemur c9144527d9 depot_tools: Don't use basestring in scm.CaptureStatus.
basestring doesn't exist in Python 3. scm.Capture status doesn't need to support strings either.

Bug: 1002209
Change-Id: Ie9edfdfd09b789bfaace038a6ad8f3a7da344bc4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1890925
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
recipe-roller 0f99337018 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/5f5aea33b7cac05bfc7f7b68332de60ddd143be3 Roll swarming go client (dcheng@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I7ba97dd288a975b9eba69b7b66137a9e221fbe60
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1891548
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
6 years ago
Haiyang Pan 7a77984331 Revert "Fetch the input commit ref when both ref and id are specified."
This reverts commit 512f92b731.

Reason for revert: bot_update is having infra failure on ci bots.
For example https://ci.chromium.org/p/chromium/builders/ci/Closure%20Compilation%20Linux/249684.

Original change's description:
> Fetch the input commit ref when both ref and id are specified.
>
> This causes --refs refs/head/master to be added to bot_update
> calls when the input build message contains a commit id and the
> refs/head/master ref. This is an effective no-op.
>
> Bug: 922150
> Change-Id: I119d9b3cede727713a0b66bff83b5ee4e1848790
> Recipe-Nontrivial-Roll: build
> Recipe-Nontrivial-Roll: infra
> Recipe-Nontrivial-Roll: build_limited_scripts_slave
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1884457
> Commit-Queue: Garrett Beaty <gbeaty@chromium.org>
> Auto-Submit: Garrett Beaty <gbeaty@chromium.org>
> Reviewed-by: Andrii Shyshkalov <tandrii@google.com>

TBR=tandrii@google.com,gbeaty@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 922150
Change-Id: Ie9275c21827688f59449f052c768452a8652e139
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1891000
Commit-Queue: Haiyang Pan <hypan@google.com>
Reviewed-by: Haiyang Pan <hypan@google.com>
6 years ago
John Budorick 48823c2854 Revert "Add more git tracing."
This reverts commit 1e4dbf3f64.

Reason for revert: unlikely but possible cause of http://shortn/_sgL4PqICVB

Original change's description:
> Add more git tracing.
> 
> This CL adds more perf tracing to `git fetch` from bot_update.py and
> git_cache.py
> 
> Change-Id: I9b69c60b6c81fc0c5f23f82fcc889b4d45a27556
> Recipe-Nontrivial-Roll: build_limited_scripts_slave
> Recipe-Nontrivial-Roll: build
> Recipe-Nontrivial-Roll: infra
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1888433
> Reviewed-by: Andrii Shyshkalov <tandrii@google.com>
> Commit-Queue: Erik Chen <erikchen@chromium.org>
> Auto-Submit: Erik Chen <erikchen@chromium.org>

TBR=danakj@chromium.org,tandrii@google.com,erikchen@chromium.org

Change-Id: I03b33bf1532212f83a6b89b1de32fafb6b8aafc4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1891001
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: John Budorick <jbudorick@chromium.org>
6 years ago
Edward Lemur b43d98bf64 auth: Fix has_luci_context_local_auth.
Checking for LUCI_CONTEXT is not enough. To use local auth, the
stored config must be valid and have a default account id.

Bug: 1018069
Change-Id: I5bbe880cc217a06ae0e1ae8d7e00ef09502af6a9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1888211
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Fumitoshi Ukai 27bd4e420d Reland "put goma client in depot_tools"
This reverts commit a0aed87f71.

Reason for revert: install goma client without update_hook

update_hook would disrupt current users, so start without update_hook,
which means goma cient in depot_tools user might need to
restart compiler_proxy manually when updated.
 https://docs.google.com/document/d/1pnwfkU6Rd9dRtQC0sg2vATmyRbkYWhnNUTD5k1PddC0/edit#

Original change's description:
> Revert "put goma client in depot_tools"
>
> This reverts commit 7778035801.
>
> Reason for revert: AttributeError: 'GomaEnvPosix' object has no attribute 'RestartCompilerProxy'
>
> Original change's description:
> > put goma client in depot_tools
> >
> > install goma client cipd package in depot_tools.
> >
> > should not use $MYPATH/goma_ctl in cipd_bin_setup
> > since $MYPATH/goma_ctl uses cipd_bin_setup in itself,
> > so causing recursive calls.
> > invoke python to run .cipd/goma_ctl.py in cipd_bin_setup
> > instead.
> >
> > Bug: b/77663154
> > Change-Id: I9f82c766a886a2acfb899e3594e5f05a7b7bc75a
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1866350
> > Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org>
> > Reviewed-by: Dirk Pranke <dpranke@chromium.org>
> > Commit-Queue: Fumitoshi Ukai <ukai@chromium.org>
>
> TBR=sque@chromium.org,ukai@chromium.org,yyanagisawa@google.com,vadimsh@chromium.org,dpranke@chromium.org,tikuta@chromium.org,ehmaldonado@chromium.org,yekuang@google.com
>
> Change-Id: Ie050dfb524dd885634c31be829d733613e80aece
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: b/77663154
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1872129
> Reviewed-by: Fumitoshi Ukai <ukai@chromium.org>
> Commit-Queue: Fumitoshi Ukai <ukai@chromium.org>

TBR=sque@chromium.org,ukai@chromium.org,yyanagisawa@google.com,vadimsh@chromium.org,dpranke@chromium.org,tikuta@chromium.org,ehmaldonado@chromium.org,yekuang@google.com


Bug: b/77663154
Change-Id: I8bb51631e4418ff63953099814bdb464128eb279
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1875982
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Fumitoshi Ukai <ukai@chromium.org>
6 years ago
Erik Chen 1e4dbf3f64 Add more git tracing.
This CL adds more perf tracing to `git fetch` from bot_update.py and
git_cache.py

Change-Id: I9b69c60b6c81fc0c5f23f82fcc889b4d45a27556
Recipe-Nontrivial-Roll: build_limited_scripts_slave
Recipe-Nontrivial-Roll: build
Recipe-Nontrivial-Roll: infra
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1888433
Reviewed-by: Andrii Shyshkalov <tandrii@google.com>
Commit-Queue: Erik Chen <erikchen@chromium.org>
Auto-Submit: Erik Chen <erikchen@chromium.org>
6 years ago
recipe-roller ca4196d002 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/fa1af6362953b8c5c24e3082b0081e688f2be32d [swarming] Add tags to swarming task request. (ihuh@google.com)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I7d13586e7ba49d89ac141dfa5319969ec02f69d8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1888717
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
6 years ago
Garrett Beaty 512f92b731 Fetch the input commit ref when both ref and id are specified.
This causes --refs refs/head/master to be added to bot_update
calls when the input build message contains a commit id and the
refs/head/master ref. This is an effective no-op.

Bug: 922150
Change-Id: I119d9b3cede727713a0b66bff83b5ee4e1848790
Recipe-Nontrivial-Roll: build
Recipe-Nontrivial-Roll: infra
Recipe-Nontrivial-Roll: build_limited_scripts_slave
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1884457
Commit-Queue: Garrett Beaty <gbeaty@chromium.org>
Auto-Submit: Garrett Beaty <gbeaty@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@google.com>
6 years ago
Haiyang Pan 5eb757a742 Skip non-text files for CheckDoNotSubmitInFiles
Bug: 1017286
Change-Id: Ibb9f2c94eb87024a3d9b9f334ffa5f8e2429b368
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1881377
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Haiyang Pan <hypan@google.com>
6 years ago
Erik Chen fea4a25482 Roll depot_tools git to v2.23.0 [bleeding edge/canary]
This picks up tracing v2 to better track git performance.

Bug: 1018953
Change-Id: I13616280b534ad80eb1904ef5012c42dadb45ca4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1884704
Auto-Submit: Erik Chen <erikchen@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
6 years ago
Edward Lemur 4ba192e7a9 Reland "gerrit_util: Refactor ReadHttpResponse and add more tests."
This is a reland of 5bfa3ae88d

Replace cStringIO with StringIO and add tests.

Original change's description:
> gerrit_util: Refactor ReadHttpResponse and add more tests.
>
> Bug: 1016601
> Change-Id: Ie6afc5b1ea29888b0bf40bdb39b2b492d2d0494c
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1880014
> Reviewed-by: Anthony Polito <apolito@google.com>
> Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>

Bug: 1016601
Change-Id: I0c83a83202169b6a1acc60bdf6f4cd00eac6e2a6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1884461
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Edward Lesmes 27eb01c355 Revert "gerrit_util: Refactor ReadHttpResponse and add more tests."
This reverts commit 5bfa3ae88d.

Reason for revert:
Fails when fetching status for cl 1708084 

Original change's description:
> gerrit_util: Refactor ReadHttpResponse and add more tests.
> 
> Bug: 1016601
> Change-Id: Ie6afc5b1ea29888b0bf40bdb39b2b492d2d0494c
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1880014
> Reviewed-by: Anthony Polito <apolito@google.com>
> Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>

TBR=ehmaldonado@chromium.org,apolito@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 1016601
Change-Id: I84bc378ed5f58e911e0900b1a5dbea70dc06ade1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1883677
Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Erik Chen ebba8d75bf Add more tracing to git cache.
Change-Id: Iad21c3fa60f563f479ad0a0cadcfd8c1beb2fcc0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1881910
Auto-Submit: Erik Chen <erikchen@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@google.com>
Reviewed-by: Andrii Shyshkalov <tandrii@google.com>
6 years ago
Edward Lesmes e79107e01b gclient_scm: Fix tests on windows
Change-Id: I649bee199e52ecbd66467cfaf850a7a57e2eedf6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1874506
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Edward Lemur 5bfa3ae88d gerrit_util: Refactor ReadHttpResponse and add more tests.
Bug: 1016601
Change-Id: Ie6afc5b1ea29888b0bf40bdb39b2b492d2d0494c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1880014
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Edward Lemur 419c92f1bc gclient_utils: Make FileRead always return a Unicode string.
Previously, it returned bytes if the file did not contain valid Unicode data,
and a Unicode string otherwise.
It is confusing to reason about such a function, and no current caller needs
bytes data AFAICT, so make FileRead always return Unicode strings.

Bug: 1009814
Change-Id: I89dd1935e5d4fcaf9af71585b85bda6c47695950
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1880013
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Edward Lemur b964662972 presubmit_support: Set python_executable to vpython.
PRESUBMIT.py scripts might execute commands directly instead of using
CallCommand, so that the conversion to vpython is bypassed, resulting in
errors.

See e.g.
https://cs.chromium.org/chromium/src/third_party/blink/web_tests/PRESUBMIT.py?l=79

Bug: 1017410
Change-Id: If1943fe46cd2fc1e37b89aee14865429f884332b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1879493
Reviewed-by: Anthony Polito <apolito@google.com>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Yura Yaroshevich 4861444124 Specify open file encoding explicitly.
This fixes an error on some Windows installations:
```
fetch webrtc
Traceback (most recent call last):
  File "googlesource.com\depot_tools\bootstrap\bootstrap.py", line 365, in <module>
    sys.exit(main(sys.argv[1:]))
  File "googlesource.com\depot_tools\bootstrap\bootstrap.py", line 324, in main
    git_postprocess(template, os.path.join(bootstrap_dir, 'git'))
  File "googlesource.com\depot_tools\bootstrap\bootstrap.py", line 264, in git_postprocess
    maybe_copy(
  File "googlesource.com\depot_tools\bootstrap\bootstrap.py", line 108, in maybe_copy
    content = fd.read()
  File "googlesource.com\depot_tools\bootstrap-3_8_0b1_chromium_1_bin\python3\bin\lib\encodings\cp1251.py", line 23, in decode
    return codecs.charmap_decode(input,self.errors,decoding_table)[0]

UnicodeDecodeError: 'charmap' codec can't decode byte 0x98 in position 18734: character maps to <undefined>
```
Bug: None
Change-Id: I43cf7b51879ac9a66c33566536dcdcb4c93e0fc0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1881227
Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
6 years ago
Vadim Shtayura 86244d6913 [lucicfg] Update from v1.8.6 to v1.11.4.
Most notable public API change is that '../' is no longer allowed in
lucicfg.emit(dest=...).

R=tandrii@chromium.org

Change-Id: Iff162c6e1cbd0c7fcbbafc8b2f56eb827660aa93
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1880301
Auto-Submit: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@google.com>
Commit-Queue: Andrii Shyshkalov <tandrii@google.com>
6 years ago
recipe-roller 654b2fd42d Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/1485ed120ff670c0b32905d28c824e7af6f32aa6 [cipd] Add CIPD UI link to register() presentation (joshuaseaton@google.com)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I2c1e1bfab975e69329128e830fb4aaf22c422d3c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1880299
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
6 years ago
recipe-roller a92c6381c0 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/64c4a05dc93199fc5a8aca78f9427b09bd43776c [file] Add read text to presentation (joshuaseaton@google.com)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3e8f53f28862189e86df9b590d5e7a35e6973ed3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1880297
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
6 years ago
recipe-roller 319bfeaaca Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/acfec855b3a03ad8c28df551c3ea7a6bbee75967 [file][cipd] Run YAPF (joshuaseaton@google.com)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: If247077c00e153423332b6f1bf06101bd0f6e36b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1880295
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
6 years ago
Edward Lesmes a51a06699f presubmit: Run tests on Windows.
Change-Id: Ia6844cd6da6a9c68ed3d83144bd032933ab69fcf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1875110
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
Reviewed-by: Anthony Polito <apolito@google.com>
6 years ago
Jamie Madill dc4d19eeb6 git-cl: Add 'format-full-by-default' setting.
Lets the client repository make 'git cl format' use the
'--full' option by default. This solves issues when using less
common clang-format options that don't behave well with small
diffs. For example, AlignConsecutiveAssignments.

This is a replacement for the 'diff-lines-of-context' setting.

Bug: angleproject:4003
Change-Id: I81dc3b4992a7420e7235da88ec78e51ec4c0d24f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1879148
Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
6 years ago
Edward Lemur de9e3cabe6 presubmit: Make ThreadPool surface exceptions on CallCommand.
Exceptions other than OSError are not surfaced.
This caused errors like this to be printed, but not block presubmit,
allowing bugs to sneak in.

Exception in thread Thread-8:
Traceback (most recent call last):
  File "C:\b\s\w\ir\cipd_bin_packages\cpython\bin\Lib\threading.py", line 801, in __bootstrap_inner
    self.run()
  File "C:\b\s\w\ir\cipd_bin_packages\cpython\bin\Lib\threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)
  File "C:\b\s\w\ir\kitchen-checkout\depot_tools\presubmit_support.py", line 199, in _WorkerFn
    result = self.CallCommand(test)
  File "C:\b\s\w\ir\kitchen-checkout\depot_tools\presubmit_support.py", line 170, in CallCommand
    p = subprocess.Popen(cmd, **test.kwargs)
  File "C:\b\s\w\ir\kitchen-checkout\depot_tools\subprocess2.py", line 143, in __init__
    super(Popen, self).__init__(args, **kwargs)
  File "C:\b\s\w\ir\cipd_bin_packages\cpython\bin\Lib\subprocess.py", line 390, in __init__
    errread, errwrite)
  File "C:\b\s\w\ir\cipd_bin_packages\cpython\bin\Lib\subprocess.py", line 640, in _execute_child
    startupinfo)
TypeError: environment can only contain strings

https://logs.chromium.org/logs/infra/buildbucket/cr-buildbucket.appspot.com/8898840708364523888/+/steps/presubmit/0/stdout

Change-Id: I34e65d8c0050eed7ed26fd782e0a5dc8616f30f7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1877051
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
Reviewed-by: Anthony Polito <apolito@google.com>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
6 years ago
recipe-roller b1a9672432 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/70031fbf3a131685d9d0f0de3675cb946368743e recipe module buildbucket: migrate to protos for inputs. (tandrii@google.com)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I9a365934b6255068cea7c5e9d80f767a0c2e888d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1879499
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
6 years ago
Takuto Ikuta 1dcbd5c1d7 presubmit: remove reserved field from InputProperties
This is followup for crrev.com/c/1877747

Bug: 1002153
Change-Id: I7f5e6f9be9e69ecfbaad75f531d5027ef20a3966
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1878847
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
6 years ago
Ben Pastene 1906f405ba gclient: When deleting untracked files, gracefully handle symlinks that point to dirs.
eg: https://logs.chromium.org/logs/chrome/buildbucket/cr-buildbucket.appspot.com/8898770399362199536/+/steps/bot_update/0/stdout

bot_update ends up clobbering the checkout in that build due to:
"Error: 161> Called rmtree(/b/s/w/ir/cache/builder/src/......) in non-directory"

That's because we're trying to rmtree a file. This will instead unlink
it.

Bug: 991276
Change-Id: Icffa18c27ddbaced20fb3410a91ca8fcc849d5e1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1877727
Reviewed-by: Andrii Shyshkalov <tandrii@google.com>
Commit-Queue: Ben Pastene <bpastene@chromium.org>
6 years ago
Jamie Madill 3671a6a217 Revert "git-cl: Add diff lines of context setting."
This reverts commit 812ac228e3.

Reason for revert: The fix was not sufficient to solve the git cl
format difference between 'git cl format' and 'git cl format --full'.
Looks like we'll need a different solution.

Original change's description:
> git-cl: Add diff lines of context setting.
> 
> Clients using some Clang-Format options can run into bugs when using
> 0 lines of context. AlignConsecutiveAssignments in particular is picky
> and behaves differently with 0 lines of context.
> 
> This behaviour lead to 'git cl format' behaving differently from
> 'git cl format --full'. That could also break presubmit format checks.
> Using >0 lines of context for 'git diff' fixes the inconsistency.
> 
> Add a setting 'DIFF_LINES_OF_CONTEXT' that can be controlled via
> codereview.settings. Defaults to zero to preserve the old behaviour.
> The setting allows the client to control the number of lines of context
> to use when running 'git cl format'.
> 
> Bug: angleproject:4003
> Change-Id: Ied2ebf23df4c41ba19bfbd5b8ddf526b56a20b31
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1864309
> Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>

TBR=agable@chromium.org,ehmaldonado@chromium.org,jmadill@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: angleproject:4003
Change-Id: Ib6b70969509a1e5446922d488f11d13a0c59c536
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1877003
Reviewed-by: Aaron Gable <agable@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
6 years ago
Takuto Ikuta ad557c41da presubmit: deprecate vpython_spec_path
This property is not used anymore.

Bug: 1002153
Change-Id: I19a503a73ec00e9121b2d9a2c130824a974d307a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1877747
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@google.com>
6 years ago
Mike Frysinger 76c2e50d3b simplify the chromite wrappers
The support/ dir has only ever been used to host a single CrOS file.
We can move that to `cros` (which is the primary tool in the CrOS
world), and have the few other wrapped programs point to that.

Bug: None
Change-Id: I3ba3cc7375d357d62fb464e1b6dc37e73bc83cb5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1876639
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
Commit-Queue: Mike Frysinger <vapier@chromium.org>
6 years ago
Andrii Shyshkalov 5cc95b8ccf vpython: e317c7d2c17d4c3460ee37524dfce4e1dee4306a.
Includes
  2019-10-23 tandrii@google.com vpython: more logging when incomplete
  virtualenv dir can't be removed.

R=iannucci

Bug: 869227
Change-Id: Ie06fc55322ac5a467a8ac78c7f8b6ad42bcf0aa9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1877553
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Auto-Submit: Andrii Shyshkalov <tandrii@google.com>
6 years ago