)]}'
{
  "commit": "aef117b7374053099099600ded2f4eaa2c450327",
  "tree": "c376f0ba3cff2ee35ce0e97a7fd32c898eab4ca4",
  "parents": [
    "3b9ff5d9009d587aa76ec7bbaab4439e26a52c50"
  ],
  "author": {
    "name": "Andrew Burgess",
    "email": "aburgess@redhat.com",
    "time": "Thu Jan 04 10:07:48 2024 +0000"
  },
  "committer": {
    "name": "Andrew Burgess",
    "email": "aburgess@redhat.com",
    "time": "Fri Jan 12 11:21:25 2024 +0000"
  },
  "message": "gdb/python: hoist common invalid object repr code into py-utils.c\n\nMany object types now have a __repr__() function implementation.  A\ncommon pattern is that, if an object is invalid, we print its\nrepresentation as: \u003cTYPENAME (invalid)\u003e.\n\nI thought it might be a good idea to move the formatting of this\nspecific representation into a utility function, and then update all\nof our existing code to call the new function.\n\nThe only place where I haven\u0027t made use of the new function is in\nunwind_infopy_repr, where we currently return a different string.\nThis case is a little different as the UnwindInfo is invalid because\nit references a frame, and it is the frame itself which is invalid.\nThat said, I think it would be fine to switch to using the standard\nformat; if the UnwindInfo references an invalid frame, then the\nUnwindInfo is itself invalid.  But changing this would be an actual\nchange in behaviour, while all the other changes in this commit are\njust refactoring.\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ac519331f18d5c02f4b4dec9553657cc21054e94",
      "old_mode": 33188,
      "old_path": "gdb/python/py-arch.c",
      "new_id": "b7d861d27ad670a47332fe8e2070ad943c3d9b03",
      "new_mode": 33188,
      "new_path": "gdb/python/py-arch.c"
    },
    {
      "type": "modify",
      "old_id": "dd6d6d278a037db7376d9f0ae1fa9be97ff947f1",
      "old_mode": 33188,
      "old_path": "gdb/python/py-block.c",
      "new_id": "34be46641449267dcf3ec43884017273ca087b9b",
      "new_mode": 33188,
      "new_path": "gdb/python/py-block.c"
    },
    {
      "type": "modify",
      "old_id": "5155d41e675c2d81f8ad839b0b432864d0863b78",
      "old_mode": 33188,
      "old_path": "gdb/python/py-breakpoint.c",
      "new_id": "9b5e023cb096a4e0de26b9ce1434b4c7f55eaff5",
      "new_mode": 33188,
      "new_path": "gdb/python/py-breakpoint.c"
    },
    {
      "type": "modify",
      "old_id": "3df12b435bb1ebcfd9c8cc6a3614e63f6c93f0fb",
      "old_mode": 33188,
      "old_path": "gdb/python/py-connection.c",
      "new_id": "d288a74cb2b9009fcd4f708b4758198bfe47db6f",
      "new_mode": 33188,
      "new_path": "gdb/python/py-connection.c"
    },
    {
      "type": "modify",
      "old_id": "ed153d668acf8c578f2425269e91201a84365e98",
      "old_mode": 33188,
      "old_path": "gdb/python/py-inferior.c",
      "new_id": "929d8bd17b5efb5aa0c33551634235595a40a2ba",
      "new_mode": 33188,
      "new_path": "gdb/python/py-inferior.c"
    },
    {
      "type": "modify",
      "old_id": "bb5d0d92aba847e8d5c7dee609f44196099ce8c2",
      "old_mode": 33188,
      "old_path": "gdb/python/py-objfile.c",
      "new_id": "4f5e5cda5e6a0449b2a9c42667278cd327e966cc",
      "new_mode": 33188,
      "new_path": "gdb/python/py-objfile.c"
    },
    {
      "type": "modify",
      "old_id": "99724cfc95b8d972aa4819045a1b363c8283b21b",
      "old_mode": 33188,
      "old_path": "gdb/python/py-symbol.c",
      "new_id": "014442bf147438481f293e41bb18408eb449975f",
      "new_mode": 33188,
      "new_path": "gdb/python/py-symbol.c"
    },
    {
      "type": "modify",
      "old_id": "bfaa6d24d94dc34bd5ce39a04846f229db4785b0",
      "old_mode": 33188,
      "old_path": "gdb/python/py-type.c",
      "new_id": "27c7b78096b00be256ae3f362f9e35729df03121",
      "new_mode": 33188,
      "new_path": "gdb/python/py-type.c"
    },
    {
      "type": "modify",
      "old_id": "f12485c22b77e4635a4f481a88c0635d35aeb7b8",
      "old_mode": 33188,
      "old_path": "gdb/python/py-unwind.c",
      "new_id": "70c33724cbc33a1f957af3f88f099e6903cbfcea",
      "new_mode": 33188,
      "new_path": "gdb/python/py-unwind.c"
    },
    {
      "type": "modify",
      "old_id": "f1ca9ea0a5dbeaa4ab473aa1eba108f33ce4936d",
      "old_mode": 33188,
      "old_path": "gdb/python/py-utils.c",
      "new_id": "c29291004d27cc797a79f16caa6ac3237ca15598",
      "new_mode": 33188,
      "new_path": "gdb/python/py-utils.c"
    },
    {
      "type": "modify",
      "old_id": "14e1557468519fd6e08d224c11cc4d10b6632491",
      "old_mode": 33188,
      "old_path": "gdb/python/python-internal.h",
      "new_id": "8ff9af650c2160e799ce57b9f8fe806b10a8e300",
      "new_mode": 33188,
      "new_path": "gdb/python/python-internal.h"
    }
  ]
}
