Merge remote-tracking branch 'cros/upstream/main'

Related changes:
70ef0c25 Rewrite most `Foo* field_` pointer fields to `raw_ptr<Foo> field_`.
701da4c2 cbor: Add allow_and_canonicalize_out_of_order_keys flag
6ab897e9 Remove unused "base/macros.h" in components/
fb311d5b Replace DISALLOW_COPY_AND_ASSIGN in components/
a063c268 Swap from base/stl_util.h to cxx17_backports.h in components/ .cc files.
9d6c30f5 Remove unneeded base/stl_util.h includes in components/ and ui/.
0f45c2c3 components: Replace base::Optional and friends with absl counterparts
9567ac5b Delete unused STL includes from components/ headers.
8370d502 [base] Remove base::StringPiece::as_string() usages.
9ebffe85 Added DIR_METADATA files to a batch of subfolders in //components/c...
         and also removed duplicated metadata from OWNERS files
da40ce6b Remove/replace unnecessary includes of logging.h (components/)

BUG=chromium:1271599
BUG=b:204698553
BUG=b:198296022
TEST=cros_run_unit_tests --board=${BOARD} --packages cbor

Change-Id: I8d2601b151ac76edef08c9813ffc79ae22c228ce
tree: 5f252ce043818f255f51d29ee37b91e86c64d69e
  1. reader_fuzzer_corpus/
  2. BUILD.gn
  3. cbor_export.h
  4. constants.h
  5. diagnostic_writer.cc
  6. diagnostic_writer.h
  7. diagnostic_writer_unittest.cc
  8. DIR_METADATA
  9. OWNERS
  10. reader.cc
  11. reader.h
  12. reader_fuzzer.cc
  13. reader_unittest.cc
  14. README.md
  15. values.cc
  16. values.h
  17. values_unittest.cc
  18. writer.cc
  19. writer.h
  20. writer_unittest.cc
README.md

cbor: Concise Binary Object Representation

This library is a partial implementation of the RFC 7049 Concise Binary Object Representation standard.

The source code was fetched from chromium/src (https://chromium.googlesource.com/chromium/src/+/242df8b64d2a0ab5f057d1d4c76ea8537fdbb789) in order to avoid code duplication.

The cros/upstream/master branch is a mirror of the components/cbor directory from upstream. It is automatically updated to reflect the latest changes in upstream.

How to update the source

To pull in updates from chromium/src, do the following:

  • git checkout -b upstream cros/upstream/master
  • git checkout master
  • git merge --allow-unrelated-histories upstream
    • Expect merge conflicts, because of the difference in header paths.
    • OWNERS should use the version from master.
    • BUILD.gn should mostly use the version from master, unless the upstream changes the files to be built.
    • The #include paths should use the version from master (without “components/”). This should be the majority of the merge conflicts.
    • In the commit message of the merge, list the changes from upstream that are merged, with original commit hash from upstream.
    • Check the changes introduced by your merge by doing a diff against the commit before the merge. The difference should be the same as the changes in the upstream.