bitcoindevkit / bitcoindevkit/rust-electrum-client

Clean up dependencies and features

Open
#146 1 comment 0 reactions 1 assignee Claimed by @oleonardolima View on GitHub
new feature
Dominant language
Rust
Stars
89
Forks
82
Avg merge
2d 3h
Merged PRs (30d)
1

Description

There is way too much feature gating logic to me.

1. We shouldn't have a method like `new_proxy_ssl`, just have a single method that starts an electrum TLS connection given a `TcpStream`. Of course then we have a convenience method to do the initial connection to a url string if they don't want proxies. But if they do then it's fine to have them set up the proxy connection themselves.
2. Do we even need openssl as a dependency at all? If someone wants to use socks5 then can depend on openssl themelves or use one of the many pure rust socks5 client libraries like [socks5-client](https://docs.rs/socks5-client/latest/socks5_client/). We can have an example showing how to do tor. IMO it'd be better to try and use `socks5-client` rather than openssl. For TLS we can just be opinionated and use rustls.

This seems like something you would want to do anyway @oleonardolima for arti?

I'll turn this into an issue that I think we should tackle first.

_Originally posted by @LLFourn in https://github.com/bitcoindevkit/rust-electrum-client/pull/138#discussion_r1757704931_

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.