)]}'
{
  "commit": "25558d2fc0e8b77d4c522c322012b048db4c1485",
  "tree": "7f4321b8f28ea77cae202a53d69c360af5824355",
  "parents": [
    "95fc420a40ebcbd510b41df77b93b11ec819f0a1"
  ],
  "author": {
    "name": "Tom Tromey",
    "email": "tromey@adacore.com",
    "time": "Thu Jan 18 07:35:48 2024 -0700"
  },
  "committer": {
    "name": "Tom Tromey",
    "email": "tromey@adacore.com",
    "time": "Mon Feb 12 10:43:17 2024 -0700"
  },
  "message": "Fix DAP launch and configurationDone requests\n\nCo-workers at AdaCore pointed out that gdb incorrectly implements the\nDAP launch and configurationDone requests.  It\u0027s somewhat strange to\nme, but the spec does in fact say that configuration requests should\noccur before the executable is known to gdb.  This was clarified in\nthis bug report against the spec:\n\n    https://github.com/microsoft/debug-adapter-protocol/issues/452\n\nFixing \u0027launch\u0027 to start the inferior was straightforward, but this\nthen required some changes to how breakpoints are handled.  In\nparticular, now gdb will emit the \"pending\" reason on a breakpoint,\nand will suppress breakpoint events during breakpoint setting.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "87e746472fb088d89569faa5cc5f7a8028da9f9a",
      "old_mode": 33188,
      "old_path": "gdb/python/lib/gdb/dap/breakpoint.py",
      "new_id": "b4fb1127c2d753fc177d55ab3cd83ac6c9f47501",
      "new_mode": 33188,
      "new_path": "gdb/python/lib/gdb/dap/breakpoint.py"
    },
    {
      "type": "modify",
      "old_id": "184af16955c92418dea7602c165e127ce64ee075",
      "old_mode": 33188,
      "old_path": "gdb/python/lib/gdb/dap/launch.py",
      "new_id": "6783d999621b25c96fd73d8bb2a545f390d2dd55",
      "new_mode": 33188,
      "new_path": "gdb/python/lib/gdb/dap/launch.py"
    },
    {
      "type": "modify",
      "old_id": "7928aa194245b05f3de8454878120731c89ae4d5",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/ada-arrays.exp",
      "new_id": "0de361f96bd78cfddf8f3cf67a26c794bef081aa",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/ada-arrays.exp"
    },
    {
      "type": "modify",
      "old_id": "f543fef47ef6b024b426c7fd5bd5eaf1f952207e",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/ada-nested.exp",
      "new_id": "3415da3e9cbd9ebe2a6055e7289b1e4270479b68",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/ada-nested.exp"
    },
    {
      "type": "modify",
      "old_id": "070deadb3a190cad605dff48652200d307371e46",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/ada-scopes.exp",
      "new_id": "12004f8fc32009dc48a84e17cc371626f83db3fe",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/ada-scopes.exp"
    },
    {
      "type": "modify",
      "old_id": "0f07fd25aaeff4852dacd057ab1f592c31bdfe4a",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/args-env.exp",
      "new_id": "d6511733348d78572a518a975bae4005a908a254",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/args-env.exp"
    },
    {
      "type": "modify",
      "old_id": "386bf033f34d5fd4742eba2584115639c4d30e6c",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/assign.exp",
      "new_id": "6703a97bb7a549f3fce5885348ebd4dceac0def0",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/assign.exp"
    },
    {
      "type": "modify",
      "old_id": "431ea3d213dda97b45fd2c0d5e1b8da115e0e5da",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/basic-dap.exp",
      "new_id": "6ef9a5b0f6e11d0ca62b2e6afe6c4931245637c9",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/basic-dap.exp"
    },
    {
      "type": "modify",
      "old_id": "57d4dacaedc3a687f9edd9d93df3cb404d5c97e7",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/bt-nodebug.exp",
      "new_id": "550b9c5c5ac242c0449d49bf7b38140680d42683",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/bt-nodebug.exp"
    },
    {
      "type": "modify",
      "old_id": "8ca0a83ec718aee763606dd2fd81e0e67d48e983",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/catch-exception.exp",
      "new_id": "166b862f9a7dfed31e5e5073ee2f89adba39e318",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/catch-exception.exp"
    },
    {
      "type": "modify",
      "old_id": "b2444e06fb6838158c0da9813f7b87309d980319",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/children.exp",
      "new_id": "f5dfe2cbb91e57183989a63b61351ec332f71d30",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/children.exp"
    },
    {
      "type": "modify",
      "old_id": "427776a5cbbde4821d9ec29d92a1cd7e73638da0",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/cond-bp.exp",
      "new_id": "2bd52ba83a0d6d62b56e3616b0998ffb7f3d2f2b",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/cond-bp.exp"
    },
    {
      "type": "modify",
      "old_id": "9e1d070435b8abf367b098fc7a33ddc4dc642331",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/cwd.exp",
      "new_id": "6b8829965c522c7e34fea0e93566e42f07c8dcba",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/cwd.exp"
    },
    {
      "type": "modify",
      "old_id": "284aef4000973613a902a2ebdedc7c90db3797b7",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/cxx-exception.exp",
      "new_id": "b54b11a2c9afc8b8cebf50134c6256fb1aaaba7c",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/cxx-exception.exp"
    },
    {
      "type": "modify",
      "old_id": "139c17ad3354212e5acac1430e5db3c7723aa2a7",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/eof.exp",
      "new_id": "9c17725c0d0e81e621371a8c678aad9741a8393d",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/eof.exp"
    },
    {
      "type": "modify",
      "old_id": "9d25fc5902d06300bc2d3c7c0db0867c402991b9",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/frameless.exp",
      "new_id": "63ee521af656ae441a9a211f7af687d55d2ecf87",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/frameless.exp"
    },
    {
      "type": "modify",
      "old_id": "f7b9fd702adb020b82380370fa302d190eec5623",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/hover.exp",
      "new_id": "0c80650b152e3636244aba0f8a9df007b8d26cf0",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/hover.exp"
    },
    {
      "type": "modify",
      "old_id": "0249f142a6e3b1fc4318dbac3febd83203a21d62",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/lazy-string.exp",
      "new_id": "54422209fdacbda59c9b932991733377e4b07351",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/lazy-string.exp"
    },
    {
      "type": "modify",
      "old_id": "4e3ecb7807bb7050493c5d490a1bc78567a94468",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/log-message.exp",
      "new_id": "e966b962a7128d43943c8d2aca420eb9603ded75",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/log-message.exp"
    },
    {
      "type": "modify",
      "old_id": "481ab628be9a1be37d1b85d389d0b98f8eeb65a0",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/memory.exp",
      "new_id": "2e911f4dc773e8df36a3f4c8c2bb32ee4ad2bcd6",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/memory.exp"
    },
    {
      "type": "modify",
      "old_id": "4d53b90fa96f95a0eda5d6ead39e4a3c4ac3cba2",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/modules.exp",
      "new_id": "87cebda7131f2ac829f1c3c5479ce87ec7eff54a",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/modules.exp"
    },
    {
      "type": "modify",
      "old_id": "e1e0d957fc6a08fad441985770701aeb7d5f7fa4",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/pause.exp",
      "new_id": "4d13dadd3ad157e60de0779a1fcc9bf036acfd13",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/pause.exp"
    },
    {
      "type": "modify",
      "old_id": "bcdbc5bb56c2325427346c0e50e8a03bd7ec5dc1",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/ptrref.exp",
      "new_id": "0552c3b98159bdea124ce3c03bb7d4c3170422bf",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/ptrref.exp"
    },
    {
      "type": "modify",
      "old_id": "8a8c79c7088131931291975839d2888eb6d7efdb",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/rust-slices.exp",
      "new_id": "c85568d69ea2d181c3f85b2480bfb2565bc6f829",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/rust-slices.exp"
    },
    {
      "type": "modify",
      "old_id": "0b0727cd875a256708966e9f0320573dd83282ad",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/scopes.exp",
      "new_id": "aa3bb688c0e85f0492b578b40f3d235a1a4fb95f",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/scopes.exp"
    },
    {
      "type": "modify",
      "old_id": "670084e56cf11397862866374252e4c4fdcf2649",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/sources.exp",
      "new_id": "b60681160af28b1c4bce0749842c46691652d51e",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/sources.exp"
    },
    {
      "type": "modify",
      "old_id": "af9d6d02efa8e719aff8b88b4e061a202b11fae5",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/stack-format.exp",
      "new_id": "b81183a016ebb8b1aa0bbf571d602ab4de26ebab",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/stack-format.exp"
    },
    {
      "type": "modify",
      "old_id": "f7eb9ac7a0da3fc5889f66dc1ca2491cfa526a79",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/stop-at-main.exp",
      "new_id": "4c3e57a23e4407443f72c43d51be49c4e5a06607",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/stop-at-main.exp"
    },
    {
      "type": "modify",
      "old_id": "9c3706447dc02d2af095a73251fd57f5aa9e6a1c",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dap/terminate.exp",
      "new_id": "90d01945a64cec480258612694dc4c84ab02ebe9",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dap/terminate.exp"
    },
    {
      "type": "modify",
      "old_id": "07259862b18b36cd05aca1d4260b6dfb35ae3594",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/lib/dap-support.exp",
      "new_id": "979dfa2cd73989e5e486582107cb6811f177b665",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/lib/dap-support.exp"
    }
  ]
}
