Switch to C++20 and update googleurl from Chromium upstream

Roll googleurl to the version 231d950fb5cecd889295c56244d77eb7b6ce50d1
from Thu Nov 16 17:52:53 2023 +0000

Change-Id: I474b633d0bc5f7b518b90bd27b470de0797e315c
73 files changed
tree: 343d9072b120def4ae116f4334ccfe1dede35d62
  1. base/
  2. build/
  3. build_config/
  4. polyfills/
  5. test/
  6. url/
  7. .bazelversion
  8. .gitignore
  9. AUTHORS
  10. copy.bara.sky
  11. LICENSE
  12. README.md
  13. WORKSPACE
README.md

googleurl

This is a copy of Chrome's URL parsing library, adapted to work with Bazel. It is meant to be used by QUICHE, but can be also used by other projects that use Bazel.

In order to be used successfully, C++20 or later and -fno-strict-aliasing compile flag are required.

For questions, contact proto-quic@chromium.org.

Update Instructions

In order to update this copy to the latest version of googleurl in Chromium, run the following commands in the root of the checkout:

  1. copybara copy.bara.sky import <path-to-chrome>/src --folder-dir .
  2. bazel test --cxxopt="-std=c++20" //... (C++20 is replacible with later C++ versions)
  3. Fix all of the compilation errors, potentially modifying the BUILD files and the polyfill headers in polyfill/ as appropriate.
  4. Check the new version into Git.