aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Rename protobuf Ruby module to google/protobuf and rework its buildChris Fallin2014-12-121-1/+1
| | | | | | system. The Ruby module build now uses an amalgamated distribution of upb, and successfully builds a Ruby gem called 'google-protobuf' with module 'google/protobuf'.
* Merge pull request #128 from krishnanm86/masterFeng Xiao2014-12-122-14/+14
|\ | | | | Source code refactoring. Extracted common functionality in cpp_helpers.c...
| * Reverting the space at the end for both files changedKrishna2014-12-122-2/+2
| |
| * Reverting the space at the endKrishna2014-12-121-1/+1
| |
| * Returned print_indent and print_outdent back to printservicestub and ↵Krishna2014-12-121-5/+8
| | | | | | | | printserviceclass in python generator
| * Reverted changes to cpp_helpers.cc and made code reviews to python_geenerator.ccKrishna2014-12-113-22/+20
| |
| * Fixed bugsKrishna2014-12-103-5/+8
| |
| * Source code refactoring. Extracted common functionality in cpp_helpers.cc ↵Krishna2014-12-102-26/+22
| | | | | | | | and python/python_generator.cc
* | Merge pull request #113 from nsuke/oneof-c++11Feng Xiao2014-12-115-41/+40
|\ \ | | | | | | Make C++ code generation of string oneof field compatible with C++11
| * | Make C++ string oneof field compatible with C++11Nobuaki Sukegawa2014-12-032-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | string oneof field was generated into "const ArenaStringPtr" field inside "default_oneof_instance_" struct (of name "<class name>OneofInstance"). On the other hand, in C++11, const field of type with trivial default constructor causes enclosing type's implicit default constructor to be deleted. Since ArenaStringPtr has tirvial default constructor, this caused default constructor of "default_oneof_instance_" struct to be deleted, making the constructor call inside generated code invalid and fail to compile.
| * | Display element name in test error logNobuaki Sukegawa2014-12-031-2/+2
| | |
| * | Make test code runnable with C++11Nobuaki Sukegawa2014-12-033-37/+37
| |/ | | | | | | | | Preprocessor token right after string literal without whitespace results in parse failure in C++11.
* | Merge branch v3.0.0-alpha-1 into master.Feng Xiao2014-12-1028-109/+143
|\ \ | | | | | | | | | | | | Conflicts: configure.ac
| * | Fix LIBPROTOBUF_PROTOBUF annotations for buliding protobuf as DLLs.v3.0.0-alpha-1Feng Xiao2014-12-098-18/+33
| | |
| * | Remove map_field.cc from lite-runtime.Feng Xiao2014-12-091-1/+1
| | |
| * | Fix compile issues and test failures in VS2008.Feng Xiao2014-12-0513-74/+44
| | |
| * | Fix thread local annotatoin and add back type traits is_convertable for MSVCFeng Xiao2014-12-044-4/+10
| | |
| * | Replace is_enum with is_proto_enum because is_enum is not supported on some ↵Feng Xiao2014-12-031-1/+3
| | | | | | | | | | | | platforms.
| * | Delete some globals in ShutdownProtobufLibrary().Feng Xiao2014-12-033-0/+37
| | |
| * | Update version number in descriptor.pb.h and plugin.pb.h. Protect deathFeng Xiao2014-12-034-4/+8
| | | | | | | | | | | | tests with macro PROTOBUF_HAS_DEATH_TEST.
| * | Update version number to v3.0.0-alpha-1Feng Xiao2014-12-032-8/+8
| |/
* / Provide a Ruby extension.Chris Fallin2014-12-094-2/+378
|/ | | | | | This adds a Ruby extension in ruby/ that is based on the 'upb' library (now included as a submodule), and adds support for Ruby code generation to the protoc compiler.
* Merge pull request #116 from xfxyjwf/fix_warningsFeng Xiao2014-12-026-9/+12
|\ | | | | Get rid of some build warnings.
| * Get rid of some build warnings.Feng Xiao2014-12-026-9/+12
| |
* | Merge pull request #81 from xfxyjwf/syntax_warningFeng Xiao2014-12-022-0/+13
|\ \ | |/ |/| Report a warning if the proto file doesn't have a syntax statement.
| * Report a warning if the proto file doesn't have a syntax statement.Feng Xiao2014-11-142-0/+13
| |
* | Merge pull request #110 from nsuke/tb-typo-cpp_extensionFeng Xiao2014-11-261-1/+1
|\ \ | | | | | | Fix typo
| * | Fix typoNobuaki Sukegawa2014-11-271-1/+1
| | |
* | | Down-integrate from internal code base.Feng Xiao2014-11-268-45/+221
|/ /
* | Merge branch 'master' of github.com:google/protobufJisi Liu2014-11-256-10/+54
|\ \
| * | Fix issue 99.Feng Xiao2014-11-255-7/+48
| | |
| * | Fix "anonymous types declared in an anonymous union are an extension"Łukasz Twarduś2014-11-251-3/+6
| | | | | | | | | | | | warning when using clang with -pedantic switch
* | | Link Java Nano generator into protoc.Jisi Liu2014-11-252-0/+27
|/ /
* | Down-integrate from internal code base.Feng Xiao2014-11-2015-178/+597
| |
* | Merge nano proto into protobuf repository.Feng Xiao2014-11-1921-0/+5013
|\ \ | | | | | | | | | Source: https://android.googlesource.com/platform/external/protobuf.git
| * | Prepare nano proto code to be merged into protobuf repository.Feng Xiao2014-11-1931-1268/+33
| | |
| * | Change reftypes_primitive_enums to reftypes_compat_mode.Brian Duff2014-10-013-12/+31
| | | | | | | | | | | | | | | | | | Make the clear() method stripped in reftypes_compat_mode. Change-Id: I0ec35537856f59a6ecf231bfd74df995c858e2b2
| * | Adds a primitive enum mode for reftypes.Brian Duff2014-09-304-4/+23
| | | | | | | | | | | | | | | | | | This is a compatibility shim. Change-Id: Ia0b417d4621e391ede618d0b3b1c470c9896e0ff
| * | Includes a MessageNano subclass's name's hashCode in hashCode calculations.Jason Neufeld2014-09-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the current implementation, a message with the same amount of null or equal-valued fields as a different message type will have the same hashCode. This adds more variety by including the hashCode of the class's name in the hashCode calculations. Change-Id: I284e3e6d198ad8037815948d1f65686465ffd623 Signed-off-by: Jason Neufeld <jneufeld@google.com>
| * | Don't return NULL from {Boxed}PrimitiveTypeName.Brian Duff2014-07-211-4/+4
| | | | | | | | | | | | | | | | | | | | | The behavior of the string ctor is undefined when you pass NULL. This is checked strictly in C++11, so fails to compile. Change-Id: Id5e0984ad1d37f2d504f7c42ac23e52ed4a58903
| * | Fix access around unknownFieldData.Max Cai2014-07-153-9/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of publishing its class I chose to encapsulate the troublesome references in equals()/hashCode() in the generated code into superclass methods in ExtendableMessageNano. Changed a couple of java packages in the test suite to catch this issue easier in the future. Change-Id: I43f88411f63bb6f3ffc8d63361f2f77bebf6220a
| * | Support generation of Parcelable nano messages.Jeff Davidson2014-04-253-2/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL adds the "parcelable_messages" option. When enabled, all generated message classes will conform to the Android Parcelable contract. This is achieved by introducing a new parent class for generated classes which implements the required functionality. Since the store_unknown_fields option also makes use of a superclass, ExtendableMessageNano, we have two versions of the new Parcelable superclass: one extending MessageNano, and one extending ExtendableMessageNano. These classes are otherwise identical. As these classes depend on Android framework jars, they are not included in the host .jar build of the nanoproto library. Finally, add a test suite for running tests of Android-specific functionality, as this cannot be done on a desktop JVM. Change-Id: Icc2a257f03317e947f7078dbb9857c3286857497
| * | Adds --ignore_service nano proto compiler flagJie Dai2014-04-233-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | Nano proto compiler normally throws an error if any service is defined. If --ignore-services=true is set, no error is thrown and the service is simply skipped. Change-Id: Id82583555085cc55550d03a485d3f0189885240b
| * | Don't reset cachedSize to 0 in getSerializedSizeDave Hawkey2014-04-101-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids a race-condition when cachedSize is momentarily set to 0 for non-empty messages if multiple threads call getSerializedSize (e.g. during serialization). This is a retry of https://android-review.googlesource.com/#/c/88570/. getSerializedSize() has been kept non-final so that messages generated with a previous version of the compiler will not break. Change-Id: I8d8154a10938cde579ae19c55eae55b1e70e0bda
| * | Revert "Don't reset cachedSize to 0 in getSerializedSize"Wink Saville2014-03-211-2/+3
| | | | | | | | | | | | This reverts commit c6e12c6702ca764486f952654ba1568f00efe813.
| * | Don't reset cachedSize to 0 in getSerializedSizeDave Hawkey2014-03-211-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | This avoids a race-condition when cachedSize is momentarily set to 0 for non-empty messages if multiple threads call getSerializedSize (e.g. during serialization). Change-Id: I15a8ded92edbf41bf1c8d787960c5bbbc8a323c5
| * | Merge "Extension overhaul."Max Cai2014-02-179-131/+258
| |\ \
| | * | Extension overhaul.Max Cai2014-01-109-131/+258
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Get rid of TypeLiteral<T>. It was introduced to read the component type of a List<T> at runtime. But we use arrays everywhere else, and we can always read the component type of an array type at runtime. - Properly read/write "minor" types (e.g. sint32, sfixed32). The old implementation could only read/write data as the "typical" types (one per Java type), e.g. java.lang.Integer -> int32, java.lang.Long -> int64. So if e.g. an extension specifies sfixed32 as the type, it would be read/written in the totally incompatible int32 format. - Properly serialize repeated packed fields. The old implementation doesn't do packed serialization. As an added bonus, and to be more aligned with the rest of protobuf nano / main, repeated packable extensions can deserialize both packed and non-packed data. - Split Extension class into a hierarchy so under typical usage a large chunk of code dealing with primitive type extensions can be removed by ProGuard. Bug: https://code.google.com/p/android/issues/detail?id=62586 Change-Id: I0d692f35cc2a8ad3a5a1cb3ce001282b2356b041
| * | | Fix repeated packed field merging code for non-packed data.Max Cai2014-01-161-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Enum fix is already included in the previous commit. Bug: https://code.google.com/p/android/issues/detail?id=64893 Change-Id: I9fecff3c8822918a019028eb57fa39b361a2c960
| * | | Add validation when parsing enum fields.Max Cai2014-01-164-33/+148
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Invalid values from the wire are silently ignored. Unlike full/lite, the invalid values are not stored into the unknown fields, because there's no way to get them out from Nano's unknown fields without a matching Extension. Edited README and slightly moved it towards a standalone section for Nano, independent of the Micro section. Change-Id: I2c1eb07f4d6d8f3aea242b8ddd95b9c966f3f177