summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-07-10Initial implementation of JSON formattingJon Skeet
- No parsing - Reflection based, so not hugely efficient - No line breaks or indentation
2015-07-10Merge pull request #566 from jskeet/csharp-reflectionJon Skeet
Improve C# reflection support
2015-07-09Merge pull request #577 from jskeet/csharp-fixupJan Tattermusch
Fix-ups suggested in PR #560
2015-07-09Knock-on effects of moving GetSampleMessage.Jon Skeet
2015-07-09Lots more tests for FieldCodec, MapField, RepeatedFieldJon Skeet
... and some implementation changes to go with them.
2015-07-09Fix descriptor reflection in various waysJon Skeet
- The protos are no longer publicly exposed at all - Oneof detection now works (as we default to -1, not 0) - OneofDescriptor exposes the fields in the oneof - Removed unnecessary code for replacing protos - remnant of extensions - There's now just the non-generic form of IDescriptor
2015-07-09Regenerated code due to previous commit.Jon Skeet
Note that now we need a proto3 version of addressbook.proto. This may affect other platforms, and could do with an overhaul to follow proto3 conventions anyway (e.g. repeated field names). Will need to think about that carefully before merging into master. Raised issue #565 for this.
2015-07-09Codegen changes to support descriptor runtime changesJon Skeet
- Add a partial method called by all constructors - Generate internal classes for descriptor.proto (only) - Forbid proto2 descriptors except for descriptor.proto
2015-07-09Changes to generated code due to previous commit.Jon Skeet
2015-07-09Implement reflection properly for fields.Jon Skeet
- FieldAccessorTable is now non-generic - We don't have a static field per message type in the umbrella class. (Message descriptors are accessed via the file descriptor.) - Removed the "descriptor assigner" complication from the descriptor fixup; without extensions, we don't need it - MapField implements IDictionary (more tests would be good...) - RepeatedField implements IList (more tests would be good) - Use expression trees to build accessors. (Will need to test this on various platforms... probably need a fallback strategy just using reflection directly.) - Added FieldDescriptor.IsMap - Added tests for reflection with generated messages Changes to generated code coming in next commit.
2015-07-09Merge branch 'csharp-remove-extensions' into csharp-fixupJon Skeet
2015-07-09Minor fix-ups as suggested in PR #560.Jon Skeet
- Added new line at the end of SampleEnum - Moved GeneratedMessageTest.GetSampleMessage to a new class, SampleMessages, and renamed it to CreateFullTestAllTypes.
2015-07-09Merge pull request #561 from jskeet/csharp-copyrightJon Skeet
Fix C# copyright statements
2015-07-09Merge pull request #560 from jskeet/csharp-repeatedJon Skeet
Large changes to repeated field handling
2015-06-30Remove unused code in C# codegenJon Skeet
2015-06-30Fix copyright lines for all C# code.Jon Skeet
Everything should now be consistent - the only difference between files is the year (aside from generated files). Fixes issue #531.
2015-06-30Tidying up and extra tests.Jon Skeet
This is mostly just making things internal instead of public, removing and reordering a bunch of code in CodedInputStream/CodedOutputStream, and generally tidying up.
2015-06-30Tests changed enough to buildJon Skeet
2015-06-30First pass (not yet compiling) at removing all the array handling code from ↵Jon Skeet
Coded*Stream. Prod code works, but some tests are broken. Obviously those need fixing, then more tests, and review benchmarks.
2015-06-29Merge pull request #550 from jskeet/issue307Jon Skeet
Fix for doubly-nested types - issue #307.
2015-06-29Fix for doubly-nested types - issue #307.Jon Skeet
No specific test case - if the generated code compiles, the issue is fixed :)
2015-06-28Merge pull request #544 from jskeet/csharp-cleanupJon Skeet
Clean up C# code
2015-06-26Merge pull request #543 from jskeet/proto3-mapJon Skeet
Proto3 map support for C#
2015-06-26More cleanup, based around searches for "Google.ProtocolBuffers"Jon Skeet
- Remove some old proto2-based C#-only messages - Remove the "build" directory which only contained out-of-date files - Remove the csharp_namespace option from proto2 messages - Change "Google.ProtocolBuffers" to "Google.Protobuf" in other messages
2015-06-26Remove a lot of code which wasn't needed any more.Jon Skeet
2015-06-26Fix or delete old projects.Jon Skeet
ProtoDump isn't currently useful, but will be when ToString emits JSON: fixed. ProtoBench: deleted; we should reinstate when there's a common proto3 benchmark. ProtoMunge: delete; not useful enough to merit fixing up. Removed the [TestFixture] from ByteStringTest as Travis uses a recent enough version of NUnit.
2015-06-26Tests for FieldCodec, along with a fix.Jon Skeet
2015-06-26Generated code changes for previous commit.Jon Skeet
2015-06-26Tweaks and more tests for mapsJon Skeet
- Change the default message hash code to 1 to be consistent with other code - Change the empty list/map hash code to 0 as "empty map" is equivalent to "no map" - Removed map fields from unittest_proto3.proto - Created map_unittest_proto3.proto which is like map_unittest.proto but proto3-only - Fixed factory methods in FieldCodec highlighted by using all field types :) - Added tests for map serialization: - Extra fields within entries - Entries with value then key - Non-contiguous entries for the same map - Multiple entries for the same key Changes to generated code coming in next commit
2015-06-25Make map test keys even more different to avoid odd hash collisionsJon Skeet
2015-06-25Generated code changes due to map changes.Jon Skeet
(Primarily this is starting the hash code of messages at a non-zero value...)
2015-06-25More map tests, and various production code improvements.Jon Skeet
Generated code in next commit.
2015-06-25Merge pull request #534 from jskeet/proto3-freezeJon Skeet
Implement Freeze in C# protos
2015-06-25Generated map code.Jon Skeet
2015-06-25First pass at map support.Jon Skeet
More tests required. Generated code in next commit.
2015-06-25Get the Mono build script working again.Jon Skeet
The solution as a whole doesn't build yet - we probably want to remove ProtoDump and ProtoMunge entirely, and ProtoBench should use Jan's new benchmarks for parity with Java. The version of NUnit on my machine, packaged with Mono 3.12.1, is only NUnit 2.4.2, which is extremely old - it still requires an explicit [TestFixture] attribute on test fixtures. I've added one just for ByteStringTest for the moment so that we can see some tests passing in Travis, but as part of a separate PR we should work on making sure we're using a recent NUnit version. (It may already be doing so, but we can check that once it's working and merged.)
2015-06-25Regenerated descriptor C++ codeJon Skeet
2015-06-24Revert the change to wire_format.h.Jon Skeet
It seems too much code relies on the broken behaviour. See issue #493. Instead, we reimplement MakeTag just for C#, temporarily.
2015-06-24Implement freezing for messages and repeated fields.Jon Skeet
Fixes issue #523.
2015-06-24Merge pull request #536 from jtattermusch/fix_appveyorJon Skeet
Integrate changes from upstream/master
2015-06-24Merge remote-tracking branch 'upstream/master' into fix_appveyorJan Tattermusch
2015-06-23Merge pull request #532 from jskeet/proto3-cloneJan Tattermusch
Implement Clone.
2015-06-23Generated code changes from previous commit.Jon Skeet
2015-06-23Implement requested changes for IMessage<T>Jon Skeet
1) New line at end of file 2) Make IMessage<T> itself extend IEquatable<T> and IDeepCloneable<T>
2015-06-23Merge pull request #530 from haberman/updateupbJoshua Haberman
Update upb to fix two bugs in the Ruby library.
2015-06-23Implement Clone.Jon Skeet
Fixes issue #527.
2015-06-22Update upb to fix two bugs in the Ruby library.Josh Haberman
Fixes: https://github.com/google/protobuf/issues/502 https://github.com/google/protobuf/issues/425
2015-06-22Fix appveyor tests.Feng Xiao
2015-06-19Merge pull request #503 from thomasvl/add_nonnill_markupPaul Yang
Add nonnull/nullable/null_resettable markup to ObjC library.
2015-06-19Merge pull request #515 from jskeet/proto3-onlyJan Tattermusch
Proto3 experimental C# fork