)]}'
{
  "commit": "4f44d2eb22d976d5b5c30e91993e4c859e99e142",
  "tree": "d552f2229af94dbf6df58b31fa9cc2b8c186e422",
  "parents": [
    "034c6d71fc6a2f7acc80afbb87127be58b06f1f8"
  ],
  "author": {
    "name": "Srujan Gaddam",
    "email": "srujzs@google.com",
    "time": "Mon Dec 11 21:03:01 2023 +0000"
  },
  "committer": {
    "name": "Commit Queue",
    "email": "dart-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Mon Dec 11 21:03:01 2023 +0000"
  },
  "message": "[dart:js_interop] Fix checking of type parameters in interop APIs\n\nAddresses some comments in https://github.com/dart-lang/sdk/issues/54192\n\n- With the addition of `nonTypeVariableBound`, we no longer need a\nrecursive checker.\n- We also should account for `StructuralParameterTypes`.\n- The current checks did not check type parameters for functions\nconverted via `toJS`, so that is handled as well.\n- Functions that declare type parameters cannot be called in JS\ncorrectly, so an error is added when users try to convert them.\n- Some errors are reworded/modified.\n\nChange-Id: Ic05220883ec4ad8653963acd901d339426cba6c6\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/339346\nReviewed-by: Sigmund Cherem \u003csigmund@google.com\u003e\nCommit-Queue: Srujan Gaddam \u003csrujzs@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a93f73b9d3c25d343104400a16e68d019b778147",
      "old_mode": 33188,
      "old_path": "pkg/_fe_analyzer_shared/lib/src/messages/codes_generated.dart",
      "new_id": "c65db5b20e1f3b22ebbd9644f474dd174b154a91",
      "new_mode": 33188,
      "new_path": "pkg/_fe_analyzer_shared/lib/src/messages/codes_generated.dart"
    },
    {
      "type": "modify",
      "old_id": "3005f22be27099b6b4a5bc52b87ecbf0acc71e8e",
      "old_mode": 33188,
      "old_path": "pkg/_js_interop_checks/lib/js_interop_checks.dart",
      "new_id": "447aa94bd7d3bcdd50665693916f0f8f7699e736",
      "new_mode": 33188,
      "new_path": "pkg/_js_interop_checks/lib/js_interop_checks.dart"
    },
    {
      "type": "modify",
      "old_id": "c6e06c3082eb313b850f9e31f3c88abd1597be97",
      "old_mode": 33188,
      "old_path": "pkg/front_end/lib/src/fasta/fasta_codes_cfe_generated.dart",
      "new_id": "5330bfce03326751b95addc0a5b3df1bd11c0ece",
      "new_mode": 33188,
      "new_path": "pkg/front_end/lib/src/fasta/fasta_codes_cfe_generated.dart"
    },
    {
      "type": "modify",
      "old_id": "5ffd91676151d4f8d3d76b85dbe2ed3d7eff06e3",
      "old_mode": 33188,
      "old_path": "pkg/front_end/messages.status",
      "new_id": "ba7ad608b81df6fe25c751d50c2f7700b3ba5789",
      "new_mode": 33188,
      "new_path": "pkg/front_end/messages.status"
    },
    {
      "type": "modify",
      "old_id": "9611850b8cc151f8189d3f5305a6162ddf62ae20",
      "old_mode": 33188,
      "old_path": "pkg/front_end/messages.yaml",
      "new_id": "09022534c26c89e558fc5b85a04eae6bedc4775f",
      "new_mode": 33188,
      "new_path": "pkg/front_end/messages.yaml"
    },
    {
      "type": "modify",
      "old_id": "e0878a73ce16c4e10706d2d9d11b8f69b9055674",
      "old_mode": 33188,
      "old_path": "pkg/front_end/test/spell_checking_list_messages.txt",
      "new_id": "2fa697ac57554e0ae29a4147e9b5c787ce21f926",
      "new_mode": 33188,
      "new_path": "pkg/front_end/test/spell_checking_list_messages.txt"
    },
    {
      "type": "modify",
      "old_id": "3116e417c6acaba1c3f072894a40c437d30bca37",
      "old_mode": 33188,
      "old_path": "tests/lib/js/static_interop_test/external_member_type_parameters_static_test.dart",
      "new_id": "9270252d6d34b727c9b1c8e9eedd05dcbd616d16",
      "new_mode": 33188,
      "new_path": "tests/lib/js/static_interop_test/external_member_type_parameters_static_test.dart"
    },
    {
      "type": "modify",
      "old_id": "e85820dcfccf9b823c5341c073b46131db7a2157",
      "old_mode": 33188,
      "old_path": "tests/lib/js/static_interop_test/strict_mode_test.dart",
      "new_id": "b5948a69a7553f6902f3d503e11fc9c75dcba879",
      "new_mode": 33188,
      "new_path": "tests/lib/js/static_interop_test/strict_mode_test.dart"
    }
  ]
}
