)]}'
{
  "commit": "e4702d7409069c4f12d45ea7b7f0890717ca3f4b",
  "tree": "7b73df6bad215175ed7d29320d91578c48c376ad",
  "parents": [
    "5d8727f3fbf420538ff753ebc3ce96da28e12c22"
  ],
  "author": {
    "name": "David \u0027Digit\u0027 Turner",
    "email": "digit@google.com",
    "time": "Fri Oct 20 14:28:50 2023 +0200"
  },
  "committer": {
    "name": "GN LUCI",
    "email": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Mon Oct 23 08:20:06 2023 +0000"
  },
  "message": "Optimize base::EscapeJSONString for ASCII inputs.\n\nMost of the strings passed to this function are ASCII-only and\ndon\u0027t even need escaping. This CL provides fast-paths for these\ncases.\n\nThis speeds up the generation of many JSON files written by GN.\nFor example, on a large Fuchsia build plan, this saves about 4\nseconds while generating identical JSON outputs:\n\n```\n$ hyperfine --runs\u003d5 \u0027/tmp/gn1 gen --ide\u003djson out/default --export-rust-project --export-compile-commands\u0027 \u0027/tmp/gn3 gen --ide\u003djson out/default --export-rust-project --export-compile-commands\u0027\nBenchmark 1: /tmp/gn1 gen --ide\u003djson out/default --export-rust-project --export-compile-commands\n  Time (mean ± σ):     28.883 s ±  0.836 s    [User: 117.852 s, System: 42.476 s]\n  Range (min … max):   27.694 s … 29.916 s    5 runs\n\nBenchmark 2: /tmp/gn2 gen --ide\u003djson out/default --export-rust-project --export-compile-commands\n  Time (mean ± σ):     24.829 s ±  0.590 s    [User: 112.068 s, System: 42.400 s]\n  Range (min … max):   23.879 s … 25.296 s    5 runs\n\nSummary\n  \u0027/tmp/gn3 gen --ide\u003djson out/default --export-rust-project --export-compile-commands\u0027 ran\n    1.16 ± 0.04 times faster than \u0027/tmp/gn1 gen --ide\u003djson out/default --export-rust-project --export-compile-commands\u0027\n```\n\nChange-Id: I7f678f898a9e7f1d271ef8cb47ea77bb6d22800c\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/16040\nCommit-Queue: David Turner \u003cdigit@google.com\u003e\nReviewed-by: Takuto Ikuta \u003ctikuta@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "51a818cb479bb52e071f1d41561f9a6b9f58ca24",
      "old_mode": 33188,
      "old_path": "src/base/json/string_escape.cc",
      "new_id": "90cbbab173395157aaac968529c5c8c674c9db73",
      "new_mode": 33188,
      "new_path": "src/base/json/string_escape.cc"
    }
  ]
}
