aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Fix initialization with Visual StudioGravatar Adam Cozzette2018-07-06
| | | | | | | | | | | | It appears that Visual Studio does not work well with std::once_flag because it has a bug causing it to initialize that during dynamic initialization instead of constant initialization. This change works around the problem by using function static initializers instead. @gerben-s originally wrote this change for the Google-internal codebase but I am just cherry-picking it here. This fixes #4773.
* Work around MSVC issue with std::atomic initialization (#4777)Gravatar Adam Cozzette2018-06-18
| | | | | | | | | | | * Work around MSVC issue with std::atomic initialization MSVC seems to have a bug where it does not use constant initialization for std::atomic, which ends up causing crashes during initialization. This change introduces a workaround by putting the std::atomic inside a union, which causes the compiler to use constant initialization for it. * Added an AppVeyor test for static linking with MSVC
* Move methods out of class (#4697)Gravatar Paul Yang2018-05-30
|
* Add back GeneratedClassName to public (#4686)Gravatar Paul Yang2018-05-30
| | | These methods are used by grpc
* Fixed JS parsing of unspecified map keysGravatar Adam Cozzette2018-05-25
| | | | | | | | | We need to use a default of 0 when parsing unspecified map keys, instead of failing an assertion. This change was written by Michael Aaron (michaelaaron@google.com) but I am cherry-picking it directly instead of waiting for the next sync of Google-internal changes.
* PHP namespaces for nested messages and enums (#4536)Gravatar Brent Shaffer2018-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * uses namespaces for nested messages and enums * fixes namespaces for PHP dist * fixes namespace for Descriptors, adds Cardinality and Kind * fixes nested namespaces for reserved words and adds tests * adds tests and generator fix for php class prefixes * fixes escaping of protobuf packages, enum comments, misc others * nice refactor of generated code * adds class files for backwards compatibility * simplifies code with templates * adds compatibility files to makefile * cleanup of generator and fixes nested namespace bug * regenerates proto types * remove internal BC classes * adds deprecated warning, adds methods back * simplifies if statement * fixes dist files * addresses review comments * adds back TYPE_URL_PREFIX constant * adds @deprecated to old nested class files * skips tests which require a separate process when protobuf.so is enabled * Adds tests for legacy nested classes that do not require separate processes to test * uses legacy names for GPBUtil message check * adds block for IDE @deprecated message * Namespace for nested message/enum in c extension * Remove unused code
* PHP array constructors for protobuf messages (#4530)Gravatar Brent Shaffer2018-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PHP array constructors for protobuf messages * removes Descriptor from error message * allows mergeFrom to accept an array * only use initWithDescriptor if instanceof MapEntry * adds doc comments * removes ability for constructors to take arrays for submessages * Revert "allows mergeFrom to accept an array" This reverts commit b7b72182d561634af12c5c5c56a7cda3b33241f9. * makes mergeFromArray protected and fixes mergeFrom whitespace * Separates merging from JSON and merging from PHP array * removes well-known types and json keys from array construction * Addresses PR review comments * cleans up tests * fixes exception messages
* Adopt ruby_package in ruby generated code. (#4627)Gravatar Paul Yang2018-05-25
| | | | | | * Adopt ruby_package in ruby generated code. * Add test for ruby_package
* Adopt php_metadata_namespace in php code generator (#4622)Gravatar Paul Yang2018-05-25
| | | | | | | | | | | * Adopt php_metadata_namespace in php code generator The php_metadata_namespace is corresponded to the relative directory of the metadata file. e.g., previously, the metadata file of foo.proto was GPBMetadata/Foo.php. If the php_metadata_namespace is "Metadata\\Bar", the metadata file will be Metadata/Bar/Foo.php. * Handle empty php_metadata_namespace
* Make sure to delete temporary maps used by FileDescriptorTablesGravatar Adam Cozzette2018-05-24
| | | | | | | I ran the tcmalloc heap checker in draconian mode, and it reported some heap allocations that were still reachable when protobuf-test exited. To fix that, I updated FileDescriptorTables to make sure its temporary heap-allocated maps are deleted when it is destroyed.
* Update version number to 3.6.0Gravatar Jisi Liu2018-05-14
|
* Add file option php_metadata_namespace and ruby_package (#4609)Gravatar Paul Yang2018-05-11
|
* Fix error in Clang UndefinedBehaviorSanitizerGravatar Petter Strandmark2018-05-04
| | | | | | Pointer Arguments to memcpy can not be null in UndefinedBehaviorSanitizer. In this case, both the memory and the size was zero. This change allows protoc to run under UndefinedBehaviorSanitizer.
* MinGW build failedGravatar Ivan Shynkarenka2018-05-02
|
* typoGravatar Brady Killeen2018-04-26
|
* Write messages to backing field in generated C# cloning code (#4440)Gravatar Sydney Acksman2018-04-19
| | | | | | * Edited MessageFieldGenerator to clone to backing field instead of property * Generated C# proto code
* Merge pull request #4504 from xfxyjwf/liteGravatar Feng Xiao2018-04-18
|\ | | | | Cleanup + documentation for Java Lite runtime.
* | Fixed a Visual Studio 2017 build error. (#4488)Gravatar Ronny Krüger2018-04-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current 15.6.x versions of Visual Studio 2017 contain a bug that prevent them from compiling the following construct under certain conditions: std::unique_ptr<std::unique_ptr<Foo> []> foos; This will fail to compile if Foo is an abstract class. To work-around the problem the whole construct was change into: std::vector<std::unique_ptr<Foo>> foos; This not only fixes the compiler error but is also more readable than previous version.
| * Cleanup + documentation for Java Lite runtime.Gravatar Feng Xiao2018-04-12
|/
* Merge pull request #4452 from xfxyjwf/docGravatar Feng Xiao2018-04-02
|\ | | | | Update instructions about getting protobuf source.
* | Don't generate imports for the WKTs unless generating the WKTs.Gravatar Thomas Van Lenten2018-04-02
| | | | | | | | | | Since the generated header import GPBProtocolBuffers.h, there is no need to generate imports for the WKTs as they will have already been imported.
* | Trim imports for bundled generated protos.Gravatar Thomas Van Lenten2018-04-02
| | | | | | | | | | | | | | | | To avoid a cycle between headers, have the WKTs use minimal imports instead of using the helper to get everything from the library. Fixes https://github.com/google/protobuf/issues/4301 Fixes https://github.com/google/protobuf/issues/4403
| * Update instructions about getting protobuf source.Gravatar Feng Xiao2018-03-29
|/
* Removed atomicops.h since it is no longer usedGravatar Adam Cozzette2018-03-27
|
* Include googletest as a submodule (#3993)Gravatar Carlos O'Ryan2018-03-26
| | | Add googletest as a submodule in third_party/googletest.
* source code info for interpreted options; fix source code info for extension ↵Gravatar Joshua Humphries2018-03-26
| | | | | | | | | range options (#4342) * when interpreting options, rewrite file descriptor's source code info - so that interpreted option paths have correct location information - so that corresponding uninterpreted option paths are removed also includes a fix to source code locations for extension range options
* Merge pull request #4431 from xfxyjwf/rmnanoGravatar Feng Xiao2018-03-26
|\ | | | | Remove javanano.
* | Fixes MSVC compiler warning C4800 "Forcing value to bool 'true' or 'false'" ↵Gravatar Alexey Malov2018-03-26
| | | | | | | | (#4350)
* | Merge pull request #4395 from stone4774/fixbug_enum2json2Gravatar Feng Xiao2018-03-26
|\ \ | | | | | | Fix bug: whether always_print_enums_as_ints is true or false, it alwa…
| | * Remove javanano.Gravatar Feng Xiao2018-03-26
| | |
* | | Fix missing LIBPROTOC_EXPORT.Gravatar Egor Pugin2018-03-25
| |/ |/| | | This makes possible to build grpc_php_plugin with protobuf in shared mode.
* | Removed some unused C++ source filesGravatar Adam Cozzette2018-03-22
| |
| * Merge branch 'master' into fixbug_enum2json2Gravatar stone47742018-03-22
| |\ | |/ |/|
| * Use the first enum value instead of 0 in ↵Gravatar stone47742018-03-21
| | | | | | | | DefaultValueObjectWriter::FindEnumDefault
* | Merge pull request #4387 from acozzette/down-integrateGravatar Adam Cozzette2018-03-20
|\ \ | | | | | | Integrated internal changes from Google
| * | Added new test source files to Makefile.amGravatar Adam Cozzette2018-03-20
| | |
| * | Removed use of some type traitsGravatar Adam Cozzette2018-03-20
| | | | | | | | | | | | | | | Pre-5.1.0 versions of GCC do not support these particular type traits (see https://github.com/google/protobuf/issues/417).
| | * Fix bug: whether always_print_enums_as_ints is true or false, it always ↵Gravatar stone47742018-03-19
| | | | | | | | | | | | print the default value of enums as strings
* | | Merge pull request #4371 from Rasrack/gnuc_minorGravatar Adam Cozzette2018-03-15
|\ \ \ | | | | | | | | Fix spelling error of __GNUC_MINOR__
* \ \ \ Merge pull request #4310 from KindDragon/patch-1Gravatar Feng Xiao2018-03-14
|\ \ \ \ | | | | | | | | | | Support using MSVC intrinsics in Log2FloorNonZero
| | | * | Deleted scoped_ptr.hGravatar Adam Cozzette2018-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | We no longer need this, now that we have finished the switch to C++11 and are using std::unique_ptr.
| | | * | Fixed up proto3_lite_unittest.ccGravatar Adam Cozzette2018-03-14
| | | | |
| | | * | Merge branch 'master' into down-integrateGravatar Adam Cozzette2018-03-13
| | | |\ \ | |_|_|/ / |/| | | |
| | | * | Integrated internal changes from GoogleGravatar Adam Cozzette2018-03-13
| | | | |
| | * | | Fix spelling error of __GNUC_MINOR__Gravatar Adam Aili2018-03-10
| |/ / / |/| | |
* | | | Revert "Move `compiler/plugin.pb.cc` to libprotobuf with the other WKT sources."Gravatar Feng Xiao2018-03-01
| |_|/ |/| | | | | | | | This reverts commit 724f0be33d0eb42055ebe81ce0c8c7bf88ea666c.
* | | Merge pull request #4183 from pcc/win-libcxxGravatar Feng Xiao2018-02-26
|\ \ \ | | | | | | | | Add support for libc++ on Windows.
* \ \ \ Merge pull request #4334 from jmillikin/blacklist-internal-proto-srcsGravatar Feng Xiao2018-02-26
|\ \ \ \ | | | | | | | | | | Blacklist all WELL_KNOWN_PROTOS from Bazel C++ code generation.
* \ \ \ \ Merge pull request #4195 from alexey-malov/IgnoreUnknownEnumsInJsonGravatar Feng Xiao2018-02-26
|\ \ \ \ \ | | | | | | | | | | | | Adds an option in C++ JSON parser to ignore unrecognized enum values
| | * | | | Move `compiler/plugin.pb.cc` to libprotobuf with the other WKT sources.Gravatar John Millikin2018-02-24
| |/ / / / |/| | | | | | | | | | | | | | | | | | | This lets all values of `WELL_KNOWN_PROTOS` be treated the same with regard to Bazel's protobuf blacklisting.