14 releases (7 breaking)
0.9.2 | Oct 14, 2024 |
---|---|
0.9.1 | Apr 1, 2024 |
0.9.0 | Mar 12, 2023 |
0.5.0 | Jun 27, 2022 |
0.1.0 | Nov 11, 2019 |
#28 in Email
8,409 downloads per month
Used in 9 crates
(5 directly)
79KB
2K
SLoC
async-smtp
Async implementation of SMTP
Based on the great lettre library.
Example
pub type Error = Box<dyn std::error::Error + Send + Sync>;
pub type Result<T> = std::result::Result<T, Error>;
use async_smtp::{Envelope, SendableEmail, SmtpClient, SmtpTransport};
async fn smtp_transport_simple() -> Result<()> {
let stream = TcpStream::connect("127.0.0.1:2525").await?;
let client = SmtpClient::new();
let mut transport = SmtpTransport::new(client, stream).await?;
let email = SendableEmail::new(
Envelope::new(
Some("user@localhost".parse().unwrap()),
vec!["root@localhost".parse().unwrap()],
)?,
"Hello world",
);
transport.send(email).await?;
Ok(())
}
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT) at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~2–13MB
~169K SLoC