)]}'
{
  "commit": "d4eec8e21e89d2054558e167f5a958a1d2ab4336",
  "tree": "48c76e442da2a1395ac1f7a7aab0dc0065024aa6",
  "parents": [
    "ff70e0d273ed10995866c803f23e11250eb3dc52"
  ],
  "author": {
    "name": "Sami Kyostila",
    "email": "skyostil@google.com",
    "time": "Tue May 05 15:56:42 2020 +0100"
  },
  "committer": {
    "name": "Sami Kyostila",
    "email": "skyostil@google.com",
    "time": "Tue May 05 15:56:42 2020 +0100"
  },
  "message": "TrackEvent: Make process/thread naming less of a footgun\n\nWhen calling TrackEvent::Set{Process,Thread}Descriptor, it\u0027s tempting to\nset the |name| field of the returned TrackDescriptor to record the name\nof the thread or process, but this only ends up setting the name of the\ntrack object which is associated with the thread or process, and is not\ndirectly displayed by the UI.\n\nInstead, one should name the thread or process by filling in the\n{Process,Thread}Descriptor message inside the TrackDescriptor. This\npatch makes the API more conducive to doing that by accepting\nprotos::gen track descriptors -- which are more easily mutated by the\nuser -- while maintaining backwards compatibility with the original\nbehavior.\n\nBug: 155076522\nChange-Id: I7c8c9032c8e7d59a28c90c81a2b11424a7bce5e2",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5230e5666bde3a3486449b64f6744a815eda95ca",
      "old_mode": 33188,
      "old_path": "Android.bp",
      "new_id": "d3b7f3fbae34d514ba7e2dba3de2bcd58d8326b0",
      "new_mode": 33188,
      "new_path": "Android.bp"
    },
    {
      "type": "modify",
      "old_id": "969600817c77466ed8acbb7a33e8593f1cb57fb9",
      "old_mode": 33188,
      "old_path": "BUILD",
      "new_id": "d60979262410fa3aa72f74b4ce4a8064cf3c9e6e",
      "new_mode": 33188,
      "new_path": "BUILD"
    },
    {
      "type": "modify",
      "old_id": "697ee496f2a53121eb715bedabb4493f33eae8b5",
      "old_mode": 33188,
      "old_path": "docs/app-instrumentation.md",
      "new_id": "922f366b8d1ab7a5decc6d64530ade07a8a7613b",
      "new_mode": 33188,
      "new_path": "docs/app-instrumentation.md"
    },
    {
      "type": "modify",
      "old_id": "2fd0810b305afb7c3abd6e3d5b3b7ebb82bc0dc4",
      "old_mode": 33188,
      "old_path": "include/perfetto/tracing/BUILD.gn",
      "new_id": "401833d315c6d51d4ca00aad5dd716ad7e3dc5f6",
      "new_mode": 33188,
      "new_path": "include/perfetto/tracing/BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "1bdffecce6b9c73e8fcf738915aa0ffd187eda6e",
      "old_mode": 33188,
      "old_path": "include/perfetto/tracing/internal/track_event_data_source.h",
      "new_id": "f737054b05a399921835d9b58a3673ff33cf1d4b",
      "new_mode": 33188,
      "new_path": "include/perfetto/tracing/internal/track_event_data_source.h"
    },
    {
      "type": "modify",
      "old_id": "f297b08dc8e88df98976a6bb2b575e22a4450fda",
      "old_mode": 33188,
      "old_path": "include/perfetto/tracing/track.h",
      "new_id": "0a4697b6c23db12435faa67e6c93bb89dc0caccc",
      "new_mode": 33188,
      "new_path": "include/perfetto/tracing/track.h"
    },
    {
      "type": "modify",
      "old_id": "6eaa39c853edab040000a27ce5875b16b0a996ba",
      "old_mode": 33188,
      "old_path": "src/tracing/test/api_integrationtest.cc",
      "new_id": "1d48dd53ff7062cb214026ca8fb4eb14d3c05e25",
      "new_mode": 33188,
      "new_path": "src/tracing/test/api_integrationtest.cc"
    },
    {
      "type": "modify",
      "old_id": "b5260e424dccdff42b779f37d7df17f899affcda",
      "old_mode": 33188,
      "old_path": "src/tracing/track.cc",
      "new_id": "56525f76b7a42725812fe0a5d9ae63f124d8660a",
      "new_mode": 33188,
      "new_path": "src/tracing/track.cc"
    }
  ]
}
