Closed iRaiko closed 1 year ago
By default reqwest will use system-native transport layer, and the default for linux is openssl (as per reqwest). Features are additive so having this as an optional dependency will enable that feature for the crates that do use it. In my case, inside a docker container, the cargo install perseus-cli was not working because of openssl (I got the libssl-dev files, and set the enviroment variables), and with making it vendored it was working
Perfect, that's what I thought, just wanted to make sure I understand. Because it's a bit obscure for developers new to Rust, do you want to add a little comment explaining that?
The openssl vendored feature, make it build openssl from source like the scripts/build_openssh_musl.sh but correct way. Instead relying on libssl-dev
package, when on xxxx-unknown-linux-gnu
detected correctly, it more complicated on musl
target.
Or even better if move to rustls
that entirely remove system/host deps on libssl-dev
@iRaiko did you want to add that explanatory comment?
To be clear, does this solve the problem because there's some dependency that uses
openssl
, and adding a direct dependency on it with this feature causes everything to work out?