Skip to content

3.0.0

Latest

Choose a tag to compare

@orchetect orchetect released this 14 May 23:36

SwiftOSC 3.0.0

Note

This repository has been renamed swift-osc.
Please updated your dependencies to point to the new URL: https://github.com/orchetect/swift-osc

This release marks a few major structural changes and improvements to be more modular and extensible going forward:

  • The library has been renamed to SwiftOSC (package name swift-osc)
  • The core target (previously OSCKitCore) has been split out into its own swift-osc-core repository
  • I/O class API has now been unified using new protocols vended by swift-osc-core, with implementations available as interchangeable network I/O backend repositories
    • The existing network I/O backend that used CocoaAsyncSocket has been split out into its own swift-osc-io-cocoa extension repository
    • A new network I/O backend using SwiftNIO has been built in its own swift-osc-io-nio extension repository1 and is now the default I/O backend, which brings cross-platform support to Linux and Android

Issues, Discussions, and Example Code

The main swift-osc repository will continue to host issues, discussions, and example code in one place.

Documentation

Documentation is now hosted online at SwiftPackageIndex. The main swift-osc repo offers a general getting started guide, whereas and the swift-osc-core docs covers all of the core types and I/O API. Links can be found in both repo README files.

Use Cases

To use the library:

  • with the default I/O backend:
    • use swift-osc as a dependency and import SwiftOSC
  • with one of the alternative network I/O backends2:
    • use the respective I/O extension directly as a dependency instead
  • with your own network I/O implementation:
    • use swift-osc-core as a dependency and import SwiftOSCCore
    • optionally also import SwiftOSCIOCore to use the I/O protocols and related free functionality provided

Release Notes

For release notes summarizing all new features, fixes, improvements, and changes, see the release notes for each repository for all intermediary releases that form the SwiftOSC 3.0.0 release:

Footnotes

  1. Thanks to @The-Wolfson for the PR

  2. Currently two network I/O backends are available: CocoaAsyncSocket and SwiftNIO