From 3ce31c5a6ad115ab31cf5ba0c7cf1d01931eaca3 Mon Sep 17 00:00:00 2001 From: Paolo Barbolini Date: Mon, 23 Dec 2024 22:08:08 +0100 Subject: [PATCH] docs: add missing ContentType to email building (#1017) --- benches/transport_smtp.rs | 4 +++- src/message/mod.rs | 6 +++++- src/transport/file/mod.rs | 18 ++++++++++++++---- src/transport/mod.rs | 6 +++++- src/transport/sendmail/mod.rs | 11 +++++++---- src/transport/smtp/mod.rs | 7 ++++++- src/transport/stub/mod.rs | 5 ++++- 7 files changed, 44 insertions(+), 13 deletions(-) diff --git a/benches/transport_smtp.rs b/benches/transport_smtp.rs index 9288807..c53e07b 100644 --- a/benches/transport_smtp.rs +++ b/benches/transport_smtp.rs @@ -1,5 +1,5 @@ use criterion::{black_box, criterion_group, criterion_main, Criterion}; -use lettre::{Message, SmtpTransport, Transport}; +use lettre::{message::header::ContentType, Message, SmtpTransport, Transport}; fn bench_simple_send(c: &mut Criterion) { let sender = SmtpTransport::builder_dangerous("127.0.0.1") @@ -13,6 +13,7 @@ fn bench_simple_send(c: &mut Criterion) { .reply_to("Yuin ".parse().unwrap()) .to("Hei ".parse().unwrap()) .subject("Happy new year") + .header(ContentType::TEXT_PLAIN) .body(String::from("Be happy!")) .unwrap(); let result = black_box(sender.send(&email)); @@ -32,6 +33,7 @@ fn bench_reuse_send(c: &mut Criterion) { .reply_to("Yuin ".parse().unwrap()) .to("Hei ".parse().unwrap()) .subject("Happy new year") + .header(ContentType::TEXT_PLAIN) .body(String::from("Be happy!")) .unwrap(); let result = black_box(sender.send(&email)); diff --git a/src/message/mod.rs b/src/message/mod.rs index 37d9189..b45d07a 100644 --- a/src/message/mod.rs +++ b/src/message/mod.rs @@ -537,7 +537,10 @@ impl Message { /// Example: /// ```rust /// use lettre::{ - /// message::dkim::{DkimConfig, DkimSigningAlgorithm, DkimSigningKey}, + /// message::{ + /// dkim::{DkimConfig, DkimSigningAlgorithm, DkimSigningKey}, + /// header::ContentType, + /// }, /// Message, /// }; /// @@ -546,6 +549,7 @@ impl Message { /// .reply_to("Bob ".parse().unwrap()) /// .to("Carla ".parse().unwrap()) /// .subject("Hello") + /// .header(ContentType::TEXT_PLAIN) /// .body("Hi there, it's a test email, with utf-8 chars ë!\n\n\n".to_owned()) /// .unwrap(); /// let key = "-----BEGIN RSA PRIVATE KEY----- diff --git a/src/transport/file/mod.rs b/src/transport/file/mod.rs index 0dca73d..76b65bd 100644 --- a/src/transport/file/mod.rs +++ b/src/transport/file/mod.rs @@ -11,7 +11,7 @@ //! # fn main() -> Result<(), Box> { //! use std::env::temp_dir; //! -//! use lettre::{FileTransport, Message, Transport}; +//! use lettre::{message::header::ContentType, FileTransport, Message, Transport}; //! //! // Write to the local temp directory //! let sender = FileTransport::new(temp_dir()); @@ -20,6 +20,7 @@ //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! let result = sender.send(&email); @@ -44,7 +45,7 @@ //! # fn main() -> Result<(), Box> { //! use std::env::temp_dir; //! -//! use lettre::{FileTransport, Message, Transport}; +//! use lettre::{message::header::ContentType, FileTransport, Message, Transport}; //! //! // Write to the local temp directory //! let sender = FileTransport::with_envelope(temp_dir()); @@ -53,6 +54,7 @@ //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! let result = sender.send(&email); @@ -73,7 +75,9 @@ //! # async fn run() -> Result<(), Box> { //! use std::env::temp_dir; //! -//! use lettre::{AsyncFileTransport, AsyncTransport, Message, Tokio1Executor}; +//! use lettre::{ +//! message::header::ContentType, AsyncFileTransport, AsyncTransport, Message, Tokio1Executor, +//! }; //! //! // Write to the local temp directory //! let sender = AsyncFileTransport::::new(temp_dir()); @@ -82,6 +86,7 @@ //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! let result = sender.send(email).await; @@ -99,7 +104,10 @@ //! # async fn run() -> Result<(), Box> { //! use std::env::temp_dir; //! -//! use lettre::{AsyncFileTransport, AsyncStd1Executor, AsyncTransport, Message}; +//! use lettre::{ +//! message::header::ContentType, AsyncFileTransport, AsyncStd1Executor, AsyncTransport, +//! Message, +//! }; //! //! // Write to the local temp directory //! let sender = AsyncFileTransport::::new(temp_dir()); @@ -108,6 +116,7 @@ //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! let result = sender.send(email).await; @@ -125,6 +134,7 @@ //! Reply-To: Yuin //! To: Hei //! Subject: Happy new year +//! Content-Type: text/plain; charset=utf-8 //! Date: Tue, 18 Aug 2020 22:50:17 GMT //! //! Be happy! diff --git a/src/transport/mod.rs b/src/transport/mod.rs index 8630fd5..13b0267 100644 --- a/src/transport/mod.rs +++ b/src/transport/mod.rs @@ -56,13 +56,17 @@ //! # //! # #[cfg(all(feature = "builder", feature = "smtp-transport"))] //! # fn main() -> Result<(), Box> { -//! use lettre::{transport::smtp::authentication::Credentials, Message, SmtpTransport, Transport}; +//! use lettre::{ +//! message::header::ContentType, transport::smtp::authentication::Credentials, Message, +//! SmtpTransport, Transport, +//! }; //! //! let email = Message::builder() //! .from("NoBody ".parse()?) //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! let creds = Credentials::new("smtp_username".to_owned(), "smtp_password".to_owned()); diff --git a/src/transport/sendmail/mod.rs b/src/transport/sendmail/mod.rs index 42b0258..0fb7709 100644 --- a/src/transport/sendmail/mod.rs +++ b/src/transport/sendmail/mod.rs @@ -7,13 +7,14 @@ //! # //! # #[cfg(all(feature = "sendmail-transport", feature = "builder"))] //! # fn main() -> Result<(), Box> { -//! use lettre::{Message, SendmailTransport, Transport}; +//! use lettre::{message::header::ContentType, Message, SendmailTransport, Transport}; //! //! let email = Message::builder() //! .from("NoBody ".parse()?) //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! let sender = SendmailTransport::new(); @@ -34,7 +35,8 @@ //! # #[cfg(all(feature = "tokio1", feature = "sendmail-transport", feature = "builder"))] //! # async fn run() -> Result<(), Box> { //! use lettre::{ -//! AsyncSendmailTransport, AsyncTransport, Message, SendmailTransport, Tokio1Executor, +//! message::header::ContentType, AsyncSendmailTransport, AsyncTransport, Message, +//! SendmailTransport, Tokio1Executor, //! }; //! //! let email = Message::builder() @@ -42,6 +44,7 @@ //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! let sender = AsyncSendmailTransport::::new(); @@ -58,13 +61,13 @@ //! # //! # #[cfg(all(feature = "async-std1", feature = "sendmail-transport", feature = "builder"))] //! # async fn run() -> Result<(), Box> { -//! use lettre::{Message, AsyncTransport, AsyncStd1Executor, AsyncSendmailTransport}; +//! use lettre::{Message, AsyncTransport, AsyncStd1Executor,message::header::ContentType, AsyncSendmailTransport}; //! //! let email = Message::builder() //! .from("NoBody ".parse()?) //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) -//! .subject("Happy new year") +//! .subject("Happy new year").header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! let sender = AsyncSendmailTransport::::new(); diff --git a/src/transport/smtp/mod.rs b/src/transport/smtp/mod.rs index 390ac62..c3fcda2 100644 --- a/src/transport/smtp/mod.rs +++ b/src/transport/smtp/mod.rs @@ -33,13 +33,14 @@ //! ```rust,no_run //! # #[cfg(all(feature = "builder", any(feature = "native-tls", feature = "rustls-tls")))] //! # fn test() -> Result<(), Box> { -//! use lettre::{Message, SmtpTransport, Transport}; +//! use lettre::{message::header::ContentType, Message, SmtpTransport, Transport}; //! //! let email = Message::builder() //! .from("NoBody ".parse()?) //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! // Create TLS transport on port 465 @@ -59,6 +60,7 @@ //! # #[cfg(all(feature = "builder", any(feature = "native-tls", feature = "rustls-tls")))] //! # fn test() -> Result<(), Box> { //! use lettre::{ +//! message::header::ContentType, //! transport::smtp::{ //! authentication::{Credentials, Mechanism}, //! PoolConfig, @@ -71,6 +73,7 @@ //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! // Create TLS transport on port 587 with STARTTLS @@ -99,6 +102,7 @@ //! # #[cfg(all(feature = "builder", any(feature = "native-tls", feature = "rustls-tls")))] //! # fn test() -> Result<(), Box> { //! use lettre::{ +//! message::header::ContentType, //! transport::smtp::client::{Tls, TlsParameters}, //! Message, SmtpTransport, Transport, //! }; @@ -108,6 +112,7 @@ //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! // Custom TLS configuration diff --git a/src/transport/stub/mod.rs b/src/transport/stub/mod.rs index 0d94b4a..acba470 100644 --- a/src/transport/stub/mod.rs +++ b/src/transport/stub/mod.rs @@ -11,7 +11,9 @@ //! ```rust //! # #[cfg(feature = "builder")] //! # { -//! use lettre::{transport::stub::StubTransport, Message, Transport}; +//! use lettre::{ +//! message::header::ContentType, transport::stub::StubTransport, Message, Transport, +//! }; //! //! # use std::error::Error; //! # fn try_main() -> Result<(), Box> { @@ -20,6 +22,7 @@ //! .reply_to("Yuin ".parse()?) //! .to("Hei ".parse()?) //! .subject("Happy new year") +//! .header(ContentType::TEXT_PLAIN) //! .body(String::from("Be happy!"))?; //! //! let mut sender = StubTransport::new_ok();