)]}'
{
  "commit": "b6e12f044053323cbfc697f39b0126e1a07ab118",
  "tree": "99112195ebddcb05d047cc8002d1a49842988e9d",
  "parents": [
    "86a984fc2f73f4bf0e530f749d17f25332ae805a"
  ],
  "author": {
    "name": "Henry Schreiner",
    "email": "henryfs@princeton.edu",
    "time": "Thu Aug 06 22:21:52 2026 -0400"
  },
  "committer": {
    "name": "Henry Schreiner",
    "email": "HenrySchreinerIII@gmail.com",
    "time": "Mon Aug 17 00:50:34 2026 -0400"
  },
  "message": "feat: move detail/class.h definitions to class-inl.h\n\nAll 32 functions in detail/class.h are non-template plumbing (type/slot\nmachinery); move them out of line for the precompiled mode. Forward\ndeclarations of these functions in other headers lose their inline\nkeyword to stay ODR-consistent in both modes.\n\nAssisted-by: ClaudeCode:claude-fable-5\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b65529c9b0ed59c4dabfb8d3714757861ddc4ab9",
      "old_mode": 33188,
      "old_path": "CMakeLists.txt",
      "new_id": "3157a57e1d8def778a1a6a398742d40af0d01463",
      "new_mode": 33188,
      "new_path": "CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "57d12fee44e726cd42a149481c2c9c3e88896d79",
      "new_mode": 33188,
      "new_path": "include/pybind11/detail/class-inl.h"
    },
    {
      "type": "modify",
      "old_id": "06a761de5402c6320a604c62e0e53b9d9b2bb1d5",
      "old_mode": 33188,
      "old_path": "include/pybind11/detail/class.h",
      "new_id": "2ecde4fbf40ef667d3d1a860362499cd637a1f41",
      "new_mode": 33188,
      "new_path": "include/pybind11/detail/class.h"
    },
    {
      "type": "modify",
      "old_id": "49c199e14f83f92e6653cc980b5ef2b4b4a4745f",
      "old_mode": 33188,
      "old_path": "include/pybind11/detail/cpp_conduit.h",
      "new_id": "c9ce32756ce76b9405d98299f581bc750ed02b92",
      "new_mode": 33188,
      "new_path": "include/pybind11/detail/cpp_conduit.h"
    },
    {
      "type": "modify",
      "old_id": "274e794b5fb6c7f053d28ea8ae109b589c7e0809",
      "old_mode": 33188,
      "old_path": "include/pybind11/detail/internals.h",
      "new_id": "c4c780d3d382b47105e2ec681262d9cd84ee1bac",
      "new_mode": 33188,
      "new_path": "include/pybind11/detail/internals.h"
    },
    {
      "type": "modify",
      "old_id": "161b9884fac3b916aa36c45eacb93e862fc021fd",
      "old_mode": 33188,
      "old_path": "include/pybind11/detail/type_caster_base.h",
      "new_id": "7fd9c449eb6b8e39b256117eb4848d250fff06a6",
      "new_mode": 33188,
      "new_path": "include/pybind11/detail/type_caster_base.h"
    },
    {
      "type": "modify",
      "old_id": "cbfec7f9740d09c58eefcef686bb31596cdb1c30",
      "old_mode": 33188,
      "old_path": "include/pybind11/trampoline_self_life_support.h",
      "new_id": "be08d9491de3c49f1b42f6f5f8d583d6c68dff10",
      "new_mode": 33188,
      "new_path": "include/pybind11/trampoline_self_life_support.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5418b4e359f79b6266847732d47b746aa70f43d2",
      "new_mode": 33188,
      "new_path": "src/class.cpp"
    },
    {
      "type": "modify",
      "old_id": "751b0b1dbe1c713db1b854ddefe25b95761df3db",
      "old_mode": 33188,
      "old_path": "src/pybind11_combined.cpp",
      "new_id": "2bfe127509a1c905b06aa94e6dd0d4ac398f7d52",
      "new_mode": 33188,
      "new_path": "src/pybind11_combined.cpp"
    },
    {
      "type": "modify",
      "old_id": "b02892a738fa9e6c662f60702392c7640bc5cf42",
      "old_mode": 33188,
      "old_path": "tests/extra_python_package/test_files.py",
      "new_id": "840df80ac21cde9406077b117bd94dd0030bcfaf",
      "new_mode": 33188,
      "new_path": "tests/extra_python_package/test_files.py"
    }
  ]
}
