)]}'
{
  "log": [
    {
      "commit": "b71e67f953b2cc905c14869296c72f266cd31683",
      "tree": "bb6396b0c8948482b90f408aeee1c2f3700aba9c",
      "parents": [
        "a50205d2c2b819a60e62e05d67d528966cad5e15"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue Jul 28 22:28:57 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 28 22:28:57 2026"
      },
      "message": "Document Firefox versions that support lsel 0xFFFF\n\nFirefox 155 or later will support an \u0027lsel\u0027 property whose layer_id is\n0xFFFF, see https://bugzilla.mozilla.org/show_bug.cgi?id\u003d2055813."
    },
    {
      "commit": "a50205d2c2b819a60e62e05d67d528966cad5e15",
      "tree": "9a1e5d46f40b95d14f8a2c2dddb7cacdd519bd79",
      "parents": [
        "57953b32c1d5ae09761ce8ef66141cfa78c6196f"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue Jul 28 22:23:30 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 28 22:23:30 2026"
      },
      "message": "Fix AvifDecodeTest.NonPersistentIOBug506387278\n\nAvifDecodeTest.NonPersistentIOBug506387278 fails when libaom or libgav1\nis used as the AV1 decoder, because the test input file\npoc_b_506387278.avif contains errors.\n\nThe first error is easier to fix. The two padding OBUs do not contain\ntrailing bits. This is fixed with the following Python script:\n\n```\nwith open(\"tests/data/poc_b_506387278.avif\", \"r+b\") as f:\n  f.seek(0x1702)\n  f.write(b\u0027\\x80\u0027)\n  f.seek(0x559a)\n  f.write(b\u0027\\x80\u0027)\n```\n\nNote: The two padding OBUs can be identified by searching for the byte\n0x7a, which is the OBU header for a padding OBU. The OBU sizes for the\ntwo padding OBUs are 0xbc 0x26 and 0xf0 0x7c, respectively, when encoded\nin leb128().\n\nThe second error is harder to fix. The data for the first image contains\npartial frame data for the second frame. The extra incomplete frame data\nmakes avifDecoderNextImage() fail when libaom or libgav1 is used as the\nAV1 decoder. Since this test is originally intended for CrabbyAvif and\ndav1d, in libavif it is used as a fuzz test, so we can relax the\nexpected results of the avifDecoderNextImage() calls in the test."
    },
    {
      "commit": "57953b32c1d5ae09761ce8ef66141cfa78c6196f",
      "tree": "3b4a58befe9c320bbd358c767d531ce83b54bf14",
      "parents": [
        "ddf4840b8f520a6c75cd58b679aaf23c96bb056a"
      ],
      "author": {
        "name": "Yannis Guyon",
        "email": "yguyon@google.com",
        "time": "Wed Jul 22 09:45:19 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 22 09:45:19 2026"
      },
      "message": "Add --ignore-exif and --ignore-xmp to avifdec (#3307)"
    },
    {
      "commit": "ddf4840b8f520a6c75cd58b679aaf23c96bb056a",
      "tree": "fb375e6c7e7290bcb97e26577725b00f57639969",
      "parents": [
        "3e6bfe809ef0c44ae5d9337d29547183c9c5a716"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue Jul 21 15:05:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 21 15:05:09 2026"
      },
      "message": "Use AVIF_IMAGE_CONTENT_NONE instead of 0\n\nThe symbolic constant AVIF_IMAGE_CONTENT_NONE is more readable."
    },
    {
      "commit": "3e6bfe809ef0c44ae5d9337d29547183c9c5a716",
      "tree": "f934cede018490f51eec508f319fd65c7dc80a3d",
      "parents": [
        "0525f64e8a9da7ed81a615a979485decc007ab44"
      ],
      "author": {
        "name": "Maryla Ustarroz-Calonge",
        "email": "maryla@google.com",
        "time": "Fri Jul 17 13:42:47 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 17 13:42:47 2026"
      },
      "message": "Add ignore exif/xmp to avifginmaputil (#3300)\n\nFixes #3297"
    },
    {
      "commit": "0525f64e8a9da7ed81a615a979485decc007ab44",
      "tree": "f5877ed331a91cef17d4e65862d71867b2a374a7",
      "parents": [
        "0f01bcb7e3296e222e991805a7cc51807bdaccba"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri Jul 17 13:41:56 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 17 13:41:56 2026"
      },
      "message": "Delete two unneeded avifImageCreateView() calls\n\nIf we don\u0027t modify the image view, we can omit the avifImageCreateView()\ncall."
    },
    {
      "commit": "0f01bcb7e3296e222e991805a7cc51807bdaccba",
      "tree": "69d565611313b87a4098ada26e364c75b7962a6d",
      "parents": [
        "3e70f31a5ad6fb0b545a121f958a6c10fb2359c1"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Jul 16 20:28:36 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 16 20:28:36 2026"
      },
      "message": "Don\u0027t decode AV1 images if AV1 decoder unavailable\n\nA follow-up to PR https://github.com/AOMediaCodec/libavif/pull/3288. Fix\navifanimationtest test failures (avifDecoderNextImage() failed with\nAVIF_RESULT_NO_CODEC_AVAILABLE) in the \"build-static-av2 (OFF)\" CI\nworkflow."
    },
    {
      "commit": "3e70f31a5ad6fb0b545a121f958a6c10fb2359c1",
      "tree": "51722e77b9afc68b3f813bac2e58f32c066e4a22",
      "parents": [
        "478364441a6c2cef4b88c5373f428fcae203e751"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Jul 16 18:30:22 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 16 18:30:22 2026"
      },
      "message": "Support ignoring alpha in imageContentToDecode\n\nAdd AVIF_IMAGE_CONTENT_COLOR and AVIF_IMAGE_CONTENT_ALPHA and allow\ndecoding color only. Decoding alpha only is still not supported.\n\nRemove the ignoreAlpha parameter from the avifImageCreateView()\nfunction. If alpha should be ignored, the caller of\navifImageCreateView() is responsible for clearing the\nAVIF_IMAGE_CONTENT_ALPHA bit in decoder-\u003eimageContentToDecode before\ndecoding (assuming srcImage is decoder-\u003eimage)."
    },
    {
      "commit": "478364441a6c2cef4b88c5373f428fcae203e751",
      "tree": "7424434504da26ed317b247f35bf1e11deecaef4",
      "parents": [
        "970e58afc8630e110f23919e6f32ff216b675eb6"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Jul 16 16:37:32 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 16 16:37:32 2026"
      },
      "message": "Test alphaPresent when decoder ignores alpha\n\nModify GainMapTest.IgnoreColorAndAlpha and GainMapTest.IgnoreAll to\ncheck whether alphaPresent and other main image metadata are set when\nthe decoder ignores color and alpha.\n\nSince this requires examining the decoder\u0027s fields after\navifDecoderParse() is called, the avifDecoderReadMemory() call in\nGainMapTest.IgnoreColorAndAlpha is replaced with calls to the\nequivalent avifDecoder functions (except avifImageCopy())."
    },
    {
      "commit": "970e58afc8630e110f23919e6f32ff216b675eb6",
      "tree": "990038403b0c5e8c795c543dd4d345046560a932",
      "parents": [
        "ab00cb7424399669c190faf732fdbe02710be5ca"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed Jul 15 14:57:25 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 15 14:57:25 2026"
      },
      "message": "Bump SVT-AV1 dependency to v4.2.0"
    },
    {
      "commit": "ab00cb7424399669c190faf732fdbe02710be5ca",
      "tree": "fec926bd93a65e06437def71f8a17175a4579609",
      "parents": [
        "a9ba1effae86f6937480f091db895185682b9588"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed Jul 15 14:48:59 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 15 14:48:59 2026"
      },
      "message": "LocalLibXml2.cmake: Avoid duplicates in PREFIXES\n\nIf ${AVIF_LIBRARY_PREFIX} is equal to lib, PREFIXES will check for the\nprefix \"lib\" twice. If a compiled libxml2 library exists, we will call\nadd_library() twice. The second add_library() call will fail.\n\nAs a second fix, add an early return after finding a compiled libxml2\nlibrary."
    },
    {
      "commit": "a9ba1effae86f6937480f091db895185682b9588",
      "tree": "6d1b1e20ec197b2626506134e4d296ea084dac40",
      "parents": [
        "d0605c98085e2fe4830ed248c8b00df7e6f80643"
      ],
      "author": {
        "name": "Yoshiharu ITO",
        "email": "yochy4671@gmail.com",
        "time": "Tue Jul 14 16:47:55 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 14 16:47:55 2026"
      },
      "message": "Bump dav1d to 1.5.4 (#3298)"
    },
    {
      "commit": "d0605c98085e2fe4830ed248c8b00df7e6f80643",
      "tree": "9a16ef35d88dbfbafd283345cc4cccffb0581bb7",
      "parents": [
        "5d9407c5f65507a7eb6ffbecfecf53c55de1e95e"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue Jul 07 16:09:36 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 16:09:36 2026"
      },
      "message": "Bump libyuv to 5d03bf9ba (1949)\n\nUsed on the Chrome M151 branch, plus two more commits."
    },
    {
      "commit": "5d9407c5f65507a7eb6ffbecfecf53c55de1e95e",
      "tree": "3f5d3e3339c5e85c57ce99ae13845faf935312e7",
      "parents": [
        "5a7fef632e8db2ad98a45cb4457f0ed87967fc17"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Mon Jul 06 17:01:24 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 06 17:01:24 2026"
      },
      "message": "Add the ignoreICC option to avifDecoder\n\nThis allows us to remove the ignoreColorProfile parameter from the\navifImageCreateView() function.\n\nThere is a change of behavior to avifdec:\nThe message \"[--ignore-icc] Discarding ICC profile.\\n\" won\u0027t be printed\nif the --ignore-icc or --icc option is specified and the image has an\nICC profile.\n\nBug: https://github.com/AOMediaCodec/libavif/issues/3277"
    },
    {
      "commit": "5a7fef632e8db2ad98a45cb4457f0ed87967fc17",
      "tree": "18bc2d099c1c52ab35d88f9a7bc133f73b7839dc",
      "parents": [
        "0c8ee66c7fa84156b3357ff7d33cf15e00e9b84f"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Jul 02 15:13:36 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 02 15:13:36 2026"
      },
      "message": "Remove ignoreGainMap param of avifImageCreateView\n\nRemove the ignoreGainMap parameter of the avifImageCreateView()\nfunction.\n\nAll the callers of avifImageCreateView() pass ignoreGainMap\u003dfalse to the\nfunction. (The only exception is the recursive call on the gain map\nimage, but the gain map image cannot have its own gain map image, so it\ndoesn\u0027t really matter.)"
    },
    {
      "commit": "0c8ee66c7fa84156b3357ff7d33cf15e00e9b84f",
      "tree": "87ba6603d8f4a02c38b383884881c89723d079c2",
      "parents": [
        "0ae2354ab7be59575831845f2b176c97d08e1367"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Jul 02 14:10:41 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 02 14:10:41 2026"
      },
      "message": "Don\u0027t delete gain map metadata if ignore_gain_map\n\nIn avif::ReadImage(), if ignore_gain_map is true, don\u0027t delete gain map\nmetadata. Let the caller do that."
    },
    {
      "commit": "0ae2354ab7be59575831845f2b176c97d08e1367",
      "tree": "8d990bc50f832356093bbbbe030cc02d8cde8e9a",
      "parents": [
        "607673d8f0d619919f5a741b96e89b3458ba467b"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Jul 02 13:00:38 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 02 13:00:38 2026"
      },
      "message": "In avifDecoderReset(), continue if foundItem\n\nThis avoids indenting the body of the original if (!foundItem)\nstatement."
    },
    {
      "commit": "607673d8f0d619919f5a741b96e89b3458ba467b",
      "tree": "d7c1abcb761bacb54836ee7c7ba209a60eb92175",
      "parents": [
        "287bdddb4c4f640d7bea689a07a0315afcdc0b9d"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Jul 01 07:55:43 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 07:55:43 2026"
      },
      "message": "Bump the github-actions group across 3 directories with 5 updates (#3287)\n\nBumps the github-actions group with 1 update in the /.github/actions/cache directory: [actions/cache](https://github.com/actions/cache).\nBumps the github-actions group with 1 update in the /.github/actions/setup-common directory: [actions/setup-python](https://github.com/actions/setup-python).\nBumps the github-actions group with 3 updates in the /.github/workflows directory: [actions/checkout](https://github.com/actions/checkout), [actions/setup-java](https://github.com/actions/setup-java) and [github/codeql-action/upload-sarif](https://github.com/github/codeql-action).\n\n\nUpdates `actions/cache` from 5.0.5 to 6.1.0\n- [Release notes](https://github.com/actions/cache/releases)\n- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)\n- [Commits](https://github.com/actions/cache/compare/27d5ce7f107fe9357f9df03efb73ab90386fccae...55cc8345863c7cc4c66a329aec7e433d2d1c52a9)\n\nUpdates `actions/setup-python` from 6.2.0 to 6.3.0\n- [Release notes](https://github.com/actions/setup-python/releases)\n- [Commits](https://github.com/actions/setup-python/compare/a309ff8b426b58ec0e2a45f0f869d46889d02405...ece7cb06caefa5fff74198d8649806c4678c61a1)\n\nUpdates `actions/checkout` from 6.0.2 to 7.0.0\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/checkout/compare/de0fac2e4500dabe0009e67214ff5f5447ce83dd...9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0)\n\nUpdates `actions/setup-java` from 5.2.0 to 5.4.0\n- [Release notes](https://github.com/actions/setup-java/releases)\n- [Commits](https://github.com/actions/setup-java/compare/be666c2fcd27ec809703dec50e508c2fdc7f6654...1bcf9fb12cf4aa7d266a90ae39939e61372fe520)\n\nUpdates `github/codeql-action/upload-sarif` from 4.36.0 to 4.36.2\n- [Release notes](https://github.com/github/codeql-action/releases)\n- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/github/codeql-action/compare/7211b7c8077ea37d8641b6271f6a365a22a5fbfa...8aad20d150bbac5944a9f9d289da16a4b0d87c1e)\n\n---\nupdated-dependencies:\n- dependency-name: actions/cache\n  dependency-version: 6.1.0\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n  dependency-group: github-actions\n- dependency-name: actions/setup-python\n  dependency-version: 6.3.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: github-actions\n- dependency-name: actions/checkout\n  dependency-version: 7.0.0\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n  dependency-group: github-actions\n- dependency-name: actions/setup-java\n  dependency-version: 5.4.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: github-actions\n- dependency-name: github/codeql-action/upload-sarif\n  dependency-version: 4.36.2\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: github-actions\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "287bdddb4c4f640d7bea689a07a0315afcdc0b9d",
      "tree": "728d33699bb28c9fbef567f1c56b8e0cc202af43",
      "parents": [
        "bd2703d3c8d51b53d18105c128dc533c4cf0967d"
      ],
      "author": {
        "name": "Maryla Ustarroz-Calonge",
        "email": "maryla@google.com",
        "time": "Wed Jul 01 07:47:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 07:47:09 2026"
      },
      "message": "Fix direct modifications of decoder-\u003eimage. (#3281)\n\nDirectly modifying it goes against the API contract.\nCreate views instead."
    },
    {
      "commit": "bd2703d3c8d51b53d18105c128dc533c4cf0967d",
      "tree": "43d395515bdd18642165ca8ab8e77465d7ba5312",
      "parents": [
        "4f3a99351e3294942911d6550d0d0dd75e52ea90"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue Jun 30 16:10:51 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 16:10:51 2026"
      },
      "message": "Allow any value for avifDecoder::imageSizeLimit\n\nAll known integer overflows in libavif\u0027s decoder code, excluding\nexternal dependencies, have been fixed."
    },
    {
      "commit": "4f3a99351e3294942911d6550d0d0dd75e52ea90",
      "tree": "3673895f6568717cd632593c79ff678c3e6d6711",
      "parents": [
        "89e519864258d68c1e2175cf8e7d0eb3556d4ba8"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Mon Jun 29 15:25:49 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:25:49 2026"
      },
      "message": "Fix comment typos"
    },
    {
      "commit": "89e519864258d68c1e2175cf8e7d0eb3556d4ba8",
      "tree": "85262f5b07f0b5483628966067177b34c3dd6b16",
      "parents": [
        "a29cfb5c59ac1ff7bee9f0af4f4df1f004102e1d"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Mon Jun 29 08:35:10 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 08:35:10 2026"
      },
      "message": "TonemapCommand::Run: Use `image` consistently (#3283)\n\nOnce the local variable `image` is declared and initialized to\ndecoder-\u003eimage, use `image` intead of `decoder-\u003eimage` consistently."
    },
    {
      "commit": "a29cfb5c59ac1ff7bee9f0af4f4df1f004102e1d",
      "tree": "380f79f6d6fb41cd60f4f127f4de63057fbe0a9f",
      "parents": [
        "ea160ac56df44c571cd5781cbc24b2aeb1419b46"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Sun Jun 28 15:37:37 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jun 28 15:37:37 2026"
      },
      "message": "Remove revision param of johnwason/vcpkg-action\n\nA new stable release of vcpkg\n(https://github.com/microsoft/vcpkg/releases/tag/2026.06.24) is\navailable that includes svt-av1 version 3.1.2#1."
    },
    {
      "commit": "ea160ac56df44c571cd5781cbc24b2aeb1419b46",
      "tree": "bc6eb859022af7115198e13ef6ec74926d11f062",
      "parents": [
        "f349be9bce0bc5e18be0a30cc0f5cde304d5d29d"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri Jun 26 18:40:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 26 18:40:09 2026"
      },
      "message": "ci-windows-installed.yml: Revert to windows-latest\n\nhttps://github.com/microsoft/vcpkg/issues/52468 is fixed.\n\nSet the revision parameter of johnwason/vcpkg-action to commit\na900048467b8199f82c31411e0f1597c267fdada, which is our workaround for\nthe Visual Studio 2026 MSVC bug."
    },
    {
      "commit": "f349be9bce0bc5e18be0a30cc0f5cde304d5d29d",
      "tree": "5d89bdbbca0f8b2f9a06415e424b317329a39fdf",
      "parents": [
        "32393ae1eefc568feed206d126434cd0c28893fd"
      ],
      "author": {
        "name": "Yannis Guyon",
        "email": "yguyon@google.com",
        "time": "Fri Jun 26 11:38:46 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 26 11:38:46 2026"
      },
      "message": "Secure GitHub actions (#3279)\n\nAdd persist-credentials: false to every workflow file.\nSee https://docs.zizmor.sh/audits/#template-injection\n\nAvoid potential sources of code injection via template expansion in\nci-unix-static-av2.yml.\nSee https://docs.zizmor.sh/audits/#template-injection\n\nSimplify disabling mechanism in ci-unix-static-av2.yml.\nSee https://docs.zizmor.sh/audits/#obfuscation"
    },
    {
      "commit": "32393ae1eefc568feed206d126434cd0c28893fd",
      "tree": "f496c6ab81c8ef99d06c694b3348d67c686f9b9a",
      "parents": [
        "3f4212ffcfaf0eba9897781672d8e65bbb98cec3"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Mon Jun 22 18:29:29 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 22 18:29:29 2026"
      },
      "message": "Use valid xmp_data buffer in JpegTest.TooLargeXMP\n\nActually allocate a too large xmp_data buffer. Make sure the\navifJPEGParseGainMapXMP() call would succeed if the size \u003e INT_MAX check\nwere removed.\n\nThe original JpegTest.TooLargeXMP test is renamed\nJpegTest.TooLargeXMPFake.\n\nA follow-up to PR https://github.com/AOMediaCodec/libavif/pull/3249."
    },
    {
      "commit": "3f4212ffcfaf0eba9897781672d8e65bbb98cec3",
      "tree": "c0a369897f9ca1b2b032d85861178245958821b2",
      "parents": [
        "eb565694d376eabcf5bf452bc786e9839b25ed98"
      ],
      "author": {
        "name": "Maryla Ustarroz-Calonge",
        "email": "maryla@google.com",
        "time": "Fri Jun 19 08:51:35 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 19 08:51:35 2026"
      },
      "message": "avifgainmaputil: add --ignore-alpha flag to discard alpha channel (#3273)"
    },
    {
      "commit": "eb565694d376eabcf5bf452bc786e9839b25ed98",
      "tree": "78b3492c92e28d005988cba023e643d9274782a2",
      "parents": [
        "9d654e391a75268869e488831099a5f86cfb2fb9"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Jun 18 15:32:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 18 15:32:09 2026"
      },
      "message": "avifImageYUVAnyToRGBAnySlow: Fix integer overflows\n\nFix the integer overflows in avifImageYUVAnyToRGBAnySlow() by declaring\na few local variables as size_t or ptrdiff_t.\n\nDeclare yuvChannelBytes, yRowBytes, uRowBytes, vRowBytes, aRowBytes as\nsize_t. These variables are multiplied by index variables of the\nuint32_t type. In addition, yuvChannelBytes, uRowBytes, and vRowBytes\nare cast to ptrdiff_t or multiplied by -1.\n\nDeclare uAdjCol, vAdjCol, uAdjRow, vAdjRow as ptrdiff_t. These variables\nmay store positive or negative values, and are added to a pointer.\n\nAlso remove two pairs of unnecessary parentheses.\n\nAcknowledgments: This pull request replaces the following pull requests\nthat attempt to fix this issue:\n  - https://github.com/AOMediaCodec/libavif/pull/3063 by rootvector2\n  - https://github.com/AOMediaCodec/libavif/pull/3202 by rootvector2\n  - https://github.com/AOMediaCodec/libavif/pull/3213 by metsw24-max\n  - https://github.com/AOMediaCodec/libavif/pull/3260 by MXguru1"
    },
    {
      "commit": "9d654e391a75268869e488831099a5f86cfb2fb9",
      "tree": "f21e49ef573630ffd214791f622e1be0809ad9c8",
      "parents": [
        "94fcbb3fbc186cab1d7419c6a8559a0d7e1dc90d"
      ],
      "author": {
        "name": "Maryla Ustarroz-Calonge",
        "email": "maryla@google.com",
        "time": "Thu Jun 18 11:07:42 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 18 11:07:42 2026"
      },
      "message": "Fix printed gain map size in avifenc/avifgainmaputil when using a grid. (#3270)\n\nFollow up of #3264\nFixes #3261"
    },
    {
      "commit": "94fcbb3fbc186cab1d7419c6a8559a0d7e1dc90d",
      "tree": "84038e634d8529eada8f1fc50263561f6f69d6df",
      "parents": [
        "27a60c729c061c93015f5a27efc2619a0693bc36"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed Jun 17 19:46:28 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 17 19:46:28 2026"
      },
      "message": "Add a changelog entry for PR #3266"
    },
    {
      "commit": "27a60c729c061c93015f5a27efc2619a0693bc36",
      "tree": "90685515a45ce988e15088e38858aaee4f2a1e4b",
      "parents": [
        "56bb94e9ed63f2358a43dc66ef1b49db539b86a1"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed Jun 17 19:45:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 17 19:45:09 2026"
      },
      "message": "Cite the svt-av1 vcpkg bug report instead"
    },
    {
      "commit": "56bb94e9ed63f2358a43dc66ef1b49db539b86a1",
      "tree": "ccc82e568376a9baa9ba0a3b3982d5c13ecff240",
      "parents": [
        "cbeb4d85764a4fda29ab8eebcb455ee31390aa98"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed Jun 17 18:20:30 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 17 18:20:30 2026"
      },
      "message": "Link with -lm when NOT WIN32 AND NOT APPLE\n\nChange the condition to link with the math library (-lm) to\nif(NOT WIN32 AND NOT APPLE). This condition has worked well in libaom.\n\nAddress the -l_aom_dep_lib_m-NOTFOUND part of\nissue https://github.com/AOMediaCodec/libavif/issues/3263."
    },
    {
      "commit": "cbeb4d85764a4fda29ab8eebcb455ee31390aa98",
      "tree": "4e8c3af4efa90ac6f6315260427a667df07df9fc",
      "parents": [
        "fc87af9dca6923d1b73167604047a1014fc2df6b"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed Jun 17 16:11:02 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 17 16:11:02 2026"
      },
      "message": "Use windows-2022 until issue #3255 is fixed\n\nUse windows-2022 instead of windows-latest until\nhttps://github.com/AOMediaCodec/libavif/issues/3255 is fixed.\n\nwindows-latest points to windows-2025 right now, which is being updated\nto Visual Studio 2026. Visual Studio 2026 version \u003e\u003d 19.50 has an AVX2\nintrinsics inlining bug, described at\nhttps://gitlab.com/AOMediaCodec/SVT-AV1/-/work_items/2322#note_3455144085."
    },
    {
      "commit": "fc87af9dca6923d1b73167604047a1014fc2df6b",
      "tree": "4050b355ef447324547b9c879a4e7dad8ec6ce27",
      "parents": [
        "64751ae750824470f61a2b2a3ab73600b00e3db7"
      ],
      "author": {
        "name": "Yannis Guyon",
        "email": "yguyon@google.com",
        "time": "Wed Jun 17 14:39:43 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 17 14:39:43 2026"
      },
      "message": "Patch SVT-AV1 to avoid corrupted files with MSVC (#3257)"
    },
    {
      "commit": "64751ae750824470f61a2b2a3ab73600b00e3db7",
      "tree": "c83f3cad3d418ef6edccd38313bc0fa38297d414",
      "parents": [
        "6048f5c9e0ff74124c219d032997e34e92c7d343"
      ],
      "author": {
        "name": "Maryla Ustarroz-Calonge",
        "email": "maryla@google.com",
        "time": "Wed Jun 17 14:06:22 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 17 14:06:22 2026"
      },
      "message": "avifgainmaputil: fix incorrectly printed resolution (#3264)"
    },
    {
      "commit": "6048f5c9e0ff74124c219d032997e34e92c7d343",
      "tree": "39c71a18f53f86ba3f6187903ae522b8a21d2c59",
      "parents": [
        "0e73429877ced7d2b1cd943c8398fa82b9311ddf"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue Jun 16 21:56:25 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 21:56:25 2026"
      },
      "message": "Compare matrix.generator with \u0027-G Ninja\u0027\n\nThe new matrix.generator value is \"-G Ninja\", so matrix.generator should\nbe compared with \u0027-G Ninja\u0027 instead of \u0027Ninja\u0027."
    },
    {
      "commit": "0e73429877ced7d2b1cd943c8398fa82b9311ddf",
      "tree": "4a97d1b569d0ae44acd9871c1de19ec2dd50dd6d",
      "parents": [
        "da84da9070d1f8b1ee3c0e14eb846ca8e8681eb9"
      ],
      "author": {
        "name": "Yannis Guyon",
        "email": "yguyon@google.com",
        "time": "Mon Jun 15 12:30:44 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 15 12:30:44 2026"
      },
      "message": "Remove explicit VS version in Windows CI (#3254)\n\nRely on CMake\u0027s default generator."
    },
    {
      "commit": "da84da9070d1f8b1ee3c0e14eb846ca8e8681eb9",
      "tree": "a87154c7e4ca5aca6baf9fff076f9a79cc884fd3",
      "parents": [
        "e14848ef32b064b980eac1a6d540effec2839ba7"
      ],
      "author": {
        "name": "XananasX",
        "email": "cihbank069@gmail.com",
        "time": "Mon Jun 15 07:51:05 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 15 07:51:05 2026"
      },
      "message": "ci: pin actions to full commit SHAs in ci-format-check and ci-mingw (#3253)\n\nMutable tag references can be silently re-pointed to different commits.\nPin to full SHA (tag kept as comment):\n\n  neg-c/cmake-format-action:\n    @v0.1.3 -\u003e @ba83660ac46d64c12ca96f39478dcde7680a52bf\n  msys2/setup-msys2:\n    @v2 -\u003e @66cd2cce69caa17b53920067426061ca1de3a884"
    },
    {
      "commit": "e14848ef32b064b980eac1a6d540effec2839ba7",
      "tree": "3f31e0abd6dacf1c24656d45c537ea276e69526b",
      "parents": [
        "0b47c4002a41eda3dbe3a05187449363b56eae4d"
      ],
      "author": {
        "name": "alb3e3",
        "email": "74142887+Alb3e3@users.noreply.github.com",
        "time": "Mon Jun 15 06:25:07 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 15 06:25:07 2026"
      },
      "message": "Replace archived release asset upload action (#3248)"
    },
    {
      "commit": "0b47c4002a41eda3dbe3a05187449363b56eae4d",
      "tree": "555050d1ce052f555f244eac85e85a06ef6f2873",
      "parents": [
        "7f7fa383834f8d8a56ca130f3218ca7735f3ea1f"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri Jun 12 14:07:29 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 12 14:07:29 2026"
      },
      "message": "Avoid const cast of avifJPEGFindXMLNodeByName rv\n\nChange avifJPEGFindXMLNodeByName() to return a non-const xmlNode * so\nthat we don\u0027t need apply a const cast to its return value.\n\nAlso fix an incorrect error message (we are parsing an extended XMP\nsegment, not a standard XMP segment)."
    },
    {
      "commit": "7f7fa383834f8d8a56ca130f3218ca7735f3ea1f",
      "tree": "b4cd54d8840b225d0853169aa76100c34b4d50a1",
      "parents": [
        "36ccfc14cb5329ff1fae082a77a729ed34028dc0"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri Jun 12 13:42:27 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 12 13:42:27 2026"
      },
      "message": "Add changelog entry for #3247 (Copy XMP/Exif ...)"
    },
    {
      "commit": "36ccfc14cb5329ff1fae082a77a729ed34028dc0",
      "tree": "be59f05e72f5d3d334801f47fca0824006202d8b",
      "parents": [
        "121d6d13cdc2552a414b570830090fdc7138880d"
      ],
      "author": {
        "name": "alb3e3",
        "email": "74142887+Alb3e3@users.noreply.github.com",
        "time": "Thu Jun 11 12:28:03 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 11 12:28:03 2026"
      },
      "message": "Guard JPEG XMP parsing sizes (#3249)"
    },
    {
      "commit": "121d6d13cdc2552a414b570830090fdc7138880d",
      "tree": "030a1ab0ad38b918ae6c9ab239931db67b4737d3",
      "parents": [
        "253f0d0f04e771dd94b37682a211b10a9cfe702e"
      ],
      "author": {
        "name": "Maryla Ustarroz-Calonge",
        "email": "maryla@google.com",
        "time": "Thu Jun 11 09:44:17 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 11 09:44:17 2026"
      },
      "message": "Copy XMP/Exif in `avifgainmaputil tonemap` (#3247)\n\nFixes #3232"
    },
    {
      "commit": "253f0d0f04e771dd94b37682a211b10a9cfe702e",
      "tree": "dcc7296297e5d489587e4dfb3f099f1d6502f550",
      "parents": [
        "96ec013de9c565d0fa474139ca25fec001145392"
      ],
      "author": {
        "name": "Javid Khan",
        "email": "dxbjavid@gmail.com",
        "time": "Mon Jun 08 09:35:38 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 08 09:35:38 2026"
      },
      "message": "cast to unsigned char before ctype calls in image readers (#3245)"
    },
    {
      "commit": "96ec013de9c565d0fa474139ca25fec001145392",
      "tree": "ff636bec0cc47f756a62f29eee31620dd76b20d4",
      "parents": [
        "76fb86e4d569863da8df63e7327168cc23f35709"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri Jun 05 14:15:10 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 05 14:15:10 2026"
      },
      "message": "Explain why avifImageCopy() disallows self copy"
    },
    {
      "commit": "76fb86e4d569863da8df63e7327168cc23f35709",
      "tree": "e4a9fca2c4415e722ea0d0909780198f7f71cafa",
      "parents": [
        "ed2839513419ead71dfdfe44faaf129d8a705fd3"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Jun 04 18:43:12 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 04 18:43:12 2026"
      },
      "message": "Relax SampleTransformZeroInputItemsRejected error\n\nIn the SampleTransformZeroInputItemsRejected test, do not require the\nerror code of avifDecoderReadMemory() be AVIF_RESULT_BMFF_PARSE_FAILED.\nThis allows the implementation to return a different error code such as\nAVIF_RESULT_DECODE_SAMPLE_TRANSFORM_FAILED.\n\nNote: Without this change, the next statement,\n  EXPECT_NE(result, AVIF_RESULT_INTERNAL_ERROR);\nis redundant."
    },
    {
      "commit": "ed2839513419ead71dfdfe44faaf129d8a705fd3",
      "tree": "cd56384a679b4999ee8ca441214fc14268402884",
      "parents": [
        "383d8c8087c50be7b5a6ad5152e3bbc09bf1e9e0"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Jun 04 04:21:00 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 04 04:21:00 2026"
      },
      "message": "codec_libgav1.c: Remove #include \u003cstring.h\u003e\n\nAfter commit c64ea94, codec_libgav1.c no longer calls any function\ndeclared in \u003cstring.h\u003e. This can be verified by searching for \"str\" and\n\"mem\" in this file. Include \u003cstddef.h\u003e instead (for NULL)."
    },
    {
      "commit": "383d8c8087c50be7b5a6ad5152e3bbc09bf1e9e0",
      "tree": "22244b20386014e870619018b39fd2175fafda7a",
      "parents": [
        "a660226935e62194c4129d57fd352d611969806b"
      ],
      "author": {
        "name": "jmestwa-coder",
        "email": "jmestwa@gmail.com",
        "time": "Wed Jun 03 08:36:31 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 03 08:36:31 2026"
      },
      "message": "Reject \u0027sato\u0027 items with no input image items (#3237)"
    },
    {
      "commit": "a660226935e62194c4129d57fd352d611969806b",
      "tree": "8354be0b086e74dc5648c44e46fa30b4d7bf6446",
      "parents": [
        "67f7589ee7a72e8ceca420607566d3c1727b81ed"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed Jun 03 02:16:14 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 03 02:16:14 2026"
      },
      "message": "Disallow dstImage \u003d\u003d srcImage\n\nDisallow dstImage \u003d\u003d srcImage in avifImageCopy() and\navifImageSetViewRect()."
    },
    {
      "commit": "67f7589ee7a72e8ceca420607566d3c1727b81ed",
      "tree": "8a60472ab9c2199e4bc17c305d8cc6b49051556e",
      "parents": [
        "c64ea9468ddf5f0b3cdf14d07da3e200c8c208b5"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue Jun 02 20:18:06 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 02 20:18:06 2026"
      },
      "message": "Max frame dims apply to AV2 in avifValidateGrid()\n\nAV2 has the same maximum frame width and height as AV1."
    },
    {
      "commit": "c64ea9468ddf5f0b3cdf14d07da3e200c8c208b5",
      "tree": "6cb7083ee89d850e58b8bb9616918e8547a676d3",
      "parents": [
        "27ec163acc16da9cb1294161904f85a985dc5ce3"
      ],
      "author": {
        "name": "metsw24-max",
        "email": "metsw24@gmail.com",
        "time": "Mon Jun 01 21:19:12 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 01 21:19:12 2026"
      },
      "message": "Add avifCalloc() and harden allocation call sites\n\nIntroduce avifCalloc() as a centralized overflow-checked,\nzero-initializing allocation helper and convert existing open-coded\nallocation patterns to use it.\n\nThis change replaces repeated patterns of:\n\n    p \u003d avifAlloc(...);\n    memset(p, 0, ...);\n    \nwith a single reusable helper that performs allocation arithmetic\nvalidation and zero-initialization in one place."
    },
    {
      "commit": "27ec163acc16da9cb1294161904f85a985dc5ce3",
      "tree": "e4c32ae8c86f8eab6a8ebf076c7fb9fc30cff4ca",
      "parents": [
        "d8b4e042cde136995909a7c5753d5f2910772248"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Jun 01 18:05:15 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 01 18:05:15 2026"
      },
      "message": "Bump the github-actions group across 2 directories with 2 updates\n\nBumps the github-actions group with 1 update in the /.github/actions/setup-windows directory: [johnwason/vcpkg-action](https://github.com/johnwason/vcpkg-action).\nBumps the github-actions group with 1 update in the /.github/workflows directory: [github/codeql-action](https://github.com/github/codeql-action).\n\n\nUpdates `johnwason/vcpkg-action` from 7.0.1 to 8.0.0\n- [Release notes](https://github.com/johnwason/vcpkg-action/releases)\n- [Commits](https://github.com/johnwason/vcpkg-action/compare/caa1c94fbb94d8b023a0cc93edf10cd3791349a7...04c68c847bf5196ecaa72331ecf51208583916ef)\n\nUpdates `github/codeql-action` from 4.35.2 to 4.36.0\n- [Release notes](https://github.com/github/codeql-action/releases)\n- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/github/codeql-action/compare/95e58e9a2cdfd71adc6e0353d5c52f41a045d225...7211b7c8077ea37d8641b6271f6a365a22a5fbfa)\n\n---\nupdated-dependencies:\n- dependency-name: johnwason/vcpkg-action\n  dependency-version: 8.0.0\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n  dependency-group: github-actions\n- dependency-name: github/codeql-action\n  dependency-version: 4.36.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: github-actions\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "d8b4e042cde136995909a7c5753d5f2910772248",
      "tree": "e377626a299f8f5a1ddc267c8425f7d351df3ce5",
      "parents": [
        "693855b664244c0dfd1992ab301fad7b5aa1e085"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri May 29 06:44:26 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 29 06:44:26 2026"
      },
      "message": "Update to AVM v1.0.0"
    },
    {
      "commit": "693855b664244c0dfd1992ab301fad7b5aa1e085",
      "tree": "c49b5bdef3c1d2af4a7220560e029b8df93efe41",
      "parents": [
        "50c9345a4c0c1ea6682fd705f8f59bce25301336"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu May 28 20:40:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 28 20:40:09 2026"
      },
      "message": "avifenc: add --ignore-alpha flag to discard alpha\n\nAdd --ignore-alpha flag to avifenc to discard alpha channel on encode.\n\nHave avifInputReadImage() propagate the ignoreAlpha parameter further\ndown the call chain all the way to the leaf functions.\n\nCo-authored-by: enyetsuen \u003c175347006+enyetsuen@users.noreply.github.com\u003e"
    },
    {
      "commit": "50c9345a4c0c1ea6682fd705f8f59bce25301336",
      "tree": "61d7dc4e7c2676ba1be71c71ff718e268f7b7976",
      "parents": [
        "c5240fc79fe5c2407e10afd35f5505ef6333ea49"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue May 26 23:05:21 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 26 23:05:21 2026"
      },
      "message": "Re-enable AVIF_VERSION_DEVEL"
    },
    {
      "commit": "c5240fc79fe5c2407e10afd35f5505ef6333ea49",
      "tree": "b2663cbc9ed4554942f9c5e54f6ffd4ec6a8d608",
      "parents": [
        "267f924c90938f81b97458754c9c8e36d9c224ee"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue May 26 22:29:56 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 26 22:29:56 2026"
      },
      "message": "v1.4.2"
    },
    {
      "commit": "267f924c90938f81b97458754c9c8e36d9c224ee",
      "tree": "64774f132f60961c5ea0197e43edca1e06f64495",
      "parents": [
        "196cf824aa891b83abe7fc8772c0dd6711d9a0c2"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue May 26 16:32:34 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 26 16:32:34 2026"
      },
      "message": "Bump libyuv to 644251f25\n\nUsed on the Chrome M149 branch."
    },
    {
      "commit": "196cf824aa891b83abe7fc8772c0dd6711d9a0c2",
      "tree": "4133fd56a24b849f5660617d1dfb5b39119e2044",
      "parents": [
        "7d67150badf57c2389877af71461bf889041090c"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue May 26 15:52:58 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 26 15:52:58 2026"
      },
      "message": "Bump libxml2 to v2.15.3"
    },
    {
      "commit": "7d67150badf57c2389877af71461bf889041090c",
      "tree": "990b372d15d867419d4b6faa705c704937fb7325",
      "parents": [
        "6a3615c508fcfd69772c4ce4775d01ddfe9b5e6d"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri May 22 21:13:05 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 22 21:13:05 2026"
      },
      "message": "Bump libjpeg-turbo to 3.1.4.1"
    },
    {
      "commit": "6a3615c508fcfd69772c4ce4775d01ddfe9b5e6d",
      "tree": "97206cb5ee8d924b14ba8ebcae2ccab9cd57fe2c",
      "parents": [
        "b28a5b1d871e7dcc75d2f5da9bcc4090bf4c2457"
      ],
      "author": {
        "name": "metsw24-max",
        "email": "metsw24@gmail.com",
        "time": "Fri May 22 20:42:06 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 22 20:42:06 2026"
      },
      "message": "Use std::array for pixel buffers in avifrgbtest\n\nReplaces raw `float[4]` pixel buffers in tests/gtest/avifrgbtest.cc with\n`std::array\u003cfloat, 4\u003e`, passing `.data()` to `avifSetRGBAPixel` and\n`avifGetRGBAPixel`. This is a small code-quality cleanup that stands on\nits own; it was split out of the `-Wunsafe-buffer-usage` opt-in PR at\nthe reviewer\u0027s request."
    },
    {
      "commit": "b28a5b1d871e7dcc75d2f5da9bcc4090bf4c2457",
      "tree": "629fc1de64bfeb8969e33b419825d7fe9e67d514",
      "parents": [
        "9bf3dd48dcd947c9946aa68d30c1c4b9c642f3dc"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri May 22 20:27:52 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 22 20:27:52 2026"
      },
      "message": "Bump libpng to 1.6.58"
    },
    {
      "commit": "9bf3dd48dcd947c9946aa68d30c1c4b9c642f3dc",
      "tree": "6cb0e1a3300e1fba68d7aed18d6cffbc763b2405",
      "parents": [
        "eb6e0e6c9017935bd8ac54b01b55a4c330f5e976"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri May 22 20:02:21 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 22 20:02:21 2026"
      },
      "message": "Update to libaom v3.14.1"
    },
    {
      "commit": "eb6e0e6c9017935bd8ac54b01b55a4c330f5e976",
      "tree": "7f0d7f43ab99f4d74c15c6278b2c76336a2e968d",
      "parents": [
        "3a63fd99d00109a5e0732b9cdee92277dcf09953"
      ],
      "author": {
        "name": "Maryla Ustarroz-Calonge",
        "email": "maryla@google.com",
        "time": "Fri May 22 14:23:34 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 22 14:23:34 2026"
      },
      "message": "Fix bug in avifToLinearIEC61966 (#3218)"
    },
    {
      "commit": "3a63fd99d00109a5e0732b9cdee92277dcf09953",
      "tree": "2c512ace5472b05c07a30f532c6679fcb1fbfb22",
      "parents": [
        "729927c8d6c27159f5a97c41cf218d8244dc8897"
      ],
      "author": {
        "name": "metsw24-max",
        "email": "metsw24@gmail.com",
        "time": "Thu May 21 17:50:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 21 17:50:09 2026"
      },
      "message": "Replace strcpy/strcat with memcpy in aviftest.c"
    },
    {
      "commit": "729927c8d6c27159f5a97c41cf218d8244dc8897",
      "tree": "d4ca8f9e00e4193436355b56251040681cf59511",
      "parents": [
        "1eb52718e253cf542452b47bf3042ab79594736e"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed May 20 21:31:24 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 20 21:31:24 2026"
      },
      "message": "Switch to AVM\u0027s new repository on GitHub"
    },
    {
      "commit": "1eb52718e253cf542452b47bf3042ab79594736e",
      "tree": "f44c7d0894d4b5191e7da3645b592e75bb60f383",
      "parents": [
        "b76fe84462a20023c6c9990f592e364bbd37f83a"
      ],
      "author": {
        "name": "kjg0724",
        "email": "63202356+kjg0724@users.noreply.github.com",
        "time": "Wed May 20 20:53:58 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 20 20:53:58 2026"
      },
      "message": "avifenc: refer to standard input in error message\n\nRefer to \"standard input\" in the stdin Y4M error message. The outer\nerror already says \"from standard input\"; make the hint consistent.\n\nRefs #3194"
    },
    {
      "commit": "b76fe84462a20023c6c9990f592e364bbd37f83a",
      "tree": "f3d497032035a20b0e1c2b0f4ee164288ae4fb9d",
      "parents": [
        "80f489a010fe84f6e3f825105e232e07346bb426"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed May 20 18:04:48 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 20 18:04:48 2026"
      },
      "message": "Change avifRWStreamFinishBox to return avifResult\n\nFollow up on PR #3207. Allow error handling."
    },
    {
      "commit": "80f489a010fe84f6e3f825105e232e07346bb426",
      "tree": "03101c583b6138aff02ceb19a88cdd020596d3cc",
      "parents": [
        "a854856d05ccd05db91ee49e3c54b4e5a6d70582"
      ],
      "author": {
        "name": "metsw24-max",
        "email": "metsw24@gmail.com",
        "time": "Wed May 20 10:46:30 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 20 10:46:30 2026"
      },
      "message": "Make avifAlloc(0) deterministic and fix RWData shrink-to-zero handling (#3212)"
    },
    {
      "commit": "a854856d05ccd05db91ee49e3c54b4e5a6d70582",
      "tree": "aceddfa9bf07707224ae4b317b10497d8056aa9a",
      "parents": [
        "ed4f11dcf6e684025f0a2225a48099ef213fe7c2"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue May 19 15:42:38 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 19 15:42:38 2026"
      },
      "message": "Check null return value from avifImageCreateEmpty\n\nAudit all calls to avifImageCreateEmpty() and avifImageCreate() in the\nlibavif source tree (except the tests) and make sure that the callers\ncheck for a null return value.\n\nFix nits in two error messages."
    },
    {
      "commit": "ed4f11dcf6e684025f0a2225a48099ef213fe7c2",
      "tree": "a694cb338e9c8e25e4eb0bf4875defd4ae243ae4",
      "parents": [
        "4e3fed82b35a4711bedaf8b58485fc07714ee746"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue May 19 14:55:21 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 19 14:55:21 2026"
      },
      "message": "Detect invalid box size in avifRWStreamFinishBox()\n\nUnfortunately avifRWStreamFinishBox() returns void and there are a lot\nof avifRWStreamFinishBox() calls, so have avifRWStreamFinishBox() call\nabort() on an invalid box size for now."
    },
    {
      "commit": "4e3fed82b35a4711bedaf8b58485fc07714ee746",
      "tree": "f69fa171609d9b0d54aad0e62b62fae342627532",
      "parents": [
        "786926e4b151886c3a4ef3f897e4d143f1bd7c6f"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue May 19 14:49:07 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 19 14:49:07 2026"
      },
      "message": "Document the marker parameter of box writing funcs"
    },
    {
      "commit": "786926e4b151886c3a4ef3f897e4d143f1bd7c6f",
      "tree": "37fa965338e11a2c01e9887657e91fd2f68e1eaa",
      "parents": [
        "15c8b002222ea82466eb42a12b809e930704efa4"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Mon May 18 18:01:39 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 18:01:39 2026"
      },
      "message": "avifenc: Follow up on PR #3179\n\nClarify \"bit depth is retained and must match if specified\".\n\nChange a semicolon (;) to a comma (,) to make it clear that\n\"Dextension is unsupported\" is part of the y4m case."
    },
    {
      "commit": "15c8b002222ea82466eb42a12b809e930704efa4",
      "tree": "be445afbd4d7b40da20ff933d425bc83e42a9976",
      "parents": [
        "96e91c48e26b1dc232abb47cc46073cae2606ea1"
      ],
      "author": {
        "name": "Dexter.k",
        "email": "164054284+rootvector2@users.noreply.github.com",
        "time": "Mon May 18 17:37:53 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 17:37:53 2026"
      },
      "message": "gainmap: check avifImageCreateEmpty() result\n\navifRGBImageApplyGainMap() calls avifImageCreateEmpty() to back the\nrescaledGainMap when the gain map image\u0027s dimensions differ from the\nbase image\u0027s, but does not check the return value. The next line\ncalls avifImageSetViewRect(rescaledGainMap, ...), which dereferences\nthe destination image via avifImageFreePlanes() before any rect\nvalidation, so a NULL return from avifImageCreateEmpty() crashes the\ncaller under memory pressure.\n\nThis is the same pattern fixed for avifImageCopy() in PR #3201.\n\nBail to the existing cleanup label with AVIF_RESULT_OUT_OF_MEMORY\nwhen the allocation fails."
    },
    {
      "commit": "96e91c48e26b1dc232abb47cc46073cae2606ea1",
      "tree": "16dbc1989751a1716e937573661a8f9cf8d2973e",
      "parents": [
        "4368f146309dd6a5b05657df646a97d2f7032903"
      ],
      "author": {
        "name": "Dexter.k",
        "email": "164054284+rootvector2@users.noreply.github.com",
        "time": "Mon May 18 16:27:08 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 16:27:08 2026"
      },
      "message": "avifImageCopy: check avifImageCreateEmpty() result\n\nWhen the destination image has no gain map image yet but the source\ndoes, avifImageCopy() called avifImageCreateEmpty() and passed the\nresult to a recursive avifImageCopy() without checking for allocation\nfailure. Under out-of-memory conditions this dereferenced a NULL pointer\nin avifImageFreePlanes() at the start of the recursive call.\n\nAdd the missing AVIF_CHECKERR, matching the existing pattern used for\nthe avifGainMapCreate() allocation a few lines above."
    },
    {
      "commit": "4368f146309dd6a5b05657df646a97d2f7032903",
      "tree": "cb2d3d4441c4067b449d8c9328daa6c0b1c4a156",
      "parents": [
        "3c66271c78f5bbf8228a62a344a33eace1b9f764"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Mon May 18 13:11:22 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 13:11:22 2026"
      },
      "message": "Change \"y4m or stdin\" to \"y4m\" in avifenc help msg (#3197)\n\nA follow-up to PR #2710."
    },
    {
      "commit": "3c66271c78f5bbf8228a62a344a33eace1b9f764",
      "tree": "e1b515ebcb57b47c65352c6f35d1e1d4a80c4950",
      "parents": [
        "74bd32ef873024213b37f19a94f30d7b155f2514"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri May 15 20:25:44 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 15 20:25:44 2026"
      },
      "message": "Print diag msg if AOMD_SET_FRAME_SIZE_LIMIT fails"
    },
    {
      "commit": "74bd32ef873024213b37f19a94f30d7b155f2514",
      "tree": "70211f55ae774b2ad45c68e2c8e4e61fa3381a31",
      "parents": [
        "4b817bb98ec9e4be299aa28e0d7c29456a0f6b93"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri May 15 18:57:19 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 15 18:57:19 2026"
      },
      "message": "Update to libaom v3.14.0\n\nDelete the AomTuneMetricTest.TuneIqOnlySupportsAllIntra test (added in\nPR #2936) because tune IQ was extended to inter-frame encoding modes\n(good-quality and realtime) in libaom v3.14.0:\nhttps://aomedia-review.googlesource.com/207681"
    },
    {
      "commit": "4b817bb98ec9e4be299aa28e0d7c29456a0f6b93",
      "tree": "8d229fa1f7bc31ce65d76dbeb61a58d22b0ab038",
      "parents": [
        "41ee8abe2613de364559f73011683b4d97227a85"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed May 13 22:30:18 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 13 22:30:18 2026"
      },
      "message": "Set aomVersion_3_14_0 to the correct value\n\nThe libaom v3.14.0 release is imminent. It is safe to set\naomVersion_3_14_0 to the correct value now."
    },
    {
      "commit": "41ee8abe2613de364559f73011683b4d97227a85",
      "tree": "fd044f91c233c4a37e29ceabc9f71fc9d5e222a6",
      "parents": [
        "3e9371f563a6bd96440b0e3d425afdc1f91c7f45"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed May 13 17:50:39 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 13 17:50:39 2026"
      },
      "message": "Use libaom AOMD_SET_FRAME_SIZE_LIMIT if available\n\nBug: https://aomedia.g-issues.chromium.org/issues/485932002"
    },
    {
      "commit": "3e9371f563a6bd96440b0e3d425afdc1f91c7f45",
      "tree": "8e62ee3cd580bd462b66658915464abb9834f99f",
      "parents": [
        "257b1e45f979491d905786d80691ba33a7597290"
      ],
      "author": {
        "name": "Anthony Hurtado",
        "email": "amhurtado@protonmail.com",
        "time": "Wed May 13 11:07:40 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 13 11:07:40 2026"
      },
      "message": "Fix NaN bypass of AVIF_CLAMP in gain map pixel clamping (#3189)\n\nApply path (the two sites at lines 156 and 277): when `baseLinear + baseOffset` is zero (e.g., a black pixel with `baseOffset \u003d {0, 1}`), and the gain map log2 value is large enough for `exp2f()` to overflow to +Inf, the multiplication `0.0f * +Inf` evaluates to NaN per IEEE 754. The NaN then passes through `linearToGamma()` and `AVIF_CLAMP()` unmodified, since the macro\u0027s ternary comparisons all return false for NaN operands.\n\nA similar NaN path exists in the compute path (line 764): if `base + baseOffset[c]` is near-zero after color space conversion, the ratio at line 695 overflows to +Inf. `AVIF_MAX(ratio, kEpsilon)` only lower-bounds, so +Inf passes through into `gainMapF`. After `avifFindMinMaxWithoutOutliers` picks up +Inf as the channel max, the normalization `(+Inf - min) / +Inf` evaluates to NaN (indeterminate form).\n\nThe `fminf`/`fmaxf` fix is intentionally a safety net at the output boundary — it ensures NaN can\u0027t reach `avifSetRGBAPixel()` regardless of which upstream path produced it. If you\u0027d prefer a root-cause fix as well (e.g., clamping the ratio or guarding `exp2f` overflow), I\u0027m happy to add that.\n\nCo-authored-by: Claude Opus 4.6 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "257b1e45f979491d905786d80691ba33a7597290",
      "tree": "5a7f54bb9496c59f4ac8524d1e227a7f3c6b4856",
      "parents": [
        "ee0ce4ea86b4240c35d96d05a685ed00146dba56"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed May 06 21:17:45 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 06 21:17:45 2026"
      },
      "message": "Update to AVM research-v15.0.0 anchor"
    },
    {
      "commit": "ee0ce4ea86b4240c35d96d05a685ed00146dba56",
      "tree": "86f3f30cf8a4040ccd14988f1019023f176212b6",
      "parents": [
        "9bd9e4dacd933f1e30d4cefe1ff88262338367ea"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue May 05 22:15:31 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 05 22:15:31 2026"
      },
      "message": "Add pull request #3179 to CHANGELOG.md"
    },
    {
      "commit": "9bd9e4dacd933f1e30d4cefe1ff88262338367ea",
      "tree": "49e2fba2c338e63dfe00eb633604221d1ebf4cbe",
      "parents": [
        "f17110dac426a7dd046a34b99276e64d9fb73c28"
      ],
      "author": {
        "name": "Jeongkeun Kim",
        "email": "variety0724@gmail.com",
        "time": "Mon Apr 27 08:29:57 2026"
      },
      "committer": {
        "name": "Vignesh Venkatasubramanian",
        "email": "vigneshvg@users.noreply.github.com",
        "time": "Tue May 05 16:46:07 2026"
      },
      "message": "avifenc: reject mismatched --depth for Y4M input\n"
    },
    {
      "commit": "f17110dac426a7dd046a34b99276e64d9fb73c28",
      "tree": "e49b2c32eec9f35b64bd4c1288b1f08bc23dc467",
      "parents": [
        "ee88f984f540e7fb67ae6dc2212565b6a3d82b84"
      ],
      "author": {
        "name": "uwezkhan",
        "email": "114483941+uwezkhan@users.noreply.github.com",
        "time": "Sat May 02 17:18:44 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat May 02 17:18:44 2026"
      },
      "message": "Use size_t arithmetic in pixel offset calculations\n\nDeclare indexes i, j, uvI, uvJ as size_t so that multiplications with\nthem are performed in size_t."
    },
    {
      "commit": "ee88f984f540e7fb67ae6dc2212565b6a3d82b84",
      "tree": "6aa5c2ff2361dc4447dc765cc1511bec226fd98a",
      "parents": [
        "a1fa5df53a1e9f0a13de04260d3379cb6988e617"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri May 01 21:02:17 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 01 21:02:17 2026"
      },
      "message": "Delete the unused variable i_cell\n\nGCC 16.1.0 in MinGW warns that the variable \u0027i_cell\u0027 set but not used."
    },
    {
      "commit": "a1fa5df53a1e9f0a13de04260d3379cb6988e617",
      "tree": "c01f89760dc85249764b8e12113613280cba4721",
      "parents": [
        "9e918bbc82c0d72e1c56296287ac42b0c8f54a70"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri May 01 16:56:22 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 01 16:56:22 2026"
      },
      "message": "Bump the github-actions group across 2 directories with 4 updates\n\nBumps the github-actions group with 1 update in the /.github/actions/cache directory: [actions/cache](https://github.com/actions/cache).\nBumps the github-actions group with 3 updates in the /.github/workflows directory: [android-actions/setup-android](https://github.com/android-actions/setup-android), [actions/upload-artifact](https://github.com/actions/upload-artifact) and [github/codeql-action](https://github.com/github/codeql-action).\n\n\nUpdates `actions/cache` from 5.0.4 to 5.0.5\n- [Release notes](https://github.com/actions/cache/releases)\n- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)\n- [Commits](https://github.com/actions/cache/compare/668228422ae6a00e4ad889ee87cd7109ec5666a7...27d5ce7f107fe9357f9df03efb73ab90386fccae)\n\nUpdates `android-actions/setup-android` from 4.0.0 to 4.0.1\n- [Release notes](https://github.com/android-actions/setup-android/releases)\n- [Commits](https://github.com/android-actions/setup-android/compare/651bceb6f9ca583f16b8d75b62c36ded2ae6fc9c...40fd30fb8d7440372e1316f5d1809ec01dcd3699)\n\nUpdates `actions/upload-artifact` from 7.0.0 to 7.0.1\n- [Release notes](https://github.com/actions/upload-artifact/releases)\n- [Commits](https://github.com/actions/upload-artifact/compare/bbbca2ddaa5d8feaa63e36b76fdaad77386f024f...043fb46d1a93c77aae656e7c1c64a875d1fc6a0a)\n\nUpdates `github/codeql-action` from 4.35.1 to 4.35.2\n- [Release notes](https://github.com/github/codeql-action/releases)\n- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/github/codeql-action/compare/c10b8064de6f491fea524254123dbe5e09572f13...95e58e9a2cdfd71adc6e0353d5c52f41a045d225)\n\n---\nupdated-dependencies:\n- dependency-name: actions/cache\n  dependency-version: 5.0.5\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: github-actions\n- dependency-name: android-actions/setup-android\n  dependency-version: 4.0.1\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: github-actions\n- dependency-name: actions/upload-artifact\n  dependency-version: 7.0.1\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: github-actions\n- dependency-name: github/codeql-action\n  dependency-version: 4.35.2\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: github-actions\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "9e918bbc82c0d72e1c56296287ac42b0c8f54a70",
      "tree": "c1d88bcc4cec2b7bed5e10e325bf5a73348da92f",
      "parents": [
        "b9d9bc17abbaaab89fd91b6912ef01f243ab03fe"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Apr 30 21:12:07 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 30 21:12:07 2026"
      },
      "message": "Replace memcpy call with struct member assignment\n\nThe following memcpy call assigns an avifROData struct to an avifRWData\nstruct:\n\n    memcpy(\u0026item-\u003emergedExtents, \u0026offsetBuffer, sizeof(avifRWData));\n\nReplace it with assignments of the `data` and `size` fields of the\nstructs. Then, omit the assignment of the `size` field because it will\nbe immediately overwritten. Add an assertion to ensure the new value of\nthe `size` field is valid (does not exceed the original value)."
    },
    {
      "commit": "b9d9bc17abbaaab89fd91b6912ef01f243ab03fe",
      "tree": "1e7ce9d59a7e4df853c3d6c18a147da9b8b312e7",
      "parents": [
        "d9fe950c041734e6d8c034f20a7c5ae40ace7637"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Apr 30 19:12:11 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 30 19:12:11 2026"
      },
      "message": "Update comment for avifDecoderItem::mergedExtents\n\nThe mergedExtents field of the avifDecoderItem struct is now always\nused. However, it may or may not own the buffer it points to, depending\non the value of the ownsMergedExtents field."
    },
    {
      "commit": "d9fe950c041734e6d8c034f20a7c5ae40ace7637",
      "tree": "a52bd77c0c74ffc821852e36f7b075175f16a409",
      "parents": [
        "f416fdc0e813d40b7336556847bdd6d3b3b4732d"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Apr 30 19:10:54 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 30 19:10:54 2026"
      },
      "message": "Update to AVM research-v15.0.0 anchor RC1"
    },
    {
      "commit": "f416fdc0e813d40b7336556847bdd6d3b3b4732d",
      "tree": "eccffad61ea51d72966339e2e539e322f981217c",
      "parents": [
        "c56e49ef79021c179be6c15cfc7013f11888d790"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed Apr 29 23:11:23 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 29 23:11:23 2026"
      },
      "message": "Port the PoC for b/506387278 to libavif\n\nSee https://github.com/webmproject/CrabbyAvif/pull/812. The bug doesn\u0027t\naffect libavif, but it is good to add the test to libavif\u0027s test suite.\n\nBug: https://b.corp.google.com/issues/506387278"
    },
    {
      "commit": "c56e49ef79021c179be6c15cfc7013f11888d790",
      "tree": "72a9b6195a27d7b1f1e7b25474b3bbf22441b93c",
      "parents": [
        "b54eac58daf563e9150cc6abce7631ac71b999aa"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed Apr 29 04:45:20 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 29 04:45:20 2026"
      },
      "message": "setup-macos: Re-enable installation of imagemagick\n\nBug: https://github.com/AOMediaCodec/libavif/issues/3172"
    },
    {
      "commit": "b54eac58daf563e9150cc6abce7631ac71b999aa",
      "tree": "c4720dd60776b99180dba9dc044f8eb35565cab3",
      "parents": [
        "b357f083ea5ae0ee7b09a65a48621f345e710588"
      ],
      "author": {
        "name": "jeffhuang",
        "email": "jeff@docker.xydrsucermoubd24xgo33yhsgd.bx.internal.cloudapp.net",
        "time": "Sun Apr 19 04:24:41 2026"
      },
      "committer": {
        "name": "Vignesh Venkatasubramanian",
        "email": "vigneshvg@users.noreply.github.com",
        "time": "Mon Apr 20 22:33:28 2026"
      },
      "message": "Android JNI: reject invalid length at direct buffer entry points\n\nThe public Android JNI decoder entry points accept a signed int length\nand forward it, unchecked, into size_t boundaries. A negative length\n(e.g. -1) sign-extends to a near-SIZE_MAX value, so the parser trusts\nthe inflated advertised size and reads past the real direct-buffer\nallocation. See issue #3177 for the ASan heap-buffer-overflow\nreproducer.\n\nAdd a ValidateDirectBuffer() helper that rejects negative lengths,\nnon-direct buffers, lengths larger than the direct buffer capacity,\nand null addresses before any cast to size_t. Apply it at every\npublic JNI entry point consuming (ByteBuffer, int) — isAvifImage,\ngetInfo, decode, and createDecoder. Change the internal\nCreateDecoderAndParse() helper to take size_t length so the\nsigned-to-unsigned sign-extension is gone from the internal path too.\n\nAdd an Android instrumentation regression test\n(AvifDecoderLengthValidationTest) that covers length \u003d -1,\nlength \u003d Integer.MIN_VALUE, length \u003d capacity + 1,\nlength \u003d Integer.MAX_VALUE, heap-backed buffers, and the happy path\non a valid image, verifying every case returns the clean-failure\ncontract (false / null) instead of crashing.\n\nLeaves src/read.c, src/stream.c, and the Java public API surface\n(AvifDecoder.java) unchanged: the fix enforces the contract at the\nJNI boundary where the signed length enters.\n\nFixes #3177\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "b357f083ea5ae0ee7b09a65a48621f345e710588",
      "tree": "df3bc8b320c554e5c6f9fadd5b6264d8e6fe7888",
      "parents": [
        "d64d496ec22e97b76fee2078bfd857f58e00f012"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Apr 09 13:53:32 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 09 13:53:32 2026"
      },
      "message": "Update to AVM research-v14.1.0 minor release"
    },
    {
      "commit": "d64d496ec22e97b76fee2078bfd857f58e00f012",
      "tree": "b2a17e32ef82bb6ea65c4d4bbccae80c6f803db8",
      "parents": [
        "d87d7a33d9c6d2e5c1ea18dd540a20d32ebfe48a"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Apr 09 13:00:48 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 09 13:00:48 2026"
      },
      "message": "Bump SVT-AV1 dependency to v4.1.0"
    },
    {
      "commit": "d87d7a33d9c6d2e5c1ea18dd540a20d32ebfe48a",
      "tree": "819cf71eb449a12041786b0e25836b82ff09c437",
      "parents": [
        "7ac6d8c645f598eddf5642147631151d9dcfbe75"
      ],
      "author": {
        "name": "Yuan Tong",
        "email": "13075180+tongyuantongyu@users.noreply.github.com",
        "time": "Wed Apr 08 18:17:37 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 08 18:17:37 2026"
      },
      "message": "Fix layered image decoding with alpha"
    },
    {
      "commit": "7ac6d8c645f598eddf5642147631151d9dcfbe75",
      "tree": "1017f5906e799b270708f7f54131aac6e441a4a4",
      "parents": [
        "b8d6c1a8d154ac4d0e5c63354e8aa9f2cafb2995"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Wed Apr 08 18:14:58 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 08 18:14:58 2026"
      },
      "message": "setup-macos: Disable installation of imagemagick\n\nIt is failing with the following error message:\n\n  \u003d\u003d\u003e imagemagick\n  imagemagick-full includes additional tools and libraries that are not\n  included in the regular imagemagick formula.\n\nFixes https://github.com/AOMediaCodec/libavif/issues/3172."
    },
    {
      "commit": "b8d6c1a8d154ac4d0e5c63354e8aa9f2cafb2995",
      "tree": "b23a6a03d3e5618f81f69259a2a4fe76cc43f104",
      "parents": [
        "226e112a833bbb3e98632492e4d766e37d661774"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Tue Apr 07 19:42:28 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 07 19:42:28 2026"
      },
      "message": "Avoid MT loop restoration crash in libaom \u003c 3.13.3\n\nAvoid a multithreading crash in loop restoration code in libaom \u003c 3.13.3\nwhen the first layer of a layered image is scaled."
    },
    {
      "commit": "226e112a833bbb3e98632492e4d766e37d661774",
      "tree": "e857d05413080b4d5b33c054556c533cce3f0323",
      "parents": [
        "5e4c5ae89997b9d7f0efce4f5f821c443a00ec18"
      ],
      "author": {
        "name": "Yannis Guyon",
        "email": "yguyon@google.com",
        "time": "Fri Apr 03 09:15:02 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 03 09:15:02 2026"
      },
      "message": "Explicitly forbid reusing encoder instance (#3163)"
    },
    {
      "commit": "5e4c5ae89997b9d7f0efce4f5f821c443a00ec18",
      "tree": "3724092f790818dff5c1115e4bad2f84cc574d41",
      "parents": [
        "a351a0063f2ff4fc378f026470c94804874f3248"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Apr 02 23:12:36 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 02 23:12:36 2026"
      },
      "message": "Update to libaom v3.13.3"
    },
    {
      "commit": "a351a0063f2ff4fc378f026470c94804874f3248",
      "tree": "df8886673b5163b8e2b497bd814063afc4750e29",
      "parents": [
        "5097f8c543ce6af543c942a6455c1c0592a508e4"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Thu Apr 02 13:10:16 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 02 13:10:16 2026"
      },
      "message": "Update to AVM research-v14.0.0 anchor"
    }
  ],
  "next": "5097f8c543ce6af543c942a6455c1c0592a508e4"
}
