Skip to content

Version 1.0

Compare
Choose a tag to compare
@billabt billabt released this 23 Nov 16:13
· 14 commits to master since this release

Version 1.0

Socket framework for Swift using the Swift Package Manager. Works on iOS, macOS, and Linux.

Prerequisites

Swift

  • Swift Open Source swift-4.0.0-RELEASE toolchain (Minimum REQUIRED for latest release)
  • Swift Open Source swift-5.0-RELEASE toolchain (Recommended)
  • Swift toolchain included in Xcode Version 10.2 (10E125) or higher.

macOS

  • macOS 10.11.6 (El Capitan) or higher.
  • Xcode Version 9.0 (9A325) or higher using one of the above toolchains.
  • Xcode Version 10.2 (10E125) or higher using the included toolchain (Recommended).

iOS

  • iOS 10.0 or higher
  • Xcode Version 9.0 (9A325) or higher using one of the above toolchains.
  • Xcode Version 10.2 (10E125) or higher using the included toolchain (Recommended).

Linux

  • Ubuntu 16.04 (or 16.10 but only tested on 16.04 and 18.04).
  • One of the Swift Open Source toolchains listed above.

Other Platforms

  • BlueSocket is NOT supported on watchOS since POSIX/BSD/Darwin sockets are not supported on the actual device although they are supported in the simulator.
  • BlueSocket should work on tvOS but has NOT been tested.

Add-ins

  • BlueSSLService can be used to add SSL/TLS support.
    • If using this package, please note that the libssl-dev package is required to be installed when building on Linux.

Changes since 1.0.0

  • When calling getaddrinfo(), the hints variable should reflect the protocol family of the socket.
  • Added new parameter to connect() to allow the caller to force the connection to the specific family of the Socket instance making call. The default behavior is to allow connection to any socket family.
  • Big endian fixes. PR #130.
  • Update to Swift 4.1.
  • Fixed connect() for UDP sockets. PR #137.
  • Added CI support for Swift 4.2 builds. PR #138.
  • Improve using Signature to connect to socket. PR #147.
  • Update to use Swift 4.2 as default. PR #151.
  • Resolve Swift 5 compilation warnings. Drop Swift 3 support. PR #154.
  • Added new parameter to TCP version of listen API to allow caller to specify a particular address to listen on. This new parameter is defaulted to nil and therefore should NOT affect current callers.
  • Update the example in the README to correct a data race condition. Issue #115.
  • Update CI support to use Swift 4.2.3. PR #169
  • Update for Swift 5.0. PR #170.
  • Add CI support for Xcode 11.
  • Fixed problem with endianess on big iron. PR #177.
  • Update to use Swift 5.1 as default.