Reland "Reapply "Roll protobuf to 29.3""

This is a reland of commit b9b854bf906c3093a056b75631a19cacd8240708

Original change's description:
> Reapply "Roll protobuf to 29.3"
>
> This reverts commit 7f3d30b9cf97c8a5bc1db73bf6d94e24b8bc9cfd
> with fixes for:
> * Chromecast
> * CFI
> * siso
> * a couple other issues fixed separately from this CL
>
> ===========================
> Original issue description:
> ===========================
>
> 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
>
> Cq-Include-Trybots: luci.chromium.try:linux-cast-x64-rel
> No-Presubmit: true
> Bug: 328417294
> Change-Id: Ie27ad5e64ebe6edadebcf40fa869dd7b83cb97fb
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6228766
> Owners-Override: Nico Weber <thakis@chromium.org>
> Reviewed-by: Nico Weber <thakis@chromium.org>
> Commit-Queue: Evan Stade <estade@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1416848}

Bug: 328417294
Change-Id: Iba40a3c6168631797af2c755c5c29db4c835210a
Cq-Include-Trybots: luci.chromium.try:linux-cast-x64-rel
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6243314
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Greg Thompson <grt@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Greg Thompson <grt@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1417187}
NOKEYCHECK=True
GitOrigin-RevId: 9e2b15057cab7fd0dc6ce951dc532e0af8cd3914
1 file changed
tree: 290fcec39716cd4693a40adad36023099f5e344f
  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.