commit | ac93e6d567f6b905e9de97c3524056c00c773a97 | [log] [tgz] |
---|---|---|
author | Dirk Pranke <dpranke@google.com> | Mon Jun 29 18:42:26 2020 +0000 |
committer | LUCI CQ <infra-scoped@luci-project-accounts.iam.gserviceaccount.com> | Mon Jun 29 18:42:26 2020 +0000 |
tree | f7576b5dfa3043b82d09d3854808a434cb448bbc | |
parent | c7eed83f9616452f94af0affe2fad6fe571fbfe3 [diff] |
Revert "Add a Str() function to gclient for use in DEPS files." This reverts commit c7eed83f9616452f94af0affe2fad6fe571fbfe3. Reason for revert: I'm getting reports of internal iOS checkouts being broken. Reverting while I reproduce / debug it. Original change's description: > Add a Str() function to gclient for use in DEPS files. > > gclient's existing functionality for handling variables is > ambiguous: the value of a variable can either be a string literal > or an expression fragment. The implementation is required to > parse a value as an expression, and, if it is legal, treat it > as an expression instead of a literal. This means that > > gclient_gn_args_file = 'src/build/args.gni' > gclient_gn_args = ['xcode_version'] > vars = { > 'xcode_version': 'xcode-12' > } > > would cause a problem because gclient would try to parse the > variable as an expression, and 'xcode' would not be defined. > > This patch adds a workaround for this, where you can instead > use the Str() function to explicitly tell gclient to treat the > value as a string and not a potential expression. > > The above example would be changed to: > > gclient_gn_args_file = 'src/build/args.gni' > gclient_gn_args = ['xcode_version'] > vars = { > 'xcode_version': Str('xcode-12') > } > > The variable may still be used in every context where it was legal > to be used before. > > Bug: 1099242 > > Change-Id: Ic2a17eea5f7098113bdba0557fe29e1a931a74b8 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2268406 > Reviewed-by: Ben Pastene <bpastene@chromium.org> > Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> > Commit-Queue: Dirk Pranke <dpranke@google.com> TBR=thakis@chromium.org,dpranke@google.com,ehmaldonado@chromium.org,bpastene@chromium.org,apolito@google.com,infra-scoped@luci-project-accounts.iam.gserviceaccount.com Change-Id: Iac2b003f32acdbca15a19f821b61423e34b3466c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 1099242 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2273978 Reviewed-by: Dirk Pranke <dpranke@google.com> Commit-Queue: Dirk Pranke <dpranke@google.com>
Tools for working with Chromium development. It requires python 2.7 or 3.8 for python 3 support.
The most important tools are:
fetch
: A gclient
wrapper to checkout a project. Use fetch --help
for more details.gclient
: A meta-checkout tool. Think repo or git submodules, except that it support OS-specific rules, e.g. do not checkout Windows only dependencies when checking out for Android. Use gclient help
for more details and README.gclient.md.git cl
: A code review tool to interact with Rietveld or Gerrit. Use git cl help
for more details and README.git-cl.md.roll-dep
: A gclient dependency management tool to submit a dep roll, updating a dependency to a newer revision.There are a lot of git utilities included.
depot_tools
updates itself automatically when running gclient
tool. To disable auto update, set the environment variable DEPOT_TOOLS_UPDATE=0
.
To update package manually, run update_depot_tools.bat
on Windows, or ./update_depot_tools
on Linux or Mac.
On Windows only, running gclient
will install git
and python
.
To contribute change for review:
git new-branch <somename> # Hack git add . git commit -a -m "Fixes goat teleporting" # find reviewers git cl owners git log -- <yourfiles> # Request a review. git cl upload -r reviewer1@chromium.org,reviewer2@chromium.org --send-mail # Edit change description if needed. git cl desc # If change is approved, flag it to be committed. git cl set-commit # If change needs more work. git rebase-update ... git cl upload -t "Fixes goat teleporter destination to be Australia"
See also open bugs, open reviews, forum or report problems.
Until 2018, our cpplint.py
was a copy of the upstream version at https://github.com/google/styleguide/tree/gh-pages/cpplint. Unfortunately, that repository is not maintained any more. If you want to update cpplint.py
in depot_tools
, just upload a patch to do so. We will figure out a long-term strategy via issue https://crbug.com/916550.
Note that the cpplint.py
here is also used by the Tricium analyzer, so if the cpplint.py here changes, we should also update the copy used there.