-
Notifications
You must be signed in to change notification settings - Fork 81
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
feat: add features for other tls types #465
base: main
Are you sure you want to change the base?
feat: add features for other tls types #465
Conversation
Turned out to be rather easy due to all tls being handled by our dependencies. Don't love the _fallback-tls feature, however with it we can use cargo-all-features, which helps reduce feature related bugs. Downside of cargo-all-features is it takes a long time to execute. Fixes: 1c3t3a#407, 1c3t3a#366
There's still an error with ci. engineio/src/lib.rs/test/tls_connector doesn't function the same as native-tls one (as it properly validates hostnames) Needs further investigation as to why the hostname shows as invalid in ci. If we no longer need that, then this PR can be merged.
2328485
to
4ea65ec
Compare
Ran out of time. Need to still resolve the CI issue where for some reason the certificates are showing up as invalid hostnames. If someone could fix that bug, this would be ready to go. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Quick drive-by comments. As always: Nice work!
# rustls-pemfile is only needed for unit tests | ||
rustls-pemfile = { version = "2", optional = true } | ||
# webpki is only needed for unit tests | ||
webpki = { version = "0.21", optional = true } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: Maybe make it a dev-dependency then?
#[cfg(feature = "async-callbacks")] on_close: OptionalCallback<()>, | ||
#[cfg(feature = "async-callbacks")] on_data: OptionalCallback<Bytes>, | ||
#[cfg(feature = "async-callbacks")] on_error: OptionalCallback<String>, | ||
#[cfg(feature = "async-callbacks")] on_open: OptionalCallback<()>, | ||
#[cfg(feature = "async-callbacks")] on_packet: OptionalCallback<Packet>, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice to see that feature properly implemented!
Turned out to be rather easy due to all tls being handled by our dependencies.
Don't love the _fallback-tls feature, however with it we can use cargo-all-features, which helps reduce feature related bugs.
Downside of cargo-all-features is it takes a long time to execute.
Fixes: #407, #366
cc: @GaryCraft @tyilo @rageshkrishna