| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Basic Proto2 support for Ruby gem
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change only adds basic proto2 support without advanced features
like extensions, custom options, maps, etc.
The protoc binary now generates ruby code for proto2 syntax.
However, for now, it is restricted to proto2 files without advanced features
like extensions, in which case it still errors out.
This change also modifies the DSL to add proto messages to the DescriptorPool.
There is a new DSL Builder#add_file to create a new FileDescriptor. With this,
the generated ruby DSL looks something like:
Google::Protobuf::DescriptorPool.generated_pool.build do
add_file "test.proto" do
add_message "foo" do
optional :val, :int32, 1
end
end
end
|
|\ \
| | |
| | | |
Smear comments
|
| | |
| | |
| | |
| | | |
Fixes #1890.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Compiler changes
* Generated code changes
* Library changes
* Compiler style changes
* Generated style changes
* Fix Windows build errors
* Implement changes from review
* Reintroduce proto2 check
* Compiler changes (required handling review)
* Generated code changes (required handling review)
* Library changes (required handling review
* Field presence rewrite (compiler changes)
* Field presence rewrite (generated code changes)
* Compiler comment
* IFieldAccessor.HasValue library implementation
* Remove Clear methods and default values from proto3 code (Compiler)
* Remove Clear methods and default values from proto3 code (Generated)
* Remove Clear methods and default values from proto3 code (Library)
* Fix distcheck error
* Rewrite default string values to use base64 and convert
* Library changes (IMessage2)
* Compiler changes (IMessage2)
* Generated changes (IMessage2)
* Rebased and regenerated
* Compiler changes (initialized extension)
* Generated changes (initialized extension)
* Library changes (initialized extension)
* Refactor MessageExtensions.IsRequired
* Move string default value creator and bytes default value creator back to seperate methods
* Dead code cleanup
* Fixed segmentation fault
Removed unused header method declarations
|
|\ \
| | |
| | | |
On Windows invoke plugins using cmd.exe
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This will find .bat files as well as .exe.
Only affects the case when plugins are invoked from PATH.
This does not change behaviour when compiled under Cygwin..
|
|\ \ \
| |/ /
|/| | |
Down-integrate from google3.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
Credit goes to @mercret for the fix.
|
|/ /
| |
| |
| | |
Use ./tests.sh cpp to run it
|
| | |
|
|\ \
| | |
| | | |
Fix TryCreateParentDirectory on Windows
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
On Windows, both '/' and '\' are valid path separators. So when creating
the parent directories, split the filename on both
Signed-off-by: Akshat Gokhale <agokhale@pivotal.io>
|
| | |
| | |
| | |
| | | |
Document the cases where the wrapper well-known types are not useful.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
1. Fix C++ tests.
* Add missing files to Makefile.am and fix distcheck in tests.sh
* Remove BUILT_SOURCES from conformance/Makefile.am.
* Add some missing override keyword.
* Add a type cast to int64 because our StrCat() in stubs can't handle size_t.
2. Fix Java tests.
* Add missing test dependency on guava in pom.xml.
* Include newly referenced test data in test resources.
* Manually fix map_lite_test.proto which is overwritten because it's mapped
from map_test.proto in google3.
* Add back "optimize_for = LITE_RUNTIME" which is still needed to keep the
opensource test passing as it's still running lite tests.
* Add a type cast in newBuilder() because without it the code doesn't compile
with openjdk javac 1.8 (the compiler can't figure if it's the right type
due to complex generic typing).
3. Fix Python tests.
* Remove/replace references to <hash_map>.
* Suppress more warnings in setup.py.
* Replace incorrect header inclusion for google/protobuf/proto_api.h.
* Add strings::EndsWith to google/protobuf/stubs/strutil.h because it's
referenced in the updated python C extension code.
* Replace proto2 with google::protobuf. The proto2 name is leaked to
opensource because we removed the subsitition rule for proto2 namespace
but only fixed C++ source code and forgot to update python C extension code.
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | |
| | | |
The old version had a NOP for loop, which doesn't make sense. I'm pretty
sure this was the original intention. Newer GCC's
-Wunused-but-set-variable flags the old version.
|
|\| | |
|
| | | |
|
| |\ \ |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
* Remove js_embed binary.
|
|/ / / |
|
| | |
| | |
| | |
| | |
| | | |
This should put an end to all of the reports of unit test failures on
Windows machines.
|
| | |
| | |
| | | |
* Delete unused files.
|
| | |
| | |
| | |
| | |
| | |
| | | |
1. Added C++ tests under the release docker image.
2. Fixed a compile issue with the docker image.
3. Cleaned up tests.sh and removed traivis stuff.
|
| |/
|/| |
|
| |
| |
| |
| | |
https://github.com/google/protobuf/issues/4887
|
|\|
| |
| | |
Merge 3.6.x into master
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| | |
Without this the error of un-moveable GenericTypeHandler will pop until
'TypeHandler::New(arena_, std::move(value))' is called.
|
|\ \
| | |
| | | |
Feat: add import-style=commonjs_strict option to the compiler
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
This should fix https://github.com/google/protobuf/issues/4717
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes issue #2610.
This was originally fixed in a101fa52895fc2ad83d8b5d610243531b1608a08 , but got
reverted by d36c0c538a545fac5d9db6ba65c525246d4efa95
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The __MIPSEL__ is mips little endian, specific and we needed
to compile for a big endian mips target that also happened
to be a mips64, so replaced the __MIPSEL__ with a __mip__
which should preserve the build on little endian and allow a
build for a big endian setup.
$ echo | mips64-linux-gcc -E -dM -
... snip snip ...
#define __mips__ 1
#define __MIPSEB__ 1
Signed-off-by: Charles Hardin <ckhardin@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Add -Og to no-warning-test
* Initialize value
* Implement PrintFieldName in CompactRepeatedFieldPrinter to prevent Woverloaded-virtual
* Update generated code
|
| | |
| | |
| | |
| | |
| | | |
Removed forward declaration of MemBlock class.
Declaration is in conflict with declaration `::strings::MemBlock`
|
|\ \ \
| | | |
| | | | |
Merge 3.6.x branch into master
|
| |\ \ \
| | | |/
| | |/| |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* 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
|
| | | | |
|
| | | |
| | | |
| | | | |
These methods are used by grpc
|