aboutsummaryrefslogtreecommitdiff
path: root/csharp/src/Google.Protobuf/Reflection
Commit message (Collapse)AuthorAgeFilesLines
* Add unknown field support for csharp (#3936)Jie Luo2017-12-131-46/+370
| | | Add unknown field support for csharp
* Regenerated code from previous C# codegen commitJon Skeet2017-12-091-2/+2
| | | | | | With this in place, all tests should pass. Fixes #3725.
* Update descriptor protosJisi Liu2017-10-181-1/+2
|
* Integrated internal changes from GoogleAdam Cozzette2017-09-141-90/+308
|
* Merge master into 3.4.xJisi Liu2017-07-181-59/+122
|\
| * Support PHP generic services (#3269)Matt A2017-07-181-60/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add php_generic_services option * Generate PHP generic services * Respect namespaces for generated PHP services * Test PHP generated services * Rename PHP generator service method doc comment function * Correct phpdoc service method case * Test namespaced PHP generic services * Always use the FQCN for PHP generic service input/output * Add generated_service_test to php test.sh * Add php service test protos to CI * Add php service files to php_EXTRA_DIST * Use Interface suffix for php generic services
| * Add new file option php_namespace. (#3162)Paul Yang2017-06-051-55/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add new file option php_namespace. Use this option to change the namespace of php generated classes. Default is empty. When this option is empty, the package name will be used for determining the namespace. * Uncomment commented tests * Revert gdb test change * Update csharp descriptor. * Add test for empty php_namespace.
* | Update csharp and php descriptorJisi Liu2017-07-181-125/+277
|/
* Fix C++ build for down-integration.Feng Xiao2017-03-291-46/+47
|
* Add file option php_class_prefix (#2849)Paul Yang2017-03-171-56/+88
| | | | This option will be prepended to generated classes of all messages in the containing file.
* There might be duplicated enum values when allow_alias is true. Add ↵Jie Luo2017-02-281-1/+8
| | | | PreferredAlias into OriginalNameAttribute to remove the duplication (#2727)
* Fixes for .NET 3.5 compatibilityJohn Brock2017-02-231-1/+1
| | | | | * Changing DOTNET35 framework symbols in preprocessor directives to the default built-in value of NET35. * Adding extension method StreamExtension.CopyTo for .NET 3.5 because it didn’t exist until .NET 4, and adding associated unit tests.
* Merge 3.2.x branch into master (#2648)Paul Yang2017-01-311-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Down-integrate internal changes to github. * Update conformance test failure list. * Explicitly import used class in nano test to avoid random test fail. * Update _GNUC_VER to use the correct implementation of atomic operation on Mac. * maps_test.js: check whether Symbol is defined before using it (#2524) Symbol is not yet available on older versions of Node.js and so this test fails with them. This change just directly checks whether Symbol is available before we try to use it. * Added well_known_types_embed.cc to CLEANFILES so that it gets cleaned up * Updated Makefile.am to fix out-of-tree builds * Added Bazel genrule for generating well_known_types_embed.cc In pull request #2517 I made this change for the CMake and autotools builds but forgot to do it for the Bazel build. * Update _GNUC_VER to use the correct implementation of atomic operation on Mac. * Add new js file in extra dist. * Bump version number to 3.2.0 * Fixed issue with autoloading - Invalid paths (#2538) * PHP fix int64 decoding (#2516) * fix int64 decoding * fix int64 decoding + tests * Fix int64 decoding on 32-bit machines. * Fix warning in compiler/js/embed.cc embed.cc: In function ‘std::string CEscape(const string&)’: embed.cc:51:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < str.size(); ++i) { ^ * Fix include in auto-generated well_known_types_embed.cc Restore include style fix (e3da722) that has been trampled by auto-generation of well_known_types_embed.cc * Fixed cross compilations with the Autotools build Pull request #2517 caused cross compilations to start failing, because the js_embed binary was being built to run on the target platform instead of on the build machine. This change updates the Autotools build to use the AX_PROG_CXX_FOR_BUILD macro to find a suitable compiler for the build machine and always use that when building js_embed. * Minor fix for autocreated object repeated fields and maps. - If setting/clearing a repeated field/map that was objects, check the class before checking the autocreator. - Just to be paranoid, don’t mutate within copy/mutableCopy for the autocreated classes to ensure there is less chance of issues if someone does something really crazy threading wise. - Some more tests for the internal AutocreatedArray/AutocreatedDictionary classes to ensure things are working as expected. - Add Xcode 8.2 to the full_mac_build.sh supported list. * Fix generation of extending nested messages in JavaScript (#2439) * Fix generation of extending nested messages in JavaScript * Added missing test8.proto to build * Fix generated code when there is no namespace but there is enum definition. * Decoding unknown field should succeed. * Add embed.cc in src/Makefile.am to fix dist check. * Fixed "make distcheck" for the Autotools build To make the test pass I needed to fix out-of-tree builds and update EXTRA_DIST and CLEANFILES. * Remove redundent embed.cc from src/Makefile.am * Update version number to 3.2.0-rc.1 (#2578) * Change protoc-artifacts version to 3.2.0-rc.1 * Update version number to 3.2.0rc2 * Update change logs for 3.2.0 release. * Update php README * Update upb, fixes some bugs (including a hash table problem). (#2611) * Update upb, fixes some bugs (including a hash table problem). * Ruby: added a test for the previous hash table corruption. Verified that this triggers the bug in the currently released version. * Ruby: bugfix for SEGV. * Ruby: removed old code for dup'ing defs. * Reverting deployment target to 7.0 (#2618) The Protobuf library doesn’t require the 7.1 deployment target so reverting it back to 7.0 * Fix typo that breaks builds on big-endian (#2632) * Bump version number to 3.2.0
* Support custom options in C#Jon Skeet2017-01-1910-8/+454
| | | | | | | | | | | | This consists of: - Changing the codegen for the fixed set of options protos, to parse unknown fields instead of skipping them - Add a new CustomOptions type in the C# support library - Expose CustomOptions properties from the immutable proto wrappers in the support library Only single-value options are currently supported, and fetching options values requires getting the type right and knowing the field number. Both of these can be addressed at a later time. Fixes #2143, at least as a first pass.
* Merge pull request #2487 from jtattermusch/csharp_leading_whitespaceJan Tattermusch2016-12-131-372/+372
|\ | | | | remove leading whitespace in C# xml comments
| * remove leading whitespace in C# xml commentsJan Tattermusch2016-12-121-372/+372
| |
* | update descriptor.proto's go_packageMichael Darakananda2016-12-071-3/+4
|/ | | | | This change has already been made in google's repo. Replicating the change here to unblock work on genproto.
* Add a swift_prefix file option.Thomas Van Lenten2016-11-301-55/+90
| | | | | | | | Swift generators should default to CamelCasing the proto package and prefixing symbols with that, but this option allows developers to override that behavior with something custom if they desire. Fixes https://github.com/google/protobuf/issues/1833
* Add a "u" suffix to tag numbers in generated codeAdam Cozzette2016-11-221-7/+60
| | | | | | This seems to be necessary to prevent warnings in some compiler configurations, particularly for tag numbers that are too large to fit in a signed 32-bit int.
* Change JSON field name formattingJon Skeet2016-11-031-1/+1
| | | | | | | | | This affects cases with leading capital letters. This breaks compatibility with previous C# releases, but fixes compatibility with other implementations. See #2278 for details.
* Add back removed descriptor field.Bo Yang2016-10-101-58/+91
|
* Bump library veriosn to 3.1Bo Yang2016-10-101-102/+59
|
* Rm check on dependency in the C# reflection API (#2051)Guillaume Turri2016-09-051-12/+1
| | | | | | | | | | | | | | This check adds a few constraints on the way to build a project when we have a proto file which imports another one. In particular, on projects which build both C# and Java, it's easy to end up with exceptions like Expected: included.proto but was src/main/protobuf/included.proto A user may work around this issue, but it may add unnecessary constraints on the layout of the project. According to https://github.com/google/protobuf/commit/f3504cf3b1d456a843e8242fdee9ba0bf2991dc1#diff-ecb0b909ed572381a1c8d1994f09a948R309 it has already been considered to get rid of this check, for similar considerations, and because it doesn't exist in the Java code
* Update generated files.Feng Xiao2016-07-131-3/+3
|
* Changes to generated code from previous commitJon Skeet2016-07-041-112/+682
|
* Adding conditional compiler symbol to support .NET 3.5 (#1713)detlevschwabe2016-06-281-0/+4
| | | | * Adding condition compiler symbol to support .NET 3.5
* Regenerate well-known types for C#Jon Skeet2016-04-201-79/+46
| | | | | (There are documentation changes and new fields in descriptor.proto that have resulted in changes to the serialized descriptor, but no breaking changes for C#.)
* Regenerate all C# code and make it compileJon Skeet2016-04-202-74/+74
| | | | JSON tests fail, as we're not using OriginalNameAttribute yet.
* Add C# codegen changes to enum value names (mostly C++)Jon Skeet2016-04-201-0/+58
| | | | | | | | | | 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.
* Refactoring of FieldDescriptorJon Skeet2016-03-301-61/+39
| | | | | | | | This makes no externally visible behavioral changes. Internally and non-behaviorally: - We use a field (compiler-generated) to store the JsonName to avoid recomputing it repeatedly - The documentation for JsonName is updated to reflect the meaning better - Readonly autoprops and expression-bodied properties used where possible
* Code review fixesalien2016-03-292-4/+2
|
* csharp: add support for the json_name optionalien2016-03-182-0/+8
| | | | | Conflicts: csharp/src/Google.Protobuf/JsonFormatter.cs
* Generated code changes from previous commitJon Skeet2016-02-041-1/+1
|
* Rename Preconditions to ProtoPreconditionsJon Skeet2016-02-042-29/+29
| | | | (Generated code changes in next commit.)
* Generated code for GeneratedCodeInfo changeJon Skeet2016-02-041-65/+375
|
* Rename GeneratedCodeInfo to GeneratedClrTypeInfoJon Skeet2016-02-043-11/+11
| | | | | | | Recently, descriptor.proto gained a GeneratedCodeInfo message, which means the generated code conflicts with our type. Unfortunately this affects codegen as well, although this is a part of the public API which is very unlikely to affect hand-written code. Generated code changes in next commit.
* Allow the original field name (rather than camel-cased) when parsing JSONJon Skeet2016-01-151-3/+15
|
* Generated code changes from previous commit.Jon Skeet2015-12-151-22/+22
|
* Generated code changes for previous commit (basically ↵Jon Skeet2015-11-223-4/+4
| | | | InternalBuildGeneratedFileFrom => FromGeneratedCode)
* Tidy up reflection in advance of attempting to implement DynamicMessage.Jon Skeet2015-11-226-208/+179
| | | | | | | | | There are corner cases where MessageDescriptor.{ClrType,Parser} will return null, and these are now documented. However, normally they *should* be implemented, even for descriptors of for dynamic messages. Ditto FieldDescriptor.Accessor. We'll still need a fair amount of work to implement dynamic messages, but this change means that the public API will be remain intact. Additionally, this change starts making use of C# 6 features in the files that it touches. This is far from exhaustive, and later PRs will have more. Generated code changes coming in the next commit.
* Added the type registry in advance of implementing Any support.Jon Skeet2015-11-211-0/+183
| | | | Biting off just this bit first as I don't need the changes from a previous PR for this part.
* Generated code from previous commit.Jon Skeet2015-11-191-19/+19
|
* Introduce a Parser property into MessageDescriptor, and populate it from ↵Jon Skeet2015-11-192-2/+19
| | | | | | generated types. Generated code coming in next commit - in a subsequent PR I want to do a bit of renaming and redocumenting around this, in anticipation of DynamicMessage.
* Generated code changes and manual changes for previous commit.Jon Skeet2015-11-092-21/+21
|
* Generated code for previous commit.Jon Skeet2015-11-061-0/+25
|
* Move the creation of the "fields by JSON name" dictionary to the descriptor.Jon Skeet2015-11-041-0/+15
|
* Fix clearing wrapper type fields with reflection.Jon Skeet2015-10-302-2/+2
| | | | The nullable value type fields already worked, but the use of the CLR property concealed the difference between string and StringWrapper fields.
* Generated code for previous commit (oneof case contributing to hash code and ↵Jon Skeet2015-10-241-81/+115
| | | | equality).
* Generated code from previous commit.Jon Skeet2015-10-011-0/+641
|
* Generated code changes for previous commit.Jon Skeet2015-09-291-7/+7
|