)]}'
{
  "commit": "a212da0491a31a03fb1e9fb21a328ac1dc72354c",
  "tree": "945c8ecf54a253fbdb6911b8f88e5947006f702c",
  "parents": [
    "f11b1de0154fa1f3dc0f06ff77fba94949123326"
  ],
  "author": {
    "name": "dnj",
    "email": "dnj@chromium.org",
    "time": "Fri Jul 01 01:58:31 2016"
  },
  "committer": {
    "name": "Commit bot",
    "email": "commit-bot@chromium.org",
    "time": "Fri Jul 01 01:58:31 2016"
  },
  "message": "datastore: Update AllocateIDs to take keys.\n\nUpdate the Datastore\u0027s AllocateIDs call to accept variadic arguments similar\nto Get/Put/Delete/Exists. Structs can be supplied to populate their keys\ndirectly, and keys or key slices can be supplied to directly allocate keys.\n\nThis adds some Key helper functions:\n- SameKind, which asserts that keys reference the same kind.\n- Partial, which returns a partial key given a source key.\n- WithID, which returns a derivative key with the specified ID.\n- NewIncompleteKeys, which allocates a slice of incomplete keys given a kind.\n\nBUG\u003d\n\nReview-Url: https://codereview.chromium.org/2007123002\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d96fe6681d2943a5c41fb5ac5739ab5e6ae05802",
      "old_mode": 33188,
      "old_path": "filter/count/rds.go",
      "new_id": "418878fdf3927eb2705f03d0ed34bd10ed66e2ce",
      "new_mode": 33188,
      "new_path": "filter/count/rds.go"
    },
    {
      "type": "modify",
      "old_id": "d0105cfb2d537bfed78bb975cc567c4eb831adb8",
      "old_mode": 33188,
      "old_path": "filter/dscache/ds.go",
      "new_id": "e8d60a3f973fd211aebb1184ba4f439cc714aacb",
      "new_mode": 33188,
      "new_path": "filter/dscache/ds.go"
    },
    {
      "type": "modify",
      "old_id": "d576849e25b810705b73ac7cb4729bc11391889a",
      "old_mode": 33188,
      "old_path": "filter/dscache/ds_txn.go",
      "new_id": "4b7835657caec931a62a186e76e9db2ea7471c8c",
      "new_mode": 33188,
      "new_path": "filter/dscache/ds_txn.go"
    },
    {
      "type": "modify",
      "old_id": "da6866b825a35e08541b67ffeb69465b5d1f810c",
      "old_mode": 33188,
      "old_path": "filter/dscache/support.go",
      "new_id": "4e9b38e7e7b6862f6c14474010f0522dc353bb8b",
      "new_mode": 33188,
      "new_path": "filter/dscache/support.go"
    },
    {
      "type": "modify",
      "old_id": "2bbbce7d445200f3659f8a164ba0222881fffbd3",
      "old_mode": 33188,
      "old_path": "filter/featureBreaker/rds.go",
      "new_id": "4523fc297f0147108d2eff75b9fe3cb9426d3eed",
      "new_mode": 33188,
      "new_path": "filter/featureBreaker/rds.go"
    },
    {
      "type": "modify",
      "old_id": "e39a8b8e4c404603d358d0885cb4bf169d8afc6f",
      "old_mode": 33188,
      "old_path": "filter/txnBuf/ds_txn.go",
      "new_id": "7b25c607d2d4fc2a003d0a2ab8679d94be086929",
      "new_mode": 33188,
      "new_path": "filter/txnBuf/ds_txn.go"
    },
    {
      "type": "modify",
      "old_id": "e76b0e8a7fbd23820b979361b317076dc466a63b",
      "old_mode": 33188,
      "old_path": "filter/txnBuf/state.go",
      "new_id": "1fefc1b02249dded2793637217a74663d8a395ce",
      "new_mode": 33188,
      "new_path": "filter/txnBuf/state.go"
    },
    {
      "type": "modify",
      "old_id": "7774cc3a6f78682377e93a6427705279e3ab0789",
      "old_mode": 33188,
      "old_path": "filter/txnBuf/txnbuf_test.go",
      "new_id": "a115d0642a41399a2464596a4ec40241eed2c02a",
      "new_mode": 33188,
      "new_path": "filter/txnBuf/txnbuf_test.go"
    },
    {
      "type": "modify",
      "old_id": "64696c0347a2f270ca9cb35044e0410b972e82d9",
      "old_mode": 33188,
      "old_path": "impl/dummy/dummy.go",
      "new_id": "a11518c30ebf75605097f6cd0b36d5b2ef96b753",
      "new_mode": 33188,
      "new_path": "impl/dummy/dummy.go"
    },
    {
      "type": "modify",
      "old_id": "b78600e0dbc0db65ae1c49a8bd7ace1f6be6f344",
      "old_mode": 33188,
      "old_path": "impl/memory/datastore.go",
      "new_id": "255446d4570b805e1cbb8da832fc0374559c70e8",
      "new_mode": 33188,
      "new_path": "impl/memory/datastore.go"
    },
    {
      "type": "modify",
      "old_id": "68a1642bd86ef9f6daa926a9118552b570e5636d",
      "old_mode": 33188,
      "old_path": "impl/memory/datastore_data.go",
      "new_id": "ad8515ee62919e1cf7a84fe942870127170a4043",
      "new_mode": 33188,
      "new_path": "impl/memory/datastore_data.go"
    },
    {
      "type": "modify",
      "old_id": "c08930000016ca0cc32643ce238b8cbb700e0abd",
      "old_mode": 33188,
      "old_path": "impl/memory/datastore_test.go",
      "new_id": "225e9f91b6670f3adc138e0b68a30724c042bd28",
      "new_mode": 33188,
      "new_path": "impl/memory/datastore_test.go"
    },
    {
      "type": "modify",
      "old_id": "dcb889c25de6bf45e473bce717d52d608f144f4c",
      "old_mode": 33188,
      "old_path": "impl/prod/everything_test.go",
      "new_id": "a769557decce690cb551d713fe46ca36ad5ff536",
      "new_mode": 33188,
      "new_path": "impl/prod/everything_test.go"
    },
    {
      "type": "modify",
      "old_id": "99500d6ef5e98d80d57bde6fe08ec26e3b5a948c",
      "old_mode": 33188,
      "old_path": "impl/prod/raw_datastore.go",
      "new_id": "57747012a0b3a1f0c79e5d6c8f1b4262442ee142",
      "new_mode": 33188,
      "new_path": "impl/prod/raw_datastore.go"
    },
    {
      "type": "modify",
      "old_id": "cd0c970ba2f8c74c696ef8392b0542fc3098513d",
      "old_mode": 33188,
      "old_path": "service/datastore/checkfilter.go",
      "new_id": "478fd925b1bfbed630b1b207d7747b5637fd59de",
      "new_mode": 33188,
      "new_path": "service/datastore/checkfilter.go"
    },
    {
      "type": "modify",
      "old_id": "783fcdb50ae3a3badec6a5928f7979256acd33ea",
      "old_mode": 33188,
      "old_path": "service/datastore/checkfilter_test.go",
      "new_id": "bd823b5807a299ac26be2bd05395a9f1bd5d6999",
      "new_mode": 33188,
      "new_path": "service/datastore/checkfilter_test.go"
    },
    {
      "type": "modify",
      "old_id": "375066276565ad044864079f33f66b109ebd82ec",
      "old_mode": 33188,
      "old_path": "service/datastore/datastore.go",
      "new_id": "3c328c966efcdb947d03c131ed839ce5620a0571",
      "new_mode": 33188,
      "new_path": "service/datastore/datastore.go"
    },
    {
      "type": "modify",
      "old_id": "20bffdc5fd934f0dc0bf4bc1efe19f64238c68b2",
      "old_mode": 33188,
      "old_path": "service/datastore/datastore_test.go",
      "new_id": "19982929c5d98bf3a14c9f469382092e0eeb8afa",
      "new_mode": 33188,
      "new_path": "service/datastore/datastore_test.go"
    },
    {
      "type": "modify",
      "old_id": "c007b1ba4b1828a03cafe8767385f49c49eb81c6",
      "old_mode": 33188,
      "old_path": "service/datastore/finalized_query.go",
      "new_id": "cb1b525cec4fd0e79f60efc780b51cac896f2a68",
      "new_mode": 33188,
      "new_path": "service/datastore/finalized_query.go"
    },
    {
      "type": "modify",
      "old_id": "0796153446aaa66c6896395d75d1575190a8d1e8",
      "old_mode": 33188,
      "old_path": "service/datastore/interface.go",
      "new_id": "718b9c15e0aa2060509a3018b27d71ae6c57a73a",
      "new_mode": 33188,
      "new_path": "service/datastore/interface.go"
    },
    {
      "type": "modify",
      "old_id": "faa6ab711806ce121f94d13dd638b1cc5b57655d",
      "old_mode": 33188,
      "old_path": "service/datastore/key.go",
      "new_id": "4b11735f6a8e7be2a2b6e4da1b00dac23b9c4e35",
      "new_mode": 33188,
      "new_path": "service/datastore/key.go"
    },
    {
      "type": "modify",
      "old_id": "686cb64877ac0bb28cc58888c81559c97fa4fe4f",
      "old_mode": 33188,
      "old_path": "service/datastore/key_test.go",
      "new_id": "ae8fe3c824e626a9663252625e377f2c04b1d3a2",
      "new_mode": 33188,
      "new_path": "service/datastore/key_test.go"
    },
    {
      "type": "modify",
      "old_id": "009c3f178b6431b56d7bd8b910933ff27c9e6a63",
      "old_mode": 33188,
      "old_path": "service/datastore/multiarg.go",
      "new_id": "13bc3f02e74d2e294af0081402378dc5671bb69b",
      "new_mode": 33188,
      "new_path": "service/datastore/multiarg.go"
    },
    {
      "type": "modify",
      "old_id": "4cc28d608e3a10a465c5ea639dcf83e2dad38eba",
      "old_mode": 33188,
      "old_path": "service/datastore/raw_interface.go",
      "new_id": "b9388037e9db3276dd3264a5886f1872d5d7cf4e",
      "new_mode": 33188,
      "new_path": "service/datastore/raw_interface.go"
    }
  ]
}
