Skip to content

v2.1.0

Choose a tag to compare

@Cartisim Cartisim released this 19 Aug 14:06
· 38 commits to main since this release
7fe8f83

ConnectionManagerKit 2.1.0 — Android support and WebSocket APIs

Highlights

  • Android support: The SDK now runs on Android, enabling shared connection management across iOS, macOS, Linux, and Android.
  • WebSocket APIs: First-class WebSocket support with connection lifecycle management, ping/pong, backoff/retry, TLS configuration, and connection pooling.

Added

  • Android platform support: Unified connection management and pooling on Android.
  • WebSocket APIs:
    • Connect, disconnect, and automatic reconnect with jittered backoff.
    • Message send/receive with channel abstraction.
    • Ping/pong, keep-alives, and idle-timeout handling.
    • Custom headers and subprotocols.
    • TLS configuration, certificate pinning, and trust policies.
  • Documentation: New and updated guides in Sources/ConnectionManagerKit/Documentation.docc/, including:
    • WebSocketQuickStart.md
    • GettingStarted.md
    • ConnectionPooling.md
    • RetryStrategies.md
    • TLSConfiguration.md
    • NetworkEvents.md
    • ParallelConnections.md

Improvements

  • Connection pooling: Better parallel orchestration for lower latency and higher throughput.
  • Network robustness: Stronger monitoring and state transitions for flaky networks.
  • Error clarity: Clearer categorization for retries vs terminal failures.

Fixes

  • Reconnect stability: Handles server close codes without looping.
  • Channel cleanup: Resolves rare races during rapid connect/disconnect.

Getting started

  • See GettingStarted.md and WebSocketQuickStart.md for initialization and end-to-end examples.
  • Use RetryStrategies.md, TLSConfiguration.md, and NetworkEvents.md to tune production behavior.