)]}'
{
  "commit": "a5df6ad55c875ec6f513fabb9f5161df0866f924",
  "tree": "65a47963a7116870cb0f667503faaa97f798796a",
  "parents": [
    "c03e5c28b0de2baba6bca5e509da618d0c3a4692"
  ],
  "author": {
    "name": "Alan Donovan",
    "email": "adonovan@google.com",
    "time": "Wed May 15 10:35:22 2024 -0400"
  },
  "committer": {
    "name": "Gopher Robot",
    "email": "gobot@golang.org",
    "time": "Mon Aug 05 17:36:26 2024 +0000"
  },
  "message": "go/analysis/passes/printf: report non-constant format, no args\n\nCalls such as fmt.Printf(s), where s is non-constant and there\nare no arguments to format, are invariably a mistake. This\nCL causes the printf checker to report them, and to offer\na suggested fix of fmt.Printf(\"%s\", s).\n\nAlso:\n- tests\n- docs\n- fixes to existing violations in x/tools (3 bugs, 2 merely bad form).\n- an ignore-tagged main file for the printf checker.\n\nFixes golang/go#60529\n\nChange-Id: Ic7cc4f3e7487bc1549948fa03b5b0b27959948e5\nReviewed-on: https://go-review.googlesource.com/c/tools/+/585795\nReviewed-by: Robert Findley \u003crfindley@google.com\u003e\nAuto-Submit: Alan Donovan \u003cadonovan@google.com\u003e\nReviewed-by: Tim King \u003ctaking@google.com\u003e\nLUCI-TryBot-Result: Go LUCI \u003cgolang-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5a8ede0a482ef7a04faff60ce155683d41bdb409",
      "old_mode": 33188,
      "old_path": "cmd/goyacc/yacc.go",
      "new_id": "bc6395480e8fd06f4782653c63c925ee8fb026ed",
      "new_mode": 33188,
      "new_path": "cmd/goyacc/yacc.go"
    },
    {
      "type": "modify",
      "old_id": "85da8346f752eb48c1769c9f236472f0860fe193",
      "old_mode": 33188,
      "old_path": "go/analysis/passes/printf/doc.go",
      "new_id": "eebf40208d18165ca14719730a77baa6ae8648ff",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/printf/doc.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2a0fb7ad6c783124fdbe1eb514271ef4c732576c",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/printf/main.go"
    },
    {
      "type": "modify",
      "old_id": "323501925832e29a7cf614b9bbc1e19654db6d18",
      "old_mode": 33188,
      "old_path": "go/analysis/passes/printf/printf.go",
      "new_id": "b3453f8fc065da2154b38d78c7e3531232c53cd6",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/printf/printf.go"
    },
    {
      "type": "modify",
      "old_id": "853d8619b25f2ddc31c4fdefe45747d449e4469d",
      "old_mode": 33188,
      "old_path": "go/analysis/passes/printf/printf_test.go",
      "new_id": "3506fec1fc2cdbcf5e0d692bc1e4572e1c0443ce",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/printf/printf_test.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f5c9f6541655458ed5c8c37d0e217c0615512096",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/printf/testdata/src/fix/fix.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "57e5bb7db91f43385322d573453cb9a30c0ca248",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/printf/testdata/src/fix/fix.go.golden"
    },
    {
      "type": "modify",
      "old_id": "f5e760ca265e4c5b9789d0d214e691765073b924",
      "old_mode": 33188,
      "old_path": "go/analysis/passes/tests/tests.go",
      "new_id": "5b4598235cfa1a16433680b50c91a11fafd6cb82",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/tests/tests.go"
    }
  ]
}
