)]}'
{
  "commit": "24fc993688d0f5a4689f479a41f3b85ebf9ae821",
  "tree": "98d6df461dc4d8ad614377bb77fcadfbd37a96d7",
  "parents": [
    "9072d93a058499e19bc4509c569e2a93a79a775b"
  ],
  "author": {
    "name": "Natalie Weizenbaum",
    "email": "nweiz@google.com",
    "time": "Thu Feb 12 11:57:07 2015 -0800"
  },
  "committer": {
    "name": "Natalie Weizenbaum",
    "email": "nweiz@google.com",
    "time": "Thu Feb 12 11:57:07 2015 -0800"
  },
  "message": "Fold empty async frames when generating a terse stack trace.\n\nThis avoids having stack chains with a bunch of useless empty frames.\n\nR\u003drnystrom@google.com, kevmoo@google.com\n\nReview URL: https://codereview.chromium.org//921553006\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "25abd8a481ab8f905f6db5a8da124ef97bb551d6",
      "old_mode": 33188,
      "old_path": "pkgs/stack_trace/CHANGELOG.md",
      "new_id": "edd8ba6ef22ab9060033c2a20895b491d02a41a3",
      "new_mode": 33188,
      "new_path": "pkgs/stack_trace/CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "2690ece17a2fac811a86413328eb2fd3fd7a1b58",
      "old_mode": 33188,
      "old_path": "pkgs/stack_trace/lib/src/trace.dart",
      "new_id": "5cd09e9bb7fe0774e06ac6297667597dfb19e57e",
      "new_mode": 33188,
      "new_path": "pkgs/stack_trace/lib/src/trace.dart"
    },
    {
      "type": "modify",
      "old_id": "2fee0612999769301e3512b5af9708f89bea0083",
      "old_mode": 33188,
      "old_path": "pkgs/stack_trace/pubspec.yaml",
      "new_id": "ded96f6ea16221a3d42aabe444c225d00a816968",
      "new_mode": 33188,
      "new_path": "pkgs/stack_trace/pubspec.yaml"
    },
    {
      "type": "modify",
      "old_id": "17f9c22e946d539afaf80d7158655ce22df1f292",
      "old_mode": 33188,
      "old_path": "pkgs/stack_trace/test/trace_test.dart",
      "new_id": "c8a848bd361d66c1dd762f4f62d69bb64fdf8dcc",
      "new_mode": 33188,
      "new_path": "pkgs/stack_trace/test/trace_test.dart"
    }
  ]
}
