)]}'
{
  "commit": "015950a936fc6b7cadca20eb0dbf6f054e6637fb",
  "tree": "a6fccaa4ff761c2093f7fd5f3e2dadacdb18f20a",
  "parents": [
    "f38004c441a2d7ba004853bb0863ff2b2571f461"
  ],
  "author": {
    "name": "Abseil Team",
    "email": "absl-team@google.com",
    "time": "Tue Mar 24 10:53:03 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Mar 24 10:53:29 2026 -0700"
  },
  "message": "Add an implmenetation of Notification for MinGW\n\nAdd an alternative implementation of the Notification class for MinGW\nusing a Windows manual-reset event object.\n\nGCC version \u003c 13 in MinGW, if configured with the win32 thread model\n(with the --enable-threads\u003dwin32 configure option), does not implement\nstd::mutex and std::condition_variable in the \u003cmutex\u003e and\n\u003ccondition_variable\u003e headers. So the current implementation of the\nNotification class, which uses std::mutex and std::condition_variable,\nhas compilation errors. Windows has a synchronization object called a\nmanual-reset event object that behaves just like the Notification class.\nSo we can easily implement the Notification class using a Windows\nmanual-reset event object.\n\nThis GCC issue is fixed in GCC 13. See\nhttps://gcc.gnu.org/gcc-13/changes.html#windows. This alternative\nimplementation of Notification should be removed when GoogleTest\nrequires GCC version \u003e\u003d 13 in MinGW.\n\nFixes https://github.com/google/googletest/issues/4031 and\nhttps://github.com/google/googletest/issues/4464.\n\nPiperOrigin-RevId: 888752598\nChange-Id: I69e01b2e7953e1fe72d87b6d0804c7a8a8d0e740\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3ea95ba5560714d6e4f183ac664b6f6ad41a3c8f",
      "old_mode": 33188,
      "old_path": "googletest/include/gtest/internal/gtest-port.h",
      "new_id": "b607e0adee74f4d0fccd9135ddd44da1e1040841",
      "new_mode": 33188,
      "new_path": "googletest/include/gtest/internal/gtest-port.h"
    },
    {
      "type": "modify",
      "old_id": "f8ecb37c48d9434c899e8503c04632835e4ed9bd",
      "old_mode": 33188,
      "old_path": "googletest/src/gtest-port.cc",
      "new_id": "d34a693e4500f251b46964a39b4306ed68833893",
      "new_mode": 33188,
      "new_path": "googletest/src/gtest-port.cc"
    }
  ]
}
