| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
Fixes #2088.
We now have separate tests for netcoreapp and net45 to test the two branches here.
(netstandard10 doesn't have MemoryStream.GetBuffer)
Although most of this library doesn't have any async functionality,
this feels like a natural place to locally add it.
|
|
|
|
| |
Fixes #2511.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#1971)
* Factored Conformance test messages into shared test schema.
* Updated benchmarks to use new proto3 message locations.
* Fixed include path.
* Conformance: fixed include of Python test messages.
* Make maven in Rakefile use --batch-mode.
* Revert changes to benchmarks.
On second thought I think a separate schema for
CPU benchmarking makes sense.
* Try regenerating C# protos for new test protos.
* Removed benchmark messages from test proto.
* Added Jon Skeet's fixes for C#.
* Removed duplicate/old test messages C# file.
* C# fixes for test schema move.
* Fixed C# to use the correct TestAllTypes message.
* Fixes for Objective C test schema move.
* Added missing EXTRA_DIST file.
|
|
|
|
|
|
|
| |
This change fixes the following Chromium presubmit error:
third_party/protobuf/csharp/src/Google.Protobuf.Test/project.json could
not be parsed: Expecting property name: line 25 column 3 (char 482)
|
|
|
|
|
|
|
|
|
| |
This affects cases with leading capital letters.
This breaks compatibility with previous C# releases, but
fixes compatibility with other implementations.
See #2278 for details.
|
|
|
|
|
| |
(This still doesn't fix the conformance tests, but at least
we're now consistent with the C++ code.)
|
|
|
|
|
|
|
| |
platform (#1727)
Move to dotnet cli for building, and .NET Core (netstandard1.0) as target platform
This also updates the version number to 3.0.0-beta4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Improve exception throwing implementation in collections
* Implement RepeatedField.AddRange.
This fixes issue #1730.
* Optimize AddRange for sequences implementing ICollection
(Also fix a few more C# 6-isms.)
* Remove the overload for Add(RepeatedField<T>)
We now just perform the optimization within AddRange itself.
This is a breaking change in terms of "drop in the DLL", but is
source compatible, which should be fine.
|
|
|
|
|
| |
This is the only call to TypeExtensions.IsValueType, so we can remove
that method, making the whole type conditionally compiled out for .NET 3.5
|
| |
|
|
|
|
| |
* Adding condition compiler symbol to support .NET 3.5
|
|
|
|
|
| |
This isn't useful to most users, but can be handy in advanced use cases,
as requested in #1465.
|
|
|
|
|
|
| |
Also added a standalone formatter test, for confidence.
Have validated that undoing the change in 835fb947 breaks the tests
(i.e. we are still testing that the change is required).
|
| |
|
|
|
|
|
|
| |
(And likewise ignore the prefix in unpack.)
Fixes issue #1459.
|
|
|
|
| |
JSON tests fail, as we're not using OriginalNameAttribute yet.
|
|
|
|
| |
(NCrunch noticed these.)
|
| |
|
|
|
|
|
| |
Conflicts:
csharp/src/Google.Protobuf/JsonFormatter.cs
|
| |
|
| |
|
|
|
|
|
| |
This fixes issue #679 and issue #1282.
(The .gitignore change is just around ncrunch; I can put it in a separate PR if you really want.)
|
|\
| |
| | |
Validate that end-group tags match their corresponding start-group tags
|
| |
| |
| |
| |
| |
| |
| |
| | |
This detects:
- An end-group tag with the wrong field number (doesn't match the start-group field)
- An end-group tag with no preceding start-group tag
Fixes issue #688.
|
|/
|
|
| |
This was in an attempt to fix the wrapper handling corner case, but it's really fiddly.
|
| |
|
| |
|
| |
|
|\
| |
| | |
Ensure that FieldMask, Timestamp and Duration ToString() calls don't throw
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The usage of ICustomDiagnosticMessage here is non-essential - ToDiagnosticString
doesn't actually get called by ToString() in this case, due to JsonFormatter code. It was
intended to make it clearer that it *did* have a custom format... but then arguably I should
do the same for Value, Struct, Any etc.
Moving some of the code out of JsonFormatter and into Duration/Timestamp/FieldMask likewise
feels somewhat nice, somewhat nasty... basically there are JSON-specific bits of formatting, but
also domain-specific bits of computation. <sigh>
Thoughts welcome.
|
|/ |
|
|\
| |
| | |
Introduce ICustomDiagnosticMessage to allow for custom string formatting
|
| |
| |
| |
| | |
This fixes issue #933, effectively.
|
| | |
|
| |
| |
| |
| |
| |
| | |
"valueField": null
is parsed appropriately, i.e. that it remembers that the field is set.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
Previously we were incorrectly packing wrapper types.
This also refactors FieldCodec a bit as well, using more C# 6-ness.
|
|/
|
|
|
| |
- Spot an Any without a type URL
- In the conformance test runner, catch exceptions due to generally-invalid JSON
|
|
|
|
|
| |
On deserialization, missing values for message types
are replaced with a "default" message.
|
|\
| |
| | |
Ensure all formatted well-known-type values are valid JSON
|
| |
| |
| |
| |
| |
| |
| | |
This involves quoting timestamp/duration/field-mask values, even when they're not in fields.
It's better for consistency.
Fixes issue #1097.
|