)]}'
{
  "commit": "bbf164c985576a348f3bcd4c48b3e9fd8a464a66",
  "tree": "d426f1e165a4d6af181ab31f5ac8cfb4d13234c2",
  "parents": [
    "653df1fbeadf8dfadcee8373656cbbdb431005b3"
  ],
  "author": {
    "name": "Alexei Frolov",
    "email": "frolv@google.com",
    "time": "Mon Dec 16 12:51:59 2019 -0800"
  },
  "committer": {
    "name": "CQ Bot Account",
    "email": "commit-bot@chromium.org",
    "time": "Wed Dec 18 21:29:17 2019 +0000"
  },
  "message": "Add pw_protobuf module\n\nThis change adds a pw_protobuf module containing a lightweight protobuf\nwire format encoder. The encoder comes with a Python script that plugs\ninto protoc to generate C++ classes from Protobuf files that wrap its\nfunctionality.\n\nBug: 20\n\nChange-Id: I867655ab64c2f6ddd2a731054b1fbe7ccc97ba70\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cac6c6416d91e0590e94a619fb213161df3a1f94",
      "old_mode": 33188,
      "old_path": ".pylintrc",
      "new_id": "3445b61ff9697080950ce3eee753f902702fe409",
      "new_mode": 33188,
      "new_path": ".pylintrc"
    },
    {
      "type": "modify",
      "old_id": "5514010b160cdd8133d41262d8575019d81fddea",
      "old_mode": 33188,
      "old_path": "BUILD.gn",
      "new_id": "869c619aaeff568a4275dc0929de64998d07e6e6",
      "new_mode": 33188,
      "new_path": "BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "19e6b0721613eeaa97b94c34855163d9f9708280",
      "old_mode": 33188,
      "old_path": "modules.gni",
      "new_id": "2b3089317528eb5aa418ca630ccfbac6ebdcacc5",
      "new_mode": 33188,
      "new_path": "modules.gni"
    },
    {
      "type": "modify",
      "old_id": "278cdd9e1f9f8d9f2c599bd27f4c6274092e38a2",
      "old_mode": 33188,
      "old_path": "pw_build/pigweed.bzl",
      "new_id": "94ecc7126513e705f2e2c26f69af7fe8b7e69fb9",
      "new_mode": 33188,
      "new_path": "pw_build/pigweed.bzl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6b97ea419e0cfcdd49baf0629637d3a2d43d9939",
      "new_mode": 33188,
      "new_path": "pw_protobuf/BUILD"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3afa792a6579573afb72025ea46affccaeeed300",
      "new_mode": 33188,
      "new_path": "pw_protobuf/BUILD.gn"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1321e960629a6d1f02f4ce1b352b5f7193f397f0",
      "new_mode": 33188,
      "new_path": "pw_protobuf/README.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a441f3ab48aba367747877ea0d1d26ad2ed67846",
      "new_mode": 33188,
      "new_path": "pw_protobuf/codegen_test.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "701e22d2233d884cbf46eb32b1119bf56ac4e755",
      "new_mode": 33188,
      "new_path": "pw_protobuf/encoder.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4da077e09b9cb8583c87f4a400c8e63cb4ebd7fe",
      "new_mode": 33188,
      "new_path": "pw_protobuf/encoder_test.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "103612f985157ecf259ca3c366e72dcc9a979e4c",
      "new_mode": 33188,
      "new_path": "pw_protobuf/public/pw_protobuf/codegen.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "89c4e78072a6b35cf18db607311615dae6579cdf",
      "new_mode": 33188,
      "new_path": "pw_protobuf/public/pw_protobuf/encoder.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "112161d99e5d3a4eb170ca6b8be1f7f6fceb210d",
      "new_mode": 33188,
      "new_path": "pw_protobuf/pw_protobuf_protos/test_protos/full_test.proto"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c8d9e8e081e2ee2c6de13044e0a5454962589db6",
      "new_mode": 33188,
      "new_path": "pw_protobuf/pw_protobuf_protos/test_protos/proto2.proto"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c281db07174e1b750d82ab8d3c27ea1b0cbaabf3",
      "new_mode": 33188,
      "new_path": "pw_protobuf/pw_protobuf_protos/test_protos/repeated.proto"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b56ff569be1b69684f6ee9566712993cdbe93c7c",
      "new_mode": 33261,
      "new_path": "pw_protobuf/py/pw_protobuf/codegen.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "293448b09d240e6f4a9d627d1e8eb04241922428",
      "new_mode": 33188,
      "new_path": "pw_protobuf/py/pw_protobuf/methods.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b0bcaf653fdd4a91e3ab84260dd4ad25c3016db7",
      "new_mode": 33188,
      "new_path": "pw_protobuf/py/pw_protobuf/proto_structures.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "06192fdec417fe1337d2b2f8340a397d603721b0",
      "new_mode": 33188,
      "new_path": "pw_protobuf/py/setup.py"
    },
    {
      "type": "modify",
      "old_id": "d20679a218bb370c5f8874f7303f9f6496973265",
      "old_mode": 33188,
      "old_path": "pw_protobuf_compiler/proto.gni",
      "new_id": "208d816069bd4ac0dd505617ab7b59394d3cdf70",
      "new_mode": 33188,
      "new_path": "pw_protobuf_compiler/proto.gni"
    },
    {
      "type": "modify",
      "old_id": "26003e3269c26c1e7afc1487f403ea72b83e0e5c",
      "old_mode": 33188,
      "old_path": "pw_protobuf_compiler/py/pw_protobuf_compiler/generate_protos.py",
      "new_id": "2bbecb250c40d46c41f047c3c548c904440e7ce0",
      "new_mode": 33188,
      "new_path": "pw_protobuf_compiler/py/pw_protobuf_compiler/generate_protos.py"
    }
  ]
}
