aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #384 from google/csharpJie Luo2015-05-1462-55/+5299
|\ | | | | Merge protobuf C# into master (only C# proto2 is supported)
| * Merge branch 'master' of github.com:google/protobuf into integrate_from_masterJan Tattermusch2015-05-1373-92/+6218
| |\
| * | Remove the C#-specific field_presence_test.proto, using ↵Jon Skeet2015-05-131-1/+1
| | | | | | | | | | | | | | | | | | | | | unittest_no_field_presence.proto instead. This is the start of establishing a C# namespace of "Google.ProtocolBuffers.TestProtos.Proto3" for proto3-syntax protos. We could optionally split the directory structure as well into Proto2 and Proto3 for clarity.
| * | Regenerate descriptor.pb.cc after csharp_namespace changeJon Skeet2015-05-071-2/+3
| | |
| * | Add C# namespace to .proto files (e.g. descriptors, unit tests)Jon Skeet2015-05-0627-7/+35
| | |
| * | Remove ClsCompliant declarations from C# codeJie Luo2015-05-017-38/+1
| | |
| * | fix bug for Field PresenceJie Luo2015-04-272-2/+2
| | |
| * | Field Presence: remove has methods for optional non-message fields in proto3Jie Luo2015-04-274-42/+129
| | |
| * | Merge pull request #288 from jtattermusch/csharp_protobuf_reviewedJie Luo2015-04-1736-52/+5213
| |\ \ | | | | | | | | C# protocol buffers (initial pull request)
| | * | forgot to include header files into automake templateJan Tattermusch2015-04-171-1/+15
| | | |
| | * | temporarily removing csharp_umbrella_namespace file optionJan Tattermusch2015-04-174-233/+46
| | | |
| | * | removing csharp_property_name field optionJan Tattermusch2015-04-174-223/+35
| | | |
| | * | one more fix to csharp_umbrella_namespace commentJan Tattermusch2015-04-171-3/+5
| | | |
| | * | fix: do not mention umbrella_classname in commentJan Tattermusch2015-04-171-1/+1
| | | |
| | * | Fixed comment for csharp_umbrella_namespace (nest_classes has been removed)Jan Tattermusch2015-04-161-2/+1
| | | |
| | * | fixing field number of csharp_umbrella_namespace optionJan Tattermusch2015-04-163-15/+15
| | | |
| | * | integrate CalcSerializedSize() fix from protobuf-csharp-port issue 84Jan Tattermusch2015-04-131-4/+12
| | | |
| | * | fixing implementation of GetFileUmbrellaNamespaceJan Tattermusch2015-04-131-18/+22
| | | |
| | * | implemented HasRequiredFields logicJan Tattermusch2015-04-131-2/+37
| | | |
| | * | addressed TODO for lite runtimeJan Tattermusch2015-04-131-7/+11
| | | |
| | * | creating private ctor for builders is now the default (as it used to be for ↵Jan Tattermusch2015-04-131-0/+1
| | | | | | | | | | | | | | | | old codegen)
| | * | output file naming logic, configurable file extension, comment rewordingJan Tattermusch2015-04-133-16/+24
| | | |
| | * | added support for deprecated fields, reworded some todosJan Tattermusch2015-04-133-8/+6
| | | |
| | * | enable overriding of property name using csharp_property_nameJan Tattermusch2015-04-131-1/+3
| | | |
| | * | updated C# codegen to use restricted set of csharp options from descriptor.protoJan Tattermusch2015-04-138-52/+27
| | | |
| | * | restricted number of csharp options and regenerated descriptor.protoJan Tattermusch2015-04-133-1348/+243
| | | |
| | * | Rewrote C# protogen to C++ (initial version)Jan Tattermusch2015-03-2636-49/+6640
| | | |
* | | | Include generated code of well-known types in protobuf C++ runtime.Feng Xiao2015-05-1123-6/+15668
| |_|/ |/| | | | | | | | Change-Id: I23dee1c1d27b6440658680e9c273b6250213123c
* | | Merge branch 'gerrit' to 'master'Feng Xiao2015-05-0713-15/+265
|\ \ \
| * | | Modify directory to use in testBo Yang2015-04-272-0/+10
| | | | | | | | | | | | | | | | Change-Id: Iede1dc4e70427663e0d3c5304fa86b3aebf492b7
| * | | Handle un-handled cases of TestOneof2 in unittestBo Yang2015-04-271-0/+9
| | | | | | | | | | | | | | | | Change-Id: I8f082ee3117ed873ab472a539867ff7cae58e8fd
| * | | internal changesBo Yang2015-04-2410-15/+246
| | | | | | | | | | | | | | | | Change-Id: I66f216c70a19f44637090878d7e442d4d0f8991b
* | | | Merge pull request #101 from fizbin/fix_large_proto_java_codeFeng Xiao2015-05-075-26/+116
|\ \ \ \ | | | | | | | | | | Fix java compilation issues when processing large .proto files
| * | | | More 'int' return value documentationDaniel Martin2015-04-091-1/+5
| | | | |
| * | | | CR feedback: spacing, document return valuesDaniel Martin2015-04-082-1/+5
| | | | |
| * | | | Fix java compilation issues when processing large .proto filesDaniel Martin2014-11-255-25/+107
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix issues 579 and 501 on the code.google.com issues list. Specifically, large .proto files lead to too much static code, leading to a compilation error from javac: "code too large". This divides the code used in static initialization into multiple methods to avoid that error. Also, this incorporates the fix in issue 501 on the code.google.com issues list to call registry.add only once per extension.
* | | | | Merge pull request #331 from thomasvl/objc_alpha1_dropPaul Yang2015-05-0641-2/+5184
|\ \ \ \ \ | | | | | | | | | | | | Objective C compiler plugin and runtime
| * | | | | Alpha 1 drop of Google's Objective C plugin and runtime support for protobufs.Thomas Van Lenten2015-05-0641-2/+5184
| | | | | |
* | | | | | Don't hard-code the python pathTamir Duberstein2015-05-061-1/+1
|/ / / / /
* | | | | Merge pull request #315 from brianduff/sync_from_aospJisi Liu2015-04-2913-25/+211
|\ \ \ \ \ | | | | | | | | | | | | Sync nanoproto from AOSP
| * | | | | Generate a CREATOR for each Parcelable message.Jeff Davidson2015-04-281-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is less ideal from a dex count perspective because it requires a new variable for each message, and because most apps have proguard rules that will ensure that CREATOR classes are retained. However, it is required to be able to use nano protos inside of AIDL files, as the autogenerated AIDL code fails to compile otherwise. This is a substantial benefit as it allows for backwards-compatible parameters and return types in AIDL methods along the lines of safeparcel. Bug: 19084705 Change-Id: I66a2c0424b96cf8ff6b631b186cc4f9407dfc1f4
| * | | | | Inline unknownFieldData{Equals,HashCode} to generated code.Brian Duff2015-04-281-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out dex (apparently) was inlining these protected final methods from ExtendableMessageNano into every message class. Removing these methods from the base class and inlining their code reduces the method count by 2 methods / message when the store_unknown_fields option is on. Change-Id: I0aa09f2016d39939c4c8b8219601793b8fab301f
| * | | | | Expose generate_clear as an option.Brian Duff2015-04-281-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I wasn't able to get the clear() method to inline into the constructor when optimizations are on in proguard. As a result, every message has an extra superfluous kept method assuming the app never uses clear() directly. There are a couple of instances where setting this option false is necessary in order to get code dexing successfully without hitting the method limit, e.g. https://goto.google.com/tltzq In this example, I tried turning on the method/inlining/unique and method/inlining/short optimizations before resorting to adding the generate_clear option, but the method count did not decrease. The clear() methods were contributing over a thousand extra methods. Change-Id: If6a9651d6a59cdf70b1040d8248779710ac73105
| * | | | | Generate @IntDef annotations for nanoproto enums.Jeff Davidson2015-04-284-9/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | @IntDef is a support library annotation which allows build tools to determine the valid set of values for a given integer field when that field is intended to be restricted like an enum. This avoids the overhead of enums while still allowing for compile-time type checking in most circumstances. Change-Id: Iee02e0b49a8e069f6456572f538e0a0d301fdfd5
| * | | | | Add clone() method support for nano.Brian Duff2015-04-2811-5/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upstreamed from Another Place (cr/57247854). Change-Id: I2aaf59544c0f5ae21a51891d8a5eeda1dc722c90
| * | | | | When no clear() is generated, still initialize fields.Brian Duff2015-04-282-12/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://android-review.googlesource.com/#/c/67890/ removed field initialization from the ctor, making it just call clear() instead. When I added the generate_clear option back (as part of the reftypes compat mode) in https://android-review.googlesource.com/#/c/109530/, I forgot to ensure that what clear() used to do was inlined in the constructor. This change fixes NPEs that are happening for users of reftypes_compat_mode who rely on unset repeated fields being empty arrays rather than null. Change-Id: Idb58746c60f4a4054b7ebb5c3b0e76b16ff88184
| * | | | | Fix bug with large extension field numbers.Brian Duff2015-04-281-1/+1
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, extensions with field numbers greater than 268435455 would result in a compile time error in generated code that looks something like this: Foo.java:3178: error: integer number too large: 3346754610 3346754610); This is because we were trying to represent the tag number (an unsigned int) using a java int constant, but java int constants are signed, and can't exceed Integer.MAX_VALUE. Fixed by declaring it as a long instead, and casting it down to an int in the implementation. This is safe, because the tag value always fits in 32 bis. Change-Id: If2017bacb4e20af667eaeaf9b65ddc2c30a7709f
* / | | | Include well-known type protos in "make install".Feng Xiao2015-04-231-1/+11
|/ / / /
* | / / Include all well-known type protos.Feng Xiao2015-04-208-21/+425
| |/ / |/| | | | | | | | Change-Id: I122f1cee71a8a739ea603e52582cb0fa9698f0ed
* | | [PYTHON] Drop dependency on 'google.apputils'.Tamir Duberstein2015-04-101-3/+4
| | | | | | | | | | | | Use stdlib's 'unittest' instead.