)]}'
{
  "log": [
    {
      "commit": "937b8d0b10e5cfd2b16c26ec4ebe03baa4aab9f3",
      "tree": "0281c7354d128c5fc0f237e07173ab9d583eb6c9",
      "parents": [
        "d2a40334a332cbf654eb7a45ac547d0a92029647"
      ],
      "author": {
        "name": "Dan Robertson",
        "email": "",
        "time": "Fri Mar 06 23:15:39 2026 -0500"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Mon May 04 11:41:43 2026 +0000"
      },
      "message": "Allow zero sized unions to be defined\n\nA union may be defined in C that contains only zero sized types. We\nshould in turn generate a rust union in this case.\n"
    },
    {
      "commit": "d2a40334a332cbf654eb7a45ac547d0a92029647",
      "tree": "aef8a4fa352109d6cdf90f0eb3f4f28d6e80920a",
      "parents": [
        "092d90e2bf48be2df30d797e9fde8e32b184db34"
      ],
      "author": {
        "name": "Danny Wolf",
        "email": "wolfd@users.noreply.github.com",
        "time": "Fri Apr 03 11:47:39 2026 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Mon May 04 11:12:53 2026 +0000"
      },
      "message": "Allow for renaming struct/union fields\n\nI\u0027ve added a `ParseCallbacks` method called `field_name` which is given\nthe same `FieldInfo` struct that `field_visibility` takes.\n\nI wasn\u0027t entirely sure where to change field names, I ended up doing it\nin what was `deanonymize_fields` which has been renamed to\n`assign_field_names` as suggested by [this\ncomment](https://github.com/rust-lang/rust-bindgen/pull/1058#discussion_r142717644)\n\nRelated to https://github.com/rust-lang/rust-bindgen/issues/1097 and https://github.com/rust-lang/rust-bindgen/issues/1098\n"
    },
    {
      "commit": "092d90e2bf48be2df30d797e9fde8e32b184db34",
      "tree": "236a85bd63a32c9a2eca43e9c3ebf5f836d22a0b",
      "parents": [
        "b7b501feb2642b6ac3796f8c5f2a1461640a2a67"
      ],
      "author": {
        "name": "Miguel Ojeda",
        "email": "ojeda@kernel.org",
        "time": "Sun Apr 26 17:37:11 2026 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Mon May 04 11:09:31 2026 +0000"
      },
      "message": "ci: Move forward Rust for Linux version to v7.1-rc1\n\nLinux v7.1 will have our new MSRVs: Rust 1.85.0 and `bindgen` 0.71.1.\n\nSigned-off-by: Miguel Ojeda \u003cojeda@kernel.org\u003e\n"
    },
    {
      "commit": "b7b501feb2642b6ac3796f8c5f2a1461640a2a67",
      "tree": "832c5577075e2545be760fb067ef8923bed8050c",
      "parents": [
        "5ae4b31e9aecc9fe583e752e2d4b4e68dc057ebd"
      ],
      "author": {
        "name": "Dan Robertson",
        "email": "dan@dlrobertson.com",
        "time": "Tue Feb 24 09:43:23 2026 -0500"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Tue Feb 24 15:48:01 2026 +0000"
      },
      "message": "Do not use the canonical declaration for enum type building\n\nAllow forward declarations to be used by avoiding the use of the\ncanonical declaration when building the underlying representation.\n"
    },
    {
      "commit": "5ae4b31e9aecc9fe583e752e2d4b4e68dc057ebd",
      "tree": "c1feb529b22d89ad703f5d78d67b1754685c63af",
      "parents": [
        "a502187aa552e8edcaba07c84fc3744cf36550a2"
      ],
      "author": {
        "name": "bendn",
        "email": "bend.n@outlook.com",
        "time": "Mon Dec 22 04:05:31 2025 +0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Feb 21 10:02:58 2026 +0000"
      },
      "message": "tests\n"
    },
    {
      "commit": "a502187aa552e8edcaba07c84fc3744cf36550a2",
      "tree": "e4a94a73240173b5a43be629ada9532662739119",
      "parents": [
        "04083330e4c05670ab175e9d05b4e375b3d47b5f"
      ],
      "author": {
        "name": "bendn",
        "email": "bend.n@outlook.com",
        "time": "Mon Dec 22 03:30:25 2025 +0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Feb 21 10:02:58 2026 +0000"
      },
      "message": "fix unnecessary transmute triggering on bitfield codegen\n"
    },
    {
      "commit": "04083330e4c05670ab175e9d05b4e375b3d47b5f",
      "tree": "43ad3cb4dd732be23a45d60ae1397a913e1a08e2",
      "parents": [
        "44f451df4d63abeecb527bd6122ff36dfe5b29e7"
      ],
      "author": {
        "name": "naoNao89",
        "email": "90588855+naoNao89@users.noreply.github.com",
        "time": "Tue Dec 16 04:37:38 2025 +0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Feb 21 10:02:47 2026 +0000"
      },
      "message": "refactor: centralize comment generation checks (fixes #445)\n\n- Add doc_comment() method to FieldData that checks generate_comments flag\n- Add doc_comment() method to EnumVariant that checks generate_comments flag\n- Remove redundant generate_comments checks from field codegen\n- Remove redundant generate_comments checks from enum variant codegen\n\nThis makes the code more idiomatic by having types that generate comments\nhandle the flag check themselves, eliminating duplication and centralizing\nthe decision logic.\n"
    },
    {
      "commit": "44f451df4d63abeecb527bd6122ff36dfe5b29e7",
      "tree": "5197a350effb958edd05e3a61c65665bfdd790e8",
      "parents": [
        "c2c1151c5d61c3532c8dc2f3d02fe4e592147b28"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Feb 21 10:51:01 2026 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Feb 21 09:56:31 2026 +0000"
      },
      "message": "ci: Bump RFL kernel\n"
    },
    {
      "commit": "c2c1151c5d61c3532c8dc2f3d02fe4e592147b28",
      "tree": "bd8cf5e73ed977212e2666b5549e46acb026ae95",
      "parents": [
        "0d0a33b77d1382d554edb85006d5ff33857f3fba"
      ],
      "author": {
        "name": "Per Larsen",
        "email": "perlarsen@google.com",
        "time": "Wed Jan 14 15:03:13 2026 -0800"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Feb 21 09:56:31 2026 +0000"
      },
      "message": "ci: isolate DYLD_LIBRARY_PATH during git diff checks\n"
    },
    {
      "commit": "0d0a33b77d1382d554edb85006d5ff33857f3fba",
      "tree": "c90414c941eded6219b60b84a4ca2ad3783b8d2a",
      "parents": [
        "74a5f30c14769891e12de53ba275233ef2616819"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Feb 21 10:27:26 2026 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Feb 21 09:56:31 2026 +0000"
      },
      "message": "features: Add some comments to appease clippy.\n"
    },
    {
      "commit": "74a5f30c14769891e12de53ba275233ef2616819",
      "tree": "46ca893b660d63b1af4cfc2f2dc957408df39134",
      "parents": [
        "82911a260820fa60486c4ca715ff226047f02227"
      ],
      "author": {
        "name": "luohewuyang",
        "email": "luohewuyang@outlook.com",
        "time": "Mon Dec 22 11:26:03 2025 +0800"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Dec 31 12:55:56 2025 +0000"
      },
      "message": "chore: fix some typos in comments\n\nSigned-off-by: luohewuyang \u003cluohewuyang@outlook.com\u003e\n"
    },
    {
      "commit": "82911a260820fa60486c4ca715ff226047f02227",
      "tree": "310e300e6427bfbe0572a17ecb89d403ca133994",
      "parents": [
        "23e2b0124d37105125d605df6a69b9c56b49b062"
      ],
      "author": {
        "name": "mematthias",
        "email": "107192630+mematthias@users.noreply.github.com",
        "time": "Mon Dec 29 11:10:36 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Dec 31 12:55:30 2025 +0000"
      },
      "message": "Emit const __BindgenUnionField accessors and comply with Rust 2024 unsafe-op-in-unsafe-fn\n"
    },
    {
      "commit": "23e2b0124d37105125d605df6a69b9c56b49b062",
      "tree": "18a45eeb85ed3695e0ed2ad34455573b66993850",
      "parents": [
        "5af54289b4cc82b1d1c776ec64eecd1ec8ff04a3"
      ],
      "author": {
        "name": "Bennet Bleßmann",
        "email": "bb-github@t-online.de",
        "time": "Mon Dec 15 21:13:44 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Tue Dec 16 10:06:11 2025 +0000"
      },
      "message": "handle versions in the formats `1.71.1-beta`, `1.71.1-beta.1`, `1.71.1-nightly`\n"
    },
    {
      "commit": "5af54289b4cc82b1d1c776ec64eecd1ec8ff04a3",
      "tree": "73788b9bd69088268caa289bc1d9950eba890250",
      "parents": [
        "496817f7cc0c05e47ae12183518dc9aaac2e3a02"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jsgf@meta.com",
        "time": "Sat Dec 06 02:49:36 2025 -0800"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Tue Dec 16 09:33:17 2025 +0000"
      },
      "message": "Add const-generic bitfield accessors for compile-time optimization\n\nAdd a specialized impl block for `__BindgenBitfieldUnit\u003c[u8; N]\u003e` with\nconst-generic methods: `get_const`, `set_const`, `raw_get_const`, and\n`raw_set_const`. These methods take bit offset and width as const generic\nparameters, allowing the compiler to fully optimize bitfield access at\ncompile time.\n\nUpdate codegen to use the new const-generic methods for generated\nbitfield accessors. Since all bitfield offsets and widths are known at\ncode generation time, this enables better optimization.\n\nThe original runtime-parameter methods are preserved for backwards\ncompatibility with users who provide custom implementations via the\nblocklist mechanism.\n"
    },
    {
      "commit": "496817f7cc0c05e47ae12183518dc9aaac2e3a02",
      "tree": "caf29234c041c139b1ec2e9d3993ea4e7ac8d716",
      "parents": [
        "7c38446b40fb487bae84b693c3c06fdb0d28e4d8"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jsgf@meta.com",
        "time": "Sat Dec 06 02:43:57 2025 -0800"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Tue Dec 16 09:33:17 2025 +0000"
      },
      "message": "Optimize BitfieldUnit get/set with byte-wise operations\n\nReplace bit-at-a-time loops in get(), set(), raw_get(), and raw_set()\nwith byte-wise shift/mask operations. This significantly improves\nperformance for multi-bit field access.\n\nThe new implementation reads/writes bytes in chunks and uses shifts\nand masks to extract/insert values, rather than iterating over each\nbit individually.\n\nFor big-endian targets, the algorithm reverses bits within bytes and\nthe final value to maintain the same semantics as the original\nimplementation.\n"
    },
    {
      "commit": "7c38446b40fb487bae84b693c3c06fdb0d28e4d8",
      "tree": "53c838e731af6dce2c1f660e3c332ae6369bf12b",
      "parents": [
        "953fc761b6fa2c6d467d96335709ce19667f5edd"
      ],
      "author": {
        "name": "Marijn Suijten",
        "email": "marijn@traverseresearch.nl",
        "time": "Mon Dec 08 14:24:29 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Tue Dec 16 09:31:28 2025 +0000"
      },
      "message": "Change `Bindings::write()` to take `impl Write` instead of `\u0026mut dyn Write`\n\nDynamic dispatch is not (always) needed here, and this way an owned\n`File` can trivially be moved into the function again like before\nwithout forcing a mutable borrow.  Noting that `Write` is even\nimplemented on `\u0026File`, which can now be more easily passed without\nhaving it under `mut`.\n"
    },
    {
      "commit": "953fc761b6fa2c6d467d96335709ce19667f5edd",
      "tree": "b3b0dbb126e748691e04e8e261973eade6f90dd0",
      "parents": [
        "ccd563767ab1509f7c0eb68c6effc79eaf3684a9"
      ],
      "author": {
        "name": "Xiangfei Ding",
        "email": "dingxiangfei2009@protonmail.ch",
        "time": "Mon Dec 15 10:36:29 2025 +0000"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Mon Dec 15 11:52:10 2025 +0000"
      },
      "message": "Simplify some pattern matching\n\nThis small patch is to pulled away off another patch.\nWith this we are one `clone` less and the pattern getting matched\nagainst is more obvious.\n\nSigned-off-by: Xiangfei Ding \u003cdingxiangfei2009@protonmail.ch\u003e\n"
    },
    {
      "commit": "ccd563767ab1509f7c0eb68c6effc79eaf3684a9",
      "tree": "14636efd104e53b36a68d1728a34fb07c9160fc7",
      "parents": [
        "192fd6a5a308599137fb5943a95b3db960e30c27"
      ],
      "author": {
        "name": "Marijn Suijten",
        "email": "marijn@traverseresearch.nl",
        "time": "Tue Nov 11 12:26:51 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Mon Dec 08 12:40:11 2025 +0000"
      },
      "message": "Don\u0027t require a `Box` wrapper on `Bindings::write()`\n\nThe function in question doesn\u0027t store the `dyn Write` trait object\nanywhere, allowing us to pass a plain `\u0026mut dyn Write` (which is also\nimplemented for `\u0026mut Box\u003cdyn Write\u003e` allowing the existing CLI parser\nto operate normally).\n\nThis in turn no longer requires users of `bindgen` to wrap their\n`\u0026mut File` or `\u0026mut Vec\u003cu8\u003e` in a moved `Box` just to be able to give\ntemporary mutable access to the `write() function`.\n"
    },
    {
      "commit": "192fd6a5a308599137fb5943a95b3db960e30c27",
      "tree": "5f7735a2f85f15f207e316ceaa584f27d8d57820",
      "parents": [
        "ac3bc6ebfd5a8d6c99d42837ec123a90d37af679"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jsgf@fb.com",
        "time": "Tue Oct 21 18:17:09 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Mon Dec 08 12:38:03 2025 +0000"
      },
      "message": "Support nested flexible array members\n\nAdd support for structs where the last field is itself a struct\ncontaining a flexible array member (FAM). For example:\n\n    struct Name {\n        int count;\n        char name[];\n    };\n\n    struct Field {\n        int id;\n        struct Name name;  // Last field has a FAM\n    };\n\nThe Name struct is generated with a generic FAM parameter:\n\n    pub struct Name\u003cFAM: ?Sized \u003d [c_char; 0]\u003e {\n        pub count: c_int,\n        pub name: FAM,\n    }\n\nAnd Field propagates this parameter to its nested field:\n\n    pub struct Field\u003cFAM: ?Sized \u003d [c_char; 0]\u003e {\n        pub id: c_int,\n        pub name: Name\u003cFAM\u003e,\n    }\n\nFor packed structs, the nested FAM field is wrapped in ManuallyDrop\nsince packed structs cannot directly contain DST fields:\n\n    #[repr(C, packed)]\n    pub struct FieldPacked\u003cFAM: ?Sized \u003d [c_char; 0]\u003e {\n        pub id: c_int,\n        pub name: ::std::mem::ManuallyDrop\u003cName\u003cFAM\u003e\u003e,\n    }\n\nImplementation:\n- Enhanced flex_array_member() in ir/comp.rs to recursively detect\n  when a struct\u0027s last field is a compound type with its own FAM\n- Updated field code generation to parameterize nested FAM field\n  types with \u003cFAM\u003e and wrap in ManuallyDrop for packed structs\n- Added test cases for nested FAMs in both regular and packed structs\n\nRelated to #2936\n"
    },
    {
      "commit": "ac3bc6ebfd5a8d6c99d42837ec123a90d37af679",
      "tree": "6fa263a2d3ad10752e9ac1cd28dda0b75b10ca0e",
      "parents": [
        "1cea6959c5e0ef6d068bc2cbf379e49f41cd626b"
      ],
      "author": {
        "name": "Jonathan Schwender",
        "email": "schwenderjonathan@gmail.com",
        "time": "Fri Nov 28 15:20:26 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Nov 28 16:32:05 2025 +0000"
      },
      "message": "Fix clippy lint\n"
    },
    {
      "commit": "1cea6959c5e0ef6d068bc2cbf379e49f41cd626b",
      "tree": "a5df613a548f4731cff5b5689df424aaa855a01f",
      "parents": [
        "5813198164bf15d8b7020baed28cd920d83938c0"
      ],
      "author": {
        "name": "Jonathan Schwender",
        "email": "schwenderjonathan@gmail.com",
        "time": "Sun Feb 02 09:53:11 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Nov 28 16:32:05 2025 +0000"
      },
      "message": "Prevent default derives for Forward declared types.\n\nWe do not know the layout for forward declared types.\nDeriving Copy, Clone, Hash, PartialEq etc. is simply wrong.\nDeriving Debug is debatable, since it can\u0027t print anything\nuseful. Since we previously would derive Debug, lets just\nkeep it, to avoid needless breaking changes.\n\nChanged tests:\n- func-return-must-use: Don\u0027t use forward declared structs in the\n  test, since that would result in wrong bindings!\n- issue-1238-fwd-no-copy test no longer requires an annotation,\n  since Forward declared types should always be no copy\n- forward-declaration-autoptr.rs: Manually implement clone.\n  The inner type is unknown, so requiring clone/copy is not correct.\n"
    },
    {
      "commit": "5813198164bf15d8b7020baed28cd920d83938c0",
      "tree": "271b0ce1710f1d8c25ab38840da9898c0cb79056",
      "parents": [
        "6fe53022c2506b93fa15e097d3016bb29948cbee"
      ],
      "author": {
        "name": "Simonas Kazlauskas",
        "email": "git@kazlauskas.me",
        "time": "Mon Nov 10 19:33:36 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Mon Nov 10 23:41:39 2025 +0000"
      },
      "message": "feat(dyngen): preconvert path to `OsStr` when opening the library\n\nIn libloading 0.9 the argument bound changed from `AsRef\u003cOsStr\u003e` to\n`libloading::AsFilename`. This was necessary in order to enable\ncompilation of libloading for usecases that cannot depend on libstd.\n`libloading::AsFilename` supports most of the same types, but cannot be\nimplemented generally for any `T: AsRef\u003cOsStr\u003e` due to the orphan rule.\n\nThis makes the generated code support both 0.8 and 0.9 versions of\nlibloading transparently, and at the same time it also reduces the\nnumber of different instantiations of `Library::new`.\n\nWhen bindgen is adjusted to work with libloading 0.9 only it will be\nworthwhile to adjust the generation of `from_library` to use `c\"string\"`\nliterals over `b\"string\\0\"` ones as those can forgo any runtime checking\nof the argument(s). However we can\u0027t do it right while libloading 0.8 is\nstill supported.\n"
    },
    {
      "commit": "6fe53022c2506b93fa15e097d3016bb29948cbee",
      "tree": "4b26c9e78531315bde7d5547393fcfeaf3d4166f",
      "parents": [
        "f94b50d2b57c165a911bdbf34188af5e12474091"
      ],
      "author": {
        "name": "Pekka Ristola",
        "email": "pekkarr@protonmail.com",
        "time": "Sat Nov 08 16:07:15 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Nov 09 02:00:57 2025 +0000"
      },
      "message": "Remove incorrect `size_t_is_usize` check\n\nDon\u0027t require that the alignment of `size_t` equals pointer size when\nusing the `size_t_is_usize` option. The purpose of this check was to make\nsure that `size_t` and `uintptr_t` are the same type, but the alignment\nand size don\u0027t have to match for that to be true. The code still checks\nthat `size_t` has the same size as a pointer.\n\nClang\u0027s C API doesn\u0027t expose the target pointer alignment, so just remove\nthe assert.\n\nFixes https://github.com/rust-lang/rust-bindgen/issues/3312\n"
    },
    {
      "commit": "f94b50d2b57c165a911bdbf34188af5e12474091",
      "tree": "777bf5d12a3d8f6f57fe59b349f6e5b2bf8798b8",
      "parents": [
        "6bb851216378aaed1add619af3b3690d9d0f91f2"
      ],
      "author": {
        "name": "Pekka Ristola",
        "email": "pekkarr@protonmail.com",
        "time": "Sat Nov 08 17:06:08 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Nov 08 20:34:26 2025 +0000"
      },
      "message": "Fix `clippy::derivable_impls` lint\n"
    },
    {
      "commit": "6bb851216378aaed1add619af3b3690d9d0f91f2",
      "tree": "146bf36c64f058888f8690eca9092ca34b11c1cb",
      "parents": [
        "72dc5f86caf80fb2930a053b2af7383edb85557f"
      ],
      "author": {
        "name": "Marijn Suijten",
        "email": "marijns95@gmail.com",
        "time": "Mon Nov 03 00:17:06 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Mon Nov 03 10:55:23 2025 +0000"
      },
      "message": "Fix broken intradoc link on `ParseCallbacks::header_file()`\n\nBy having the `()[]` syntax the wrong way around, `rustdoc` seems to treat the leading ``(`link`)`` as text while picking up the ``[`link`]`` as an item via  [\"Implied Shortcut Reference Links\"](https://rust-lang.github.io/rfcs/1946-intra-rustdoc-links.html#implied-shortcut-reference-links).\r\n\r\nFlip that to make the link render as expected again."
    },
    {
      "commit": "72dc5f86caf80fb2930a053b2af7383edb85557f",
      "tree": "a200e42e3bd734bef466cd458d19b6423fd92a3b",
      "parents": [
        "312afb7028590e986472412e520f6935445a6da4"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jsgf@fb.com",
        "time": "Fri Oct 24 11:33:18 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Nov 01 12:08:20 2025 +0000"
      },
      "message": "Dedup code to collect custom field attributes\n\nA single function gathers custom field attributes from cli, API and\nannotations, and then use it for both newtype and regular struct/union\nfields.\n"
    },
    {
      "commit": "312afb7028590e986472412e520f6935445a6da4",
      "tree": "0694ce0ac4085ffbc99dd54c50e807ba965387f6",
      "parents": [
        "5aa4e33f95688a21e212c195b7cce907c047e661"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jsgf@fb.com",
        "time": "Tue Oct 21 18:31:42 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Nov 01 12:08:20 2025 +0000"
      },
      "message": "Add support for custom per-field attributes\n\nThis adds the ability to apply custom Rust attributes to individual\nstruct, union, and newtype fields in generated bindings through three\nmechanisms:\n\n1. HTML annotations in C/C++ comments:\n```c\n/// \u003cdiv rustbindgen attribute\u003d\"serde(rename \u003d x_coord)\"\u003e\u003c/div\u003e\nint x;\n```\n\n2. ParseCallbacks::field_attributes() method for programmatic control:\n```rust\nfn field_attributes(\u0026self, info: \u0026FieldAttributeInfo) -\u003e Vec\u003cString\u003e\n```\n\n3. CLI flag and Builder API for pattern-based attributes:\n```bash\n--field-attr \"Point::x\u003dserde(rename \u003d x_coord)\"\n```\n```rust\n.field_attribute(\"Point\", \"x\", \"serde(rename \u003d x_coord)\")\n```\n\nAll three mechanisms can be used together, with attributes merged in\norder: annotations, callbacks, then CLI/Builder patterns.\n\nThis is useful for adding serde attributes, documentation, or other\nderive-related metadata to specific fields.\n"
    },
    {
      "commit": "5aa4e33f95688a21e212c195b7cce907c047e661",
      "tree": "2f5171391ef66157d4b8f7ebd6e9b67d1d5c4474",
      "parents": [
        "4731d6c955ff40136a1fe560bd592a33913556e3"
      ],
      "author": {
        "name": "Miguel Ojeda",
        "email": "ojeda@kernel.org",
        "time": "Fri Oct 31 14:33:14 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Nov 01 11:54:52 2025 +0000"
      },
      "message": "ci: Move forward Rust for Linux version to v6.18-rc3\n\nThis upgrade is also needed now since Rust 1.91.0 got released, which\nblocks the CI [1] due to the change in the target spec format in upstream\nRust [2]. Support for the new format was added in Linux v6.17-rc5 [3].\n\nLink: https://github.com/rust-lang/rust-bindgen/pull/3307 [1]\nLink: https://github.com/rust-lang/rust/pull/144443 [2]\nLink: https://github.com/Rust-for-Linux/linux/commit/8851e27d2cb947ea8bbbe8e812068f7bf5cbd00b [3]\nSigned-off-by: Miguel Ojeda \u003cojeda@kernel.org\u003e\n"
    },
    {
      "commit": "4731d6c955ff40136a1fe560bd592a33913556e3",
      "tree": "6b4d9ef84f919a23c699d3bc2c66cd45e2c88b3d",
      "parents": [
        "d23fcd25854b8bfe1959538e42cd0cf5758aff9a"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jsgf@fb.com",
        "time": "Tue Oct 21 13:42:11 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Tue Oct 21 21:06:09 2025 +0000"
      },
      "message": "Fix packed structs with flexible array members\n\nWrap the FAM generic parameter in `ManuallyDrop` when the parent struct\nis packed. This satisfies Rust\u0027s requirement that DST fields in packed\nstructs must not need `Drop` to be run.\n\nThe fix automatically detects packed structs and generates:\n  pub field: ::std::mem::ManuallyDrop\u003cFAM\u003e\ninstead of:\n  pub field: FAM\n\nFixes https://github.com/rust-lang/rust-bindgen/issues/2936\n"
    },
    {
      "commit": "d23fcd25854b8bfe1959538e42cd0cf5758aff9a",
      "tree": "cdfb2ab961276df965f018023eded1ef35f595af",
      "parents": [
        "6d23680ebfe89b1efc4a2d78bb5450cbe0747e69"
      ],
      "author": {
        "name": "usamoi",
        "email": "usamoi@outlook.com",
        "time": "Mon Jul 14 00:22:58 2025 +0800"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Oct 18 08:52:20 2025 +0000"
      },
      "message": "report constants and variables in ParseCallbacks::new_item_found\n"
    },
    {
      "commit": "6d23680ebfe89b1efc4a2d78bb5450cbe0747e69",
      "tree": "a2c7e5e2175c050163995bcaa7c32245e2aa71af",
      "parents": [
        "d5fc49cd5a971895965bdfed3793e5dabf504c67"
      ],
      "author": {
        "name": "Ilya Maykov",
        "email": "ilyam@squareup.com",
        "time": "Fri Sep 26 15:25:33 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Mon Oct 13 11:16:53 2025 +0000"
      },
      "message": "codegen: Deduplicate derive traits added by add_derives() parse callback\n\nFixes #3286\n"
    },
    {
      "commit": "d5fc49cd5a971895965bdfed3793e5dabf504c67",
      "tree": "937d36a38093d6ef594a4317b0057a6483a0cbe0",
      "parents": [
        "ac0fa3bff3c17b6b0f42f48aa4950a9a03b43611"
      ],
      "author": {
        "name": "Konrad Koschel",
        "email": "konrad.koschel@sap.com",
        "time": "Wed Jul 30 16:00:01 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Oct 10 17:37:38 2025 +0000"
      },
      "message": "feat: Custom attributes for extern fn blocks\n\nchore: allow both wasm_import and raw-dylib\n\nfeat: Refactor specific attribute solution to general solution\n\nchore: rustfmt\n\nfix: wasm import module binding order\n\nfix: Use different test attribute\n"
    },
    {
      "commit": "ac0fa3bff3c17b6b0f42f48aa4950a9a03b43611",
      "tree": "d2bc3aa10e1bd510f0bc723b28cd923cf551d0dc",
      "parents": [
        "e2460d9891dd0bf661852fa1af52213b9d30a5d7"
      ],
      "author": {
        "name": "Tin Švagelj",
        "email": "tin.svagelj@live.com",
        "time": "Sat Sep 13 23:04:00 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Oct 02 15:24:35 2025 +0000"
      },
      "message": "Use NonNull for C++ references\n\n- Make feature disabled by default until usability concerns are resolved.\n- Add test for --nonnull-references argument\n\nSigned-off-by: Tin Švagelj \u003ctin.svagelj@live.com\u003e\n"
    },
    {
      "commit": "e2460d9891dd0bf661852fa1af52213b9d30a5d7",
      "tree": "f347ebf5d3901d5493dccbca6fcb1d5ec4f24118",
      "parents": [
        "e604f6b5d8a29391d911501054beeec52fb7c0df"
      ],
      "author": {
        "name": "Vegard Eriksen",
        "email": "ve@jetro.no",
        "time": "Thu Oct 02 13:58:04 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Oct 02 15:18:30 2025 +0000"
      },
      "message": "Allow constant expressions that doesn\u0027t fit in i64.\n\nFixes #2618\n"
    },
    {
      "commit": "e604f6b5d8a29391d911501054beeec52fb7c0df",
      "tree": "33029494fbb85ab6155a3c1205873f11a16a4483",
      "parents": [
        "af3694f07741607654500bb27532f78e78c57137"
      ],
      "author": {
        "name": "Nico Burns",
        "email": "nico@nicoburns.com",
        "time": "Thu Oct 02 01:04:35 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Oct 02 08:00:05 2025 +0000"
      },
      "message": "Add tests for f32 literals\n"
    },
    {
      "commit": "af3694f07741607654500bb27532f78e78c57137",
      "tree": "57649f87fae3f588d680e8c7ae4b14a07a4cb5e0",
      "parents": [
        "dbe8ed9d9a94ceb77589b35bd8e766b65902ebd3"
      ],
      "author": {
        "name": "Nico Burns",
        "email": "nico@nicoburns.com",
        "time": "Sun Sep 28 16:40:36 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Oct 02 08:00:05 2025 +0000"
      },
      "message": "Fix generation of f32 NAN, INFINITY, and NEG_INFINITY\n\nSigned-off-by: Nico Burns \u003cnico@nicoburns.com\u003e\n"
    },
    {
      "commit": "dbe8ed9d9a94ceb77589b35bd8e766b65902ebd3",
      "tree": "a777329999a19ca04cf2eaa1d189f766a7bd062e",
      "parents": [
        "50ec3ee0d9436ff0d6e50c5ff59bf05ef137b386"
      ],
      "author": {
        "name": "Felix Solcher",
        "email": "felix.solcher@gmail.com",
        "time": "Sun Sep 28 14:40:18 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Mon Sep 29 06:18:43 2025 +0000"
      },
      "message": "Add undefined behaviour warning to `rustified_non_exhaustive_enum`\n"
    },
    {
      "commit": "50ec3ee0d9436ff0d6e50c5ff59bf05ef137b386",
      "tree": "820069958b7a89c5002b9b74028bc5040b360559",
      "parents": [
        "1cf0a1fa98ec856b0253f1cfb0b6542968a72ab4"
      ],
      "author": {
        "name": "Matthew Maurer",
        "email": "mmaurer@google.com",
        "time": "Thu Sep 04 22:05:31 2025 +0000"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Tue Sep 16 10:17:41 2025 +0000"
      },
      "message": "codegen: Support new-type-alias constants\n\nFixes #3287\n"
    },
    {
      "commit": "1cf0a1fa98ec856b0253f1cfb0b6542968a72ab4",
      "tree": "eea41b5d50e3c82b4610a3a70a0a947d41d5a49e",
      "parents": [
        "cc2b361b57858c1e0721df9c9f868b1091f46a2c"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Aug 31 19:29:01 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Aug 31 17:35:24 2025 +0000"
      },
      "message": "codegen: Fix typedefs inside constified modules.\n\nFixes #3272\n"
    },
    {
      "commit": "cc2b361b57858c1e0721df9c9f868b1091f46a2c",
      "tree": "7775df7b4ce05fa5e1852937020e9be0d14f201c",
      "parents": [
        "9366e0af8da529c958b4cd4fcbe492d951c86f5c"
      ],
      "author": {
        "name": "Yuri Astrakhan",
        "email": "YuriAstrakhan@gmail.com",
        "time": "Wed Aug 27 16:25:40 2025 -0400"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Aug 27 23:10:03 2025 +0000"
      },
      "message": "chore: inline format args\n"
    },
    {
      "commit": "9366e0af8da529c958b4cd4fcbe492d951c86f5c",
      "tree": "93c890449ff412043f77fc8bb023174e37d6936a",
      "parents": [
        "159c833c9e3423b124f511d28e2e7f2def5d3d57"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Aug 27 16:46:50 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Aug 27 18:39:50 2025 +0000"
      },
      "message": "codegen: Guarantee opaque type layout across all architectures.\n\nFixes #3279\n"
    },
    {
      "commit": "159c833c9e3423b124f511d28e2e7f2def5d3d57",
      "tree": "6be74a6d9b6e4a6da4073a750a0d2303b6767c88",
      "parents": [
        "fc747b70919316aa93e8ccbdae6d462b4fab8eab"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Aug 27 18:45:50 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Aug 27 18:39:50 2025 +0000"
      },
      "message": "codegen: Appease nightly clippy too.\n"
    },
    {
      "commit": "fc747b70919316aa93e8ccbdae6d462b4fab8eab",
      "tree": "babcdaf4b7342280ff22b364191b7398de986188",
      "parents": [
        "2426dd68cd12e0ac022bca18efb9c7d0acd27e12"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Aug 27 18:08:04 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Aug 27 16:24:58 2025 +0000"
      },
      "message": "codegen: Bump minimum stable target.\n\nSupporting const generics significantly simplifies some upcoming\ncorrectness fixes, and rust 1.51 is more than four years old at this\npoint.\n\nThis highlighted some issues with some of the features that we\u0027ve\nimplemented since (e.g. the code to generate partialeq was broken in a\nlot of cases).\n"
    },
    {
      "commit": "2426dd68cd12e0ac022bca18efb9c7d0acd27e12",
      "tree": "40d3995aaf01028a4c0543361816c8d884b7da25",
      "parents": [
        "5fa4a1fa83ee8f03d26bde3a60885ac989554f05"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Aug 27 15:57:15 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Aug 27 14:56:58 2025 +0000"
      },
      "message": "clang: Push the fix for #3277 into Type::declaration.\n\nFixes #3264.\n"
    },
    {
      "commit": "5fa4a1fa83ee8f03d26bde3a60885ac989554f05",
      "tree": "f0261cf64e730be4c0ef46a987c2b48f2c2b443f",
      "parents": [
        "6b6af6b148dd92e2fa8ee78d56e2985e42481333"
      ],
      "author": {
        "name": "Hans Wennborg",
        "email": "hans@chromium.org",
        "time": "Wed Aug 27 14:05:50 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Aug 27 14:56:58 2025 +0000"
      },
      "message": "Get the type\u0027s definition in CompInfo::from_ty\n\nIn https://github.com/llvm/llvm-project/pull/147835, Clang\u0027s AST changed\nso that a TagType\u0027s decl will not necessarily refer to the type\u0027s\ndefinition, but to the exact declaration which produced the type.\n\nFor example, in\n\n  typedef struct S T;\n  struct S {\n    int x;\n  };\n\nthe \u0027struct S\u0027 type would refer to the incomplete type decl in the\ntypedef, causing CompInfo to fail to see the type\u0027s definition.\n\nThis patch inserts a call to use the definition when available. It fixes\nthe original test case in\nhttps://github.com/rust-lang/rust-bindgen/issues/3275 and most of the\ntest failures caused by the Clang change but not all.\n"
    },
    {
      "commit": "6b6af6b148dd92e2fa8ee78d56e2985e42481333",
      "tree": "ce87eb5b1f9c4132da25eb21cee9f31fe3040c0e",
      "parents": [
        "b03b2221a46f14269364b196324cf39497d9b024"
      ],
      "author": {
        "name": "Yuri Astrakhan",
        "email": "YuriAstrakhan@gmail.com",
        "time": "Tue Aug 26 19:21:17 2025 -0400"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Tue Aug 26 23:29:15 2025 +0000"
      },
      "message": "chore: minor cleanup\n\n* fix error messages missing spaces\n* simplify rustfmt_path()\n"
    },
    {
      "commit": "b03b2221a46f14269364b196324cf39497d9b024",
      "tree": "495071e3eef6805bcf151e60ec0918eddff2367b",
      "parents": [
        "4f3fb8f0b3c89e42ea9fcf02b67612ad52ca5da7"
      ],
      "author": {
        "name": "Miguel Ojeda",
        "email": "ojeda@kernel.org",
        "time": "Fri Aug 22 11:20:04 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Aug 22 14:40:03 2025 +0000"
      },
      "message": "ci: Move forward Rust for Linux version to v6.17-rc2\n\nSigned-off-by: Miguel Ojeda \u003cojeda@kernel.org\u003e\n"
    },
    {
      "commit": "4f3fb8f0b3c89e42ea9fcf02b67612ad52ca5da7",
      "tree": "a018639bd991c2e26a2e899f75ef3701307e2192",
      "parents": [
        "45931da96b008788b66dd63434464bf30b16d4e8"
      ],
      "author": {
        "name": "Per Larsen",
        "email": "perlarsen@google.com",
        "time": "Fri Aug 15 01:44:58 2025 +0000"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Aug 21 08:28:07 2025 +0000"
      },
      "message": "Update CHANGELOG.md\n\nRecord fix in https://github.com/rust-lang/rust-bindgen/pull/3266\n"
    },
    {
      "commit": "45931da96b008788b66dd63434464bf30b16d4e8",
      "tree": "28b6cf4c37b5f08d8344ba0e53c1ccb49ab0df3c",
      "parents": [
        "00d91a1daae03176186bd1447bfa5298ea8e4f30"
      ],
      "author": {
        "name": "Per Larsen",
        "email": "perlarsen@google.com",
        "time": "Fri Aug 15 01:34:10 2025 +0000"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Aug 21 08:28:07 2025 +0000"
      },
      "message": "Fix typo in option handling for rustified non-exhaustive enums\n\n--rustified-non-exhaustive-enums should be\n--rustified-non-exhaustive-enum\n\nNecessary for tests added in parent to pass.\n"
    },
    {
      "commit": "00d91a1daae03176186bd1447bfa5298ea8e4f30",
      "tree": "0ddc122edfee962482117efc59b29948fde54c34",
      "parents": [
        "4be63a7183685fad7e57d9f96cc39ee94fc85777"
      ],
      "author": {
        "name": "Per Larsen",
        "email": "perlarsen@google.com",
        "time": "Fri Aug 15 01:31:42 2025 +0000"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Aug 21 08:28:07 2025 +0000"
      },
      "message": "Test --rustified-non-exhaustive-enum flag\n"
    },
    {
      "commit": "4be63a7183685fad7e57d9f96cc39ee94fc85777",
      "tree": "1d9792d1faa19bf7e7c9decb63c8dafd13e5bf82",
      "parents": [
        "0b6f8f6466e630213647683aba36bd09a6d61871"
      ],
      "author": {
        "name": "Miikka Salminen",
        "email": "miikka.salminen@gmail.com",
        "time": "Wed Aug 20 12:34:17 2025 +0300"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Aug 21 08:27:41 2025 +0000"
      },
      "message": "Small fixes and clarifications to user guide\n\nSome letter casing, typing, formatting, and grammar errors are fixed.\nLinks added to docs.rs in some text referring to documentation there,\nas well as to other external resources.\n\nFor inclusivity, the tutorial\u0027s sanity test is renamed to a smoke test.\n"
    },
    {
      "commit": "0b6f8f6466e630213647683aba36bd09a6d61871",
      "tree": "3c00b7005cce6f15b856e742d53b56a537ce0a36",
      "parents": [
        "5f7aa4b4edcb11a20f251e829bbc66034e21c8e2"
      ],
      "author": {
        "name": "Miikka Salminen",
        "email": "miikka.salminen@gmail.com",
        "time": "Fri Aug 15 17:07:08 2025 +0300"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Aug 21 08:26:38 2025 +0000"
      },
      "message": "Configure an assign section to allow rustbot to assign PRs\n"
    },
    {
      "commit": "5f7aa4b4edcb11a20f251e829bbc66034e21c8e2",
      "tree": "1ab2a38bb061ef4cbf2cb8a84f4424b4959a6342",
      "parents": [
        "de9627ffa4860c6ed56cd40470fc7a96afc09d44"
      ],
      "author": {
        "name": "Per Larsen",
        "email": "per.larsen@gmail.com",
        "time": "Fri Aug 08 01:13:11 2025 +0000"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Aug 08 08:32:31 2025 +0000"
      },
      "message": "Fix typos in the descriptions of a few flags\n\ns/coma/comma/ in the strings added by PR #2866.\n\nSigned-off-by: Per Larsen \u003cperlarsen@google.com\u003e\n"
    },
    {
      "commit": "de9627ffa4860c6ed56cd40470fc7a96afc09d44",
      "tree": "97851aa428d06549f4732e79e8f754d6807491de",
      "parents": [
        "93b956648942874f6d12ec43f3ec963bb663e96c"
      ],
      "author": {
        "name": "Niklas Dusenlund",
        "email": "niklas.dusenlund@bitbox.swiss",
        "time": "Mon Jul 14 11:47:24 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Jul 19 17:19:58 2025 +0000"
      },
      "message": "Add references to issue\n"
    },
    {
      "commit": "93b956648942874f6d12ec43f3ec963bb663e96c",
      "tree": "8707a4bf25eebc85e4a4d63c00ece2a4d75e7b64",
      "parents": [
        "a236cea73f34f077930bc36942887700b08f34c0"
      ],
      "author": {
        "name": "Niklas Dusenlund",
        "email": "niklas.dusenlund@bitbox.swiss",
        "time": "Wed Jun 18 14:56:32 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Jul 19 17:19:58 2025 +0000"
      },
      "message": "ignore failed test\n"
    },
    {
      "commit": "a236cea73f34f077930bc36942887700b08f34c0",
      "tree": "0918287055c9259bcf12ac31e478d9d227be17bc",
      "parents": [
        "bf87357115d2ef8753b57987f16c81413f816756"
      ],
      "author": {
        "name": "Niklas Dusenlund",
        "email": "niklas.dusenlund@bitbox.swiss",
        "time": "Fri Jun 06 12:05:49 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Jul 19 17:19:58 2025 +0000"
      },
      "message": "Add linux aarch64 target to test and release\n"
    },
    {
      "commit": "bf87357115d2ef8753b57987f16c81413f816756",
      "tree": "73c61a4b0cc892ec2c47c6c207e285b4440649bb",
      "parents": [
        "bd011d43e2d18078606350eb8c33048bf8a59bac"
      ],
      "author": {
        "name": "Paolo Barbolini",
        "email": "paolo.barbolini@m4ss.net",
        "time": "Sat Jul 19 17:58:50 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat Jul 19 17:18:42 2025 +0000"
      },
      "message": "Allow itertools 0.14, bump Cargo.lock to it\n"
    },
    {
      "commit": "bd011d43e2d18078606350eb8c33048bf8a59bac",
      "tree": "98f14ba47323557381e0c0a86aef339c1976ab7f",
      "parents": [
        "f015c10d0861e41ca33e8af463f01277dbc9b251"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Jul 11 22:45:07 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Jul 11 21:18:18 2025 +0000"
      },
      "message": "comp: Fix alignment of bitfields in some edge cases.\n\nIn order to properly compute the size of the bitfield for overaligned\nfields, we need to know the offset in the struct, not just in the\nallocation unit.\n\nE.g., something like:\n\n  char; // Byte 1\n  char: 8; // Byte 2\n  short: 16; // Bytes 3 and 4\n\nShould align differently than:\n\n  char: 8; // Byte 1\n  short: 16; // Bytes 3 and 4\n\nIf we can\u0027t find the start offset in the struct, we fall back to our\nprevious behavior (this can happen with C++ templates for example).\n\nWe remove some code related to `is_ms_struct`, which was effectively\ndead. If someone cares about it they can resurrect it.\n\nWe also don\u0027t align per-bitfield unit, but in order to mostly preserve\nbehavior, we keep inserting a field at the beginning of the struct\nrather than using repr(align). Otherwise we hit #2179 in cases where we\ndid not use to.\n\nWe might want to extend that approach to repr(align) stuff, in order to\ntry to fix #2179 more often, but for now do the minimal change.\n\nFixes #1377\nFixes #3105\nFixes #743\nFixes #981\nFixes #1314\n\nCo-authored-by: qinghon \u003cwushengshijie@outlook.com\u003e\n"
    },
    {
      "commit": "f015c10d0861e41ca33e8af463f01277dbc9b251",
      "tree": "cd0184418230db7ec41350e13b3ce4e8a4301593",
      "parents": [
        "a34c91f10c28f78f999f38ac7bb978e33a4cc243"
      ],
      "author": {
        "name": "Adrian Taylor",
        "email": "adetaylor@chromium.org",
        "time": "Thu Feb 20 13:09:01 2025 +0000"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Jul 11 19:35:53 2025 +0000"
      },
      "message": "Clippy formatting fixes.\n"
    },
    {
      "commit": "a34c91f10c28f78f999f38ac7bb978e33a4cc243",
      "tree": "054a82df6ffa4da07c9ced4c67d624908a89b31c",
      "parents": [
        "aa725f90a011277149d7c68c3bb5b3915aed4bb2"
      ],
      "author": {
        "name": "Adrian Taylor",
        "email": "adetaylor@chromium.org",
        "time": "Wed Feb 19 16:54:05 2025 +0000"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Jul 11 19:35:53 2025 +0000"
      },
      "message": "Include source location in callback.\n\nThis adds more information to ParseCallbacks which indicates the location in\nthe original source code at which a given item was found.\n\nThis has proven to be useful in downstream code generators in providing\ndiagnostics to explain why a given item can\u0027t be represented in Rust. (There\nare lots of reasons why this might not be the case - autocxx has around 100\nwhich can be found here -\nhttps://github.com/google/autocxx/blob/d85eac76c9b3089d0d86249e857ff0e8c36b988f/engine/src/conversion/convert_error.rs#L39\n- but irrespective of the specific reasons, it\u0027s useful to be able to point to\nthe original location when emitting diagnostics).\n\nShould we make this a new callback or include this information within\nthe existing callback?\n\nPros of making it a new callback:\n* No compatibility breakage.\n\nPros of including it in this existing callback:\n* No need to specify and test a policy about whether such callbacks\n  always happen together, or may arrive individually\n* Easier for recipients (including bindgen\u0027s own test suite) to\n  keep track of the source code location received.\n* Because we add new items to the DiscoveryItem enum anyway,\n  we seem to have accepted it\u0027s OK to break compatibility in this\n  callback (for now at least).\n\nTherefore I\u0027m adding it as a parameter to the existing callback. If it\u0027s\ndeemed acceptable to break compatibility in this way, I will follow the\nsame thought process for some other changes too.\n\nPart of https://github.com/google/autocxx/issues/124.\n"
    },
    {
      "commit": "aa725f90a011277149d7c68c3bb5b3915aed4bb2",
      "tree": "97702818bcaa7e20053bc506e85413a96c591e22",
      "parents": [
        "e23f0a7ad6fe7a394cd83f92979eb5871a040052"
      ],
      "author": {
        "name": "Adrian Taylor",
        "email": "adetaylor@chromium.org",
        "time": "Thu Feb 20 08:19:03 2025 +0000"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Jul 11 19:35:53 2025 +0000"
      },
      "message": "Deduplicate logic to call discovery callback.\n\nNo functional change - just deduplicating the logic which calls this callback,\nwhich will make it easier to make further changes in future.\n\nPart of https://github.com/google/autocxx/issues/124\n"
    },
    {
      "commit": "e23f0a7ad6fe7a394cd83f92979eb5871a040052",
      "tree": "defd31ba86d1ee3f31025ca317c460a5efe1a228",
      "parents": [
        "88c7bd15b7795f2c2aadc85c47856d402e6e5e84"
      ],
      "author": {
        "name": "Josh Stone",
        "email": "jistone@redhat.com",
        "time": "Thu Jul 10 17:42:53 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Jul 11 19:35:00 2025 +0000"
      },
      "message": "Fix `clippy::uninlined_format_args` in log macros\n\nThese are newly in effect since rust-lang/log#665.\n"
    },
    {
      "commit": "88c7bd15b7795f2c2aadc85c47856d402e6e5e84",
      "tree": "65968004be9f307d13a40eb346b12dc1bbcc770f",
      "parents": [
        "1f02556afc120f24b778b4150649e221177b163f"
      ],
      "author": {
        "name": "Josh Stone",
        "email": "jistone@redhat.com",
        "time": "Wed Jul 09 14:13:59 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Jul 11 19:35:00 2025 +0000"
      },
      "message": "cargo update\n"
    },
    {
      "commit": "1f02556afc120f24b778b4150649e221177b163f",
      "tree": "6ea4189d01afb75e5cf3dc49b25b92c4b9ee4bfa",
      "parents": [
        "bba0875aa838b88addae03954798ef30a43dfdbc"
      ],
      "author": {
        "name": "Yuri Astrakhan",
        "email": "YuriAstrakhan@gmail.com",
        "time": "Wed Jun 11 14:33:57 2025 -0400"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Jun 18 12:15:33 2025 +0000"
      },
      "message": "feat: add Debug,Clone,Eq traits to callback objects\n\nAdd common traits like `Debug` to the callback objects like `ItemKind` and `ItemInfo`.\n"
    },
    {
      "commit": "bba0875aa838b88addae03954798ef30a43dfdbc",
      "tree": "b3523f01e167187cb2576e0b7b8f24dba413e53d",
      "parents": [
        "cc9bc705f7e7aec831dfc22a34a3eab760bfce78"
      ],
      "author": {
        "name": "Niklas Dusenlund",
        "email": "niklas.dusenlund@bitbox.swiss",
        "time": "Mon Jun 09 12:27:58 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Jun 18 12:06:14 2025 +0000"
      },
      "message": "ci: use ubuntu-22.04 for local linux builds\n"
    },
    {
      "commit": "cc9bc705f7e7aec831dfc22a34a3eab760bfce78",
      "tree": "5b33bdff662ac782f2825e5ec2290d8eae209155",
      "parents": [
        "6e13d4fe95baafc27e18b7bf3bffb8f8399e327f"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Jun 18 13:49:42 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Wed Jun 18 12:00:24 2025 +0000"
      },
      "message": "chore: Do a clippy pass.\n"
    },
    {
      "commit": "6e13d4fe95baafc27e18b7bf3bffb8f8399e327f",
      "tree": "43e234427ccb6cb9e1f1dab0056a9ccb0250da31",
      "parents": [
        "187bcced448990efdaabc9c5c2ee397852c5d1a5"
      ],
      "author": {
        "name": "Miguel Ojeda",
        "email": "ojeda@kernel.org",
        "time": "Sun Jun 08 21:39:33 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 22:48:00 2025 +0000"
      },
      "message": "ci: Move forward Rust for Linux version to v6.16-rc1\n\nSigned-off-by: Miguel Ojeda \u003cojeda@kernel.org\u003e\n"
    },
    {
      "commit": "187bcced448990efdaabc9c5c2ee397852c5d1a5",
      "tree": "99b8cfc6044a7134af1aef3e40650b81ca684f63",
      "parents": [
        "eae5b667a50afb69020a7b9fe30877c0aaa5cb95"
      ],
      "author": {
        "name": "usamoi",
        "email": "usamoi@outlook.com",
        "time": "Tue Feb 25 23:15:04 2025 +0800"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 12:10:57 2025 +0000"
      },
      "message": "apply same rule to C and C-unwind in names_will_be_identical_after_mangling\n"
    },
    {
      "commit": "eae5b667a50afb69020a7b9fe30877c0aaa5cb95",
      "tree": "ec37f57495e0a005b57fc37626ce4244fd706146",
      "parents": [
        "3a8bedfb97bcd956c1e920165f34a090490097a5"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 13:37:50 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 11:45:23 2025 +0000"
      },
      "message": "chore: Update dist.\n"
    },
    {
      "commit": "3a8bedfb97bcd956c1e920165f34a090490097a5",
      "tree": "893369484c1edbf6c9f4af35e8892960b0d105c1",
      "parents": [
        "e7f0b9d90110e0f7d7d1d3f6d2ece75780d819d3"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 13:15:47 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 11:21:58 2025 +0000"
      },
      "message": "chore: Release\n"
    },
    {
      "commit": "e7f0b9d90110e0f7d7d1d3f6d2ece75780d819d3",
      "tree": "78d5567dafe2bb5640a86fa908c4eaed98d89982",
      "parents": [
        "2882af23b05cd29518b414fb4a023544b3ee645b"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 12:53:25 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 11:03:16 2025 +0000"
      },
      "message": "Update changelog.\n"
    },
    {
      "commit": "2882af23b05cd29518b414fb4a023544b3ee645b",
      "tree": "fba1ec52763df685043a706e904f8bb572b335eb",
      "parents": [
        "e2940cdcc20967799bece79b46682e8acc3bc042"
      ],
      "author": {
        "name": "Kevin Phoenix",
        "email": "kevin@kphoenix.us",
        "time": "Thu Feb 13 11:16:31 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 10:34:32 2025 +0000"
      },
      "message": "Refactor item_name method to use ItemInfo struct\n"
    },
    {
      "commit": "e2940cdcc20967799bece79b46682e8acc3bc042",
      "tree": "30d653a724c2964939deeff85a895c110fa620a5",
      "parents": [
        "5d7f6847690f84b6a4bf7b800cb3ae6057c5a207"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 12:13:24 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 10:22:27 2025 +0000"
      },
      "message": "chore: Fix some warnings with latest stable.\n"
    },
    {
      "commit": "5d7f6847690f84b6a4bf7b800cb3ae6057c5a207",
      "tree": "3fe87b1afe88712652194314275a5d8cc07b7f1d",
      "parents": [
        "2613129f1b39cf61e6ad3db7ec7d2a6806ed4fbd"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 12:07:49 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 10:22:27 2025 +0000"
      },
      "message": "codegen: Avoid crashing on variadic unions without layout information.\n"
    },
    {
      "commit": "2613129f1b39cf61e6ad3db7ec7d2a6806ed4fbd",
      "tree": "6286d432126e25a94c9cc2163b1d7117a8014f8f",
      "parents": [
        "fef156111e6e16e06f68511ee7fe7da69a8b9d97"
      ],
      "author": {
        "name": "Foxie Flakey",
        "email": "foxieflakey@gmail.com",
        "time": "Sat Apr 12 11:29:33 2025 +0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 09:57:19 2025 +0000"
      },
      "message": "Remove unused which-rustfmt feature\n"
    },
    {
      "commit": "fef156111e6e16e06f68511ee7fe7da69a8b9d97",
      "tree": "185f55480245485a4ddd08245f091d2823264d61",
      "parents": [
        "965a13cd6fc0946d4e98bfa36ce792777942fd12"
      ],
      "author": {
        "name": "Isaac Gelado",
        "email": "isaac@gelado.org",
        "time": "Fri May 23 21:54:20 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 09:49:32 2025 +0000"
      },
      "message": "Fix rustfmt errors\n"
    },
    {
      "commit": "965a13cd6fc0946d4e98bfa36ce792777942fd12",
      "tree": "b20e9272c2ec834b072e18055d3729064a950eec",
      "parents": [
        "b9c6984739fc76e4e088d4ea567634b8a0be1b73"
      ],
      "author": {
        "name": "Isaac Gelado",
        "email": "isaac@gelado.org",
        "time": "Fri May 23 21:31:18 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 09:49:32 2025 +0000"
      },
      "message": "Add test\n"
    },
    {
      "commit": "b9c6984739fc76e4e088d4ea567634b8a0be1b73",
      "tree": "504fe29a638758f0f21d3e0ec1ca117b626d7c99",
      "parents": [
        "803d73ee09470005ce1a1d02ab559e1c7bd6dac8"
      ],
      "author": {
        "name": "Isaac Gelado",
        "email": "igelado@nvidia.com",
        "time": "Fri Oct 27 20:03:12 2023 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 09:49:32 2025 +0000"
      },
      "message": "Use callbacks properly\n"
    },
    {
      "commit": "803d73ee09470005ce1a1d02ab559e1c7bd6dac8",
      "tree": "725f786fb1f603081fa10406ae84b4328d9c604e",
      "parents": [
        "0a6cf08581c3ef3e5e963d54683af784774d4540"
      ],
      "author": {
        "name": "Isaac Gelado",
        "email": "igelado@nvidia.com",
        "time": "Fri Oct 27 19:59:44 2023 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 09:49:32 2025 +0000"
      },
      "message": "Use parse_callbacks from options\n"
    },
    {
      "commit": "0a6cf08581c3ef3e5e963d54683af784774d4540",
      "tree": "8611a3f727b610bc296ea7d0a4f70f85af9b8e42",
      "parents": [
        "8282a904917012ee9ccd1e462a970ce665e1bd74"
      ],
      "author": {
        "name": "Isaac Gelado",
        "email": "igelado@nvidia.com",
        "time": "Fri Oct 27 19:55:03 2023 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 09:49:32 2025 +0000"
      },
      "message": "Add callback to modify contents of macro\n"
    },
    {
      "commit": "8282a904917012ee9ccd1e462a970ce665e1bd74",
      "tree": "1bbd8cc2fa8d5b34fcc2a354b1c693d26bc0dc1e",
      "parents": [
        "c6fdf9b84972a5a4ad0790ea20a7ffbb1f7667e7"
      ],
      "author": {
        "name": "Miguel Ojeda",
        "email": "ojeda@kernel.org",
        "time": "Wed Apr 09 16:27:05 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 09:46:04 2025 +0000"
      },
      "message": "ci: Move forward Rust for Linux version to v6.15-rc4\n\nSigned-off-by: Miguel Ojeda \u003cojeda@kernel.org\u003e\n"
    },
    {
      "commit": "c6fdf9b84972a5a4ad0790ea20a7ffbb1f7667e7",
      "tree": "eda2014dfc990156959ccefb081121171e301d90",
      "parents": [
        "5155cfeba34cbd49abcd524e1afab4bf41a3d58a"
      ],
      "author": {
        "name": "chiichen",
        "email": "chiichen@qq.com",
        "time": "Sun May 18 23:37:45 2025 +0800"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 09:45:10 2025 +0000"
      },
      "message": "doc: enhance desc of cpp section"
    },
    {
      "commit": "5155cfeba34cbd49abcd524e1afab4bf41a3d58a",
      "tree": "ce43e9618c4c74a1634beffca92c3e952f9d53e1",
      "parents": [
        "058c8f26e4e13c279ba1d67ea9cf0e4b9294f391"
      ],
      "author": {
        "name": "David Tolnay",
        "email": "dtolnay@gmail.com",
        "time": "Fri Apr 25 16:29:07 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 09:44:34 2025 +0000"
      },
      "message": "Generate bindings compatible with current rustc version by default\n"
    },
    {
      "commit": "058c8f26e4e13c279ba1d67ea9cf0e4b9294f391",
      "tree": "dd883daa7cd9ce1b608af302a8b42c5dcc8f4bb4",
      "parents": [
        "763c8b956808c850660c521059d4588bf4be05df"
      ],
      "author": {
        "name": "Niklas Dusenlund",
        "email": "niklas.dusenlund@bitbox.swiss",
        "time": "Sat Jun 07 10:49:40 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sun Jun 08 09:41:54 2025 +0000"
      },
      "message": "ci/release: Ubuntu 20.04 being sunset\n\nReplace 20.04 with latest\n"
    },
    {
      "commit": "763c8b956808c850660c521059d4588bf4be05df",
      "tree": "0634160bae32e722e18af7408168f43fb9039db9",
      "parents": [
        "97ab9152b5edb1fda1ced9bc1604f5e4dc9cfaa9"
      ],
      "author": {
        "name": "David Cosby",
        "email": "david.cosby@intel.com",
        "time": "Fri May 23 13:41:06 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Sat May 24 10:26:55 2025 +0000"
      },
      "message": "Resolved unenclosed backticks for with_derive_custom_enum, with_attribute_custon_enum\n"
    },
    {
      "commit": "97ab9152b5edb1fda1ced9bc1604f5e4dc9cfaa9",
      "tree": "c8a9739719104179c10b5655f29c869cf8971c57",
      "parents": [
        "8777ea8aa77118446cb7852926e58f3bacc36b0b"
      ],
      "author": {
        "name": "Yuri Astrakhan",
        "email": "YuriAstrakhan@gmail.com",
        "time": "Wed Apr 09 16:15:14 2025 -0400"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Apr 10 00:05:25 2025 +0000"
      },
      "message": "fix all clippy lints\n"
    },
    {
      "commit": "8777ea8aa77118446cb7852926e58f3bacc36b0b",
      "tree": "ead6aa2dfc7d8886cdf33a1626ad158b79a10462",
      "parents": [
        "9315a49a487077d4e4fcac751ca75b7443b827a3"
      ],
      "author": {
        "name": "Yuri Astrakhan",
        "email": "YuriAstrakhan@gmail.com",
        "time": "Tue Feb 11 13:19:49 2025 -0500"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Apr 10 00:05:25 2025 +0000"
      },
      "message": "fix clippy issues\n"
    },
    {
      "commit": "9315a49a487077d4e4fcac751ca75b7443b827a3",
      "tree": "42db2602833afd426aa04539acf4a3ebb80ade4c",
      "parents": [
        "3b48e6bd0fc6510cb063e35a6f8a491e4ba4cac4"
      ],
      "author": {
        "name": "Yuri Astrakhan",
        "email": "YuriAstrakhan@gmail.com",
        "time": "Sun Feb 02 20:32:47 2025 -0500"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Apr 10 00:05:25 2025 +0000"
      },
      "message": "another minor clippy lint\n"
    },
    {
      "commit": "3b48e6bd0fc6510cb063e35a6f8a491e4ba4cac4",
      "tree": "81951c22cbd8b6f4ba12d555ca47cbada18b4fcc",
      "parents": [
        "bc00cd0bc12e3bc781bf125aa54941059343068c"
      ],
      "author": {
        "name": "Yuri Astrakhan",
        "email": "YuriAstrakhan@gmail.com",
        "time": "Sat Feb 01 18:31:05 2025 -0500"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Apr 10 00:05:25 2025 +0000"
      },
      "message": "remove stable rust installation\n"
    },
    {
      "commit": "bc00cd0bc12e3bc781bf125aa54941059343068c",
      "tree": "67cd3c76f31eb4ea7d061450c8a08a8fd1a51029",
      "parents": [
        "5fcf09f501cf394f646788f95fd1b3aadc6cc6e0"
      ],
      "author": {
        "name": "Yuri Astrakhan",
        "email": "YuriAstrakhan@gmail.com",
        "time": "Sat Feb 01 18:28:01 2025 -0500"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Apr 10 00:05:25 2025 +0000"
      },
      "message": "remove check-cfg, separate clippy from nightly\n"
    },
    {
      "commit": "5fcf09f501cf394f646788f95fd1b3aadc6cc6e0",
      "tree": "5d13c1d33b4404d0bcb064717d005e725db0ea21",
      "parents": [
        "e098882ca416721778214ed536d76005760aafad"
      ],
      "author": {
        "name": "Yuri Astrakhan",
        "email": "YuriAstrakhan@gmail.com",
        "time": "Sat Feb 01 17:54:39 2025 -0500"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Thu Apr 10 00:05:25 2025 +0000"
      },
      "message": "chore: fix new clippy lints, enforce in CI\n"
    },
    {
      "commit": "e098882ca416721778214ed536d76005760aafad",
      "tree": "0ef5921cbd570153c8f3818bd7147e7f18195442",
      "parents": [
        "adeba9e7a502c16902757ff1e389c52529d83e90"
      ],
      "author": {
        "name": "Miguel Ojeda",
        "email": "ojeda@kernel.org",
        "time": "Fri Apr 04 23:25:28 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Apr 04 22:42:16 2025 +0000"
      },
      "message": "ci: use stable toolchain again\n\nNow that the Rust for Linux job is moved forward to v6.14, we can use\nRust 1.86.0, i.e. the current stable, again.\n\nThus revert the previous change.\n\nSigned-off-by: Miguel Ojeda \u003cojeda@kernel.org\u003e\n"
    },
    {
      "commit": "adeba9e7a502c16902757ff1e389c52529d83e90",
      "tree": "39a205a6d417b48f99af4ded26a7743143d53abb",
      "parents": [
        "7eb87dbed4b0f8452efd3bb3cbc67338c5d4724f"
      ],
      "author": {
        "name": "Miguel Ojeda",
        "email": "ojeda@kernel.org",
        "time": "Fri Apr 04 23:24:27 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Apr 04 22:42:16 2025 +0000"
      },
      "message": "ci: move forward Rust for Linux version to v6.14\n\nv6.14 is the latest tag and it contains v6.14-rc2 which included the\nfix for the `soft-float` error (commit 6273a058383e (\"x86: rust: set\nrustc-abi\u003dx86-softfloat on rustc\u003e\u003d1.86.0\") in Linux).\n\nSigned-off-by: Miguel Ojeda \u003cojeda@kernel.org\u003e\n"
    },
    {
      "commit": "7eb87dbed4b0f8452efd3bb3cbc67338c5d4724f",
      "tree": "df4cb05fbc6c643464c82be11244b0a0f0913c17",
      "parents": [
        "a50a2cf07ba26153c822ee858c0a022532ac87a4"
      ],
      "author": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Apr 04 16:06:34 2025 +0200"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Apr 04 15:03:03 2025 +0000"
      },
      "message": "ci: Re-enable rust for linux test.\n\n * Downgrade the rust toolchain for now to keep CI green.\n * Enable verbose kbuild.\n"
    },
    {
      "commit": "a50a2cf07ba26153c822ee858c0a022532ac87a4",
      "tree": "6bbd28ccb563aba221483c03502dbad2a04971af",
      "parents": [
        "8a3b0ec8e982773a0723441cbb57c5f0ea780ddc"
      ],
      "author": {
        "name": "Benjamin Lerman",
        "email": "qsr@google.com",
        "time": "Thu Mar 20 13:40:15 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Apr 04 14:40:09 2025 +0000"
      },
      "message": "Fix union layout when it contains 0 sized array.\n\nFix #3068\n"
    },
    {
      "commit": "8a3b0ec8e982773a0723441cbb57c5f0ea780ddc",
      "tree": "30d62ae40e0c65dd3a0348bd34a328a6a8159903",
      "parents": [
        "4f78a959db3743942e7223fe558073f21bf955f4"
      ],
      "author": {
        "name": "Jonathan Schwender",
        "email": "schwenderjonathan@gmail.com",
        "time": "Tue Feb 04 22:17:14 2025 +0100"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Apr 04 14:39:02 2025 +0000"
      },
      "message": "Refactor enum generation.\n\nGather all the enum variants.\nThis allows us to simplify some logic, make the code more readable,\nby putting the actual code generation close together in\nthe build method.\n\nFor users, the main benefit is that Newtype enums now only\nhave a single impl block, instead of one impl block per\nenum variant.\n"
    },
    {
      "commit": "4f78a959db3743942e7223fe558073f21bf955f4",
      "tree": "fbf216d9a117dd9a34e7436303a0cc6f22238ff8",
      "parents": [
        "b777e6a255f6608a79923996319a5a57c677a818"
      ],
      "author": {
        "name": "ilcheese2",
        "email": "56899583+ilcheese2@users.noreply.github.com",
        "time": "Fri Mar 21 23:04:11 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Apr 04 14:34:17 2025 +0000"
      },
      "message": "Fix OpenCL vectors that use \"ext_vector_type\" and add test\n"
    },
    {
      "commit": "b777e6a255f6608a79923996319a5a57c677a818",
      "tree": "d63dc97530210a86f432a7688f458027a648c8d1",
      "parents": [
        "e5480dd602fa6bb5616d3c435b5b5e4403e6e389"
      ],
      "author": {
        "name": "Dusty DeWeese",
        "email": "dustin.deweese@gmail.com",
        "time": "Tue Apr 01 17:22:51 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Apr 04 14:34:01 2025 +0000"
      },
      "message": "more sophisticated handling of the triple in rust_to_clang_target\n"
    },
    {
      "commit": "e5480dd602fa6bb5616d3c435b5b5e4403e6e389",
      "tree": "b3aa3f339a65c1df604616e45e6056e29b44cc03",
      "parents": [
        "19c1f60a6891397b2d568354be7147d8d3d86680"
      ],
      "author": {
        "name": "Dusty DeWeese",
        "email": "dustin.deweese@gmail.com",
        "time": "Tue Apr 01 13:56:49 2025 -0700"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Apr 04 14:34:01 2025 +0000"
      },
      "message": "rename *-apple-ios-sim to ...simulator\n"
    },
    {
      "commit": "19c1f60a6891397b2d568354be7147d8d3d86680",
      "tree": "37dcb4100527f46b906f27f60186f42afb2ed8cd",
      "parents": [
        "fa2d8c3974a1ce4d90b14cd71631abdabbc51b97"
      ],
      "author": {
        "name": "Adrian Taylor",
        "email": "adetaylor@chromium.org",
        "time": "Thu Feb 20 13:03:08 2025 +0000"
      },
      "committer": {
        "name": "Emilio Cobos Álvarez",
        "email": "emilio@crisal.io",
        "time": "Fri Apr 04 14:24:51 2025 +0000"
      },
      "message": "Option to represent all C++ operators.\n\nIn its default behavior, bindgen does not emit information for any\nC++ operatorXYZ function (unless operatorXYZ is a valid identifier,\nwhich it isn\u0027t for C++ overloaded operators).\n\nThis PR introduces a new command line option to represent all operators.\nThis is not useful for those who directly consume the output of bindgen,\nbut is useful for post-processors. Specifically, consumers will need to\nimplement the callback to rename these items to something more useful.\n\nPart of https://github.com/google/autocxx/issues/124\n"
    }
  ],
  "next": "fa2d8c3974a1ce4d90b14cd71631abdabbc51b97"
}
