1. 05 Nov, 2018 1 commit
  2. 24 Sep, 2018 1 commit
    • Sydney Acksman's avatar
      C# Proto2 feature : Field presence and default values (#4642) · 54176b26
      Sydney Acksman authored
      * 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
      54176b26
  3. 25 Jun, 2018 1 commit
  4. 19 Dec, 2017 1 commit
  5. 13 Dec, 2017 1 commit
  6. 09 Dec, 2017 1 commit
  7. 12 Jul, 2017 1 commit
  8. 23 Feb, 2017 1 commit
    • John Brock's avatar
      Fixes for .NET 3.5 compatibility · c9b2c8f3
      John Brock authored
      * 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.
      c9b2c8f3
  9. 06 Feb, 2017 1 commit
  10. 30 Jan, 2017 1 commit
  11. 14 Jul, 2016 4 commits
  12. 13 Jul, 2016 1 commit
    • Jon Skeet's avatar
      Implement RepeatedField.AddRange (#1733) · 042993b3
      Jon Skeet authored
      * 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.
      042993b3
  13. 21 Jun, 2016 1 commit
  14. 07 Mar, 2016 1 commit
  15. 04 Feb, 2016 1 commit
  16. 15 Jan, 2016 1 commit
  17. 11 Jan, 2016 1 commit
  18. 01 Oct, 2015 1 commit
    • Jon Skeet's avatar
      Support ToString in RepeatedField and MapField. · 9ed6d4da
      Jon Skeet authored
      This changes how we approach JSON formatting in general - instead of looking  at the field a value came from, we just look at the type of the value. It's possible this *could* be slightly inefficient, but if we start caring about JSON performance deeply, we'll probably want to rewrite all of this anyway. It's definitely simpler this way.
      
      When we support dynamic messages, we'll need to modify JsonFormatter to handle enum values, as they won't come be "real" .NET enums at that point. It shouldn't be hard to do though.
      9ed6d4da
  19. 10 Aug, 2015 2 commits
  20. 08 Aug, 2015 2 commits
  21. 06 Aug, 2015 1 commit
    • Jon Skeet's avatar
      Skip groups properly. · e7f88ff1
      Jon Skeet authored
      Now the generated code doesn't need to check for end group tags, as it will skip whole groups at a time.
      Currently it will ignore extraneous end group tags, which may or may not be a good thing.
      Renamed ConsumeLastField to SkipLastField as it felt more natural.
      Removed WireFormat.IsEndGroupTag as it's no longer useful.
      
      This mostly fixes issue 688.
      
      (Generated code changes coming in next commit.)
      e7f88ff1
  22. 05 Aug, 2015 1 commit
  23. 04 Aug, 2015 1 commit
  24. 30 Jul, 2015 4 commits
  25. 27 Jul, 2015 1 commit
    • Jon Skeet's avatar
      First attempt at using profile 259 for Google.Protobuf. · 0dbd5ec8
      Jon Skeet authored
      This requires .NET 4.5, and there are a few compatibility changes required around reflection.
      Creating a PR from this to see how our CI systems handle it. Will want to add more documentation,
      validation and probably tests before merging.
      
      This is in aid of issue #590.
      0dbd5ec8
  26. 21 Jul, 2015 1 commit
    • Jon Skeet's avatar
      Revamp to reflection. · 53c399a1
      Jon Skeet authored
      Changes in brief:
      1. Descriptor is now the entry point for all reflection.
      2. IReflectedMessage has gone; there's now a Descriptor property in IMessage, which is explicitly implemented (due to the static property).
      3. FieldAccessorTable has gone away
      4. IFieldAccessor and OneofFieldAccessor still exist; we *could* put the functionality straight into FieldDescriptor and OneofDescriptor... I'm unsure about that.
      5. There's a temporary property MessageDescriptor.FieldAccessorsByFieldNumber to make the test changes small - we probably want this to go away
      6. Discovery for delegates is now via attributes applied to properties and the Clear method of a oneof
      
      I'm happy with 1-3.
      4 I'm unsure about - feedback welcome.
      5 will go away
      6 I'm unsure about, both in design and implementation. Should we have a ProtobufMessageAttribute too? Should we find all the relevant attributes in MessageDescriptor and pass them down, to avoid an O(N^2) scenario?
      
      Generated code changes coming in the next commit.
      53c399a1
  27. 17 Jul, 2015 1 commit