)]}'
{
  "commit": "e4e86cff05b2eb36abc345cb3eac5c63d83e3f34",
  "tree": "ab2cae36d8d422c97a945c1d5f33b2201d6f5bd1",
  "parents": [
    "21b336ccb273c0331477ae7626440f8160b2a4bb"
  ],
  "author": {
    "name": "Ben Clayton",
    "email": "bclayton@google.com",
    "time": "Thu Jun 01 10:59:09 2023 +0100"
  },
  "committer": {
    "name": "Ben Clayton",
    "email": "bclayton@google.com",
    "time": "Thu Jun 01 10:59:09 2023 +0100"
  },
  "message": "Squashed \u0027third_party/marl/\u0027 changes from 9c689c9a8..a089b4aaf\n\na089b4aaf Update tools/bench to handle new Google Benchmark output\nb98f00446 Use @platforms instead of @bazel_tools\na192264a8 Update google benchmark to v1.8.0\n4be5115d8 Implement move assignment operator as move ctor already exists\nf05db401e Core is cheap to copy, pass by reference can hurt performance\n40ce132cc Cache workers in variable to speedup access\neb2780637 Encapsulate OS stuff in Thread::Impl\nd2bae7442 Use \u003d default ctor/dtor bodies instead of {}\ne5ffc9907 remove unnecessary html canvas in example\n38743a45a exclude example files from license check\n3c9b819ec added license header\n47d4a52ac updated copyright year\n7b1f567b8 emscripten support: updated readme\nd5f5f80f8 proper emscripten support - tested on the examples\n60d60c682 [build] make it build under emscripten - untested and most likely incorrect runtime behavior.\n99646b3c3 Fix Android host build\n\ngit-subtree-dir: third_party/marl\ngit-subtree-split: a089b4aaf803963f63b1961b4093f76d6db32cdd\nChange-Id: I51765bc251cd0e5f9af88951bc209e1b48f39067\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3d95fe9557fa546de4958b96087c7cbf76d06ff3",
      "old_mode": 33188,
      "old_path": "BUILD.bazel",
      "new_id": "297fd44649a2822f6b4eb948f6190291480bcd0b",
      "new_mode": 33188,
      "new_path": "BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "5f17ee86a7741000d7192ccd9a374aea929ca413",
      "old_mode": 33188,
      "old_path": "CMakeLists.txt",
      "new_id": "78ee4a39510618430402fa7e5016c714ac4fdff1",
      "new_mode": 33188,
      "new_path": "CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "540be9095e69d43f4141cddc1012c209d8caa770",
      "old_mode": 33188,
      "old_path": "README.md",
      "new_id": "8c5707833eadea43107225f329b3eb5ec6a48a17",
      "new_mode": 33188,
      "new_path": "README.md"
    },
    {
      "type": "modify",
      "old_id": "60425d60e0f1d051dd03883b46cfc63301fef5d9",
      "old_mode": 33188,
      "old_path": "WORKSPACE",
      "new_id": "b11314cda097c7cdc5baeb3a2aaf8ddc3699fe5b",
      "new_mode": 33188,
      "new_path": "WORKSPACE"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f73442f4acd1eee4c5446f310722e288df59fe0b",
      "new_mode": 33188,
      "new_path": "examples/run_webserver"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "157e1dc0998c6a3fa19ea38a06fe5638ee79a3e9",
      "new_mode": 33188,
      "new_path": "examples/shell.emscripten.html"
    },
    {
      "type": "modify",
      "old_id": "2c9bb465af59d701614451b645e92246ed3c4352",
      "old_mode": 33188,
      "old_path": "include/marl/mutex.h",
      "new_id": "674ec3344fc26a9bb3952aafa3d1f28b150a2428",
      "new_mode": 33188,
      "new_path": "include/marl/mutex.h"
    },
    {
      "type": "modify",
      "old_id": "1e7d3f42cbb53a8b12e395d746bd281ea60590d4",
      "old_mode": 33188,
      "old_path": "include/marl/task.h",
      "new_id": "f8dd4af5ce0f2bfd429329016b06ad17172658e6",
      "new_mode": 33188,
      "new_path": "include/marl/task.h"
    },
    {
      "type": "modify",
      "old_id": "f317ac9ee851fa29c63a70614b458b6365109496",
      "old_mode": 33188,
      "old_path": "include/marl/thread.h",
      "new_id": "e72f33ef101dde00357cb3a41798be747e686bfe",
      "new_mode": 33188,
      "new_path": "include/marl/thread.h"
    },
    {
      "type": "modify",
      "old_id": "179d2475eadbdc1f1024578a503b3980abd5a935",
      "old_mode": 33188,
      "old_path": "license-checker.cfg",
      "new_id": "43bcf334b0a64f81087e342a420eee7693db4d33",
      "new_mode": 33188,
      "new_path": "license-checker.cfg"
    },
    {
      "type": "modify",
      "old_id": "a8a5bff53b69f3fa5d91997b9889fd353fed9beb",
      "old_mode": 33188,
      "old_path": "src/memory.cpp",
      "new_id": "f52be55990b36a704f01900417546d635955033c",
      "new_mode": 33188,
      "new_path": "src/memory.cpp"
    },
    {
      "type": "modify",
      "old_id": "5d6ce4d41a72685d1dc0ef0bb06325768d8371ac",
      "old_mode": 33188,
      "old_path": "src/osfiber_asm.h",
      "new_id": "7193590054ddf600800416fba532ca9044b0d888",
      "new_mode": 33188,
      "new_path": "src/osfiber_asm.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e6caa0f1b84fe21ecccd0551a320ef4227356512",
      "new_mode": 33188,
      "new_path": "src/osfiber_emscripten.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f24eeb336c152612769a167e97fd6c5ccd2efddf",
      "new_mode": 33188,
      "new_path": "src/osfiber_emscripten.h"
    },
    {
      "type": "modify",
      "old_id": "f5e9df0ece0bcc326394d8b9d5b0249410893426",
      "old_mode": 33188,
      "old_path": "src/scheduler.cpp",
      "new_id": "dcdf83af5fcd67e0dd02d88282a07eb49d62b7b3",
      "new_mode": 33188,
      "new_path": "src/scheduler.cpp"
    },
    {
      "type": "modify",
      "old_id": "d009713eb08b157879a0b1e14efc2ebca6215eb1",
      "old_mode": 33188,
      "old_path": "src/scheduler_bench.cpp",
      "new_id": "81c4d2fc3f1abc5db753ada940c82003b03393d6",
      "new_mode": 33188,
      "new_path": "src/scheduler_bench.cpp"
    },
    {
      "type": "modify",
      "old_id": "6851d07bc9580185de736c0c3f7336951304d7f1",
      "old_mode": 33188,
      "old_path": "src/thread.cpp",
      "new_id": "3a275c99da6d71bc0f6620e6cfa18e5ffc0734c0",
      "new_mode": 33188,
      "new_path": "src/thread.cpp"
    },
    {
      "type": "modify",
      "old_id": "5ac80de0379ae1153ca6ef141df89ecf53bf1110",
      "old_mode": 57344,
      "old_path": "third_party/benchmark",
      "new_id": "2dd015dfef425c866d9a43f2c67d8b52d709acb6",
      "new_mode": 57344,
      "new_path": "third_party/benchmark"
    },
    {
      "type": "modify",
      "old_id": "ad8118136dee2526c589e048e9e5768a90288de6",
      "old_mode": 33188,
      "old_path": "tools/bench/bench.go",
      "new_id": "fccba5b9bf4eb7dac46935e7873d0bd79d289fa9",
      "new_mode": 33188,
      "new_path": "tools/bench/bench.go"
    }
  ]
}
