Skip to content

Releases: apple/swift-protobuf

1.18.0 Release

27 Sep 15:04
Compare
Choose a tag to compare
  • Minor Updates
    • Support JSON ignoreUnknownFields within WKTs. #1172
    • Handle writing out json when the value is empty/zero bytes and no type. #1167
  • Fixes from fuzz testing:
    • Handle skipping a JSON object that ends after the open brace. #1165
    • When skipping a varint for an unknown field, ensure it is valid. #1169
    • Rework JSON skipping so it's not recursive for nested arrays #1178
    • Track recursion depth for nested JSON ListValue structures #1179
    • Uses same workaround for stack sizes in non optimized builds. #1183
    • Reject fieldmasks that have non-ASCII characters for JSON #1185
    • Don't overrun string when parsing timestamps #1186

1.17.0 Release

14 May 16:17
Compare
Choose a tag to compare
  • Significant Change
    • TextFormatDecodingError has a new error case to got with a recursion limit for TextFormat decoding (add safety found via fuzz testing for potential bogus input trying trigger stack overflow #1132), if you have any switch states on all the cases, this is a breaking change in that you must handle the new case.
  • Fixes from fuzz testing:
    • Fix octal TextFormat decoding failure #1124
    • Avoid walking off the end of the buffer in two parsing cases. #1126
    • Add TextFormatDecodingOptions and implement a recursion limit. #1132
    • Don't walk off the end of the buffer during a unicode bytes decode. #1136
  • Minor Updates
    • Change oneof enforcement to allow null (found via upstream conformance test requirements) #1135
    • Allow proto3_optional for extensions. #1138
    • Some edge case speed improvements:
      • Add modify operation to ExtensionFieldValueSet. #1137
      • Don't do characterwise-compares if not needed. #1145
      • Clear previous contents before decoding Any from TextFormat #1147

1.16.0 Release

13 Apr 21:34
Compare
Choose a tag to compare

Minor Changes:

  • Normalize CRLF in comments to avoid double spacing some input. #1109
  • Fixes from fuzz testing:
    • Fix to decoding of groups/unknown fields. #1118
    • Protect against overallocation on bad binary input. #1119
    • Deal with malformed UTF8 while parsing a JSON field name. #1121
    • Avoid looping forever on malformed Map TextFormat. #1122

1.15.0 Release

22 Jan 15:44
Compare
Choose a tag to compare

Minor Changes:

  • Allow parallel lookup of types in Any decode. #1098
  • Fix extension order serialization and improve generation for extension ranges with single values. #1100

1.14.0 Release

02 Dec 15:44
Compare
Choose a tag to compare

Notable Changes:

  • Don't allow raw LF or CR in the middle of TextFormat string literals. #1085 – TextFormat was used as input (tests, etc.), then previously working multiline strings might no longer parse. This is to bring the library in alignment with the protocolbuffers conformance tests.

Minor Changes:

  • Fix issue with oneof being named newValue #1087
  • Support unicode escapes in TextFormat #1085

1.13.0 Release

23 Oct 18:02
Compare
Choose a tag to compare

Notable Changes:

  • Sort map fields for TextFormat (to match spec) #1076
    Minor Changes:
  • Reduce foundation usage #1064
  • The CocoaPod spec and checked in Xcode project were updated to move the minimum iOS version to 9.0 to avoid warnings in Xcode 12 #1082

1.12.0 Release

28 Aug 13:46
Compare
Choose a tag to compare

Notable Changes:

  • Change code generation to reduce the stack usage in non optimized builds (Issue #1034)
    • Move required field support for oneof into a generated helper (#1041)
    • Work around stack usage for non optimize build and switch statements (#1040)
    • Work around excessive stack space in non optimized builds during oneof isInitialized (#1042)
  • Revise the way storage calculations are done to take into account the cost of singular message fields since those directly increase the size of the containing message (#1046)
  • Fix JSON coding/decoding of NullValue WKT (#1051)

Minor Changes:

  • Minor oneof tweak: don't generate case nil when also generating a default (#1035)
  • Factor out the common decodeJSON from all the wrappers (#1062)

1.11.0 Release

06 Aug 18:21
Compare
Choose a tag to compare

Minor changes:

  • Remove empty Data singleton (#1028)
  • Factor SwiftProtobuf module name into the namer, add SwiftProtobufModuleName (#1017)
  • Eliminate NamingUtils's awareness of SwiftProtobufNamer (#1030)

1.10.2 Release

10 Jul 15:21
Compare
Choose a tag to compare

Minor fix for an accidental api break in the 1.10.0 Release.

  • Fixes and version bump to right api break (#1027)

1.10.1 Release

09 Jul 13:20
Compare
Choose a tag to compare

Minor fix for an accidental api break in the 1.10.0 Release.

  • Add back the old init signatures. (#1023)