)]}'
{
  "commit": "fbc9c7919246ea74c295be888db4ae332cced202",
  "tree": "16ae236200c38405f54de49ac37d1499be92b70a",
  "parents": [
    "ead4b2d7aa86fde803066f59c1dda94aefe2b9fe"
  ],
  "author": {
    "name": "Brian Gan",
    "email": "brgan@google.com",
    "time": "Tue Jun 30 21:11:54 2026 +0000"
  },
  "committer": {
    "name": "gerrit-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "gerrit-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Jun 30 15:35:57 2026 -0700"
  },
  "message": "tests: Fix test compatibility with Python 3.14 forkserver\n\nPython 3.14 changed the default multiprocessing start method on Linux\nfrom \"fork\" to \"forkserver\". The test_forall_all_projects_called_once\ntest uses mock.patch.object on Project.GetRevisionId, but class-level\nmock patches do not survive into forkserver worker processes because\nthey start from a clean Python interpreter rather than inheriting the\nparent\u0027s memory.\n\nReplace the mock with setting revisionId directly on each Project\ninstance so GetRevisionId() short-circuits without touching git.\nThis works with any multiprocessing start method since the string\nattribute is part of the Project objects stored in _parallel_context,\nwhich is properly serialized to workers via initargs.\n\nBug: 425319437\nChange-Id: Icd3bbd010921d7652bb2425fad85974df9198367\nReviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/602941\nTested-by: Brian Gan \u003cbrgan@google.com\u003e\nCommit-Queue: Brian Gan \u003cbrgan@google.com\u003e\nReviewed-by: Gavin Mak \u003cgavinmak@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e36c8b66019be6ee79e41797548c570a17bb5226",
      "old_mode": 33188,
      "old_path": "tests/test_subcmds_forall.py",
      "new_id": "67ec43cfd1885c2055e7038b956caa23e912f9e7",
      "new_mode": 33188,
      "new_path": "tests/test_subcmds_forall.py"
    }
  ]
}
