aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Merge pull request #402 from thomasvl/objc_on_winGravatar Paul Yang2015-05-21
|\ | | | | Getting the ObjC generator building on Windows.
* | Marked compiler literal unsigned.Gravatar Austin Schuh2015-05-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When compiling a protobuf with gcc 3.3.2 for powerpc, I ran into the following warning message: INFO: From Compiling my_proto.pb.cc powerpc-603e-linux-gcc: bazel-out/local_linux-dbg/genfiles/my_proto.pb.cc: In member function `virtual void MyProto::Clear()': bazel-out/local_linux-dbg/genfiles/my_proto.pb.cc:223: warning: this decimal constant is unsigned only in ISO C90 The line in the proto file that was triggering it was: if (_has_bits_[24 / 32] & 4278190080) { ZR_(field1_, field2_); } _has_bits_ is a uint32. The constant mask should therefore be unsigned. This change updates the constant to be generated as unsigned.
| * Getting the ObjC generator building on Windows.Gravatar Thomas Van Lenten2015-05-19
|/ | | | | | | | | Remove the ClassList support (maybe bring it back in the future). Trim the includes to hopefully get a working Window build. Add some more returns after switches for compilers that warn even when all values of the enum are handled. Use ghtonl instead of htonl. Change the use of [u]int(8,32)_t within the ObjC generator code to [u]int(8,32) to match the rest of the compiler. Add objective-c generator files to Visual Studio project.
* Post csharp landing fixup.Gravatar Thomas Van Lenten2015-05-18
| | | | | Re-add the objc prefix that got removed by accident. Regenerate the generated descriptors (C++ and ObjC).
* Merge pull request #384 from google/csharpGravatar Jie Luo2015-05-14
|\ | | | | Merge protobuf C# into master (only C# proto2 is supported)
| * Merge branch 'master' of github.com:google/protobuf into integrate_from_masterGravatar Jan Tattermusch2015-05-13
| |\
| * | Remove the C#-specific field_presence_test.proto, using ↵Gravatar Jon Skeet2015-05-13
| | | | | | | | | | | | | | | | | | | | | 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.
* | | Include generated code of well-known types in protobuf C++ runtime.Gravatar Feng Xiao2015-05-11
| |/ |/| | | | | Change-Id: I23dee1c1d27b6440658680e9c273b6250213123c
* | Merge branch 'gerrit' to 'master'Gravatar Feng Xiao2015-05-07
|\ \
* \ \ Merge pull request #101 from fizbin/fix_large_proto_java_codeGravatar Feng Xiao2015-05-07
|\ \ \ | | | | | | | | Fix java compilation issues when processing large .proto files
| | | * Regenerate descriptor.pb.cc after csharp_namespace changeGravatar Jon Skeet2015-05-07
| | | |
* | | | Merge pull request #331 from thomasvl/objc_alpha1_dropGravatar Paul Yang2015-05-06
|\ \ \ \ | | | | | | | | | | Objective C compiler plugin and runtime
* | | | | Don't hard-code the python pathGravatar Tamir Duberstein2015-05-06
| | | | |
| | | | * Add C# namespace to .proto files (e.g. descriptors, unit tests)Gravatar Jon Skeet2015-05-06
| | | | |
| * | | | Alpha 1 drop of Google's Objective C plugin and runtime support for protobufs.Gravatar Thomas Van Lenten2015-05-06
|/ / / /
| | | * Remove ClsCompliant declarations from C# codeGravatar Jie Luo2015-05-01
| | | |
* | | | Merge pull request #315 from brianduff/sync_from_aospGravatar Jisi Liu2015-04-29
|\ \ \ \ | | | | | | | | | | Sync nanoproto from AOSP
| * | | | Generate a CREATOR for each Parcelable message.Gravatar Jeff Davidson2015-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.Gravatar Brian Duff2015-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.Gravatar Brian Duff2015-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.Gravatar Jeff Davidson2015-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | @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.Gravatar Brian Duff2015-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upstreamed from Another Place (cr/57247854). Change-Id: I2aaf59544c0f5ae21a51891d8a5eeda1dc722c90
| * | | | When no clear() is generated, still initialize fields.Gravatar Brian Duff2015-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.Gravatar Brian Duff2015-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| | | * | Modify directory to use in testGravatar Bo Yang2015-04-27
| | | | | | | | | | | | | | | | | | | | Change-Id: Iede1dc4e70427663e0d3c5304fa86b3aebf492b7
| | | * | Handle un-handled cases of TestOneof2 in unittestGravatar Bo Yang2015-04-27
| | | | | | | | | | | | | | | | | | | | Change-Id: I8f082ee3117ed873ab472a539867ff7cae58e8fd
| | | | * fix bug for Field PresenceGravatar Jie Luo2015-04-27
| | | | |
| | | | * Field Presence: remove has methods for optional non-message fields in proto3Gravatar Jie Luo2015-04-27
| | | | |
| | | * | internal changesGravatar Bo Yang2015-04-24
| | |/ / | |/| | | | | | | | | | Change-Id: I66f216c70a19f44637090878d7e442d4d0f8991b
* / | | Include well-known type protos in "make install".Gravatar Feng Xiao2015-04-23
|/ / /
* | | Include all well-known type protos.Gravatar Feng Xiao2015-04-20
| | | | | | | | | | | | Change-Id: I122f1cee71a8a739ea603e52582cb0fa9698f0ed
| | * Merge pull request #288 from jtattermusch/csharp_protobuf_reviewedGravatar Jie Luo2015-04-17
| |/| |/| | | | | C# protocol buffers (initial pull request)
| | * forgot to include header files into automake templateGravatar Jan Tattermusch2015-04-17
| | |
| | * temporarily removing csharp_umbrella_namespace file optionGravatar Jan Tattermusch2015-04-17
| | |
| | * removing csharp_property_name field optionGravatar Jan Tattermusch2015-04-17
| | |
| | * one more fix to csharp_umbrella_namespace commentGravatar Jan Tattermusch2015-04-17
| | |
| | * fix: do not mention umbrella_classname in commentGravatar Jan Tattermusch2015-04-17
| | |
| | * Fixed comment for csharp_umbrella_namespace (nest_classes has been removed)Gravatar Jan Tattermusch2015-04-16
| | |
| | * fixing field number of csharp_umbrella_namespace optionGravatar Jan Tattermusch2015-04-16
| | |
| | * integrate CalcSerializedSize() fix from protobuf-csharp-port issue 84Gravatar Jan Tattermusch2015-04-13
| | |
| | * fixing implementation of GetFileUmbrellaNamespaceGravatar Jan Tattermusch2015-04-13
| | |
| | * implemented HasRequiredFields logicGravatar Jan Tattermusch2015-04-13
| | |
| | * addressed TODO for lite runtimeGravatar Jan Tattermusch2015-04-13
| | |
| | * creating private ctor for builders is now the default (as it used to be for ↵Gravatar Jan Tattermusch2015-04-13
| | | | | | | | | | | | old codegen)
| | * output file naming logic, configurable file extension, comment rewordingGravatar Jan Tattermusch2015-04-13
| | |
| | * added support for deprecated fields, reworded some todosGravatar Jan Tattermusch2015-04-13
| | |
| | * enable overriding of property name using csharp_property_nameGravatar Jan Tattermusch2015-04-13
| | |
| | * updated C# codegen to use restricted set of csharp options from descriptor.protoGravatar Jan Tattermusch2015-04-13
| | |
| | * restricted number of csharp options and regenerated descriptor.protoGravatar Jan Tattermusch2015-04-13
| | |
* | | [PYTHON] Drop dependency on 'google.apputils'.Gravatar Tamir Duberstein2015-04-10
| | | | | | | | | | | | Use stdlib's 'unittest' instead.