)]}'
{
  "commit": "8f9f39106331c8798d733033d8e70aaa23ede86a",
  "tree": "3a79abe3eb91448ba1bf42ec74107954b3e0d2cc",
  "parents": [
    "43b48d58e3df246ac0a2cae07d059ff660ce4b77"
  ],
  "author": {
    "name": "Kevin Moore",
    "email": "kevmoo@users.noreply.github.com",
    "time": "Sat Oct 24 22:15:17 2026 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Sun Oct 25 05:15:17 2026 +0000"
  },
  "message": "Prepare generator for `@webref/idl` 3.85+ and `@webref/css` 8+ (#594)\n\nUpdates `js_interop_gen` and `web_generator` to handle new WebIDL, CSS, and Browser Compat Data constructs in upcoming `@webref` and `@mdn` releases, with zero diff in `web/`:\n\n- Resolve `[LegacyWindowAlias]` and `WindowProxy` type references to their canonical IDL declarations via `Translator.resolveIdlTypeName` across `_getRawType`, `_collectDocImports`, and `_getTypeNameRaw`, and assert against `[LegacyWindowAlias]` in `_setInheritance`.\n- Prefix `[LegacyNamespace]` interfaces whose names shadow `dart:core` types (e.g. `WebAssembly.Exception` -\u003e `WebAssemblyException` via `Translator.dartClassNameFor`) across declarations, references, `JSPromise\u003c...\u003e`, cross-file imports, union docs, and member-name collision checks while preserving `@JS(\u0027WebAssembly.Exception\u0027)`.\n- Ignore `async_iterable` members, alias `async_sequence` to `JSObject`, support both `@webref/css` 6 and 7+ `listAll()` formats, and inspect all non-flagged/non-preview support statements in `bcd.dart`.\n- Install `@latest` for `@webref/*` and `@mdn/browser-compat-data` in `web_generator/bin/update_idl_bindings.dart --update`.\n\nFixes #480",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c49b2d48feaae20c92cc0cf8d4396ae82a3eb07c",
      "old_mode": 33188,
      "old_path": ".gitignore",
      "new_id": "05f6492c42857834b625e65ec63c5838f151003a",
      "new_mode": 33188,
      "new_path": ".gitignore"
    },
    {
      "type": "modify",
      "old_id": "24d2ad831bccd15a32eb6788521445c9eb1989b9",
      "old_mode": 33188,
      "old_path": "js_interop_gen/lib/src/bcd.dart",
      "new_id": "fb730a9ef1d1ba5f623bebb8895a1f35b0a2f677",
      "new_mode": 33188,
      "new_path": "js_interop_gen/lib/src/bcd.dart"
    },
    {
      "type": "modify",
      "old_id": "8f1866806046814a34005e0f1a40557f3a682adc",
      "old_mode": 33188,
      "old_path": "js_interop_gen/lib/src/elements.dart",
      "new_id": "c13862dc9644e799d01d9a2d6f64ac43f2c2eac4",
      "new_mode": 33188,
      "new_path": "js_interop_gen/lib/src/elements.dart"
    },
    {
      "type": "modify",
      "old_id": "3c54936c9c0d702b4dead18c0ce87eb187f2b95b",
      "old_mode": 33188,
      "old_path": "js_interop_gen/lib/src/generate_bindings.dart",
      "new_id": "f301aaaa403b4d4644282cc898fd745ce3fc1814",
      "new_mode": 33188,
      "new_path": "js_interop_gen/lib/src/generate_bindings.dart"
    },
    {
      "type": "modify",
      "old_id": "6faa936feae68638b4dc2db8968388c04d2ae7b8",
      "old_mode": 33188,
      "old_path": "js_interop_gen/lib/src/js/webidl_api.dart",
      "new_id": "9a8e3d1d47c5d00eecb8e6370fc56c4cb8502d08",
      "new_mode": 33188,
      "new_path": "js_interop_gen/lib/src/js/webidl_api.dart"
    },
    {
      "type": "modify",
      "old_id": "a4e374268bd794947c4095aac9b8caf3dc33b02e",
      "old_mode": 33188,
      "old_path": "js_interop_gen/lib/src/translator.dart",
      "new_id": "6b28bdd85959d42b765159c9d627a80d003746d2",
      "new_mode": 33188,
      "new_path": "js_interop_gen/lib/src/translator.dart"
    },
    {
      "type": "modify",
      "old_id": "eaa5f333fb70d119ecf0e8c8169c7de24f3894c9",
      "old_mode": 33188,
      "old_path": "js_interop_gen/lib/src/type_aliases.dart",
      "new_id": "54d5321116f40418642a726c2ceb809e740041e4",
      "new_mode": 33188,
      "new_path": "js_interop_gen/lib/src/type_aliases.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6e42bb3ef7fa6c8e1174cf1b4ee84bd96eaa214b",
      "new_mode": 33188,
      "new_path": "js_interop_gen/test/integration/idl/legacy_names_expected.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e3a990bce3ac9f5125c38a6ce6f68d4ec9b86e45",
      "new_mode": 33188,
      "new_path": "js_interop_gen/test/integration/idl/legacy_names_input.idl"
    },
    {
      "type": "modify",
      "old_id": "8dc738b152c18bb53e5454c68244057928bddf34",
      "old_mode": 33188,
      "old_path": "js_interop_gen/test/integration/idl_test.dart",
      "new_id": "71b0091f9ddbb4ac4feeb6e21ca70d9645571318",
      "new_mode": 33188,
      "new_path": "js_interop_gen/test/integration/idl_test.dart"
    },
    {
      "type": "modify",
      "old_id": "a9de40b15ef37f76196e6d799254c9b64d6d84b8",
      "old_mode": 33188,
      "old_path": "web_generator/README.md",
      "new_id": "199315fe583f002e96c1c0ab0c0d38048b9d4694",
      "new_mode": 33188,
      "new_path": "web_generator/README.md"
    },
    {
      "type": "modify",
      "old_id": "7e6aa1addf6d219276215b9cea3ec805d75036c4",
      "old_mode": 33188,
      "old_path": "web_generator/bin/update_idl_bindings.dart",
      "new_id": "edda04b42672b07cacf70ed3181a88dc0c531d7a",
      "new_mode": 33188,
      "new_path": "web_generator/bin/update_idl_bindings.dart"
    }
  ]
}
