Skip to content

Conversation

@museun
Copy link
Owner

@museun museun commented Oct 18, 2020

This removes the Connector trait and favors independent crates. This'll allow more flexible versioning (and changes/additions) for external deps.

This changes the Encodable trait to use a &mut dyn Write so the trait implementations can be object safe.

This removes the AsyncRunner and provides a bunch of composable functions instead.

The MpscWriter is now usable in both sync and async contexts.

Add Sink/Stream wrappers for Encoder/Decoder

Add a Handshake type that allows a connection flow to be started/wait for it to be ready.

Remove most of the stuff from the root, re-export common types into distinct submodules:

  • sync
  • asynchronous
  • stream

Add an idle_detection_loop that does the 'complex' part of the old runner -- but is reusable and is opt-in

What needs to be done:

  • documentation
    • lib.rs
    • each connector crate
  • readmes
    • main crate
    • each connector crate
  • bring back examples
  • migration guide?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants