aboutsummaryrefslogtreecommitdiff
path: root/csharp/src
Commit message (Collapse)AuthorAgeFilesLines
* Remove unnecessary reflection callJon Skeet2016-07-083-35/+6
| | | | | 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
* Changes to generated code from previous commitJon Skeet2016-07-0420-244/+2537
|
* Adding conditional compiler symbol to support .NET 3.5 (#1713)detlevschwabe2016-06-287-5/+36
| | | | * Adding condition compiler symbol to support .NET 3.5
* Expose JsonFormatter.WriteValue.Jon Skeet2016-06-232-25/+58
| | | | | This isn't useful to most users, but can be handy in advanced use cases, as requested in #1465.
* Remove ordering guarantees in the MapField documentationJon Skeet2016-06-211-3/+4
| | | | | | | | This doesn't currently change the ordering in the implementation, but allows us to do so in the future. We also need to change https://developers.google.com/protocol-buffers/docs/reference/csharp-generated#singular which states "Finally, unlike Dictionary<TKey, TValue>, MapField<TKey, TValue> preserves insertion order of entries." (We can just remove that sentence, I think.)
* Merge pull request #1542 from google/beta-3Jisi Liu2016-05-162-3/+3
|\ | | | | Merge Beta 3 release branch into master
| * Fix csharp versionJisi Liu2016-05-111-1/+1
| |
| * Update version numbers for other languagesJisi Liu2016-05-101-2/+2
| |
* | Move test for standalone BoolValue to JsonParserTestJon Skeet2016-05-113-7/+19
| | | | | | | | | | | | 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).
* | Fixed parsing of BoolValue.Jos Hickson2016-05-112-1/+9
|/
* Merge pull request #1471 from jskeet/any-hostJon Skeet2016-05-066-23/+88
|\ | | | | Allow custom type URL prefixes in Any.Pack
| * Allow custom type URL prefixes in Any.PackJon Skeet2016-04-296-23/+88
| | | | | | | | | | | | (And likewise ignore the prefix in unpack.) Fixes issue #1459.
* | Merge branch 'master' of github.com:google/protobufJisi Liu2016-04-282-1/+3
|/
* Regenerate well-known types for C#Jon Skeet2016-04-208-103/+130
| | | | | (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#.)
* Use the original name in JSON formatting.Jon Skeet2016-04-202-2/+45
| | | | (JSON parsing already does the right thing.)
* Regenerate all C# code and make it compileJon Skeet2016-04-2022-285/+285
| | | | JSON tests fail, as we're not using OriginalNameAttribute yet.
* Add C# codegen changes to enum value names (mostly C++)Jon Skeet2016-04-202-0/+59
| | | | | | | | | | 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.
* Remove duplicate test cases.Jon Skeet2016-04-012-2/+0
| | | | (NCrunch noticed these.)
* Merge pull request #1369 from jskeet/tools-nuspecJan Tattermusch2016-03-311-14/+0
|\ | | | | Introduce a new nuget package, Google.Protobuf.Tools, basically to contain protoc on multiple platforms.
| * Introduce a new nuget package, Google.Protobuf.Tools, basically to contain ↵Jon Skeet2016-03-311-14/+0
| | | | | | | | | | | | | | | | protoc on multiple platforms. I've moved both protoc.exe and the proto files out of Google.Protobuf. The .proto files aren't a slam-dunk, but it feels like they belong with protoc as you'd *use* them with protoc. It's not clear to me whether we really need both an x86 and x64 version of protoc.exe, as x86 would work on 64-bit Windows anyway. Discuss :)
* | 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-294-6/+4
|
* csharp: add support for the json_name optionalien2016-03-185-7/+199
| | | | | Conflicts: csharp/src/Google.Protobuf/JsonFormatter.cs
* Replace StringBuilder with TextWriter in JsonFormatteravgweb2016-03-065-131/+157
|
* Fix copy/paste typo in CodedInputStreamTestJon Skeet2016-03-011-1/+1
|
* Implement IDisposable for CodedInputStream and CodedOutputStreamJon Skeet2016-02-294-12/+151
| | | | | 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.)
* Require VS2015 in the solution fileJon Skeet2016-02-221-3/+3
|
* Merge pull request #1240 from jskeet/validate_groupJan Tattermusch2016-02-183-12/+77
|\ | | | | Validate that end-group tags match their corresponding start-group tags
| * Validate that end-group tags match their corresponding start-group tagsJon Skeet2016-02-153-12/+77
| | | | | | | | | | | | | | | | 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.
* | Add more tests around merging wrappersJon Skeet2016-02-151-2/+41
|/ | | | This was in an attempt to fix the wrapper handling corner case, but it's really fiddly.
* Merge pull request #1218 from jskeet/nuspec-dependenciesJan Tattermusch2016-02-111-0/+10
|\ | | | | nuspec dependency fixes
| * nuspec dependency fixesJon Skeet2016-02-081-0/+10
| | | | | | | | | | | | | | Explicitly don't add any dependencies for "old" platforms, to avoid unnecessary dependencies in those cases. Fixes issue #1203.
* | Use checked-in key to build ReleaseSignedJan Tattermusch2016-02-092-2/+2
|/
* Generated code changes from previous commitJon Skeet2016-02-0411-53/+53
|
* Rename Preconditions to ProtoPreconditionsJon Skeet2016-02-0414-86/+91
| | | | (Generated code changes in next commit.)
* Generated code for GeneratedCodeInfo changeJon Skeet2016-02-0419-168/+478
|
* Rename GeneratedCodeInfo to GeneratedClrTypeInfoJon Skeet2016-02-044-12/+12
| | | | | | | 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.
* Merge pull request #1158 from jskeet/nonnormalized-tostringJan Tattermusch2016-01-2610-71/+378
|\ | | | | Ensure that FieldMask, Timestamp and Duration ToString() calls don't throw
| * Ensure that FieldMask, Timestamp and Duration ToString() calls don't throwJon Skeet2016-01-2010-71/+378
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Fix mistakes in highest-representable float64 integersJon Skeet2016-01-211-2/+2
|/
* Merge pull request #1096 from jskeet/custom-to-stringJan Tattermusch2016-01-197-1/+142
|\ | | | | Introduce ICustomDiagnosticMessage to allow for custom string formatting
| * Introduce ICustomDiagnosticMessage to allow for custom string formattingJon Skeet2016-01-137-1/+142
| | | | | | | | This fixes issue #933, effectively.
* | Fix broken testJon Skeet2016-01-151-1/+1
| |
* | Make sure thatJon Skeet2016-01-153-8/+68
| | | | | | | | | | | | "valueField": null is parsed appropriately, i.e. that it remembers that the field is set.
* | Reject JSON containing the same oneof field twiceJon Skeet2016-01-152-0/+22
| |
* | Change handling of unknown enums: we now write out the value as a number.Jon Skeet2016-01-154-36/+23
| |
* | Extra strictness for FieldMask conversionJon Skeet2016-01-154-2/+51
| |
* | Allow the original field name (rather than camel-cased) when parsing JSONJon Skeet2016-01-152-3/+23
| |
* | Fixes to JSON timestamp/duration representationsJon Skeet2016-01-158-35/+139
| |
* | Report serialization errors in conformance testsJon Skeet2016-01-151-8/+15
| |