)]}'
{
  "commit": "5b890d1a4c13cc7144fbfdd2a0b525c1627db4ec",
  "tree": "332ab501963b60322ba9beff26accbdf3f653c12",
  "parents": [
    "799aa5d47e63cc08be41839822868909f84f3ba6"
  ],
  "author": {
    "name": "Michael Bolin",
    "email": "mbolin@fb.com",
    "time": "Tue Nov 12 12:14:30 2013 -0800"
  },
  "committer": {
    "name": "Michael Bolin",
    "email": "mbolin@fb.com",
    "time": "Sat Nov 16 19:35:29 2013 -0800"
  },
  "message": "Use AccumulateClassNames.getClassNames() to determine whether to run dx.\n\nSummary:\nPreviously, `DexProducedFromJavaLibraryThatContainsClassFiles` would store a\ntiny bit of metadata to determine whether its dependent `AccumulateClassNames`\nfound any class files. Now we just ask the `AccumulateClassNames` directly.\n\nTest Plan: Sandcastle builds.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e48521855439da1795ad6a6b6d5556d1bb690bb4",
      "old_mode": 33188,
      "old_path": "src/com/facebook/buck/android/DexProducedFromJavaLibraryThatContainsClassFiles.java",
      "new_id": "d917476bef84a2c802d893c69613b41e10e85578",
      "new_mode": 33188,
      "new_path": "src/com/facebook/buck/android/DexProducedFromJavaLibraryThatContainsClassFiles.java"
    },
    {
      "type": "delete",
      "old_id": "9a72c01ddc4105c98d2f177c431e793d94a49f1e",
      "old_mode": 33188,
      "old_path": "src/com/facebook/buck/step/fs/FileExistsAndIsNotEmptyStep.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c18b4a5c331206c404922294cb41bc1e86272eb9",
      "new_mode": 33188,
      "new_path": "test/com/facebook/buck/android/DexProducedFromJavaLibraryThatContainsClassFilesTest.java"
    }
  ]
}
