aboutsummaryrefslogtreecommitdiff
path: root/src/google
Commit message (Collapse)AuthorAgeFilesLines
* Fix #include in js_generator.ccAdam Michalik2016-05-171-1/+1
| | | | | The commit 3b3c8abb9635eb3ea078a821a99c9ef29d66dff7 has replaced the <> with "" in #include statement in js_generator.cc
* Merge pull request #1542 from google/beta-3Jisi Liu2016-05-163-9/+60
|\ | | | | Merge Beta 3 release branch into master
| * Remove the comments about iterator validationJisi Liu2016-05-131-3/+1
| | | | | | | | As it may be implementation dependent.
| * Merge pull request #1520 from pherl/hashmapvs2008Jisi Liu2016-05-121-3/+55
| |\ | | | | | | Bridge vs2008 hashmaps.
| | * Bridge vs2008 hashmaps.Jisi Liu2016-05-111-3/+55
| | |
| * | Fix the command line interface unittest againJisi Liu2016-05-101-3/+4
| |/ | | | | | | | | This time move the macro inside namespaces; hopefully will work with the integration script.
* | Merge pull request #1483 from wal-rus/fix-boost-incompatibilityFeng Xiao2016-05-111-3/+1
|\ \ | |/ |/| Fix C++ Boost incompatibility on Windows/MSVC
| * Remove confounding and unused #define - breaks boost/predef/other/endian.hWalter Gray2016-05-061-3/+1
| |
* | Merge pull request #1409 from eeight/fix_enum_corruptionFeng Xiao2016-05-043-2/+50
|\ \ | |/ |/| Fix bug with silent message corruption in LITE_RUNTIME.
| * Fix bug with silent message corruption in LITE_RUNTIME.Petr Prokhorenkov2016-04-213-2/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | A protobuf message will be corrupted in the following scenario: 1. Use LITE_RUNTIME. 2. Have an optional enum field following some other field. 3. Update protocol by adding new values to the enum. 4. Have an old client parse and serialize a message having enum field set to a value the client does not understand. 5. Field preceeding the enum is now corrupted. The bug is due to the fact that optimized fallthrough in parser code does not update variablle 'tag' when jumping to the parser code for the next field.
* | Merge branch 'master' of github.com:google/protobufJisi Liu2016-04-2810-4/+831
|\ \
| * | Proper checking of enum with non zero defaultThomas Van Lenten2016-04-261-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | proto2 syntax allows the first enum to have a non zero value. This means any field using that default has a non zero default without having an explicit default being set. So when deciding what runtime info is needed, don't rely on an explicit default, always check that the values aren't zero. Fixes https://github.com/google/protobuf/issues/1453
| * | Merge pull request #1416 from cwhipkey/masterFeng Xiao2016-04-207-29/+731
| |\ \ | | | | | | | | Change protobuf CPP proto generator to support the 'lite' option in
| | * | Change protobuf CPP proto generator to support the 'lite' option inChad Whipkey2016-04-157-29/+731
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | proto3. Added a couple unit test proto3 files, for arena_lite and lite. Cloned the proto3_arena_unittest to test some of the basics of generated code (and to ensure that the generated proto3 test files are used by some test).
* | / Down integrate from Google internal.Jisi Liu2016-04-28105-1225/+2343
|/ /
* | Merge pull request #1414 from xyzzyz/googletestFeng Xiao2016-04-201-1/+0
|\ \ | | | | | | Remove googletest.h header from stringprintf.cc
| * | Remove googletest.h header from stringprintf.ccAdam Michalik2016-04-141-1/+0
| | | | | | | | | | | | | | | It doesn't seem to be necessary here, and it pulls other testing headers during compilation of release protobuf.
* | | Merge pull request #1401 from jskeet/enum-casingJon Skeet2016-04-207-7/+152
|\ \ \ | | | | | | | | Enum casing in C#
| * | | Attempt to fix AppVeyor build by exporting GetEnumValueNameJon Skeet2016-04-202-1/+9
| | | |
| * | | Add C# codegen changes to enum value names (mostly C++)Jon Skeet2016-04-206-6/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Overview of changes: - A new C#-specific command-line option, legacy_enum_values to revert to the old behavior - When legacy_enum_values isn't specified, we strip the enum name as a prefix, and PascalCase the value name - A new attribute within the C# code so that we can always tell the original in-proto name Regenerating the C# code with legacy_enum_values leads to code which still compiles and works - but there's more still to do.
| * | | Use 0 as the default value for all enums, rather than finding the actual ↵Jon Skeet2016-04-111-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | enum value name This will make it easier to change the enum value names, as it reduces the number of places they're used.
* | | | Add missing includes in field mask testJisi Liu2016-04-191-0/+2
| |_|/ |/| |
* | | Merge pull request #1397 from google/internal-mergeJoshua Haberman2016-04-11145-1427/+5132
|\ \ \ | |/ / |/| | Internal merge
| * | Removed duplicated operator delete from merge conflict.Josh Haberman2016-04-071-6/+0
| | |
| * | Merge branch 'master' into internal-mergeJosh Haberman2016-04-0736-113/+302
| |\ \
| * \ \ Merge branch 'master' of github.com:google/protobufJisi Liu2016-04-011-1/+1
| |\ \ \
| * | | | Do not use C++11 unicode escape in unittest.Jisi Liu2016-04-011-1/+1
| | | | | | | | | | | | | | | | | | | | For fixing MSVC
| * | | | Do not let windows.h define min/max macrosJisi Liu2016-04-011-0/+1
| | | | |
| * | | | Fix re-definition issue of winsock.h and winsock2.hJisi Liu2016-03-311-0/+1
| | | | |
| * | | | Fix WIN32 build for map_test.Jisi Liu2016-03-311-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | stubs/common.h undefines the GetMessage macro introduced in windows.h map_test however include stubs/common.h before windows.h is transitively included. This hack force map_test.cc to include windows.h first, so we have a chance to undefine the GetMessage macro.
| * | | | Remove export macros for classes nested in a template class.Jisi Liu2016-03-311-3/+3
| | | | |
| * | | | Fix javanano packageJisi Liu2016-03-311-0/+3
| | | | |
| * | | | Fix breakage of referring to table_ in static funcJisi Liu2016-03-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Referencing data member table_ in static functions break certain platforms. Change it to refer to the declare type void** instead.
| * | | | Temporarily disable begin is fast test.Jisi Liu2016-03-311-1/+2
| | | | |
| * | | | Merge branch 'master' of github.com:google/protobufJisi Liu2016-03-3020-319/+485
| |\ \ \ \ | | | |_|/ | | |/| |
| * | | | Integrate google internal changes.Jisi Liu2016-03-30145-1440/+5155
| | | | |
* | | | | Fix to csharp_options - initialize internal_access to false.Jon Skeet2016-04-081-1/+2
| | | | |
* | | | | Merge pull request #1393 from gvaish/masterJon Skeet2016-04-073-1/+6
|\ \ \ \ \ | |_|_|_|/ |/| | | | Added support for internal_access for C#
| * | | | Added support for internal_access for C#Gaurav Vaish2016-04-073-1/+6
| | | | |
* | | | | Merge pull request #1392 from anandolee/masterJie Luo2016-04-078-19/+41
|\ \ \ \ \ | |/ / / / |/| | | | Sync the manually integrate changes in google3/third_party
| * | | | sync the Manually integrate changes in google3/third_partyJie Luo2016-04-068-19/+41
| | | | |
* | | | | Add more documentation for csharp_options.hJon Skeet2016-04-062-6/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This also renames generate_directories to base_namespace_specified; generating directories is the immediate *effect* of specifying a base namespace, but with this change the options reflect what has been specified rather than the effect. (There may be other effects in the future, of course.)
* | | | | Line-wrapping changes only for C# generator codeJon Skeet2016-04-0620-44/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This should have no behavioral changes at all. This doesn't strictly enforce an 80-column limit, but removes the most egregious violations. The indentation in the C# generator code is inconsistent in general, unfortunately - if we have any good tools that can be trusted to reformat, I'd be happy to apply them.
* | | | | Merge pull request #1349 from gvaish/masterJon Skeet2016-04-0530-84/+175
|\ \ \ \ \ | | | | | | | | | | | | Added CLI option internal_access for types (C#)
| * | | | | Added access_level for typesGaurav Vaish2016-04-0530-84/+175
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * `csharp_options`: Added `Options` to encapsulate generator options. Supported options for now - file_extension, base_namespace * `{Blah}Generator`: Now accept `Options*` as parameter to constructor * `csharp_generator.cc`: Parse and populate options * `Makefile.am`: Added `csharp_options.h` * `extract_includes.bat.in`: Added `csharp_options.h` Refactoring code to two commits. This is the first commit
* / | | | Added deprecated option handling for objective-c generatorOleg Vereshko2016-04-045-11/+41
|/ / / /
* | | / Replace #include <iostream> with #include <ostream>Adam Michalik2016-03-301-1/+1
| |_|/ |/| | | | | | | | | | | iostream is not actually necessary here, and it introduces unnecessary static initializers.
* | | Use the T() instead of NULL for the default value.Jisi Liu2016-03-291-1/+1
| | | | | | | | | | | | | | | The template can be specialized on primitives, e.g. double, where converting NULL will trigger a warning.
* | | Update coded_stream.htopillar2016-03-221-1/+1
| | | | | | | | | fix warning treated as error prevents building on 64-bit windows.
* | | Shrink ObjC overhead (generated size and some runtime sizes)Thomas Van Lenten2016-03-1716-276/+357
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NOTE: This is a binary breaking change as structure sizes have changed size and/or order. - Drop capturing field options, no other options were captured and other mobile targeted languages don't try to capture this sort information (saved 8 bytes for every field defined (in static data and again in field descriptor instance size data). - No longer generate/compile in the messages/enums in descriptor.proto. If developers need it, they should generate it and compile it in. Reduced the overhead of the core library. - Compute the number of has_bits actually needs to avoid over reserving. - Let the boolean single fields store via a has_bit to avoid storage, makes the common cases of the instance size smaller. - Reorder some flags and down size the enums to contain the bits needed. - Reorder the items in the structures to manually ensure they are are packed better (especially when generating 64bit code - 8 bytes for every field, 16 bytes for every extension, instance sizes 8 bytes also). - Split off the structure initialization so when the default is zero, the generated static storage doesn't need to reserve the space. This is batched at the message level, so all the fields for the message have to have zero defaults to get the saves. By definition all proto3 syntax files fall into this case but it also saves space for the proto2 that use the standard defaults. (saves 8 bytes of static data for every field that had a zero default) - Don't track the enums defined by a message. Nothing in the runtime needs it and it was just generation and runtime overhead. (saves 8 bytes per enum) - Ensure EnumDescriptors are started up threadsafe in all cases. - Split some of the Descriptor initialization into multiple methods so the generated code isn't padded with lots of zero/nil args. - Change how oneof info is feed to the runtime enabling us to generate less static data (8 bytes saved per oneof for 64bit). - Change how enum value informat is capture to pack the data and only decode it if it ends up being needed. Avoids padding issues causing bloat of 64bit, and removes the needs for extra pointers in addition to the data (just the data and one pointer now).