)]}'
{
  "commit": "35bbf701d04de5c6a71937279bc3d16f6ce36808",
  "tree": "dd85fb9c0d2fcaa8b5685fe8e775ca1cf6ab17a3",
  "parents": [
    "881af15cdc4a72894adc9e6b9504e6ca6d4d7c8e"
  ],
  "author": {
    "name": "Brian Gan",
    "email": "brgan@google.com",
    "time": "Tue Jun 30 21:38:51 2026 +0000"
  },
  "committer": {
    "name": "gerrit-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "gerrit-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Jul 01 15:59:45 2026 -0700"
  },
  "message": "color: Treat \"true\" and \"yes\" as \"auto\", not \"always\"\n\nPer the git documentation for color.ui [1], setting color.ui to \"true\"\n(or \"yes\") should behave identically to \"auto\", enabling color only\nwhen output is written to a terminal or an active pager. Previously,\nrepo was equating \"true\" and \"yes\" with \"always\", which caused color\nescape codes to be emitted unconditionally, even when output was piped\nor redirected.\n\nReplace the duplicated string-matching logic in SetDefaultColoring and\nColoring.__init__ with a single CONFIG_TO_COLOR_SETTING dict that maps\nall git color config values to their behavior. This makes the mapping\neasy to verify against the git docs and impossible to get out of sync\nbetween the two call sites.\n\nAdded tests for SetDefaultColoring and Coloring.__init__ covering\nall color mode values (auto, true, yes, always, never, no, false),\ncase insensitivity, TTY vs pipe behavior, active pager detection,\nand unrecognised input.\n\n[1] https://git-scm.com/docs/git-config#Documentation/git-config.txt-colorui\n\nBug: 295841573\nChange-Id: I8a04b9c7e4154de37ed7518c010233039e0afdc9\nReviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/602981\nTested-by: Brian Gan \u003cbrgan@google.com\u003e\nReviewed-by: Gavin Mak \u003cgavinmak@google.com\u003e\nCommit-Queue: Brian Gan \u003cbrgan@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "03fb65537478433ec515efcdec7dc2b210d1f1ec",
      "old_mode": 33188,
      "old_path": "color.py",
      "new_id": "406863453345ac7555fa88a04cdef304e4cd7721",
      "new_mode": 33188,
      "new_path": "color.py"
    },
    {
      "type": "modify",
      "old_id": "8b75d2199f6f43dd29b34fd4b4067253b211d70d",
      "old_mode": 33188,
      "old_path": "tests/test_color.py",
      "new_id": "72d74993d1222c6c4ffb6402521e9422fd6fff08",
      "new_mode": 33188,
      "new_path": "tests/test_color.py"
    }
  ]
}
