)]}'
{
  "commit": "fb422e568e8346ac2da08e35855c7e9a4c395859",
  "tree": "eccfb4561d02f1d3a14f90198507022ef0e1970f",
  "parents": [
    "c78bad88a280f7e8085ed5dbb81a1d30bc401cbd"
  ],
  "author": {
    "name": "Tommi",
    "email": "tommi@webrtc.org",
    "time": "Tue Apr 28 07:07:16 2026"
  },
  "committer": {
    "name": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Apr 28 08:12:06 2026"
  },
  "message": "Enable CallbackList constructor subscription and adopt in NetworkManager\n\nUpdate the CallbackList utility to allow subscribers to be added\ndirectly during instantiation. This adds new constructors that accept a\ncallback, optionally with a removal tag, reducing the boilerplate\nrequired to set up subscriptions immediately after object creation and\nallows for removing multi-step initialization (that in some cases\nrequires thread hops).\n\nAs an initial accompanying change, the NetworkManager\nhierarchy—including NetworkManagerBase and BasicNetworkManager—has been\nupdated to provide constructors that accept an initial network-change\ncallback. This allows clients to subscribe to network updates at the\nmoment of manager creation, simplifying initialization patterns and\nensuring no events are missed during setup. Existing tests have been\nrefactored to utilize these new constructor-based subscriptions.\n\nBug: webrtc:42222117\nChange-Id: If1b001bf36e6a246c3ea241b1685d79e3c3acaec\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/467740\nReviewed-by: Danil Chapovalov \u003cdanilchap@webrtc.org\u003e\nCommit-Queue: Tomas Gunnarsson \u003ctommi@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#47570}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "043ed0057e18d26c1019ab700ed35ffce943d5f0",
      "old_mode": 33188,
      "old_path": "rtc_base/callback_list.h",
      "new_id": "96e83a3588aee6f98ad25d96df2f1a6f893218dc",
      "new_mode": 33188,
      "new_path": "rtc_base/callback_list.h"
    },
    {
      "type": "modify",
      "old_id": "7c576ea39c5065c988f98ab144259c6631da7d9e",
      "old_mode": 33188,
      "old_path": "rtc_base/callback_list_unittest.cc",
      "new_id": "a5b0c41e49f3c928b31ff1a9f50380be885a89d3",
      "new_mode": 33188,
      "new_path": "rtc_base/callback_list_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "f8ad22099268f62af0719f3fb059cec6d5251eba",
      "old_mode": 33188,
      "old_path": "rtc_base/network.cc",
      "new_id": "e023bc8456c3e210ea90b28c1b91780c34b4aa0a",
      "new_mode": 33188,
      "new_path": "rtc_base/network.cc"
    },
    {
      "type": "modify",
      "old_id": "0190f491b949d466e939e904120df94bbd927157",
      "old_mode": 33188,
      "old_path": "rtc_base/network.h",
      "new_id": "3772371cd23e51b66f5ca0359d71a1836f9ea240",
      "new_mode": 33188,
      "new_path": "rtc_base/network.h"
    },
    {
      "type": "modify",
      "old_id": "e5697a5f60c7cb4b7e7a996c381670b3383e1863",
      "old_mode": 33188,
      "old_path": "rtc_base/network_unittest.cc",
      "new_id": "5694358555158990caa53f0bbfe9b3d077f4c757",
      "new_mode": 33188,
      "new_path": "rtc_base/network_unittest.cc"
    }
  ]
}
