| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Smear comments
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* 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
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
Rather than converting the proto to a ByteString again, use the
existing SerializedData property.
|
| | |
|
|/
|
|
|
|
|
|
|
| |
This is primarily for access to comments, which would be expected to be available in a protoc plugin.
The implementation has two fiddly aspects:
- We use a Lazy<T> to avoid building the map before cross-linking. An alternative would be to crosslink at the end of the constructor, and remove the calls to CrossLink elsewhere. This would be generally better IMO, but deviate from the Java code.
- The casts to IReadOnlyList<DescriptorBase> are unfortunate. They'll always work, because these lists are always ReadOnlyCollection<T> for a descriptor type... but we can't use IList<DescriptorBase> as that's not covariant, and it's annoyingly fiddly to change the field to be of type ReadOnlyCollection<T>.
|
|
|
|
|
|
| |
This performs more testing for field descriptors built from byte
strings too, but that's mostly incidental. The chief intent is to
check that cross-linking occurs.
|
| |
|
| |
|
|
|
|
| |
Related to #658 and #5007.
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Give a unique category to each test.
This change introduce a TestCategory enum to ConformanceRequest. Existing tests
are divided into three categories: binary format test, json format test and json
format (ignore unknown when parsing) test. For the previous two categories, there
is no change to existing testee programs. For tests with the last category, testee programs
should either enable ignoring unknown field during json parsing or skip the test.
* Fix python test
* Fix java
* Fix csharp
* Update document
* Update csharp generated code
|
| |
| |
| |
| | |
* upgrade dotnet SDK to 2.1.3 on kokoro linux
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Enable ignoring unknown in json parsing in php
* Update generated descriptor files
* Update failure list for other languages.
* Remove unnecessary php files
|
| | |
|
|\ \
| | |
| | | |
Merge 3.6.x branch into master
|
| |\| |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
* Remove protoc conditional properties
* Fix duplicate brace
|
|/ /
| |
| |
| | |
This potentially avoids compiler warnings.
|
| |
| |
| |
| |
| |
| | |
* Added props to C# tools
* Add targets file to makefile.am
|
|/ |
|
| |
|
|
|
| |
Add mention to the "Build" section of the ReadMe of the requirement of installing an optional component to VS2017.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this fix, Unity using IL2CPP should work with one of two
approaches:
- Call `FileDescriptor.ForceReflectionInitialization<T>` for every
enum present in generated code (including oneof case enums)
- Ensure that IL2CPP uses the same code for int and any int-based
enums
The former approach is likely to be simpler, unless IL2CPP changes
its default behavior. We *could* potentially generate the code
automatically, but that makes me slightly uncomfortable in terms of
generating code that's only relevant in one specific scenario. It
would be reasonably easy to write a tool (separate from protoc) to
generate the code required for any specific set of assemblies, so
that Unity users can include it in their application. We can always
decide to change to generate it automatically later.
|
|
|
|
|
|
| |
* Edited MessageFieldGenerator to clone to backing field instead of property
* Generated C# proto code
|
|
|
|
|
|
|
|
|
| |
The SampleEnumMethod method was previously only called via
reflection, so the Unity linker thought it could be removed. Ditto
the parameterless constructor in ReflectionHelper.
This PR should avoid that issue, reducing the work needed by
customers to use Google.Protobuf from Unity.
|
|\
| |
| | |
[C#] Update test project to be used with dotnet test and Visual Studio Test Explorer
|
| | |
|
| |
| |
| |
| | |
Visual Studio, changed dotnet command in buildall to dotnet test, and deleted Program.cs (because it's no longer required).
|
| |
| |
| |
| |
| |
| |
| |
| | |
* Fix setup.py for windows build.
* Bump version number to 3.5.2
* Cat the test-suite.log on errors for presubits
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For oneofs, to get the case, we need to call the property that
returns the enum value. We really want it as an int, and modern
runtimes allow us to create a delegate which returns an int from the
method. (I suspect that the MS runtime has always allowed that.)
Old versions of Mono (e.g. used by Unity3d) don't allow that, so we
have to convert the enum value to an int via boxing. It's ugly, but
it should work.
|
| | |
|
| |
| |
| |
| |
| |
| | |
This should work on Unity, Mono and .NET 3.5 as far as I'm aware.
It won't work on platforms where reflection itself is prohibited,
but that's a non-starter basically.
|
|\ \
| | |
| | | |
Integrated internal changes from Google
|
| |/ |
|
|\ \
| | |
| | | |
Allow null value in JSON representation of ListValue
|
| |/ |
|
|/
|
|
| |
Increased `CodedInputStream.DefaultSizeLimit` to `Int32.MaxValue` to make it consistent with the Java implementation.
|
|
|
|
|
|
|
|
|
|
| |
This will allow SourceLink as per #4179, and mean that we can use C#
7.0 language features in the library (but not in generated code).
This does not affect which platforms we're *targeting*, so end users
won't see any difference.
It would be nice to update to 2.1.4, but AppVeyor's "Visual Studio
2017" environment is only 2.0.3.
|
|
|
|
|
|
|
| |
By default, unknown fields are preserved when parsing. To discard
them, use a parser configured to do so:
var parser = MyMessage.Parser.WithDiscardUnknownFields(true);
|
|\ |
|
| |\
| | |
| | | |
Cherrypick for csharp, including:
|
| | |
| | |
| | |
| | |
| | |
| | | |
Add preserve UnknownFields
Compare floating point values bitwise
Add auto-generated header to C# generated files
|