)]}'
{
  "commit": "5c1ab0815519000f35cb88e3aa07dc8fa4722de3",
  "tree": "aafde57b9e49ea3ab66ffc299276c3e1023b0c81",
  "parents": [
    "d6869f13d15e56829cf614068abfa91cbe925979"
  ],
  "author": {
    "name": "tomlu",
    "email": "tomlu@google.com",
    "time": "Tue Aug 22 23:43:40 2017 +0200"
  },
  "committer": {
    "name": "Damien Martin-Guillerez",
    "email": "dmarting@google.com",
    "time": "Wed Aug 23 13:31:27 2017 +0200"
  },
  "message": "Use CustomCommandLine directly instead of via SpawnAction.Builder.\n\nThis change forces use of CustomCommandLine.Builder, which has a richer interface for constructing memory-efficient command lines. It will also permit surveying the code base for inefficient patterns using an IDE.\n\nThis change was done by hand and split using Rosie to assist with rollbacks in case of bugs. Reviewers, please pay particular attention to:\n\n* Each all to addInputArgument/addOutputArgument should come with a corresponding matching pair to SpawnAction.Builder#addInput and CustomCommandLine.Builder#addExecPath (eg.).\n* The commandLine must be set on the SpawnAction using SpawnAction.Builder#setCommandLine.\n\nNote that most calls to addPrefixed(\"arg\u003d\", val) should be more idiomatically expressed as add(\"arg\", val), but this involves changing tests and making sure that the command line tools can accept the format.\n\nPiperOrigin-RevId: 166116762\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e9895857427e9abf6eda3842c28398abf8abd4ac",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidIdlHelper.java",
      "new_id": "e4a44dd84ae3d1650ad63c4c1fddacbf85b473fb",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/android/AndroidIdlHelper.java"
    }
  ]
}
