Skip to content

Releases: apple/swift-protobuf

1.10.0 Release

30 Jun 20:26
Compare
Choose a tag to compare

Notable Changes:

  • Support Proto2 extensions in JSON coder/decoder (#1002)

Minor Changes:

  • Add visitRepeated* methods to the BinaryEncodingSizeVisitory. (#1009)
  • Fix for newer Xcode/swift versions: var --> let to eliminate warning (#975)
  • Don't use StaticString.utf8Start unless there is a pointer rep. (#1015)

1.9.0 Release

18 May 18:24
Compare
Choose a tag to compare
  • Better handing of proto identifiers that start with underscores and numbers #947 #954
  • Added CMake based build for platforms with SwiftPM #957
  • Use withContiguousStorageIfAvailable for String encoding in BinaryEncoder #949
  • Make setting a repeated extension field to [] clear it #966
  • Declare the MessageExtensions with the correct visibility. #969
  • Support for new Proto3 optional (this needs a protoc from protocolbuffers/protobuf v3.12.0 (or later)) #978
  • Provide some more map helpers in the plugin library like the C++ Descriptor. #983
  • Move the SwiftProtobuf.xcodeproj build settings into xcconfig files #986

1.8.0 Release

28 Jan 21:26
Compare
Choose a tag to compare

New features/interfaces:

  • Add Message binary decoding support from ContiguousBytes (#914)
  • Make things generic over ContiguousBytes and @inlinable (#915, #921)

Notable changes:

  • Use heap-based storage only when a Protobuf has a singular transitive recursion (#900)
  • Use raw pointers instead of typed pointers (#918)
  • Add missing CaseIterable support for nested enums (#923)
  • Guard against TextFormat encoding of unknowns from overflowing the stack (#927)

Performance related changes:

  • JSON/TextFormat submessage encoding performance improvements (#916)
  • Avoid collecting unknown fields while scanning for message (#924)
  • Minor code cleanup for JSON additions (#935)

SwiftProtobuf 1.7.0 Release

27 Sep 18:01
Compare
Choose a tag to compare

Complete support for Swift 5.1.

Additions to the library:

  • The generated code for descriptor.proto is now included in the library, this means one no longer has to generate and compile it in if there are proto files that had extension declared on those types. (#727)

Notable changes:

  • The Swift 5.1 compiler will error on switch statements for an enum if it has a large number of cases; this could happen in the generated code. The generated code now splits things up to avoid this compile error. (#904)

SwiftProtobuf 1.6.0 Release

18 Jul 13:36
Compare
Choose a tag to compare

Notable updates:

  • Raise a .illegalNull is the top level JSON is null. (#870)
  • Perf: Use new float formatting code (#882)
  • Specify swift_versions in podspec and minimum CocoaPods 1.7.0 version. (#891)

SwiftProtobuf 1.5.0 Release

15 Apr 15:06
Compare
Choose a tag to compare

Complete support for Swift 5.

  • Swift5: Fix warnings about loss of precision (#844)
  • Drop the support for Swift <4.0. (#847)
  • Swift5.0: Change Data(bytes:) to Data(_:). (#848)
  • Fix build command to work also with Swift 5. (#852)
  • Swift 5.0: Switch a stray Data(bytes:) to Data(_:). (#854)
  • Swift 5: adopt new Data.withUnsafeBytes API. (#843)

Update some internals:

  • Update some FileIo calls to FileHandle. (#845)
  • Remove printToFd logic from FileIo. (#846)

Add some features to the library:

  • TextFormat conformance: Add option to suppress unknown field printing. (#850)
  • Adding JSON encoding option: Use proto field names instead of lowerCamelCase names. (#856)

SwiftProtobuf 1.4.0 Release

11 Mar 17:04
Compare
Choose a tag to compare

Minor updates around some edge conditions in TextFormat/JSON format:

  • The empty string is a valid JSON encoding for a FieldMask. (#835)
  • Accept too-large float values in Text format (#840)

SwiftProtobuf 1.3.1 Release

07 Jan 18:56
Compare
Choose a tag to compare

Minor release to fix building with Swift versions <4.2 (#828).

SwiftProtobuf 1.3.0 Release

04 Jan 17:51
Compare
Choose a tag to compare
  • SwiftPM Updates to be in better shape for Swift 5. (#819, #824)
  • Code updates for Swift 5 being more strict about some things (#808, #809)
  • Avoid generating code that doesn't compile when enum case aliases have naming collisions in their Swift forms (#822)
  • Drop support for Swift <=3.1 since 4.2 has been the current GM for a while now. (#825)

SwiftProtobuf 1.2.0 Release

17 Oct 14:20
Compare
Choose a tag to compare

Changes of interest:

  • #800 Add JSON encoding options: Not, this is a source compatible change, but not binary compatible because of a new parameter with a default, hence the 1.2.0 version numbers.
  • #804 Fix Json map encoding for float, sint, fixed, sfixed