commit | 29527fb6f77bdf5f2393f2327fec590c6deab27f | [log] [tgz] |
---|---|---|
author | Tommy Nyquist <nyquist@chromium.org> | Wed Jun 29 19:29:44 2022 |
committer | Chromium LUCI CQ <chromium-scoped@luci-project-accounts.iam.gserviceaccount.com> | Wed Jun 29 19:29:44 2022 |
tree | 34063aaa18fac9ba5d0db5f1e121a620f9745df1 | |
parent | 36737fc8a80d0601b185a0cabf3f7ab056af3a8f [diff] |
Reland "Update to protobuf 3.20.0" This reverts commit d8c5cddc77e0e0aed839a336cefbb9aa914ec7d7. With the new release, we can retire some patches: - 0003-remove-static-initializers.patch: Upstream protobuf no longer has variables like Status::OK but constructor functions like OkStatus(), so there is no more static initializer. https://github.com/protocolbuffers/protobuf/commit/3a7bd9c236fda465c16b90567f6b8706915da6cb - 0004-fix-integer-types-and-shared-library-exports.patch: Half of this patch is no longer needed. Upstream protobuf no longer has PROTOBUF_ULONGLONG, etc. - 0009-uninline-arenastring.patch: No longer applies, function in question seems to be gone. - 0023-fix-delimited-message-parsing.patch: Merged upstream - 0024-fix-thread-priority-on-protobuf-initialization.patch: No longer needed. Protobuf now uses constant initialization. See cl/351672714 We can also remove the instructions to copy in third_party/six. protobuf no longer uses it. Also adds some new patches to fix a static initializer and other compile failures. See go/protobuf-init-chrome (internal) for details on that saga. In addition adds a patch to clean up descriptor allocation code that incorrectly tried to work around a CFI check. This CL should probably followed up with an update to 3.20.1, which was released in the time it took to put this together. However, we cannot update to 21.1 (new version scheme) for now because upstream moved the JavaScript compiler to a new repo and haven't yet made a release from that repo. davidben@chromium.org was the one that prepared this roll, and this reland CL just adds a minor workaround for the CFI issue. Original CL: https://crrev.com/c/3594212 Revert CL: https://crrev.com/c/3718597 Bug: 1294200 Change-Id: If5fdc6e716684f914acf93dce0f2b81f94e3d89b Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3733827 Reviewed-by: Peter Kasting <pkasting@chromium.org> Reviewed-by: Robbie Iannucci <iannucci@chromium.org> Commit-Queue: Peter Kasting <pkasting@chromium.org> Cr-Commit-Position: refs/heads/main@{#1019285}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone
! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.