)]}'
{
  "commit": "0900317224709e921c24401dee2df970d5a2fb0c",
  "tree": "01ca70fa3871a7b05dea3bf791f9c43a2d51eb8d",
  "parents": [
    "2eb7d318d696ed9289f058496aa8cddfcd24b82e"
  ],
  "author": {
    "name": "Ben Konyi",
    "email": "bkonyi@google.com",
    "time": "Thu Jul 23 13:24:04 2026 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Jul 23 20:24:04 2026 +0000"
  },
  "message": "[flutter_tools] Invalidate WebEntrypointTarget when plugin set changes (#189460)\n\nAdd `.dart_tool/package_config.json`, `pubspec.yaml`, and\n`.flutter-plugins-dependencies` (optional) to\n`WebEntrypointTarget.inputs`, and\n`{BUILD_DIR}/web_plugin_registrant.dart` to\n`WebEntrypointTarget.outputs`.\n\nPreviously, `WebEntrypointTarget` only declared `{BUILD_DIR}/main.dart`\nin `outputs` and its own source file in `inputs`. When plugins were\nadded or removed between consecutive `flutter build web` invocations,\n`FlutterBuildSystem` evaluated `WebEntrypointTarget` as up-to-date,\nskipping target execution and leaving `web_plugin_registrant.dart`\nstale.\n\nFixes https://github.com/flutter/flutter/issues/189128",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7fdb980d904edc11d32d775c3600fc347fa5be69",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/build_system/targets/web.dart",
      "new_id": "57775b9065d9d7567259692eb467c357f67f4e64",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/build_system/targets/web.dart"
    },
    {
      "type": "modify",
      "old_id": "30ef77873b3c3c53d2412693984d0bcc67f1d881",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/build_system/targets/web_test.dart",
      "new_id": "a51af6e45bfd6bda0d047542450c4f057ed69690",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/build_system/targets/web_test.dart"
    }
  ]
}
