)]}'
{
  "commit": "127091107ff5f822298f1faa7487ffcf578adcf6",
  "tree": "9fdfa338c1f3cff581fc369d8bf512484ecdce23",
  "parents": [
    "89238a3245885ada85d2f4fdbe76adae392df69b"
  ],
  "author": {
    "name": "David Symonds",
    "email": "dsymonds@golang.org",
    "time": "Wed Feb 17 11:46:17 2016 +1100"
  },
  "committer": {
    "name": "David Symonds",
    "email": "dsymonds@golang.org",
    "time": "Wed Feb 17 11:47:48 2016 +1100"
  },
  "message": "Rearrange the well-known types package layout and API:\n\n- Rename `types` to `ptypes`.\n- Rename `DurationFromProto` to `Duration`.\n- Unexport `ValidateDuration`.\n\nSorry for the breakage. This should be the final location of everything.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "19551a994c465f47780dd5066b5075c2f82aaad4",
      "old_mode": 33188,
      "old_path": "Makefile",
      "new_id": "80b6a17d0246115eb498dc2d15ef3f82b0031086",
      "new_mode": 33188,
      "new_path": "Makefile"
    },
    {
      "type": "rename",
      "old_id": "b93383f018c51aa976b2f073a379fd8969e79345",
      "old_mode": 33188,
      "old_path": "types/any/any.pb.go",
      "new_id": "b93383f018c51aa976b2f073a379fd8969e79345",
      "new_mode": 33188,
      "new_path": "ptypes/any/any.pb.go",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "7689d5087210e8d11f882266a422257a945b144d",
      "old_mode": 33188,
      "old_path": "types/any/any.proto",
      "new_id": "7689d5087210e8d11f882266a422257a945b144d",
      "new_mode": 33188,
      "new_path": "ptypes/any/any.proto",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "ff2810af1ee04969f5b5af1f2ae6c9c4e3872982",
      "old_mode": 33188,
      "old_path": "types/doc.go",
      "new_id": "c0d595da7ab1efa8e4808b3a9fde809507fd1e73",
      "new_mode": 33188,
      "new_path": "ptypes/doc.go",
      "score": 95
    },
    {
      "type": "rename",
      "old_id": "40f84f07421652d8ab4d1bc2827f091d7256989f",
      "old_mode": 33188,
      "old_path": "types/duration.go",
      "new_id": "65cb0f8eb5f33a710d674702ad7415a4b3f228c2",
      "new_mode": 33188,
      "new_path": "ptypes/duration.go",
      "score": 89
    },
    {
      "type": "rename",
      "old_id": "3ac552e3d62f9def7b8d6a0560a943e9c31f2f92",
      "old_mode": 33188,
      "old_path": "types/duration/duration.pb.go",
      "new_id": "3ac552e3d62f9def7b8d6a0560a943e9c31f2f92",
      "new_mode": 33188,
      "new_path": "ptypes/duration/duration.pb.go",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "d2fbc88e528ff71a1d11103f6847840b720ec7b6",
      "old_mode": 33188,
      "old_path": "types/duration/duration.proto",
      "new_id": "d2fbc88e528ff71a1d11103f6847840b720ec7b6",
      "new_mode": 33188,
      "new_path": "ptypes/duration/duration.proto",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "02462ae95b9b411bedcb366667955d1acdaa766a",
      "old_mode": 33188,
      "old_path": "types/duration_test.go",
      "new_id": "e761289f12c696e3c9c9d2d00143707aa9ddcc5f",
      "new_mode": 33188,
      "new_path": "ptypes/duration_test.go",
      "score": 91
    },
    {
      "type": "rename",
      "old_id": "ab3f9728df8e2d6f3d4399a5fb1d78984c4d94d2",
      "old_mode": 33188,
      "old_path": "types/empty/empty.pb.go",
      "new_id": "ab3f9728df8e2d6f3d4399a5fb1d78984c4d94d2",
      "new_mode": 33188,
      "new_path": "ptypes/empty/empty.pb.go",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "106af2319f769cc993a9a8df29d96ced6cf44148",
      "old_mode": 33188,
      "old_path": "types/empty/empty.proto",
      "new_id": "106af2319f769cc993a9a8df29d96ced6cf44148",
      "new_mode": 33188,
      "new_path": "ptypes/empty/empty.proto",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "4166d9e8fc37ddc481113882010af47effb11141",
      "old_mode": 33261,
      "old_path": "types/regen.sh",
      "new_id": "4166d9e8fc37ddc481113882010af47effb11141",
      "new_mode": 33261,
      "new_path": "ptypes/regen.sh",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "9489166314c09353fe948b199da8baec3450d59e",
      "old_mode": 33188,
      "old_path": "types/struct/struct.pb.go",
      "new_id": "9489166314c09353fe948b199da8baec3450d59e",
      "new_mode": 33188,
      "new_path": "ptypes/struct/struct.pb.go",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "7e68fbc6e50c63ed414c274305ea254f6b4cc5c7",
      "old_mode": 33188,
      "old_path": "types/struct/struct.proto",
      "new_id": "7e68fbc6e50c63ed414c274305ea254f6b4cc5c7",
      "new_mode": 33188,
      "new_path": "ptypes/struct/struct.proto",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "ac27c4bebd1491c725ab2f3e3ac1cb25e9f5a2f0",
      "old_mode": 33188,
      "old_path": "types/timestamp/timestamp.pb.go",
      "new_id": "ac27c4bebd1491c725ab2f3e3ac1cb25e9f5a2f0",
      "new_mode": 33188,
      "new_path": "ptypes/timestamp/timestamp.pb.go",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "cc6dc6ff0a8ac13ea0427c91c080c342f959066f",
      "old_mode": 33188,
      "old_path": "types/timestamp/timestamp.proto",
      "new_id": "cc6dc6ff0a8ac13ea0427c91c080c342f959066f",
      "new_mode": 33188,
      "new_path": "ptypes/timestamp/timestamp.proto",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "e90bdea9e76b96365af66704989795c0caae1ffb",
      "old_mode": 33188,
      "old_path": "types/wrappers/wrappers.pb.go",
      "new_id": "e90bdea9e76b96365af66704989795c0caae1ffb",
      "new_mode": 33188,
      "new_path": "ptypes/wrappers/wrappers.pb.go",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "3f48109c6f2f2fb422d748f716826cd4956f53fb",
      "old_mode": 33188,
      "old_path": "types/wrappers/wrappers.proto",
      "new_id": "3f48109c6f2f2fb422d748f716826cd4956f53fb",
      "new_mode": 33188,
      "new_path": "ptypes/wrappers/wrappers.proto",
      "score": 100
    }
  ]
}
