)]}'
{
  "commit": "7c58ef732efd9bf0d0882bb95371ce1909924a75",
  "tree": "f2e241a40bc5ac1ee70aabd31430fb03cfbc7f73",
  "parents": [
    "f46a5b1e4559191363dbd4f510105dd31ae97aaa"
  ],
  "author": {
    "name": "Martin Möhrmann",
    "email": "moehrmann@google.com",
    "time": "Mon Sep 14 16:55:34 2020 +0200"
  },
  "committer": {
    "name": "Martin Möhrmann",
    "email": "moehrmann@google.com",
    "time": "Wed Oct 14 05:34:32 2020 +0000"
  },
  "message": "runtime: implement GODEBUG\u003dinittrace\u003d1 support\n\nSetting inittrace\u003d1 causes the runtime to emit a single line to standard error for\neach package with init work, summarizing the execution time and memory allocation.\n\nThe emitted debug information for init functions can be used to find bottlenecks\nor regressions in Go startup performance.\n\nPackages with no init function work (user defined or compiler generated) are omitted.\n\nTracing plugin inits is not supported as they can execute concurrently. This would\nmake the implementation of tracing more complex while adding support for a very rare\nuse case. Plugin inits can be traced separately by testing a main package importing\nthe plugins package imports explicitly.\n\n$ GODEBUG\u003dinittrace\u003d1 go test\ninit internal/bytealg @0.008 ms, 0 ms clock, 0 bytes, 0 allocs\ninit runtime @0.059 ms, 0.026 ms clock, 0 bytes, 0 allocs\ninit math @0.19 ms, 0.001 ms clock, 0 bytes, 0 allocs\ninit errors @0.22 ms, 0.004 ms clock, 0 bytes, 0 allocs\ninit strconv @0.24 ms, 0.002 ms clock, 32 bytes, 2 allocs\ninit sync @0.28 ms, 0.003 ms clock, 16 bytes, 1 allocs\ninit unicode @0.44 ms, 0.11 ms clock, 23328 bytes, 24 allocs\n...\n\nInspired by stapelberg@google.com who instrumented doInit\nin a prototype to measure init times with GDB.\n\nFixes #41378\n\nChange-Id: Ic37c6a0cfc95488de9e737f5e346b8dbb39174e1\nReviewed-on: https://go-review.googlesource.com/c/go/+/254659\nTrust: Martin Möhrmann \u003cmoehrmann@google.com\u003e\nRun-TryBot: Martin Möhrmann \u003cmoehrmann@google.com\u003e\nTryBot-Result: Go Bot \u003cgobot@golang.org\u003e\nReviewed-by: Keith Randall \u003ckhr@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "478611c15c0f6f1a1f8d1e25e6a98869a785fd09",
      "old_mode": 33188,
      "old_path": "doc/diagnostics.html",
      "new_id": "f9368886c4c00a534232a45cd4cee9198cc53eec",
      "new_mode": 33188,
      "new_path": "doc/diagnostics.html"
    },
    {
      "type": "modify",
      "old_id": "7316503ed2a4c12cb56f6bc8b916e57da9fb477d",
      "old_mode": 33188,
      "old_path": "src/runtime/extern.go",
      "new_id": "b75507b8f85de8633436f314b0b54e6ea4c91492",
      "new_mode": 33188,
      "new_path": "src/runtime/extern.go"
    },
    {
      "type": "modify",
      "old_id": "f7e9b7c4b48058dd638cfac888d3cd6b89fe32f0",
      "old_mode": 33188,
      "old_path": "src/runtime/malloc.go",
      "new_id": "b19d1f26719d15624a4e9a124c336150eb9a5556",
      "new_mode": 33188,
      "new_path": "src/runtime/malloc.go"
    },
    {
      "type": "modify",
      "old_id": "a1e2ed068037775ed912bc9f9892ae3cb8cc59fb",
      "old_mode": 33188,
      "old_path": "src/runtime/proc.go",
      "new_id": "4872480314853d4bf75e8f9489d9dc037a351d84",
      "new_mode": 33188,
      "new_path": "src/runtime/proc.go"
    },
    {
      "type": "modify",
      "old_id": "7c893aa25cb12623f1704473476ac9b3b62ddf71",
      "old_mode": 33188,
      "old_path": "src/runtime/runtime1.go",
      "new_id": "0f182ac58e6d41d45bbb81a957bf365366f73e6a",
      "new_mode": 33188,
      "new_path": "src/runtime/runtime1.go"
    },
    {
      "type": "modify",
      "old_id": "a14f5c13d9ff5b143c5411f3637a408ce79fe5ad",
      "old_mode": 33188,
      "old_path": "src/runtime/symtab.go",
      "new_id": "84637376bf4942b53cbff62cecb5ee9b1171ad93",
      "new_mode": 33188,
      "new_path": "src/runtime/symtab.go"
    }
  ]
}
