gsquire / sendgrid-rs

Unofficial Rust library for the SendGrid API
https://crates.io/crates/sendgrid
MIT License
107 stars 50 forks source link

"rustls" feature now depends on "native-tls" #75

Closed davegallant closed 4 years ago

davegallant commented 4 years ago

0.11.3 did not have a dependency on "openssl":

[dependencies]
sendgrid = { version = "0.11.3", features = ["rustls"] }
❯ cargo tree -i -p native-tls
error: package ID specification `native-tls` matched no packages

Now with 0.13.0:

[dependencies]
sendgrid = { version = "0.13.0", features = ["rustls"] }

There is a dependency upon "native-tls":

❯ cargo tree -i -p native-tls
native-tls v0.2.4
├── hyper-tls v0.4.3
│   └── reqwest v0.10.8
│       └── sendgrid v0.13.0
│           └── sendgrid-rs-issue v0.1.0 (/tmp/rust-sendgrid)
├── reqwest v0.10.8 (*)
└── tokio-tls v0.3.1
    ├── hyper-tls v0.4.3 (*)
    └── reqwest v0.10.8 (*)

It is no longer possible to cross-compile sendgrid-rs to x86_64-unknown-linux-musl.

gsquire commented 4 years ago

Alright so I looked at the history of the cargo manifest file and it looks to me like native-tls was added as a default feature post version 0.11. Did you compile with the --no-default-features flag by chance?

With that being said, these two features shouldn't be getting mixed up. I'll have to adjust that.

davegallant commented 4 years ago

Alright so I looked at the history of the cargo manifest file and it looks to me like native-tls was added as a default feature post version 0.11. Did you compile with the --no-default-features flag by chance?

With that being said, these two features shouldn't be getting mixed up. I'll have to adjust that.

Disabling default-features works. Thanks!

sendgrid = { version = "0.13.0", default-features = false, features = ["rustls", "blocking"] }