Skip to content

Choose a tag to compare

@MaximKotliar MaximKotliar released this 16 Nov 21:09
· 1 commit to master since this release
8b5fbf5

MachIPC Release Notes

Version 0.1.0 - Initial Release

What's New

Initial release of MachIPC, a high-performance Swift library for Mach-based Inter-Process Communication on Darwin systems.

Key Features:

  • Type-safe messaging with MachPayloadProvider and MachMessageConvertible protocols
  • Automatic local/remote communication routing
  • Zero-copy optimization for in-process messaging
  • High-performance mode (auto-switches at >200k msg/s)
  • Configurable thread priority and buffer sizes
  • Built-in support for Data, String, and all Codable types

Performance:

  • Up to 1,000,000 messages/second on a single core
  • ~1 μs latency for remote messages
  • ~2.5 μs latency for local messages
  • At least 2x faster than XPC

Testing:

  • Comprehensive test suite (unit, throughput, benchmarks)
  • Benchmarks include 10MB message performance tests

Requirements

  • Swift 5.4+
  • macOS, iOS, or other Darwin-based systems

Installation

dependencies: [
    .package(url: "https://github.com/MaximKotliar/MachIPC", branch: "master")
]

⚠️ Important Notes

  • No encryption: Messages are not encrypted. Do not use for sensitive data.
  • Work in progress: API may change in future releases.

See README.md for full documentation and usage examples.