aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* add LIBPROTOBUF_EXPORT to make msvc happyByron Yi2017-03-161-6/+6
|
* migrate delimited messages functions to util packageByron Yi2017-03-164-0/+205
|
* Merge pull request #2023 from odeke-em/fix-print-help-to-stdoutJoshua Haberman2017-03-152-8/+18
|\ | | | | compiler/cli: PrintHelpText prints to stdout instead of stderr
| * compiler/cli: PrintHelpText prints to stdout instead of stderrEmmanuel Odeke2017-03-082-8/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #698. PrintHelpText now prints to standard output instead of to standard error. The purpose of this CL is to make it easy for users to grep for matches otherwise stderr output has to be awkwardly redirectly to stdout using this shell trick `2>&1`, for example ```shell protoc --help 2>&1 | grep cpp ``` of which we shouldn't be making users have to work that hard just to get use of --help. + Exhibits: * Before: ```shell $ protoc --help | grep cpp Usage: protoc [OPTION] PROTO_FILES Parse PROTO_FILES and generate output based on the options given: -IPATH, --proto_path=PATH Specify the directory in which to search for imports. May be specified multiple times; directories will be searched in order. If not given, the current working directory is used. --version Show version info and exit. -h, --help Show this text and exit. --encode=MESSAGE_TYPE Read a text-format message of the given type from standard input and write it in binary to standard output. The message type must be defined in PROTO_FILES or their imports. --decode=MESSAGE_TYPE Read a binary message of the given type from standard input and write it in text format to standard output. The message type must be defined in PROTO_FILES or their imports. --decode_raw Read an arbitrary protocol message from standard input and write the raw tag/value pairs in text format to standard output. No PROTO_FILES should be given when using this flag. -oFILE, Writes a FileDescriptorSet (a protocol buffer, --descriptor_set_out=FILE defined in descriptor.proto) containing all of the input files to FILE. --include_imports When using --descriptor_set_out, also include all dependencies of the input files in the set, so that the set is self-contained. --include_source_info When using --descriptor_set_out, do not strip SourceCodeInfo from the FileDescriptorProto. This results in vastly larger descriptors that include information about the original location of each decl in the source file as well as surrounding comments. --dependency_out=FILE Write a dependency output file in the format expected by make. This writes the transitive set of input file paths to FILE --error_format=FORMAT Set the format in which to print errors. FORMAT may be 'gcc' (the default) or 'msvs' (Microsoft Visual Studio format). --print_free_field_numbers Print the free field numbers of the messages defined in the given proto files. Groups share the same field number space with the parent message. Extension ranges are counted as occupied fields numbers. --plugin=EXECUTABLE Specifies a plugin executable to use. Normally, protoc searches the PATH for plugins, but you may specify additional executables not in the path using this flag. Additionally, EXECUTABLE may be of the form NAME=PATH, in which case the given plugin name is mapped to the given executable even if the executable's own name differs. --cpp_out=OUT_DIR Generate C++ header and source. --csharp_out=OUT_DIR Generate C# source file. --java_out=OUT_DIR Generate Java source file. --javanano_out=OUT_DIR Generate Java Nano source file. --js_out=OUT_DIR Generate JavaScript source. --objc_out=OUT_DIR Generate Objective C header and source. --python_out=OUT_DIR Generate Python source file. --ruby_out=OUT_DIR Generate Ruby source file. ``` * After: ```shell $ protoc --help | grep cpp --plugin=EXECUTABLE Specifies a plugin executable to use. Normally, protoc searches the PATH for plugins, but you may specify additional executables not in the path using this flag. Additionally, EXECUTABLE may be of the form NAME=PATH, in which case the given plugin name is mapped to the given executable even if the executable's own name differs. --cpp_out=OUT_DIR Generate C++ header and source. --csharp_out=OUT_DIR Generate C# source file. --java_out=OUT_DIR Generate Java source file. --javanano_out=OUT_DIR Generate Java Nano source file. --js_out=OUT_DIR Generate JavaScript source. --objc_out=OUT_DIR Generate Objective C header and source. --python_out=OUT_DIR Generate Python source file. --ruby_out=OUT_DIR Generate Ruby source file. ```
* | Merge pull request #2829 from afrantzis/hide-unnecessary-library-symbolsAdam Cozzette2017-03-154-0/+42
|\ \ | | | | | | Hide unnecessary exported library symbols
| * | Hide unnecessary exported library symbolsAlexandros Frantzis2017-03-134-0/+42
| | |
* | | Merge pull request #2846 from acozzette/bytestream-commentAdam Cozzette2017-03-151-1/+1
|\ \ \ | | | | | | | | Updated an outdated comment in bytestream.h
| * | | Updated an outdated comment in bytestream.hAdam Cozzette2017-03-141-1/+1
| |/ /
* / / Replace CHECK() with GOOGLE_CHECK().Josh Haberman2017-03-131-3/+4
|/ / | | | | | | Fixes: https://github.com/google/protobuf/issues/1175
* | Merge pull request #2822 from anandolee/masterJie Luo2017-03-101-18/+73
|\ \ | | | | | | Detect generated code of WKT, addressbook and conformance protos
| * | Add auto detect for generated code of WKT protos, addressbook.proto and ↵Jie Luo2017-03-101-18/+73
| | | | | | | | | | | | conformance.proto
* | | Merge pull request #2832 from pherl/javaepJisi Liu2017-03-101-1/+1
|\ \ \ | | | | | | | | Fix java code according to error prone.
| * | | Fix java code according to error prone.Jisi Liu2017-03-101-1/+1
| | | |
* | | | Merge pull request #2824 from xfxyjwf/i1415Feng Xiao2017-03-103-10/+45
|\ \ \ \ | | | | | | | | | | Use per-type table to lookup JSON name.
| * | | | Use per-type table to lookup JSON name.Feng Xiao2017-03-093-10/+45
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | Different fields from different messages can map to the same JSON name and the original global lookup table is only capable of mapping one of such fields. This change converts the global table to per-type tables so fields from different messages won't conflict.
* | | | Repeated/Map field setter should accept a regular PHP array (#2817)Paul Yang2017-03-101-1/+27
| |/ / |/| | | | | | | | | | | | | | | | | | | | Accept regular PHP array for repeated/map setter. Existing map/repeated field will be swapped by a clean map/repeated field. Then, elements in the array will be added to the map/repeated field. All elements will be type checked before adding. See #2686 for detail.
* | | Fix lint warnings in the javalite branch.Jisi Liu2017-03-092-0/+2
|/ /
* | Merge pull request #2810 from xfxyjwf/i1994Feng Xiao2017-03-091-4/+22
|\ \ | | | | | | Avoid redundant type casts for oneof bytes fields.
| * | Avoid redundant type casts for oneof bytes fields.Feng Xiao2017-03-081-4/+22
| |/
* | Merge pull request #2775 from xfxyjwf/fixmajorFeng Xiao2017-03-092-1/+14
|\ \ | | | | | | Undef major/minor if they are defined as macro.
| * | Undef major/minor if they are defined as macro.Feng Xiao2017-02-282-1/+14
| | |
* | | Merge pull request #2814 from pherl/javadeprecateJisi Liu2017-03-093-10/+28
|\ \ \ | |_|/ |/| | Add annotations for deprecated messages in Java
| * | Add annotations for deprecated messages in JavaJisi Liu2017-03-093-10/+28
| | |
* | | Removed a stray return statement, causing compilation error.Manjunath Kudlur2017-03-061-1/+0
| | |
* | | Detect if Descriptor.cs changes for csharpJie Luo2017-03-063-1/+144
|\ \ \ | | | | | | | | Merge pull request #2788 from anandolee/master
| * | | Detect if Descriptor.cs changes for csharpJie Luo2017-03-023-1/+144
| | | |
* | | | Return uint32 from Log2FloorNonZero64Adam Cozzette2017-03-021-1/+1
|/ / / | | | | | | | | | | | | | | | A uint32 is big enough to hold any return value from that function, and doing it this way prevents compiler warnings in coded_stream.h about narrowing a uint64 to a uint32.
* | | Fix gcc 4.1 build (#1035) (#1913)Matt Hauck2017-03-013-19/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix gcc 4.1.2 compilation of map_field_inl.h Fixes "error: object missing in reference to '...'" errors from #1035 * Disable 64-bit map keys on gcc <= 4.1 * Add missing case statements
* | | Change hint type to `const void*` (#2568)Matt Hauck2017-03-011-1/+1
| |/ |/| | | This is both more correct, and the build fails on AIX without it
* | Merge pull request #2770 from xfxyjwf/fixcmakeJisi Liu2017-02-2814-410/+410
|\ \ | | | | | | Remove the use of C++11 features.
| * | Remove the use of C++11 features.Feng Xiao2017-02-2714-410/+410
| | |
* | | There might be duplicated enum values when allow_alias is true. Add ↵Jie Luo2017-02-282-4/+16
| | | | | | | | | | | | PreferredAlias into OriginalNameAttribute to remove the duplication (#2727)
* | | Merge pull request #2729 from MarcelRaad/fix_inline_msvc12Adam Cozzette2017-02-271-6/+6
|\ \ \ | |/ / |/| | Fix unresolved symbols with MSVC12 and /Zc:inline
| * | Fix unresolved symbols with MSVC12 and /Zc:inlineMarcel Raad2017-02-171-6/+6
| | | | | | | | | | | | | | | | | | | | | In #726 and #813, linking errors with MSVC14 were resolved. The change in MSVC12 leading to these errors was not a newly introduced bug, but that /Zc:inline was made on by default. This option is also available with MSVC12, so the workaround should be applied for it too.
* | | Merge pull request #2355 from xfxyjwf/fixjsonFeng Xiao2017-02-242-14/+20
|\ \ \ | | | | | | | | Speed up JSON parsing.
| * | | Speed up JSON parsing.Feng Xiao2016-11-102-14/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out calling StringOutputStream::Next()/BackUp() repeatedly is very costly in opensource protobuf because it keeps resize() the string back and forth. The current JSON conversion API suffers this problem and leads to ridiculously long parsing time: https://github.com/google/protobuf/issues/2305#issuecomment-257785492 This change fixes the problem but caching the buffer of Next() and avoid calling BackUp() as much as possible.
* | | | Merge pull request #2732 from AsturaPhoenix/masterAdam Cozzette2017-02-241-1/+1
|\ \ \ \ | | | | | | | | | | const FieldDescriptorCompare
| * | | | const FieldDescriptorCompareRoss Wang2017-02-171-1/+1
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | Clang now validates that <set> comparators must have a const operator(): https://reviews.llvm.org/rL291969 Discussion: https://groups.google.com/d/msg/protobuf/9W6zFIHaJ-4/9RrfwelpEQAJ
* | | | Fix compiler warnings about unused variables in generated_message_reflection.hAurimas Liutikas2017-02-221-0/+2
| | | |
* | | | Add an option to always print enums as ints in Json APISanchay Harneja2017-02-186-1/+63
|/ / / | | | | | | | | | https://github.com/google/protobuf/issues/2735
* | | Keep loop bounds in a local variable for string fields.Chris Kennelly2017-02-155-21/+21
| | |
* | | Keep loop bounds in a local variable.Chris Kennelly2017-02-153-14/+14
| | |
* | | Work with truncated tag numbers.Chris Kennelly2017-02-1512-201/+402
| | | | | | | | | | | | | | | This allows more compact comparisons (1 byte instead of 4 byte immediates on x86) for each possible wire/tag inside each field.
* | | Expose rvalue setters for repeated string fields.Chris Kennelly2017-02-1512-0/+288
| | | | | | | | | | | | rvalue setters for scalar string fields were added in #2506.
* | | Merge pull request #2663 from ckennelly/varint-sizeAdam Cozzette2017-02-152-26/+17
|\ \ \ | | | | | | | | Inline branch-less VarintSize32/VarintSize64 implementations.
| * | | Inline branch-less VarintSize32/VarintSize64 implementations.Chris Kennelly2017-02-022-26/+17
| | | |
* | | | Merge pull request #2689 from ckennelly/aliasing-fixed32-fixed64Adam Cozzette2017-02-141-4/+2
|\ \ \ \ | | | | | | | | | | Avoid aliasing CodedInputStream::buffer_ when parsing little endian integers
| * | | | Avoid aliasing CodedInputStream::buffer_ when parsing little endian integers.Chris Kennelly2017-02-071-4/+2
| |/ / / | | | | | | | | | | | | | | | | This eliminates an unnecessary reload of buffer_ that occurs (before this change) after the store to *value.
* | | | Improve support for plugin parameters.Thomas Van Lenten2017-02-142-3/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --[name]_opt support depended on the plugin being register, and didn't support working with just --[name]_out directive (where the plugin is found via the users PATH. This extends the command line handing to allow --[name]_out to be all it takes for the _opt directive to also be supported. Fixes https://github.com/google/protobuf/issues/2712
* | | | Merge pull request #2609 from yixiang/patch-1Feng Xiao2017-02-131-0/+10
|\ \ \ \ | |_|_|/ |/| | | Undef TYPE_BOOL to avoid conflict with iOS.