kolibri 0.1.4
kolibri: ^0.1.4 copied to clipboard
Dart/Flutter bindings for the Kolibri messaging protocol, powered by a Rust core via flutter_rust_bridge. Supports Android, iOS, macOS, Linux and Windows.
Changelog #
0.1.4 #
- Handshake fields that are not set are now omitted from
sessionInitinstead of being sent empty:arch(empty string),buildNumber(0),instanceId(empty string) andclientSessionId(0). A web-type session can therefore produce a payload byte-identical to the MAX web client, which sends none of them. Mobile sessions pass real values and are unaffected.
0.1.3 #
SessionOptionsgainsisPwaandheaderUserAgent. Both are optional: when left unset the key is absent from the handshakeuserAgentmap entirely, so existing sessions send exactly the same payload as before.- These are the two fields the MAX web client sends that mobile clients did not.
The server routes web push (
sw-web-push, opcode 22 subscriptions) only to sessions that look like an installed web app, so a client wanting web push must senddeviceType: WEB,pushDeviceType: WEBPUSHandisPwa: true.
0.1.2 #
- Expose
setTrustMincifryCa/trustMincifryCa: opt in to the bundled Минцифры root (Russian Trusted Root + Sub CA) for hosts that chain to it, such asapi2.oneme.ru. Off by default; covers the session socket, media uploads and ws2 call signaling. - Depend on
kolibri-netby git tag instead of a workspace path, so the Rust core resolves when the package is consumed from pub.dev. Building an app that uses this package now needs git access to the repository.
0.1.1 #
- Upgrade to
freezed/freezed_annotation3.x. - Add a canonical
example/example.dartand anexample/README.md. - Rewrite the README for pub.dev with quick-start, requirements and API notes.
0.1.0 #
- Initial release: Dart/Flutter bindings for the Kolibri messaging protocol.
- FFI plugin with a Rust core built via cargokit (requires a Rust toolchain on the consumer's machine).
- Platforms: Android, iOS, macOS, Linux, Windows.