Roll protobuf to 29.3

* Roll protobuf and write new build targets by hand since the existing
  script no longer works (gen_chromium_file_lists.py)

  + Tweaks to upstream listed in README.chromium

* Roll protobuf-javascript to newest version since the existing
  version is incompatible with newer protobuf (and the newest version
  of protobuf-javascript is incompatible with older protobuf, so this
  can't be done separately)

* Roll libprotobuf-mutator to newest version, reasoning: ditto

* Update some Chromium code (other, preparatory updates were possible
  prior to the role as they were compatible with either version of
  protobuf)

* GRPC is *not* rolled but has some minor hacks added to avoid
  referencing non-existent files and symbols. These hacks wouldn't
  stand up to linking, but the relevant code is not actually used.
  GRPC is not rolled because there are seemingly substantial changes
  needed to both its build and its code, some of which are not
  related to protobuf, but the fact that GRPC is months to years out
  of date (depending on what commit we attempt to roll it to). For
  example: use of GCC extensions.

* Protobuf uses absl for logging now and therefore its `LogSilencer`
  is removed. Lots of fuzzers are using `LogSilencer`, but it's not
  clear how crucial that is. `LogSilencer` usage is simply removed
  for now.

NO_IFTTT=upstream code

No-Presubmit: true
Bug: 328417294
Change-Id: I6707629bf7194741e35902d88fd2345fa1373f38
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6209174
Reviewed-by: Rohit Rao <rohitrao@chromium.org>
Commit-Queue: Evan Stade <estade@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Adam Rice <ricea@chromium.org>
Reviewed-by: Joe Downing <joedow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1415339}
NOKEYCHECK=True
GitOrigin-RevId: 690731bbec48ecb50e99275eedabcf15fb9dd278
1 file changed
tree: fd640fa0d2dae0ae5006078a9909e1d62a5c2091
  1. build/
  2. chrome/
  3. components/
  4. google_internal/
  5. intents/
  6. net/
  7. public/
  8. testing/
  9. third_party/
  10. tools/
  11. web/
  12. web_view/
  13. .swift-format
  14. BUILD.gn
  15. COMMON_METADATA
  16. DEPS
  17. DIR_METADATA
  18. features.gni
  19. OWNERS
  20. PRESUBMIT.py
  21. PRESUBMIT_test.py
  22. README.md
README.md

This directory holds code related to Chrome for iOS. See this document for a description of the structure underneath this directory.