)]}'
{
  "commit": "ba079832c18f158f72b3d2cfe8d5861ad05b8d70",
  "tree": "1469518bb83e01cfe0f6a72393d078da3b202e67",
  "parents": [
    "e90c6e3fc23c5730c8611f1e0b537c0bd3e6befd"
  ],
  "author": {
    "name": "Sam Clegg",
    "email": "sbc@chromium.org",
    "time": "Wed Jun 28 18:02:51 2023"
  },
  "committer": {
    "name": "Sam Clegg",
    "email": "sbc@chromium.org",
    "time": "Wed Jun 28 22:55:59 2023"
  },
  "message": "Attempt to terminate workers cooperatively\n\nThis change is designed fix address pthread thread flakiness around\nprocess termination.  For example see #19683 and #15014.\n\nIn some cases I believe that workers are being terminated while they\nhave postMessage messages in their queue, so messages are getting lost.\n\nIn other cases we are seeing message arrive after the call to\n`terminate()`.\n\nThis change attempts to avoid using `terminate()` at all and attempts\nto cooperatively shut down the worker.  We only use `terminate()` if the\nthread doesn\u0027t respond in a certain amount of time.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5c01f4ecddf80bbb63959e8959e3398ee349d5f1",
      "old_mode": 33188,
      "old_path": "src/library_pthread.js",
      "new_id": "dbb39a30de080e7b31b87eeb0388c0abcf6b7500",
      "new_mode": 33188,
      "new_path": "src/library_pthread.js"
    },
    {
      "type": "modify",
      "old_id": "42b96c1432db4fcbc0532a9720a718173dba4d55",
      "old_mode": 33188,
      "old_path": "src/library_wasi.js",
      "new_id": "07c87430fe6669a731b91ac9f1554198cb827f17",
      "new_mode": 33188,
      "new_path": "src/library_wasi.js"
    },
    {
      "type": "modify",
      "old_id": "89b1dbe8a8817c1fcdd34fa5b2c5c7d8dc0d7c65",
      "old_mode": 33188,
      "old_path": "src/postamble_minimal.js",
      "new_id": "f7a9b69607aeeb23bd8b64f7f5a8f46fce808d92",
      "new_mode": 33188,
      "new_path": "src/postamble_minimal.js"
    },
    {
      "type": "modify",
      "old_id": "f386199301b6c9b9baa7a58fb4fa48b0f530d08e",
      "old_mode": 33188,
      "old_path": "src/preamble.js",
      "new_id": "8f4bd7c5e34d2b6c18517e29da74f3bece7459e2",
      "new_mode": 33188,
      "new_path": "src/preamble.js"
    },
    {
      "type": "modify",
      "old_id": "3e4760ca3ab63e750ef5253721e7eac008f0d928",
      "old_mode": 33188,
      "old_path": "src/worker.js",
      "new_id": "5ffc692faf1f0917d81a8cdeb2b3c2f6af6cdd93",
      "new_mode": 33188,
      "new_path": "src/worker.js"
    },
    {
      "type": "modify",
      "old_id": "cc1f5e519bd026ea9d537e3c4599cfbd44573b7a",
      "old_mode": 33188,
      "old_path": "test/other/metadce/test_metadce_minimal_pthreads.jssize",
      "new_id": "e43efaa32ed6b35e5a9786cd629ac451072b1c07",
      "new_mode": 33188,
      "new_path": "test/other/metadce/test_metadce_minimal_pthreads.jssize"
    }
  ]
}
