)]}'
{
  "commit": "b099df5f177e43ebefde24a6714729277aa1bf8c",
  "tree": "bb658bfcc75feecec7d1e5fd86dd2aece30a1b8d",
  "parents": [
    "92efaff49b100371d66e356b0ab62c35ec7c5fe8"
  ],
  "author": {
    "name": "Vyron Vasileiadis",
    "email": "hi@fedonman.com",
    "time": "Mon Jul 27 18:59:46 2026"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Mon Jul 27 18:59:46 2026"
  },
  "message": "gh-154749: Reject a terminal-less screen in curses.set_term() (GH-154750)\n\nset_term() accepted a screen returned by new_prescr(), which has no\nterminal, and the next refresh crashed inside curses.  Raise\ncurses.error instead.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9d0bb239af06dfce34db435c8a54e3c91917d325",
      "old_mode": 33188,
      "old_path": "Doc/library/curses.rst",
      "new_id": "a833914a5d56d44b6dd5f462e12585c02959d7bf",
      "new_mode": 33188,
      "new_path": "Doc/library/curses.rst"
    },
    {
      "type": "modify",
      "old_id": "31b7371abd32300efb0d7f8e317cb1fc8e4646c0",
      "old_mode": 33188,
      "old_path": "Lib/test/test_curses.py",
      "new_id": "441eafd6e0d47765dc2c7af8423d121f77854d4f",
      "new_mode": 33188,
      "new_path": "Lib/test/test_curses.py"
    },
    {
      "type": "modify",
      "old_id": "2b580c3475e6d93ba3dd585f2c151eaed32fe1dc",
      "old_mode": 33188,
      "old_path": "Modules/_cursesmodule.c",
      "new_id": "7314708cff7a814e4e9f5e23afad663752fd6242",
      "new_mode": 33188,
      "new_path": "Modules/_cursesmodule.c"
    }
  ]
}
