)]}'
{
  "commit": "8d0677eca59a87ffeb24c19feb9b604472bb1641",
  "tree": "9b5a77d9870175de0330d3f5fe40d477ad101796",
  "parents": [
    "2f2af4cfae07ef6c81aefa679cdc3ebf195ff5ad"
  ],
  "author": {
    "name": "Alexander Markov",
    "email": "alexmarkov@google.com",
    "time": "Fri Apr 28 19:37:10 2023 +0000"
  },
  "committer": {
    "name": "Commit Queue",
    "email": "dart-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Fri Apr 28 19:37:10 2023 +0000"
  },
  "message": "[vm] Simplify type finalization\n\nAfter recursive types are gone, finalization of types can be\nsimplified: types can be finalized with a simple recursive traversal\nand they no longer need to track \"being finalized\" state.\n\nAlso, finalization doesn\u0027t need to write back finalized types\nbecause type finalization without canonicalization is always performed\nin place and doesn\u0027t result in a new type (or type arguments vector).\n\nTEST\u003dci\n\nChange-Id: Ifc0a4e12aa410eb2be18c4a475c2f486cfa9ebf2\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/299300\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\nReviewed-by: Ryan Macnak \u003crmacnak@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8440abc3ed27f56c208bfaaa0a9bc1aaaf6e9c48",
      "old_mode": 33188,
      "old_path": "runtime/vm/class_finalizer.cc",
      "new_id": "a8a3cd3d4b2691172f6b2a4586bf7c938532c3a2",
      "new_mode": 33188,
      "new_path": "runtime/vm/class_finalizer.cc"
    },
    {
      "type": "modify",
      "old_id": "a2d452b49957f5ebe7838c0a1aa7215540487e8f",
      "old_mode": 33188,
      "old_path": "runtime/vm/class_finalizer.h",
      "new_id": "ec46047e35287dfd933ca398004924a3ed6d4fcd",
      "new_mode": 33188,
      "new_path": "runtime/vm/class_finalizer.h"
    },
    {
      "type": "modify",
      "old_id": "d118e8c97f6ecc2682af91793f70043b51071cf3",
      "old_mode": 33188,
      "old_path": "runtime/vm/object.cc",
      "new_id": "5f874a65d43e8ee95312794ba2813670e1208bb5",
      "new_mode": 33188,
      "new_path": "runtime/vm/object.cc"
    },
    {
      "type": "modify",
      "old_id": "584f7f1b117c55d5d05c0958fbb601071711eaef",
      "old_mode": 33188,
      "old_path": "runtime/vm/object.h",
      "new_id": "ca882cf0aa0fc54cc8e59e88dbf4a951866e6570",
      "new_mode": 33188,
      "new_path": "runtime/vm/object.h"
    },
    {
      "type": "modify",
      "old_id": "716129e8ca226e7fda76468a3a927f10bd5dc00d",
      "old_mode": 33188,
      "old_path": "runtime/vm/raw_object.h",
      "new_id": "8ddee20b5ba999f5b93234216adfe0e7d2a18d83",
      "new_mode": 33188,
      "new_path": "runtime/vm/raw_object.h"
    }
  ]
}
