Skip to content

Review thoughts #1

@carllerche

Description

@carllerche

I'm working on reviewing the repository. I have not reviewed everything yet. I will track my thoughts as they come here. Actionable takeaways should be tracked in dedicated issues / PRs.

NewTransport

It seems that NewTransport is a Service of transports. Perhaps this should be represented as an "trait alias" similar to MakeService. Naming wise, right now we have MakeService, so perhaps this could be MakeTransport?

pipeline::Client

  • Can max_in_flight be removed? This should be possible to implement as a middleware.
  • Is the VecDeque of requests needed? Can these be sent directly to the transport without buffering?

pipeline::client::Maker

Should this be named MakeClient?

pipeline::Server

Same as with Client, could some fields / logic be removed in favor of using middleware to implement that logic?

Examples

It would be nice to have a client / server example using a basic line protocol so we can see how the entire stack fits together w/ Tokio and codec / framed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions