)]}'
{
  "commit": "5d3f4bc60aca32878be15f837de909d9bd724e48",
  "tree": "75a3c2f3a043c40333587c3f8429ceecd9193dc2",
  "parents": [
    "f8754c42c9f7f72f9880342ffbb619f8f1e47a9a"
  ],
  "author": {
    "name": "Sam Clegg",
    "email": "sbc@chromium.org",
    "time": "Mon Aug 03 13:49:55 2026 -0700"
  },
  "committer": {
    "name": "Sam Clegg",
    "email": "sbc@chromium.org",
    "time": "Thu Aug 06 13:20:29 2026 -0700"
  },
  "message": "Track active tools and SDKs in activated.json\n\nStore active tools and SDKs in a dedicated `activated.json` file when\nthey are activated by `emsdk activate`. Update `Tool.is_active()` to check\nagainst `activated.json` rather than matching entries in `.emscripten`.\n\nThis solves several issues with the previous `.emscripten`-based\n`is_active()` logic:\n\n1. Tools with no `activated_cfg` (such as `ccache` or tools that only\n   modify `PATH` or environment variables) previously returned\n   `is_active() \u003d\u003d False` because they had no `.emscripten` keys and no\n   dependencies (`len(deps) \u003d\u003d 0`).\n2. Tools with dependencies but no `activated_cfg` previously falsely\n   reported `is_active() \u003d\u003d True` whenever their dependencies were active,\n   even if the tool itself was never activated.\n\nReplaces: #1345\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0477fa957b80b41398ab25fa07ff273936f2f248",
      "old_mode": 33188,
      "old_path": ".gitignore",
      "new_id": "02e94fdcd0bc9194cd3551a3a7e8b6de50a1196c",
      "new_mode": 33188,
      "new_path": ".gitignore"
    },
    {
      "type": "modify",
      "old_id": "10fc194ba1b0a9ffe0c59ebe9c1d6ad562df8882",
      "old_mode": 33188,
      "old_path": "emsdk.py",
      "new_id": "0e48b583b559776d41b29ccb766f23f56a37205b",
      "new_mode": 33188,
      "new_path": "emsdk.py"
    },
    {
      "type": "modify",
      "old_id": "46255d395079f138da13ff0bda757bd2fbc71254",
      "old_mode": 33188,
      "old_path": "emsdk_manifest.json",
      "new_id": "0b15c546b347171e593e4e9886185eb7b8a28642",
      "new_mode": 33188,
      "new_path": "emsdk_manifest.json"
    },
    {
      "type": "modify",
      "old_id": "ef3f09b7f6d919b0fa3a3e142961955902d9b245",
      "old_mode": 33261,
      "old_path": "test/test.py",
      "new_id": "3b889353f4e2a41a506f36f9dde6b0c6318d46f0",
      "new_mode": 33261,
      "new_path": "test/test.py"
    }
  ]
}
