Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[websocket] Switch async-tls to futures-rustls #1889

Merged
merged 5 commits into from
Jan 12, 2021

Conversation

quininer
Copy link
Contributor

This PR replace async-tls with async-rustls. async-rustls is based on a newer version of tokio-rustls, which fixes many known bugs.

@quininer
Copy link
Contributor Author

Oh, I noticed that async-rustls is still using rustls 0.18 ...

Copy link
Contributor

@romanb romanb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, looks innocent enough to me. I'm not familiar with the details of async-tls and async-rustls, so I take your word for it that this is a step forward. Since async-tls seems to look for new maintainers, this may be a good change in any case. I don't think the rustls version used matters, unless 0.19 has some critical patches over 0.18.

@quininer
Copy link
Contributor Author

The maintenance status of async-rustls does not seem to be so good, I will pick up futures-rustls again on the weekend.

@quininer quininer changed the title [websocket] Switch async-tls to async-rustls [websocket] Switch async-tls to futures-rustls Dec 19, 2020
@romanb
Copy link
Contributor

romanb commented Jan 12, 2021

Thanks and apologies for the late reply. So just to summarise before proceeding here, there now is async-tls, async-rustls and futures-rustls, all derived from different versions of tokio-rustls. You suggest to use futures-rustls because it is based off a much later version of tokio-rustls, hence fixing bugs, and because the former two are not well maintained. Is that a correct summary? Just for reference, what are some of the bugs that are unresolved in async-tls? Is there also a difference in goals / ambitions between these libraries that influence the preferred choice?

cc @mxinden @tomaka

@quininer
Copy link
Contributor Author

quininer commented Jan 12, 2021

You can see many issues in the old tokio-rustls repository (quininer/tokio-rustls#32 quininer/tokio-rustls#34 quininer/tokio-rustls#55). AFAIK, async-tls does not perform any backport.

async-rustls looks good, but at the time it only supports rustls 0.18, I don't want to use two versions rustls.

Copy link
Member

@mxinden mxinden left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, I confused async-rusttls with futures-rustls and thus thought #1889 (comment) suggests to put this on hold. Never mind.

@romanb romanb merged commit a223e4b into libp2p:master Jan 12, 2021
@quininer quininer deleted the use-async-rustls branch January 12, 2021 14:21
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.

3 participants