)]}'
{
  "commit": "79a23c435c4862d0c7af3c2740662104c77171dc",
  "tree": "d21b31c76dee2e7d9a06a65a21eaad5e0c6615f8",
  "parents": [
    "ca3dc15d4ca3bb1b092928b456ea844637693b61"
  ],
  "author": {
    "name": "Thomas Van Lenten",
    "email": "thomasvl@google.com",
    "time": "Thu Mar 17 10:04:21 2016 -0400"
  },
  "committer": {
    "name": "Thomas Van Lenten",
    "email": "thomasvl@google.com",
    "time": "Thu Mar 17 10:04:21 2016 -0400"
  },
  "message": "Shrink ObjC overhead (generated size and some runtime sizes)\n\nNOTE: This is a binary breaking change as structure sizes have changed size\nand/or order.\n\n- Drop capturing field options, no other options were captured and other mobile\n  targeted languages don\u0027t try to capture this sort information (saved 8\n  bytes for every field defined (in static data and again in field descriptor\n  instance size data).\n- No longer generate/compile in the messages/enums in descriptor.proto. If\n  developers need it, they should generate it and compile it in. Reduced the\n  overhead of the core library.\n- Compute the number of has_bits actually needs to avoid over reserving.\n- Let the boolean single fields store via a has_bit to avoid storage, makes\n  the common cases of the instance size smaller.\n- Reorder some flags and down size the enums to contain the bits needed.\n- Reorder the items in the structures to manually ensure they are are packed\n  better (especially when generating 64bit code - 8 bytes for every field,\n  16 bytes for every extension, instance sizes 8 bytes also).\n- Split off the structure initialization so when the default is zero, the\n  generated static storage doesn\u0027t need to reserve the space. This is batched\n  at the message level, so all the fields for the message have to have zero\n  defaults to get the saves. By definition all proto3 syntax  files fall into\n  this case but it also saves space for the proto2 that use the standard\n  defaults. (saves 8 bytes of static data for every field that had a zero\n  default)\n- Don\u0027t track the enums defined by a message. Nothing in the runtime needs it\n  and it was just generation and runtime overhead. (saves 8 bytes per enum)\n- Ensure EnumDescriptors are started up threadsafe in all cases.\n- Split some of the Descriptor initialization into multiple methods so the\n  generated code isn\u0027t padded with lots of zero/nil args.\n- Change how oneof info is feed to the runtime enabling us to generate less\n  static data (8 bytes saved per oneof for 64bit).\n- Change how enum value informat is capture to pack the data and only decode\n  it if it ends up being needed. Avoids padding issues causing bloat of 64bit,\n  and removes the needs for extra pointers in addition to the data (just the\n  data and one pointer now).\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "064efdfb1cd755c2fccd64016e8b048d4c4fcf89",
      "old_mode": 33188,
      "old_path": "Makefile.am",
      "new_id": "4b5a44ff35af55c75d86e0bede05c26ed6ca4459",
      "new_mode": 33188,
      "new_path": "Makefile.am"
    },
    {
      "type": "modify",
      "old_id": "02c83723cff28f4793f93623ab602571a6ebfafe",
      "old_mode": 33188,
      "old_path": "Protobuf.podspec",
      "new_id": "0bbd06df0172b87e6cde9dd646ef9149d86934de",
      "new_mode": 33188,
      "new_path": "Protobuf.podspec"
    },
    {
      "type": "modify",
      "old_id": "81b8a0d648ba1a097762ce03ad0cea377fa82dff",
      "old_mode": 33261,
      "old_path": "generate_descriptor_proto.sh",
      "new_id": "1690d0da55abf233f579d5cabbd3122e927ab2c7",
      "new_mode": 33261,
      "new_path": "generate_descriptor_proto.sh"
    },
    {
      "type": "modify",
      "old_id": "e9c5fe611ba3fd7ec4a10ea41aeb24c746508d2c",
      "old_mode": 33261,
      "old_path": "objectivec/DevTools/compile_testing_protos.sh",
      "new_id": "82953130c967ee6a03ba133ff56f46c24efbad2c",
      "new_mode": 33261,
      "new_path": "objectivec/DevTools/compile_testing_protos.sh"
    },
    {
      "type": "modify",
      "old_id": "c8681e26d510c3c1b2c4dbbed6b6ea5e1d69587b",
      "old_mode": 33261,
      "old_path": "objectivec/DevTools/full_mac_build.sh",
      "new_id": "b382779ec2b7fa3b0a54311b60f50229cac7850c",
      "new_mode": 33261,
      "new_path": "objectivec/DevTools/full_mac_build.sh"
    },
    {
      "type": "modify",
      "old_id": "c49c7e20ed50af9edbff9bd50afe8a101d74600b",
      "old_mode": 33188,
      "old_path": "objectivec/GPBBootstrap.h",
      "new_id": "ffefa7706cef88daaf6099cb0a7418124f15c2de",
      "new_mode": 33188,
      "new_path": "objectivec/GPBBootstrap.h"
    },
    {
      "type": "modify",
      "old_id": "8d8e97540ce5849b5f246e1b2b5c7a77737c30b4",
      "old_mode": 33188,
      "old_path": "objectivec/GPBDescriptor.h",
      "new_id": "a6eff0fb7d14b97eceb344f97d25d6fadb353160",
      "new_mode": 33188,
      "new_path": "objectivec/GPBDescriptor.h"
    },
    {
      "type": "modify",
      "old_id": "bae9187ee517e23fffa633b05e140e6f0e4865bd",
      "old_mode": 33188,
      "old_path": "objectivec/GPBDescriptor.m",
      "new_id": "2709737cad6ad26eda139af8d9a42880d2a63e16",
      "new_mode": 33188,
      "new_path": "objectivec/GPBDescriptor.m"
    },
    {
      "type": "modify",
      "old_id": "7987d928700b4520148cf7783b7075d2b6dcadbf",
      "old_mode": 33188,
      "old_path": "objectivec/GPBDescriptor_PackagePrivate.h",
      "new_id": "e3d0a80f0525bea9d3b9d4869ece58cf7547d362",
      "new_mode": 33188,
      "new_path": "objectivec/GPBDescriptor_PackagePrivate.h"
    },
    {
      "type": "modify",
      "old_id": "d5e8d37b74dcae41c3b11c14c0b7d74f87085459",
      "old_mode": 33188,
      "old_path": "objectivec/GPBMessage.m",
      "new_id": "94d179bebf1e24e893c53590302944dcde9c88c7",
      "new_mode": 33188,
      "new_path": "objectivec/GPBMessage.m"
    },
    {
      "type": "modify",
      "old_id": "e9cbfb42fcbaf9ca3851fc90bceed831066078ab",
      "old_mode": 33188,
      "old_path": "objectivec/GPBProtocolBuffers.m",
      "new_id": "8512af7e605ec50f32d356188359c9673276e206",
      "new_mode": 33188,
      "new_path": "objectivec/GPBProtocolBuffers.m"
    },
    {
      "type": "modify",
      "old_id": "e91d86a647738ec91b3b3d10cf3c6ee5422ae5ed",
      "old_mode": 33188,
      "old_path": "objectivec/GPBRuntimeTypes.h",
      "new_id": "0a38b110c6664c1eae9ca3a1f28b5c959a0e3fbe",
      "new_mode": 33188,
      "new_path": "objectivec/GPBRuntimeTypes.h"
    },
    {
      "type": "modify",
      "old_id": "d4d6471fda181964af827c16ada8fa411c296cb2",
      "old_mode": 33188,
      "old_path": "objectivec/GPBUtilities.m",
      "new_id": "3e9d11c01bcc35b13974bbce35c663535235f301",
      "new_mode": 33188,
      "new_path": "objectivec/GPBUtilities.m"
    },
    {
      "type": "modify",
      "old_id": "cac551f6f66f6cf685ae8be8133fb95eabc9b67b",
      "old_mode": 33188,
      "old_path": "objectivec/GPBUtilities_PackagePrivate.h",
      "new_id": "a6b6c84d988064c5e8f1d90ab7240a75c1df63df",
      "new_mode": 33188,
      "new_path": "objectivec/GPBUtilities_PackagePrivate.h"
    },
    {
      "type": "modify",
      "old_id": "78c3f9bac8a8d1273b3b3c3446b948f98dcd6720",
      "old_mode": 33188,
      "old_path": "objectivec/ProtocolBuffers_OSX.xcodeproj/project.pbxproj",
      "new_id": "309342543fe8a4785c5ab156e613f52f337962e5",
      "new_mode": 33188,
      "new_path": "objectivec/ProtocolBuffers_OSX.xcodeproj/project.pbxproj"
    },
    {
      "type": "modify",
      "old_id": "5d96c05f53508636af13a861ab87bf031b71c237",
      "old_mode": 33188,
      "old_path": "objectivec/ProtocolBuffers_iOS.xcodeproj/project.pbxproj",
      "new_id": "b6221819357fe96ad4b69aefa29de2750ef4add9",
      "new_mode": 33188,
      "new_path": "objectivec/ProtocolBuffers_iOS.xcodeproj/project.pbxproj"
    },
    {
      "type": "modify",
      "old_id": "d0408869b13bcc388e195e4a4e23dbfd0d19a048",
      "old_mode": 33188,
      "old_path": "objectivec/Tests/GPBARCUnittestProtos.m",
      "new_id": "28d2396c2a6209f4f04e04c63995aae8a2695b76",
      "new_mode": 33188,
      "new_path": "objectivec/Tests/GPBARCUnittestProtos.m"
    },
    {
      "type": "modify",
      "old_id": "ccdbb645333c77ee0780d9dcb4eb0ae87f61722d",
      "old_mode": 33188,
      "old_path": "objectivec/Tests/GPBDescriptorTests.m",
      "new_id": "a1923c9cc4ccb45d42a95189f369ba8f4f21bcd7",
      "new_mode": 33188,
      "new_path": "objectivec/Tests/GPBDescriptorTests.m"
    },
    {
      "type": "modify",
      "old_id": "50c4dfa9886edb7996406e24196bad971f3f9fd5",
      "old_mode": 33188,
      "old_path": "objectivec/Tests/GPBUnittestProtos.m",
      "new_id": "d19beee9247af83014832c1814cb60be80b27397",
      "new_mode": 33188,
      "new_path": "objectivec/Tests/GPBUnittestProtos.m"
    },
    {
      "type": "rename",
      "old_id": "84ba07380f3154778464a71570de8e611257f5cf",
      "old_mode": 33261,
      "old_path": "objectivec/generate_descriptors_proto.sh",
      "new_id": "be9b38a55d61f6fe53a5ac58091a1f0a6868fa9b",
      "new_mode": 33261,
      "new_path": "objectivec/generate_well_known_types.sh",
      "score": 85
    },
    {
      "type": "modify",
      "old_id": "a204ae9af80b64ec8ef54bfab9fe981042a9e328",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Any.pbobjc.h",
      "new_id": "79ec0fb71072077a8a4f0887a1f484cfa1fa4bd1",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Any.pbobjc.h"
    },
    {
      "type": "modify",
      "old_id": "b41102a47b5fc31c9b52e9be02dbd6ab87b894fa",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Any.pbobjc.m",
      "new_id": "7cbf0defcedf4fc99a2b2e3ad5833c2770f61153",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Any.pbobjc.m"
    },
    {
      "type": "modify",
      "old_id": "271a166f7135affc634c7480fbe03e273b5bad01",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Api.pbobjc.h",
      "new_id": "3f7e99c6380fa0c2665f75f54e790018bf2f0c20",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Api.pbobjc.h"
    },
    {
      "type": "modify",
      "old_id": "d964ff4126f771312d4748f2272672a36307b7b1",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Api.pbobjc.m",
      "new_id": "2b2f62eaa143ed21f27eaabb66f15eeed32b8fef",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Api.pbobjc.m"
    },
    {
      "type": "delete",
      "old_id": "109711c784c8462e02245a80034028e2c26932e7",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Descriptor.pbobjc.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "4030989310c3e7b7a6c8527209c275c4cb792d34",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Descriptor.pbobjc.m",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "ebf9119e39a6b8af01cf7fd05c0153e792e12612",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Duration.pbobjc.h",
      "new_id": "3685a6148afc74532d8385300bf7d5f730fe449a",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Duration.pbobjc.h"
    },
    {
      "type": "modify",
      "old_id": "e4fd4951c54a5515f062f2f201e5b3bf33fb64c9",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Duration.pbobjc.m",
      "new_id": "bb79c7a336765cdc5167d8de2fe52ba216cb641f",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Duration.pbobjc.m"
    },
    {
      "type": "modify",
      "old_id": "ca09f71dbd3f88409e3c81a30d2125a05f34d12d",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Empty.pbobjc.h",
      "new_id": "6651ef71dddcfc5059a33fa0c608048f690503d8",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Empty.pbobjc.h"
    },
    {
      "type": "modify",
      "old_id": "17f0c1ac66345379d2fea13268b85b8a682c0be6",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Empty.pbobjc.m",
      "new_id": "5d7f8f195b42de8af28b4b8f3fce1dd065b920a3",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Empty.pbobjc.m"
    },
    {
      "type": "modify",
      "old_id": "f861a9863346363cfe0966d8d195dd639cfd0f72",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/FieldMask.pbobjc.h",
      "new_id": "931f664c2cf1fd8f0c6f7742a8a966c6f15a226f",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/FieldMask.pbobjc.h"
    },
    {
      "type": "modify",
      "old_id": "f9684f5144c10d3007ee03071bb563d06ec8a612",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/FieldMask.pbobjc.m",
      "new_id": "36fc758e4861dfb492c61464e2637286f9d189bb",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/FieldMask.pbobjc.m"
    },
    {
      "type": "modify",
      "old_id": "546db6749522c1bc6f6ecfb0eb56153824a6baba",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/SourceContext.pbobjc.h",
      "new_id": "67b6d4798de5f5ed36186b0d0ce5e88b7f7254c4",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/SourceContext.pbobjc.h"
    },
    {
      "type": "modify",
      "old_id": "ac1827fc999fa34e80189ee7ae7a24017005ebe5",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/SourceContext.pbobjc.m",
      "new_id": "4e8bf3d20c4eb57709c158b19a91650b6832a69e",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/SourceContext.pbobjc.m"
    },
    {
      "type": "modify",
      "old_id": "7b9c45a03593db833c2b4607d84cdc40e8f4a932",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Struct.pbobjc.h",
      "new_id": "e2388e221ed581b3fb13b245072a7bf063c6b96a",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Struct.pbobjc.h"
    },
    {
      "type": "modify",
      "old_id": "14b8f271c511adc566068313bd6abafad006f638",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Struct.pbobjc.m",
      "new_id": "0601a4b2d82dbcfb70f19ba17c96ce8a43182298",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Struct.pbobjc.m"
    },
    {
      "type": "modify",
      "old_id": "d17c28605dab92dcdcd5453b2ae1618c3bd72258",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Timestamp.pbobjc.h",
      "new_id": "b66b323ac54cacab0ba7731fc54f8d616f3ad291",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Timestamp.pbobjc.h"
    },
    {
      "type": "modify",
      "old_id": "a206f159ddc46664f5a4b84639f8e3bf2602901b",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Timestamp.pbobjc.m",
      "new_id": "14161159dcef215c4affaafe21e6a83e59d19a26",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Timestamp.pbobjc.m"
    },
    {
      "type": "modify",
      "old_id": "9301e4f412a5efe29a6d2ca352392d6d0d81c7a5",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Type.pbobjc.h",
      "new_id": "efaeab392a5677cea384b4bb7ffaa977fd318e46",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Type.pbobjc.h"
    },
    {
      "type": "modify",
      "old_id": "b4e0a5f6fa40c305fead27c9d1a594ac31196399",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Type.pbobjc.m",
      "new_id": "175c0233bc9564029ebbf6b25db0256ec1c465b1",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Type.pbobjc.m"
    },
    {
      "type": "modify",
      "old_id": "38b99622ffe8fcd7ff1c367e27895508a06f730f",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Wrappers.pbobjc.h",
      "new_id": "0ca439a8f8f9ad3a3e5903662445334114a65882",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Wrappers.pbobjc.h"
    },
    {
      "type": "modify",
      "old_id": "0403b4645b1257d4a4b6db25f6ba618d0062bc5a",
      "old_mode": 33188,
      "old_path": "objectivec/google/protobuf/Wrappers.pbobjc.m",
      "new_id": "b1b5be694ed840524b970cb47b74a55ce43722c7",
      "new_mode": 33188,
      "new_path": "objectivec/google/protobuf/Wrappers.pbobjc.m"
    },
    {
      "type": "modify",
      "old_id": "857d24a413c3b24710bd732aabf7e7c59cd62809",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_enum.cc",
      "new_id": "3f81dcb8b554d1d11c9ae2e602eedc18a127173c",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_enum.cc"
    },
    {
      "type": "modify",
      "old_id": "cfbb8c5259fe5980149c7eeb946c959620632344",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_enum_field.cc",
      "new_id": "b63bc0de6322bd307ee1f756ada42b919e605784",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_enum_field.cc"
    },
    {
      "type": "modify",
      "old_id": "ae2f57e3ccd2607f7b7255ca8412cddd79925f2f",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_enum_field.h",
      "new_id": "946faa819a9fc704ccdd4824746956652a35e34c",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_enum_field.h"
    },
    {
      "type": "modify",
      "old_id": "4e348393a3dda89d7f7b2bcd438c4ca1b3b8b8ef",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_extension.cc",
      "new_id": "3f7ab9d39236dff2de003ddb0994bf9d98c9c479",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_extension.cc"
    },
    {
      "type": "modify",
      "old_id": "8697e2250b532b6af406403b97bda66e7a932374",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_field.cc",
      "new_id": "7bb9837dc4982810beedc21d7e8d48aa0939f178",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_field.cc"
    },
    {
      "type": "modify",
      "old_id": "e8a20a72d082d1d24980611ae0df7527d4105564",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_field.h",
      "new_id": "a3a4b1b6e208c778b2af6c1a60d80d099f2f44df",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_field.h"
    },
    {
      "type": "modify",
      "old_id": "161998840168a0ba8cd29c48ae23e19fc3c1ff7c",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_file.cc",
      "new_id": "c58e753006493a7a4728bc5454d87101d46f0148",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_file.cc"
    },
    {
      "type": "modify",
      "old_id": "b912ea671c4c192e0019f8da47fe77d61a8bc6a4",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_helpers.cc",
      "new_id": "fda5180712dc42dfe24914b75695ca054a497c38",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_helpers.cc"
    },
    {
      "type": "modify",
      "old_id": "a301493e5504208349cb90486e00e764c5aa1523",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_helpers.h",
      "new_id": "0db9de94f22fb3f408b1e341ff5b4e0db9f10d7b",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_helpers.h"
    },
    {
      "type": "modify",
      "old_id": "2751e9369489bd637cc5d6ffa42f47e1f4d4e332",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_map_field.cc",
      "new_id": "ac5d8aea217917729e6bc316413adfe24ececaa2",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_map_field.cc"
    },
    {
      "type": "modify",
      "old_id": "7351ea05f642ac56fd92523eca9602acf4e3f2ab",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_map_field.h",
      "new_id": "bc68a6829f04373fc5563691384aa42eff0cda34",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_map_field.h"
    },
    {
      "type": "modify",
      "old_id": "e0ea8bd27583ea4a8af9336543e729e7b7193b03",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_message.cc",
      "new_id": "3ebeeade270d084f2450ee07cb16da662c064d20",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_message.cc"
    },
    {
      "type": "modify",
      "old_id": "24e6df0769dc5afabb1b777a7af6f40da272b8c4",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_oneof.cc",
      "new_id": "44bafd7f3c2ffe9abca0b5f12bbe36aadde10767",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_oneof.cc"
    },
    {
      "type": "modify",
      "old_id": "bcba82da57abfcea9f03f53807670a592daffda2",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_oneof.h",
      "new_id": "3d9df4dbf49a9ef93e7690cfe153843fdc2a276c",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_oneof.h"
    },
    {
      "type": "modify",
      "old_id": "ea7f1b918940177386be31b1406e6f9f64d3a8a2",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_primitive_field.cc",
      "new_id": "d49350f4b7f9f3a1babd6e5ac3fd210213021ad2",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_primitive_field.cc"
    },
    {
      "type": "modify",
      "old_id": "87139afb7420999bb4bf31740058249350d2b13c",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/objectivec/objectivec_primitive_field.h",
      "new_id": "69bb1fddc1bdfc9ec02523a964204e98ccb599c7",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/objectivec/objectivec_primitive_field.h"
    }
  ]
}
