)]}'
{
  "commit": "73cf0690997647c9801d9ebba43305a868d3b776",
  "tree": "f93332064f5d079cc7d3b523d8f728b4354f54f3",
  "parents": [
    "6b2a19681eb5c132caa73a268724c7d502794867"
  ],
  "author": {
    "name": "Eric Snow",
    "email": "ericsnowcurrently@gmail.com",
    "time": "Tue Nov 12 17:41:51 2024"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Nov 12 17:41:51 2024"
  },
  "message": "gh-76785: Improved Subinterpreters Compatibility with 3.12 (2/2) (gh-126707)\n\nThese changes makes it easier to backport the _interpreters, _interpqueues, and _interpchannels modules to Python 3.12.\r\n\r\nThis involves the following:\r\n\r\n* add the _PyXI_GET_STATE() and _PyXI_GET_GLOBAL_STATE() macros\r\n* add _PyXIData_lookup_context_t and _PyXIData_GetLookupContext()\r\n* add _Py_xi_state_init() and _Py_xi_state_fini()",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "66719796aeee227261307f6f0a2e23b923953b53",
      "old_mode": 33188,
      "old_path": "Include/internal/pycore_crossinterp.h",
      "new_id": "69a60d73e05c269dc92707ecb4d3f3ce476a3a69",
      "new_mode": 33188,
      "new_path": "Include/internal/pycore_crossinterp.h"
    },
    {
      "type": "modify",
      "old_id": "04f25bc05fd1b80333368b3428e68cb3bd201efd",
      "old_mode": 33188,
      "old_path": "Include/internal/pycore_crossinterp_data_registry.h",
      "new_id": "bbad4de770857f16b6cb166cdddd15b28c2b65d3",
      "new_mode": 33188,
      "new_path": "Include/internal/pycore_crossinterp_data_registry.h"
    },
    {
      "type": "modify",
      "old_id": "cd3c50269385680bf491efddcfec8691689c10d4",
      "old_mode": 33188,
      "old_path": "Modules/_interpchannelsmodule.c",
      "new_id": "75d69ade1d3c9b3f0fe2adfb311d05868b682177",
      "new_mode": 33188,
      "new_path": "Modules/_interpchannelsmodule.c"
    },
    {
      "type": "modify",
      "old_id": "8d0e223db7ff1947860ee3ce9cef43d55961383b",
      "old_mode": 33188,
      "old_path": "Modules/_interpqueuesmodule.c",
      "new_id": "808938a9e8cd16a12e755d6ae5aee9dff2f7b7d4",
      "new_mode": 33188,
      "new_path": "Modules/_interpqueuesmodule.c"
    },
    {
      "type": "modify",
      "old_id": "b0e31a33734dabc3878fd0c65125452e630083d7",
      "old_mode": 33188,
      "old_path": "Modules/_interpreters_common.h",
      "new_id": "a6c639feea5d14af34966c39631fdebba181773e",
      "new_mode": 33188,
      "new_path": "Modules/_interpreters_common.h"
    },
    {
      "type": "modify",
      "old_id": "eb4ac9847dcd2bae52bfcbf7897a12f62a1ac4cc",
      "old_mode": 33188,
      "old_path": "Modules/_interpretersmodule.c",
      "new_id": "a36823c4bb982b4a04253d7a64b69dab47e194d1",
      "new_mode": 33188,
      "new_path": "Modules/_interpretersmodule.c"
    },
    {
      "type": "modify",
      "old_id": "327a077671047c68542e76f20d381b119552934d",
      "old_mode": 33188,
      "old_path": "Modules/_testinternalcapi.c",
      "new_id": "2c1ebcbbfdf419782982987ada9038cc549a956f",
      "new_mode": 33188,
      "new_path": "Modules/_testinternalcapi.c"
    },
    {
      "type": "modify",
      "old_id": "dfdb5f9d87a7c7f3efe0752e7872bb9ff967fa21",
      "old_mode": 33188,
      "old_path": "Python/crossinterp.c",
      "new_id": "fe7d75f6b72f68af6f754e1fb399402880074dd7",
      "new_mode": 33188,
      "new_path": "Python/crossinterp.c"
    },
    {
      "type": "modify",
      "old_id": "9048f90cff160a9eb5c189925158b8732cf7c1e8",
      "old_mode": 33188,
      "old_path": "Python/crossinterp_data_lookup.h",
      "new_id": "48e5d9762cd6970c8a1588364f86698b192499bb",
      "new_mode": 33188,
      "new_path": "Python/crossinterp_data_lookup.h"
    }
  ]
}
