)]}'
{
  "commit": "90ceeb021579cdec2c1dd663a5f993e7161f5082",
  "tree": "9cb6425cae90bd67b76183112992f5b93de5995d",
  "parents": [
    "37a91dc5d0db90cb763873c987a2da62b8a94aa0"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Tue Jan 23 14:25:39 2024 -0500"
  },
  "committer": {
    "name": "Boringssl LUCI CQ",
    "email": "boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Jan 23 21:30:05 2024 +0000"
  },
  "message": "Make der::Input a little closer to Span\n\nThis adds a bunch of methods from Span, with the end goal of eventually\nmaking it into a typedef for Span\u003cconst uint8_t\u003e. In doing so, this\nmakes Input implicitly convertible to Span\u003cconst uint8_t\u003e and every\nother span\u003cconst uint8_t\u003e type. For the other direction, I\u0027ve removed\nthe \u0027explicit\u0027 marker on the Input(Span) constructor.\n\nI\u0027ve kept the older spellings around to avoid forcing us to fix it all\nat once, but after this rolls in to various places, the next things to\ndo would be:\n\n1. Go through downstream code and switch them to using the span-like\n   spellings. Better yet, have them just pass to their own span type.\n\n2. Since Input \u003c-\u003e Span converts implicitly, we can freely start making\n   our APIs take Span instead of Input. Also start cleaning up a bunch\n   of now unnecessary explicit der::Input(foo) calls now that, like\n   span, it\u0027s implicit.\n\n3. Decide what to do with the char vs uint8_t disaster. I\u0027m thinking we\n   add free functions to convert between the two.\n\nIn doing so, I\u0027ve also switched some easy places to use more span-y\nAPIs.\n\nBug: 661\nChange-Id: I731bb110a4fdadd99cb2894e48f016f0b19110ac\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/65668\nAuto-Submit: David Benjamin \u003cdavidben@google.com\u003e\nReviewed-by: Bob Beck \u003cbbe@google.com\u003e\nReviewed-by: Matt Mueller \u003cmattm@google.com\u003e\nCommit-Queue: David Benjamin \u003cdavidben@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "044ada1ab9bc8adaaab8d188e392a194fc949853",
      "old_mode": 33188,
      "old_path": "include/openssl/span.h",
      "new_id": "dd66f886b35052599d17d6e5ca78e81fef826841",
      "new_mode": 33188,
      "new_path": "include/openssl/span.h"
    },
    {
      "type": "modify",
      "old_id": "8d0ab42f780c384681f0be8ac53a49cfb29a8e22",
      "old_mode": 33188,
      "old_path": "pki/cert_error_params.cc",
      "new_id": "5919c1c0035376fc479b2e78fc7092d5918a10be",
      "new_mode": 33188,
      "new_path": "pki/cert_error_params.cc"
    },
    {
      "type": "modify",
      "old_id": "a881c11e8605519fdaac2006189b6117505ab20e",
      "old_mode": 33188,
      "old_path": "pki/general_names.cc",
      "new_id": "9c7ccc68f3dcae6fe7a9cf1d8c4b62d8e81f0338",
      "new_mode": 33188,
      "new_path": "pki/general_names.cc"
    },
    {
      "type": "modify",
      "old_id": "12ee450e7b8c8c15e7f2a635f0d60fd973318b62",
      "old_mode": 33188,
      "old_path": "pki/input.cc",
      "new_id": "e8c6656a1195a82ac2b2a25ff9a883fd4ee1e22d",
      "new_mode": 33188,
      "new_path": "pki/input.cc"
    },
    {
      "type": "modify",
      "old_id": "2f61a33eab3f2ebd425b4b2a58e2bf0d7f2ad9a3",
      "old_mode": 33188,
      "old_path": "pki/input.h",
      "new_id": "8d006a9a196a8044b1a20454ab4231dae9a6af87",
      "new_mode": 33188,
      "new_path": "pki/input.h"
    },
    {
      "type": "modify",
      "old_id": "42a7cdba29cb2c71847cd1c76cefe5158377d325",
      "old_mode": 33188,
      "old_path": "pki/input_unittest.cc",
      "new_id": "655a8087a10c669176119ddf40746fec535335cf",
      "new_mode": 33188,
      "new_path": "pki/input_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "1983633569fc545a2576c23c951c9c67743ff4f5",
      "old_mode": 33188,
      "old_path": "pki/ip_util.cc",
      "new_id": "663669ee1f8ec251400167e00a037fb27975d10a",
      "new_mode": 33188,
      "new_path": "pki/ip_util.cc"
    },
    {
      "type": "modify",
      "old_id": "6de5b50c871106729ef16027fa529479211b3b8f",
      "old_mode": 33188,
      "old_path": "pki/name_constraints.cc",
      "new_id": "6885fd4e364f14ba1be16a040c8ec581b1c9f566",
      "new_mode": 33188,
      "new_path": "pki/name_constraints.cc"
    },
    {
      "type": "modify",
      "old_id": "54afab5418e1582cb1fd859f9ba61f60d0a0288b",
      "old_mode": 33188,
      "old_path": "pki/ocsp.cc",
      "new_id": "cdbf2024c2cb69f856ca8fa8800c5d8db3d906aa",
      "new_mode": 33188,
      "new_path": "pki/ocsp.cc"
    },
    {
      "type": "modify",
      "old_id": "8335f2fa236ca4192548af429429a825342dbdf9",
      "old_mode": 33188,
      "old_path": "pki/parse_certificate.cc",
      "new_id": "19c7b261ba9b1891f35bb9295706881fde3a6abe",
      "new_mode": 33188,
      "new_path": "pki/parse_certificate.cc"
    },
    {
      "type": "modify",
      "old_id": "443bc093da772b9d39e43f9a567c7ca963fac55a",
      "old_mode": 33188,
      "old_path": "pki/parse_name.cc",
      "new_id": "3768d52e65a41124e26aed5dd1393fce9ea7467f",
      "new_mode": 33188,
      "new_path": "pki/parse_name.cc"
    },
    {
      "type": "modify",
      "old_id": "cc7a0724c65249ebda5832215bda12ef82ed197b",
      "old_mode": 33188,
      "old_path": "pki/parse_values.cc",
      "new_id": "b0d945350ef0824e291a17e887bb487e10c0f5f9",
      "new_mode": 33188,
      "new_path": "pki/parse_values.cc"
    },
    {
      "type": "modify",
      "old_id": "ee9e481b4f340c6a8da9ec5df6f3ffbe6dbbd8a8",
      "old_mode": 33188,
      "old_path": "pki/parse_values_unittest.cc",
      "new_id": "e29b4b9ef77796eacbc46be58f6ebf560db36e52",
      "new_mode": 33188,
      "new_path": "pki/parse_values_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "0e8146cd4a47daebf709dbd1b367ec838ed142cc",
      "old_mode": 33188,
      "old_path": "pki/parsed_certificate.cc",
      "new_id": "ab05ed910072c82d23b6327012b6efffe9c0104e",
      "new_mode": 33188,
      "new_path": "pki/parsed_certificate.cc"
    },
    {
      "type": "modify",
      "old_id": "33cd07808fab7a8e374cfb8df79045e81f934ed8",
      "old_mode": 33188,
      "old_path": "pki/parsed_certificate_unittest.cc",
      "new_id": "2b4d35266f4d226fed7aab3bd532bb1c8b137d5d",
      "new_mode": 33188,
      "new_path": "pki/parsed_certificate_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "327c2391be6a2c4cb4f18a1e3593da6e70030f37",
      "old_mode": 33188,
      "old_path": "pki/parser.cc",
      "new_id": "0fa377a99727c626f9a09bc940737ae1b014399e",
      "new_mode": 33188,
      "new_path": "pki/parser.cc"
    },
    {
      "type": "modify",
      "old_id": "e510a9343c98d072609fd6fcc7aae21b2a3e0b52",
      "old_mode": 33188,
      "old_path": "pki/parser_unittest.cc",
      "new_id": "e813bfd7e4ce48866acdddc775bd0758b656621a",
      "new_mode": 33188,
      "new_path": "pki/parser_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "6aa42e7235a513999560ee9adcd9d7a0426b3924",
      "old_mode": 33188,
      "old_path": "pki/path_builder.cc",
      "new_id": "07ced15e55f3084237e574896ff864d8276786b3",
      "new_mode": 33188,
      "new_path": "pki/path_builder.cc"
    },
    {
      "type": "modify",
      "old_id": "d231358980c8babf98570f18301f6cdd7a44ccf6",
      "old_mode": 33188,
      "old_path": "pki/path_builder_unittest.cc",
      "new_id": "eaf10d8d301145011a357d253acd3874e4166807",
      "new_mode": 33188,
      "new_path": "pki/path_builder_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "341cae50843ced179cf83b2fd46bc4f303c39dc5",
      "old_mode": 33188,
      "old_path": "pki/signature_algorithm.cc",
      "new_id": "f68b612bc046f35e43cadbdcad8418b704064011",
      "new_mode": 33188,
      "new_path": "pki/signature_algorithm.cc"
    },
    {
      "type": "modify",
      "old_id": "baebc7f7f1018f52be27aaf7ab92c41567d94d1f",
      "old_mode": 33188,
      "old_path": "pki/string_util.cc",
      "new_id": "423cd76b41203198a43a9b669cd38f17317b617f",
      "new_mode": 33188,
      "new_path": "pki/string_util.cc"
    },
    {
      "type": "modify",
      "old_id": "b238c2948c7ff28747e793176ac519f62c28ddfd",
      "old_mode": 33188,
      "old_path": "pki/string_util.h",
      "new_id": "27be485944eeb3335acf77b9a300776b814ff7dc",
      "new_mode": 33188,
      "new_path": "pki/string_util.h"
    },
    {
      "type": "modify",
      "old_id": "4929a27cea93e735cd16a2795fd570ee3aa653f3",
      "old_mode": 33188,
      "old_path": "pki/string_util_unittest.cc",
      "new_id": "32e446d54b3ba284cb645c3fa7129c13c0560c2d",
      "new_mode": 33188,
      "new_path": "pki/string_util_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "3b1b2560310c6fa8c48ff6b46be8351fcdff266d",
      "old_mode": 33188,
      "old_path": "pki/test_helpers.cc",
      "new_id": "d998e56cd14a9feb913671b9c47cdcc4d9c25e36",
      "new_mode": 33188,
      "new_path": "pki/test_helpers.cc"
    },
    {
      "type": "modify",
      "old_id": "10297b051132122090eb2219b3eaa6da7ee442b3",
      "old_mode": 33188,
      "old_path": "pki/verify_name_match.cc",
      "new_id": "e8772ecb632400767db211961048c6a432517a34",
      "new_mode": 33188,
      "new_path": "pki/verify_name_match.cc"
    },
    {
      "type": "modify",
      "old_id": "4271366a880c5b2aa9d91c1fa5bde435fda5c9af",
      "old_mode": 33188,
      "old_path": "pki/verify_signed_data.cc",
      "new_id": "3948a433acf553dda18c19b4b4c483697b6c4ae1",
      "new_mode": 33188,
      "new_path": "pki/verify_signed_data.cc"
    }
  ]
}
