Skip to content

Releases: apple/swift-protobuf

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

SwiftProtobuf 1.1.2 Release

13 Sep 18:02
Compare
Choose a tag to compare

Release to provide full Swift 4.2 toolchain support. Most interesting Pull Requests:

  • Hashable conformance and Hashing changes #784

The 1.1.0 Release already included #764 (SwiftPM 4.2 specific manifest), #766 (CaseIterable for enums).

SwiftProtobuf 1.1.1 Release

14 Aug 20:37
Compare
Choose a tag to compare
  • #781 & #783 - avoid extra indirection on equality methods.
  • #785 fixes long standing (and overlooked) issue around clear* methods when the used shared heap storage with another instance.

SwiftProtobuf 1.1.0 Release

26 Jul 13:06
Compare
Choose a tag to compare

Changes of interest:

  • Support for Swift < 3.1 has been dropped. (#736, #765)
  • Some fixes around text_format parsing (#738)
  • Added missing support for escape sequences in JSON byte data (#744)
  • Start taking advantage of the support from conditional conformances (#747, #749, #755)
  • Fail for unknown JSON fields, but provide an option to ignore them instead (#771)
  • Start Swift 4.2 support (#764, #766). There will be more work for this in future releases.

Note: This release includes a correction to the handing of unknown fields when parsing JSON messages. Previous releases were not matching the Protobuf Spec which calls for unknown fields to error. The spec does allow for an option to request that unknown fields are silently dropped. So this release includes the fix to error for unknown fields, but adds an option to JSONDecodingOptions to request unknown fields be ignored instead of causing the failure. PR #771 includes these changes and more details.

SwiftProtobuf 1.0.3 Release

02 Mar 20:34
Compare
Choose a tag to compare

Release to provide Swift 4.1 toolchain support. Most interesting Pull Requests:

  • #716 Support for Swift 4.1's SE0187 changes.
  • #718 More Swift 4.1 cleanups
  • #719 Swift 4.1 added warnings for "near misses" with default impls of protocols that cause build warning in generated code

SwiftProtobuf 1.0.2 Release

04 Dec 17:11
Compare
Choose a tag to compare

Minor release to provide:

  • Updated SwiftPM 4 manifest to expose the plugin library for people writing other plugins (#702)