feat(all): Move Envelope from lettre_email to lettre

This commit is contained in:
Alexis Mousset
2018-03-31 16:11:27 +02:00
parent bef45c48f7
commit f3f963c6a5
34 changed files with 578 additions and 444 deletions

View File

@@ -9,14 +9,14 @@
<title>404 Page not found</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/horsey.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/horsey.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<style type="text/css">
:root #header + #content > #left > #rlblock_left {

View File

@@ -12,17 +12,17 @@
<title>Email creation :: Lettre site</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<script src="/lettre/js/jquery-2.x.min.js?1517057321"></script>
<script src="/lettre/js/jquery-2.x.min.js?1522506318"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
@@ -49,14 +49,14 @@
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1522506318"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1522506318"></script>
<script type="text/javascript">
var baseurl = "https:\/\/lettre.github.io\/lettre";
</script>
<script type="text/javascript" src="/lettre/js/search.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/search.js?1522506318"></script>
</div>
@@ -669,20 +669,20 @@ as fallback for the HTML version.</p>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="/lettre/js/clipboard.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1517057321"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1517057321"></script>
<script src="/lettre/js/featherlight.min.js?1517057321"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1517057321"></script>
<script src="/lettre/js/highlight.pack.js?1517057321"></script>
<script src="/lettre/js/clipboard.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1522506318"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1522506318"></script>
<script src="/lettre/js/featherlight.min.js?1522506318"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1522506318"></script>
<script src="/lettre/js/highlight.pack.js?1522506318"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="/lettre/js/modernizr.custom.71422.js?1517057321"></script>
<script src="/lettre/js/learn.js?1517057321"></script>
<script src="/lettre/js/hugo-learn.js?1517057321"></script>
<script src="/lettre/js/modernizr.custom.71422.js?1522506318"></script>
<script src="/lettre/js/learn.js?1522506318"></script>
<script src="/lettre/js/hugo-learn.js?1522506318"></script>
<link href="/lettre/mermaid/mermaid.css?1517057321" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1517057321"></script>
<link href="/lettre/mermaid/mermaid.css?1522506318" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1522506318"></script>
<script>
mermaid.initialize({ startOnLoad: true });
</script>

View File

@@ -12,17 +12,17 @@
<title>Creating messages :: Lettre site</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<script src="/lettre/js/jquery-2.x.min.js?1517057321"></script>
<script src="/lettre/js/jquery-2.x.min.js?1522506318"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
@@ -49,14 +49,14 @@
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1522506318"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1522506318"></script>
<script type="text/javascript">
var baseurl = "https:\/\/lettre.github.io\/lettre";
</script>
<script type="text/javascript" src="/lettre/js/search.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/search.js?1522506318"></script>
</div>
@@ -608,20 +608,20 @@
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="/lettre/js/clipboard.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1517057321"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1517057321"></script>
<script src="/lettre/js/featherlight.min.js?1517057321"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1517057321"></script>
<script src="/lettre/js/highlight.pack.js?1517057321"></script>
<script src="/lettre/js/clipboard.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1522506318"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1522506318"></script>
<script src="/lettre/js/featherlight.min.js?1522506318"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1522506318"></script>
<script src="/lettre/js/highlight.pack.js?1522506318"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="/lettre/js/modernizr.custom.71422.js?1517057321"></script>
<script src="/lettre/js/learn.js?1517057321"></script>
<script src="/lettre/js/hugo-learn.js?1517057321"></script>
<script src="/lettre/js/modernizr.custom.71422.js?1522506318"></script>
<script src="/lettre/js/learn.js?1522506318"></script>
<script src="/lettre/js/hugo-learn.js?1522506318"></script>
<link href="/lettre/mermaid/mermaid.css?1517057321" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1517057321"></script>
<link href="/lettre/mermaid/mermaid.css?1522506318" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1522506318"></script>
<script>
mermaid.initialize({ startOnLoad: true });
</script>

View File

@@ -12,17 +12,17 @@
<title>Getting started :: Lettre site</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<script src="/lettre/js/jquery-2.x.min.js?1517057321"></script>
<script src="/lettre/js/jquery-2.x.min.js?1522506318"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
@@ -49,14 +49,14 @@
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1522506318"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1522506318"></script>
<script type="text/javascript">
var baseurl = "https:\/\/lettre.github.io\/lettre";
</script>
<script type="text/javascript" src="/lettre/js/search.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/search.js?1522506318"></script>
</div>
@@ -605,20 +605,20 @@
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="/lettre/js/clipboard.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1517057321"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1517057321"></script>
<script src="/lettre/js/featherlight.min.js?1517057321"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1517057321"></script>
<script src="/lettre/js/highlight.pack.js?1517057321"></script>
<script src="/lettre/js/clipboard.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1522506318"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1522506318"></script>
<script src="/lettre/js/featherlight.min.js?1522506318"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1522506318"></script>
<script src="/lettre/js/highlight.pack.js?1522506318"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="/lettre/js/modernizr.custom.71422.js?1517057321"></script>
<script src="/lettre/js/learn.js?1517057321"></script>
<script src="/lettre/js/hugo-learn.js?1517057321"></script>
<script src="/lettre/js/modernizr.custom.71422.js?1522506318"></script>
<script src="/lettre/js/learn.js?1522506318"></script>
<script src="/lettre/js/hugo-learn.js?1522506318"></script>
<link href="/lettre/mermaid/mermaid.css?1517057321" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1517057321"></script>
<link href="/lettre/mermaid/mermaid.css?1522506318" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1522506318"></script>
<script>
mermaid.initialize({ startOnLoad: true });
</script>

View File

@@ -12,17 +12,17 @@
<title>Introduction :: Lettre site</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<script src="/lettre/js/jquery-2.x.min.js?1517057321"></script>
<script src="/lettre/js/jquery-2.x.min.js?1522506318"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
@@ -49,14 +49,14 @@
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1522506318"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1522506318"></script>
<script type="text/javascript">
var baseurl = "https:\/\/lettre.github.io\/lettre";
</script>
<script type="text/javascript" src="/lettre/js/search.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/search.js?1522506318"></script>
</div>
@@ -611,20 +611,20 @@ Please use <a href="https://docs.rs/lettre/0.6.2/lettre/">https://docs.rs/lettre
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="/lettre/js/clipboard.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1517057321"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1517057321"></script>
<script src="/lettre/js/featherlight.min.js?1517057321"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1517057321"></script>
<script src="/lettre/js/highlight.pack.js?1517057321"></script>
<script src="/lettre/js/clipboard.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1522506318"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1522506318"></script>
<script src="/lettre/js/featherlight.min.js?1522506318"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1522506318"></script>
<script src="/lettre/js/highlight.pack.js?1522506318"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="/lettre/js/modernizr.custom.71422.js?1517057321"></script>
<script src="/lettre/js/learn.js?1517057321"></script>
<script src="/lettre/js/hugo-learn.js?1517057321"></script>
<script src="/lettre/js/modernizr.custom.71422.js?1522506318"></script>
<script src="/lettre/js/learn.js?1522506318"></script>
<script src="/lettre/js/hugo-learn.js?1522506318"></script>
<link href="/lettre/mermaid/mermaid.css?1517057321" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1517057321"></script>
<link href="/lettre/mermaid/mermaid.css?1522506318" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1522506318"></script>
<script>
mermaid.initialize({ startOnLoad: true });
</script>

View File

@@ -32,7 +32,7 @@
{
"uri": "/content/sending-messages/file",
"title": "File transport",
"content": "\nThe file transport writes the emails to the given directory. The name of the file will be\nmessage_id.txt.\nIt can be useful for testing purposes, or if you want to keep track of sent messages.\n\nextern crate lettre;\n\nuse std::env::temp_dir;\n\nuse lettre::file::FileEmailTransport;\nuse lettre::{SimpleSendableEmail, EmailTransport, EmailAddress};\n\nfn main() {\n // Write to the local temp directory\n let mut sender = FileEmailTransport::new(temp_dir());\n let email = SimpleSendableEmail::new(\n EmailAddress::new(\"user@localhost\".to_string()),\n vec![EmailAddress::new(\"root@localhost\".to_string())],\n \"messageid\".tostring(),\n \"Hello world\".to_string(),\n );\n \n let result = sender.send(&email);\n assert!(result.is_ok());\n}\n\nExample result in /tmp/b7c211bc-9811-45ce-8cd9-68eab575d695.txt:\n\nb7c211bc-9811-45ce-8cd9-68eab575d695: from=user@localhost to=root@localhost\nTo: root@localhost\nFrom: user@localhost\nSubject: Hello\nDate: Sat, 31 Oct 2015 13:42:19 +0100\nMessage-ID: b7c211bc-9811-45ce-8cd9-68eab575d695.lettre@localhost\n\nHello World!\n",
"content": "\nThe file transport writes the emails to the given directory. The name of the file will be\nmessage_id.txt.\nIt can be useful for testing purposes, or if you want to keep track of sent messages.\n\nextern crate lettre;\n\nuse std::env::temp_dir;\n\nuse lettre::file::FileEmailTransport;\nuse lettre::{SimpleSendableEmail, EmailTransport};\n\nfn main() {\n // Write to the local temp directory\n let mut sender = FileEmailTransport::new(temp_dir());\n let email = SimpleSendableEmail::new(\n \"user@localhost\".to_string(),\n &[\"root@localhost\".to_string()],\n \"messageid\".tostring(),\n \"Hello world\".to_string(),\n ).unwrap();\n \n let result = sender.send(&email);\n assert!(result.is_ok());\n}\n\nExample result in /tmp/b7c211bc-9811-45ce-8cd9-68eab575d695.txt:\n\nb7c211bc-9811-45ce-8cd9-68eab575d695: from=user@localhost to=root@localhost\nTo: root@localhost\nFrom: user@localhost\nSubject: Hello\nDate: Sat, 31 Oct 2015 13:42:19 +0100\nMessage-ID: b7c211bc-9811-45ce-8cd9-68eab575d695.lettre@localhost\n\nHello World!\n",
"tags": []
},
{
@@ -44,19 +44,19 @@
{
"uri": "/content/sending-messages/sendmail",
"title": "Sendmail transport",
"content": "\nThe sendmail transport sends the email using the local sendmail command.\n\nextern crate lettre;\n\nuse lettre::sendmail::SendmailTransport;\nuse lettre::{SimpleSendableEmail, EmailTransport, EmailAddress};\n\nfn main() {\n let email = SimpleSendableEmail::new(\n EmailAddress::new(\"user@localhost\".to_string()),\n vec![EmailAddress::new(\"root@localhost\".to_string())],\n \"messageid\".tostring(),\n \"Hello world\".to_string(),\n );\n \n let mut sender = SendmailTransport::new();\n let result = sender.send(&email);\n assert!(result.is_ok());\n}\n",
"content": "\nThe sendmail transport sends the email using the local sendmail command.\n\nextern crate lettre;\n\nuse lettre::sendmail::SendmailTransport;\nuse lettre::{SimpleSendableEmail, EmailTransport};\n\nfn main() {\n let email = SimpleSendableEmail::new(\n \"user@localhost\".to_string(),\n &[\"root@localhost\".to_string()],\n \"messageid\".tostring(),\n \"Hello world\".to_string(),\n ).unwrap();\n \n let mut sender = SendmailTransport::new();\n let result = sender.send(&email);\n assert!(result.is_ok());\n}\n",
"tags": []
},
{
"uri": "/content/sending-messages/smtp",
"title": "SMTP transport",
"content": "\nThis transport uses the SMTP protocol to send emails over the network (locally or remotely).\n\nIt is designed to be:\n\nSecured: email are encrypted by default\nModern: Unicode support for email content and sender/recipient addresses when compatible\nFast: supports tcp connection reuse\n\nThis client is designed to send emails to a relay server, and should not be used to send\nemails directly to the destination.\n\nThe relay server can be the local email server, a specific host or a third-party service.\n\nSimple example\n\nThis is the most basic example of usage:\n\nextern crate lettre;\n\nuse lettre::{SimpleSendableEmail, EmailTransport, EmailAddress, SmtpTransport};\n\nfn main() {\n let email = SimpleSendableEmail::new(\n EmailAddress::new(\"user@localhost\".to_string()),\n vec![EmailAddress::new(\"root@localhost\".to_string())],\n \"messageid\".tostring(),\n \"Hello world\".to_string(),\n );\n \n // Open a local connection on port 25\n let mut mailer =\n SmtpTransport::builderunencryptedlocalhost().unwrap().build();\n // Send the email\n let result = mailer.send(&email);\n \n assert!(result.is_ok());\n}\n\n Complete example\n\nextern crate lettre;\n\nuse lettre::smtp::authentication::{Credentials, Mechanism};\nuse lettre::{SimpleSendableEmail, EmailTransport, EmailAddress, SmtpTransport};\nuse lettre::smtp::extension::ClientId;\nuse lettre::smtp::ConnectionReuseParameters;\n\nfn main() {\n let email = SimpleSendableEmail::new(\n EmailAddress::new(\"user@localhost\".to_string()),\n vec![EmailAddress::new(\"root@localhost\".to_string())],\n \"messageid\".tostring(),\n \"Hello world\".to_string(),\n );\n \n // Connect to a remote server on a custom port\n let mut mailer = SmtpTransport::simple_builder(\"server.tld\").unwrap()\n // Set the name sent during EHLO/HELO, default is localhost\n .helloname(ClientId::Domain(\"my.hostname.tld\".tostring()))\n // Add credentials for authentication\n .credentials(Credentials::new(\"username\".tostring(), \"password\".tostring()))\n // Enable SMTPUTF8 if the server supports it\n .smtp_utf8(true)\n // Configure expected authentication mechanism\n .authentication_mechanism(Mechanism::Plain)\n // Enable connection reuse\n .connection_reuse(ConnectionReuseParameters::ReuseUnlimited).build();\n \n let result_1 = mailer.send(&email);\n assert!(result1.isok());\n \n // The second email will use the same connection\n let result_2 = mailer.send(&email);\n assert!(result2.isok());\n \n // Explicitly close the SMTP transaction as we enabled connection reuse\n mailer.close();\n}\n\nLower level\n\nYou can also send commands, here is a simple email transaction without\nerror handling:\n\nextern crate lettre;\n\nuse lettre::EmailAddress;\nuse lettre::smtp::SMTP_PORT;\nuse lettre::smtp::client::Client;\nuse lettre::smtp::client::net::NetworkStream;\nuse lettre::smtp::extension::ClientId;\nuse lettre::smtp::commands::*;\n\nfn main() {\n let mut email_client: ClientNetworkStream = Client::new();\n let _ = emailclient.connect(&(\"localhost\", SMTPPORT), None);\n let _ = emailclient.command(EhloCommand::new(ClientId::new(\"myhostname\".to_string())));\n let _ = email_client.command(\n MailCommand::new(Some(EmailAddress::new(\"user@example.com\".to_string())), vec![])\n );\n let _ = email_client.command(\n RcptCommand::new(EmailAddress::new(\"user@example.org\".to_string()), vec![])\n );\n let _ = email_client.command(DataCommand);\n let _ = emailclient.message(Box::new(\"Test email\".asbytes()));\n let _ = email_client.command(QuitCommand);\n}\n\n",
"content": "\nThis transport uses the SMTP protocol to send emails over the network (locally or remotely).\n\nIt is designed to be:\n\nSecured: email are encrypted by default\nModern: Unicode support for email content and sender/recipient addresses when compatible\nFast: supports tcp connection reuse\n\nThis client is designed to send emails to a relay server, and should not be used to send\nemails directly to the destination.\n\nThe relay server can be the local email server, a specific host or a third-party service.\n\nSimple example\n\nThis is the most basic example of usage:\n\nextern crate lettre;\n\nuse lettre::{SimpleSendableEmail, EmailTransport, SmtpTransport};\n\nfn main() {\n let email = SimpleSendableEmail::new(\n \"user@localhost\".to_string(),\n &[\"root@localhost\".to_string()],\n \"messageid\".tostring(),\n \"Hello world\".to_string(),\n ).unwrap();\n \n // Open a local connection on port 25\n let mut mailer =\n SmtpTransport::builderunencryptedlocalhost().unwrap().build();\n // Send the email\n let result = mailer.send(&email);\n \n assert!(result.is_ok());\n}\n\n Complete example\n\nextern crate lettre;\n\nuse lettre::smtp::authentication::{Credentials, Mechanism};\nuse lettre::{SimpleSendableEmail, EmailTransport, SmtpTransport};\nuse lettre::smtp::extension::ClientId;\nuse lettre::smtp::ConnectionReuseParameters;\n\nfn main() {\n let email = SimpleSendableEmail::new(\n \"user@localhost\".to_string(),\n &[\"root@localhost\".to_string()],\n \"messageid\".tostring(),\n \"Hello world\".to_string(),\n ).unwrap();\n \n // Connect to a remote server on a custom port\n let mut mailer = SmtpTransport::simple_builder(\"server.tld\").unwrap()\n // Set the name sent during EHLO/HELO, default is localhost\n .helloname(ClientId::Domain(\"my.hostname.tld\".tostring()))\n // Add credentials for authentication\n .credentials(Credentials::new(\"username\".tostring(), \"password\".tostring()))\n // Enable SMTPUTF8 if the server supports it\n .smtp_utf8(true)\n // Configure expected authentication mechanism\n .authentication_mechanism(Mechanism::Plain)\n // Enable connection reuse\n .connection_reuse(ConnectionReuseParameters::ReuseUnlimited).build();\n \n let result_1 = mailer.send(&email);\n assert!(result1.isok());\n \n // The second email will use the same connection\n let result_2 = mailer.send(&email);\n assert!(result2.isok());\n \n // Explicitly close the SMTP transaction as we enabled connection reuse\n mailer.close();\n}\n\nLower level\n\nYou can also send commands, here is a simple email transaction without\nerror handling:\n\nextern crate lettre;\n\nuse lettre::EmailAddress;\nuse lettre::smtp::SMTP_PORT;\nuse lettre::smtp::client::Client;\nuse lettre::smtp::client::net::NetworkStream;\nuse lettre::smtp::extension::ClientId;\nuse lettre::smtp::commands::*;\n\nfn main() {\n let mut email_client: ClientNetworkStream = Client::new();\n let _ = emailclient.connect(&(\"localhost\", SMTPPORT), None);\n let _ = emailclient.command(EhloCommand::new(ClientId::new(\"myhostname\".to_string())));\n let _ = email_client.command(\n MailCommand::new(Some(EmailAddress::new(\"user@example.com\".to_string()).unwrap()), vec![])\n );\n let _ = email_client.command(\n RcptCommand::new(EmailAddress::new(\"user@example.org\".to_string()).unwrap(), vec![])\n );\n let _ = email_client.command(DataCommand);\n let _ = emailclient.message(Box::new(\"Test email\".asbytes()));\n let _ = email_client.command(QuitCommand);\n}\n\n",
"tags": []
},
{
"uri": "/content/sending-messages/stub",
"title": "Stub transport",
"content": "\nThe stub transport only logs message envelope and drops the content. It can be useful for\ntesting purposes.\n\nextern crate lettre;\n\nuse lettre::stub::StubEmailTransport;\nuse lettre::{SimpleSendableEmail, EmailTransport, EmailAddress};\n\nfn main() {\n let email = SimpleSendableEmail::new(\n EmailAddress::new(\"user@localhost\".to_string()),\n vec![EmailAddress::new(\"root@localhost\".to_string())],\n \"messageid\".tostring(),\n \"Hello world\".to_string(),\n );\n \n let mut sender = StubEmailTransport::new_positive();\n let result = sender.send(&email);\n assert!(result.is_ok());\n}\n\nWill log (when using a logger like env_logger):\n\nb7c211bc-9811-45ce-8cd9-68eab575d695: from=user@localhost to=root@localhost\n",
"content": "\nThe stub transport only logs message envelope and drops the content. It can be useful for\ntesting purposes.\n\nextern crate lettre;\n\nuse lettre::stub::StubEmailTransport;\nuse lettre::{SimpleSendableEmail, EmailTransport};\n\nfn main() {\n let email = SimpleSendableEmail::new(\n \"user@localhost\".to_string(),\n &[\"root@localhost\".to_string()],\n \"messageid\".tostring(),\n \"Hello world\".to_string(),\n ).unwrap();\n \n let mut sender = StubEmailTransport::new_positive();\n let result = sender.send(&email);\n assert!(result.is_ok());\n}\n\nWill log (when using a logger like env_logger):\n\nb7c211bc-9811-45ce-8cd9-68eab575d695: from=user@localhost to=root@localhost\n",
"tags": []
}
]

View File

@@ -52,7 +52,7 @@ The relay server can be the local email server, a specific host or a third-party
<guid>https://lettre.github.io/lettre/sending-messages/sendmail/</guid>
<description>The sendmail transport sends the email using the local sendmail command.
extern crate lettre; use lettre::sendmail::SendmailTransport; use lettre::{SimpleSendableEmail, EmailTransport, EmailAddress}; fn main() { let email = SimpleSendableEmail::new( EmailAddress::new(&amp;#34;user@localhost&amp;#34;.to_string()), vec![EmailAddress::new(&amp;#34;root@localhost&amp;#34;.to_string())], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.to_string(), ); let mut sender = SendmailTransport::new(); let result = sender.send(&amp;amp;email); assert!(result.is_ok()); }</description>
extern crate lettre; use lettre::sendmail::SendmailTransport; use lettre::{SimpleSendableEmail, EmailTransport}; fn main() { let email = SimpleSendableEmail::new( &amp;#34;user@localhost&amp;#34;.to_string(), &amp;amp;[&amp;#34;root@localhost&amp;#34;.to_string()], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.to_string(), ).unwrap(); let mut sender = SendmailTransport::new(); let result = sender.send(&amp;amp;email); assert!(result.is_ok()); }</description>
</item>
<item>
@@ -72,7 +72,7 @@ extern crate lettre_email; use lettre_email::EmailBuilder; fn main() { // Create
<guid>https://lettre.github.io/lettre/sending-messages/file/</guid>
<description>The file transport writes the emails to the given directory. The name of the file will be message_id.txt. It can be useful for testing purposes, or if you want to keep track of sent messages.
extern crate lettre; use std::env::temp_dir; use lettre::file::FileEmailTransport; use lettre::{SimpleSendableEmail, EmailTransport, EmailAddress}; fn main() { // Write to the local temp directory let mut sender = FileEmailTransport::new(temp_dir()); let email = SimpleSendableEmail::new( EmailAddress::new(&amp;#34;user@localhost&amp;#34;.to_string()), vec![EmailAddress::new(&amp;#34;root@localhost&amp;#34;.to_string())], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.</description>
extern crate lettre; use std::env::temp_dir; use lettre::file::FileEmailTransport; use lettre::{SimpleSendableEmail, EmailTransport}; fn main() { // Write to the local temp directory let mut sender = FileEmailTransport::new(temp_dir()); let email = SimpleSendableEmail::new( &amp;#34;user@localhost&amp;#34;.to_string(), &amp;amp;[&amp;#34;root@localhost&amp;#34;.to_string()], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.to_string(), ).</description>
</item>
<item>
@@ -82,7 +82,7 @@ extern crate lettre; use std::env::temp_dir; use lettre::file::FileEmailTranspor
<guid>https://lettre.github.io/lettre/sending-messages/stub/</guid>
<description>The stub transport only logs message envelope and drops the content. It can be useful for testing purposes.
extern crate lettre; use lettre::stub::StubEmailTransport; use lettre::{SimpleSendableEmail, EmailTransport, EmailAddress}; fn main() { let email = SimpleSendableEmail::new( EmailAddress::new(&amp;#34;user@localhost&amp;#34;.to_string()), vec![EmailAddress::new(&amp;#34;root@localhost&amp;#34;.to_string())], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.to_string(), ); let mut sender = StubEmailTransport::new_positive(); let result = sender.send(&amp;amp;email); assert!(result.is_ok()); } Will log (when using a logger like env_logger):
extern crate lettre; use lettre::stub::StubEmailTransport; use lettre::{SimpleSendableEmail, EmailTransport}; fn main() { let email = SimpleSendableEmail::new( &amp;#34;user@localhost&amp;#34;.to_string(), &amp;amp;[&amp;#34;root@localhost&amp;#34;.to_string()], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.to_string(), ).unwrap(); let mut sender = StubEmailTransport::new_positive(); let result = sender.send(&amp;amp;email); assert!(result.is_ok()); } Will log (when using a logger like env_logger):
b7c211bc-9811-45ce-8cd9-68eab575d695: from=&amp;lt;user@localhost&amp;gt; to=&amp;lt;root@localhost&amp;gt;</description>
</item>

View File

@@ -12,17 +12,17 @@
<title>File transport :: Lettre site</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<script src="/lettre/js/jquery-2.x.min.js?1517057321"></script>
<script src="/lettre/js/jquery-2.x.min.js?1522506318"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
@@ -49,14 +49,14 @@
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1522506318"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1522506318"></script>
<script type="text/javascript">
var baseurl = "https:\/\/lettre.github.io\/lettre";
</script>
<script type="text/javascript" src="/lettre/js/search.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/search.js?1522506318"></script>
</div>
@@ -391,17 +391,17 @@ It can be useful for testing purposes, or if you want to keep track of sent mess
<span style="color:#66d9ef">use</span> std::env::temp_dir;
<span style="color:#66d9ef">use</span> lettre::file::FileEmailTransport;
<span style="color:#66d9ef">use</span> lettre::{SimpleSendableEmail, EmailTransport, EmailAddress};
<span style="color:#66d9ef">use</span> lettre::{SimpleSendableEmail, EmailTransport};
<span style="color:#66d9ef">fn</span> <span style="color:#a6e22e">main</span>() {
<span style="color:#75715e">// Write to the local temp directory
</span><span style="color:#75715e"></span> <span style="color:#66d9ef">let</span> <span style="color:#66d9ef">mut</span> sender <span style="color:#f92672">=</span> FileEmailTransport::new(temp_dir());
<span style="color:#66d9ef">let</span> email <span style="color:#f92672">=</span> SimpleSendableEmail::new(
EmailAddress::new(<span style="color:#e6db74">&#34;user@localhost&#34;</span>.to_string()),
vec<span style="color:#f92672">!</span>[EmailAddress::new(<span style="color:#e6db74">&#34;root@localhost&#34;</span>.to_string())],
<span style="color:#e6db74">&#34;user@localhost&#34;</span>.to_string(),
<span style="color:#f92672">&amp;</span>[<span style="color:#e6db74">&#34;root@localhost&#34;</span>.to_string()],
<span style="color:#e6db74">&#34;message_id&#34;</span>.to_string(),
<span style="color:#e6db74">&#34;Hello world&#34;</span>.to_string(),
);
).unwrap();
<span style="color:#66d9ef">let</span> result <span style="color:#f92672">=</span> sender.send(<span style="color:#f92672">&amp;</span>email);
assert<span style="color:#f92672">!</span>(result.is_ok());
@@ -635,20 +635,20 @@ Hello World!</code></pre></div>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="/lettre/js/clipboard.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1517057321"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1517057321"></script>
<script src="/lettre/js/featherlight.min.js?1517057321"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1517057321"></script>
<script src="/lettre/js/highlight.pack.js?1517057321"></script>
<script src="/lettre/js/clipboard.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1522506318"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1522506318"></script>
<script src="/lettre/js/featherlight.min.js?1522506318"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1522506318"></script>
<script src="/lettre/js/highlight.pack.js?1522506318"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="/lettre/js/modernizr.custom.71422.js?1517057321"></script>
<script src="/lettre/js/learn.js?1517057321"></script>
<script src="/lettre/js/hugo-learn.js?1517057321"></script>
<script src="/lettre/js/modernizr.custom.71422.js?1522506318"></script>
<script src="/lettre/js/learn.js?1522506318"></script>
<script src="/lettre/js/hugo-learn.js?1522506318"></script>
<link href="/lettre/mermaid/mermaid.css?1517057321" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1517057321"></script>
<link href="/lettre/mermaid/mermaid.css?1522506318" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1522506318"></script>
<script>
mermaid.initialize({ startOnLoad: true });
</script>

View File

@@ -12,17 +12,17 @@
<title>Sending messages :: Lettre site</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<script src="/lettre/js/jquery-2.x.min.js?1517057321"></script>
<script src="/lettre/js/jquery-2.x.min.js?1522506318"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
@@ -49,14 +49,14 @@
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1522506318"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1522506318"></script>
<script type="text/javascript">
var baseurl = "https:\/\/lettre.github.io\/lettre";
</script>
<script type="text/javascript" src="/lettre/js/search.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/search.js?1522506318"></script>
</div>
@@ -608,20 +608,20 @@
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="/lettre/js/clipboard.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1517057321"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1517057321"></script>
<script src="/lettre/js/featherlight.min.js?1517057321"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1517057321"></script>
<script src="/lettre/js/highlight.pack.js?1517057321"></script>
<script src="/lettre/js/clipboard.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1522506318"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1522506318"></script>
<script src="/lettre/js/featherlight.min.js?1522506318"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1522506318"></script>
<script src="/lettre/js/highlight.pack.js?1522506318"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="/lettre/js/modernizr.custom.71422.js?1517057321"></script>
<script src="/lettre/js/learn.js?1517057321"></script>
<script src="/lettre/js/hugo-learn.js?1517057321"></script>
<script src="/lettre/js/modernizr.custom.71422.js?1522506318"></script>
<script src="/lettre/js/learn.js?1522506318"></script>
<script src="/lettre/js/hugo-learn.js?1522506318"></script>
<link href="/lettre/mermaid/mermaid.css?1517057321" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1517057321"></script>
<link href="/lettre/mermaid/mermaid.css?1522506318" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1522506318"></script>
<script>
mermaid.initialize({ startOnLoad: true });
</script>

View File

@@ -41,7 +41,7 @@ The relay server can be the local email server, a specific host or a third-party
<guid>https://lettre.github.io/lettre/sending-messages/sendmail/</guid>
<description>The sendmail transport sends the email using the local sendmail command.
extern crate lettre; use lettre::sendmail::SendmailTransport; use lettre::{SimpleSendableEmail, EmailTransport, EmailAddress}; fn main() { let email = SimpleSendableEmail::new( EmailAddress::new(&amp;#34;user@localhost&amp;#34;.to_string()), vec![EmailAddress::new(&amp;#34;root@localhost&amp;#34;.to_string())], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.to_string(), ); let mut sender = SendmailTransport::new(); let result = sender.send(&amp;amp;email); assert!(result.is_ok()); }</description>
extern crate lettre; use lettre::sendmail::SendmailTransport; use lettre::{SimpleSendableEmail, EmailTransport}; fn main() { let email = SimpleSendableEmail::new( &amp;#34;user@localhost&amp;#34;.to_string(), &amp;amp;[&amp;#34;root@localhost&amp;#34;.to_string()], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.to_string(), ).unwrap(); let mut sender = SendmailTransport::new(); let result = sender.send(&amp;amp;email); assert!(result.is_ok()); }</description>
</item>
<item>
@@ -51,7 +51,7 @@ extern crate lettre; use lettre::sendmail::SendmailTransport; use lettre::{Simpl
<guid>https://lettre.github.io/lettre/sending-messages/file/</guid>
<description>The file transport writes the emails to the given directory. The name of the file will be message_id.txt. It can be useful for testing purposes, or if you want to keep track of sent messages.
extern crate lettre; use std::env::temp_dir; use lettre::file::FileEmailTransport; use lettre::{SimpleSendableEmail, EmailTransport, EmailAddress}; fn main() { // Write to the local temp directory let mut sender = FileEmailTransport::new(temp_dir()); let email = SimpleSendableEmail::new( EmailAddress::new(&amp;#34;user@localhost&amp;#34;.to_string()), vec![EmailAddress::new(&amp;#34;root@localhost&amp;#34;.to_string())], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.</description>
extern crate lettre; use std::env::temp_dir; use lettre::file::FileEmailTransport; use lettre::{SimpleSendableEmail, EmailTransport}; fn main() { // Write to the local temp directory let mut sender = FileEmailTransport::new(temp_dir()); let email = SimpleSendableEmail::new( &amp;#34;user@localhost&amp;#34;.to_string(), &amp;amp;[&amp;#34;root@localhost&amp;#34;.to_string()], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.to_string(), ).</description>
</item>
<item>
@@ -61,7 +61,7 @@ extern crate lettre; use std::env::temp_dir; use lettre::file::FileEmailTranspor
<guid>https://lettre.github.io/lettre/sending-messages/stub/</guid>
<description>The stub transport only logs message envelope and drops the content. It can be useful for testing purposes.
extern crate lettre; use lettre::stub::StubEmailTransport; use lettre::{SimpleSendableEmail, EmailTransport, EmailAddress}; fn main() { let email = SimpleSendableEmail::new( EmailAddress::new(&amp;#34;user@localhost&amp;#34;.to_string()), vec![EmailAddress::new(&amp;#34;root@localhost&amp;#34;.to_string())], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.to_string(), ); let mut sender = StubEmailTransport::new_positive(); let result = sender.send(&amp;amp;email); assert!(result.is_ok()); } Will log (when using a logger like env_logger):
extern crate lettre; use lettre::stub::StubEmailTransport; use lettre::{SimpleSendableEmail, EmailTransport}; fn main() { let email = SimpleSendableEmail::new( &amp;#34;user@localhost&amp;#34;.to_string(), &amp;amp;[&amp;#34;root@localhost&amp;#34;.to_string()], &amp;#34;message_id&amp;#34;.to_string(), &amp;#34;Hello world&amp;#34;.to_string(), ).unwrap(); let mut sender = StubEmailTransport::new_positive(); let result = sender.send(&amp;amp;email); assert!(result.is_ok()); } Will log (when using a logger like env_logger):
b7c211bc-9811-45ce-8cd9-68eab575d695: from=&amp;lt;user@localhost&amp;gt; to=&amp;lt;root@localhost&amp;gt;</description>
</item>

View File

@@ -12,17 +12,17 @@
<title>Introduction :: Lettre site</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<script src="/lettre/js/jquery-2.x.min.js?1517057321"></script>
<script src="/lettre/js/jquery-2.x.min.js?1522506318"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
@@ -49,14 +49,14 @@
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1522506318"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1522506318"></script>
<script type="text/javascript">
var baseurl = "https:\/\/lettre.github.io\/lettre";
</script>
<script type="text/javascript" src="/lettre/js/search.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/search.js?1522506318"></script>
</div>
@@ -616,20 +616,20 @@ logs.</li>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="/lettre/js/clipboard.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1517057321"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1517057321"></script>
<script src="/lettre/js/featherlight.min.js?1517057321"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1517057321"></script>
<script src="/lettre/js/highlight.pack.js?1517057321"></script>
<script src="/lettre/js/clipboard.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1522506318"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1522506318"></script>
<script src="/lettre/js/featherlight.min.js?1522506318"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1522506318"></script>
<script src="/lettre/js/highlight.pack.js?1522506318"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="/lettre/js/modernizr.custom.71422.js?1517057321"></script>
<script src="/lettre/js/learn.js?1517057321"></script>
<script src="/lettre/js/hugo-learn.js?1517057321"></script>
<script src="/lettre/js/modernizr.custom.71422.js?1522506318"></script>
<script src="/lettre/js/learn.js?1522506318"></script>
<script src="/lettre/js/hugo-learn.js?1522506318"></script>
<link href="/lettre/mermaid/mermaid.css?1517057321" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1517057321"></script>
<link href="/lettre/mermaid/mermaid.css?1522506318" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1522506318"></script>
<script>
mermaid.initialize({ startOnLoad: true });
</script>

View File

@@ -12,17 +12,17 @@
<title>Sendmail transport :: Lettre site</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<script src="/lettre/js/jquery-2.x.min.js?1517057321"></script>
<script src="/lettre/js/jquery-2.x.min.js?1522506318"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
@@ -49,14 +49,14 @@
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1522506318"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1522506318"></script>
<script type="text/javascript">
var baseurl = "https:\/\/lettre.github.io\/lettre";
</script>
<script type="text/javascript" src="/lettre/js/search.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/search.js?1522506318"></script>
</div>
@@ -387,15 +387,15 @@
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-rust,no_run" data-lang="rust,no_run">extern crate lettre;
use lettre::sendmail::SendmailTransport;
use lettre::{SimpleSendableEmail, EmailTransport, EmailAddress};
use lettre::{SimpleSendableEmail, EmailTransport};
fn main() {
let email = SimpleSendableEmail::new(
EmailAddress::new(&#34;user@localhost&#34;.to_string()),
vec![EmailAddress::new(&#34;root@localhost&#34;.to_string())],
&#34;user@localhost&#34;.to_string(),
&amp;[&#34;root@localhost&#34;.to_string()],
&#34;message_id&#34;.to_string(),
&#34;Hello world&#34;.to_string(),
);
).unwrap();
let mut sender = SendmailTransport::new();
let result = sender.send(&amp;email);
@@ -621,20 +621,20 @@ fn main() {
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="/lettre/js/clipboard.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1517057321"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1517057321"></script>
<script src="/lettre/js/featherlight.min.js?1517057321"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1517057321"></script>
<script src="/lettre/js/highlight.pack.js?1517057321"></script>
<script src="/lettre/js/clipboard.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1522506318"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1522506318"></script>
<script src="/lettre/js/featherlight.min.js?1522506318"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1522506318"></script>
<script src="/lettre/js/highlight.pack.js?1522506318"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="/lettre/js/modernizr.custom.71422.js?1517057321"></script>
<script src="/lettre/js/learn.js?1517057321"></script>
<script src="/lettre/js/hugo-learn.js?1517057321"></script>
<script src="/lettre/js/modernizr.custom.71422.js?1522506318"></script>
<script src="/lettre/js/learn.js?1522506318"></script>
<script src="/lettre/js/hugo-learn.js?1522506318"></script>
<link href="/lettre/mermaid/mermaid.css?1517057321" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1517057321"></script>
<link href="/lettre/mermaid/mermaid.css?1522506318" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1522506318"></script>
<script>
mermaid.initialize({ startOnLoad: true });
</script>

View File

@@ -12,17 +12,17 @@
<title>SMTP transport :: Lettre site</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<script src="/lettre/js/jquery-2.x.min.js?1517057321"></script>
<script src="/lettre/js/jquery-2.x.min.js?1522506318"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
@@ -49,14 +49,14 @@
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1522506318"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1522506318"></script>
<script type="text/javascript">
var baseurl = "https:\/\/lettre.github.io\/lettre";
</script>
<script type="text/javascript" src="/lettre/js/search.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/search.js?1522506318"></script>
</div>
@@ -420,15 +420,15 @@ emails directly to the destination.</p>
<p>This is the most basic example of usage:</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-rust,no_run" data-lang="rust,no_run">extern crate lettre;
use lettre::{SimpleSendableEmail, EmailTransport, EmailAddress, SmtpTransport};
use lettre::{SimpleSendableEmail, EmailTransport, SmtpTransport};
fn main() {
let email = SimpleSendableEmail::new(
EmailAddress::new(&#34;user@localhost&#34;.to_string()),
vec![EmailAddress::new(&#34;root@localhost&#34;.to_string())],
&#34;user@localhost&#34;.to_string(),
&amp;[&#34;root@localhost&#34;.to_string()],
&#34;message_id&#34;.to_string(),
&#34;Hello world&#34;.to_string(),
);
).unwrap();
// Open a local connection on port 25
let mut mailer =
@@ -442,17 +442,17 @@ fn main() {
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-rust,no_run" data-lang="rust,no_run">extern crate lettre;
use lettre::smtp::authentication::{Credentials, Mechanism};
use lettre::{SimpleSendableEmail, EmailTransport, EmailAddress, SmtpTransport};
use lettre::{SimpleSendableEmail, EmailTransport, SmtpTransport};
use lettre::smtp::extension::ClientId;
use lettre::smtp::ConnectionReuseParameters;
fn main() {
let email = SimpleSendableEmail::new(
EmailAddress::new(&#34;user@localhost&#34;.to_string()),
vec![EmailAddress::new(&#34;root@localhost&#34;.to_string())],
&#34;user@localhost&#34;.to_string(),
&amp;[&#34;root@localhost&#34;.to_string()],
&#34;message_id&#34;.to_string(),
&#34;Hello world&#34;.to_string(),
);
).unwrap();
// Connect to a remote server on a custom port
let mut mailer = SmtpTransport::simple_builder(&#34;server.tld&#34;).unwrap()
@@ -495,10 +495,10 @@ fn main() {
let _ = email_client.connect(&amp;(&#34;localhost&#34;, SMTP_PORT), None);
let _ = email_client.command(EhloCommand::new(ClientId::new(&#34;my_hostname&#34;.to_string())));
let _ = email_client.command(
MailCommand::new(Some(EmailAddress::new(&#34;user@example.com&#34;.to_string())), vec![])
MailCommand::new(Some(EmailAddress::new(&#34;user@example.com&#34;.to_string()).unwrap()), vec![])
);
let _ = email_client.command(
RcptCommand::new(EmailAddress::new(&#34;user@example.org&#34;.to_string()), vec![])
RcptCommand::new(EmailAddress::new(&#34;user@example.org&#34;.to_string()).unwrap(), vec![])
);
let _ = email_client.command(DataCommand);
let _ = email_client.message(Box::new(&#34;Test email&#34;.as_bytes()));
@@ -724,20 +724,20 @@ fn main() {
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="/lettre/js/clipboard.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1517057321"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1517057321"></script>
<script src="/lettre/js/featherlight.min.js?1517057321"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1517057321"></script>
<script src="/lettre/js/highlight.pack.js?1517057321"></script>
<script src="/lettre/js/clipboard.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1522506318"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1522506318"></script>
<script src="/lettre/js/featherlight.min.js?1522506318"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1522506318"></script>
<script src="/lettre/js/highlight.pack.js?1522506318"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="/lettre/js/modernizr.custom.71422.js?1517057321"></script>
<script src="/lettre/js/learn.js?1517057321"></script>
<script src="/lettre/js/hugo-learn.js?1517057321"></script>
<script src="/lettre/js/modernizr.custom.71422.js?1522506318"></script>
<script src="/lettre/js/learn.js?1522506318"></script>
<script src="/lettre/js/hugo-learn.js?1522506318"></script>
<link href="/lettre/mermaid/mermaid.css?1517057321" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1517057321"></script>
<link href="/lettre/mermaid/mermaid.css?1522506318" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1522506318"></script>
<script>
mermaid.initialize({ startOnLoad: true });
</script>

View File

@@ -12,17 +12,17 @@
<title>Stub transport :: Lettre site</title>
<link href="/lettre/css/nucleus.css?1517057321" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1517057321" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1517057321" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1517057321" rel="stylesheet">
<link href="/lettre/css/theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1517057321" rel="stylesheet">
<link href="/lettre/css/nucleus.css?1522506318" rel="stylesheet">
<link href="/lettre/css/font-awesome.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hybrid.css?1522506318" rel="stylesheet">
<link href="/lettre/css/featherlight.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/perfect-scrollbar.min.css?1522506318" rel="stylesheet">
<link href="/lettre/css/auto-complete.css?1522506318" rel="stylesheet">
<link href="/lettre/css/theme.css?1522506318" rel="stylesheet">
<link href="/lettre/css/hugo-theme.css?1522506318" rel="stylesheet">
<script src="/lettre/js/jquery-2.x.min.js?1517057321"></script>
<script src="/lettre/js/jquery-2.x.min.js?1522506318"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
@@ -49,14 +49,14 @@
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/lunr.min.js?1522506318"></script>
<script type="text/javascript" src="/lettre/js/auto-complete.js?1522506318"></script>
<script type="text/javascript">
var baseurl = "https:\/\/lettre.github.io\/lettre";
</script>
<script type="text/javascript" src="/lettre/js/search.js?1517057321"></script>
<script type="text/javascript" src="/lettre/js/search.js?1522506318"></script>
</div>
@@ -388,15 +388,15 @@ testing purposes.</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-rust" data-lang="rust"><span style="color:#66d9ef">extern</span> <span style="color:#66d9ef">crate</span> lettre;
<span style="color:#66d9ef">use</span> lettre::stub::StubEmailTransport;
<span style="color:#66d9ef">use</span> lettre::{SimpleSendableEmail, EmailTransport, EmailAddress};
<span style="color:#66d9ef">use</span> lettre::{SimpleSendableEmail, EmailTransport};
<span style="color:#66d9ef">fn</span> <span style="color:#a6e22e">main</span>() {
<span style="color:#66d9ef">let</span> email <span style="color:#f92672">=</span> SimpleSendableEmail::new(
EmailAddress::new(<span style="color:#e6db74">&#34;user@localhost&#34;</span>.to_string()),
vec<span style="color:#f92672">!</span>[EmailAddress::new(<span style="color:#e6db74">&#34;root@localhost&#34;</span>.to_string())],
<span style="color:#e6db74">&#34;user@localhost&#34;</span>.to_string(),
<span style="color:#f92672">&amp;</span>[<span style="color:#e6db74">&#34;root@localhost&#34;</span>.to_string()],
<span style="color:#e6db74">&#34;message_id&#34;</span>.to_string(),
<span style="color:#e6db74">&#34;Hello world&#34;</span>.to_string(),
);
).unwrap();
<span style="color:#66d9ef">let</span> <span style="color:#66d9ef">mut</span> sender <span style="color:#f92672">=</span> StubEmailTransport::new_positive();
<span style="color:#66d9ef">let</span> result <span style="color:#f92672">=</span> sender.send(<span style="color:#f92672">&amp;</span>email);
@@ -621,20 +621,20 @@ testing purposes.</p>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="/lettre/js/clipboard.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1517057321"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1517057321"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1517057321"></script>
<script src="/lettre/js/featherlight.min.js?1517057321"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1517057321"></script>
<script src="/lettre/js/highlight.pack.js?1517057321"></script>
<script src="/lettre/js/clipboard.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.min.js?1522506318"></script>
<script src="/lettre/js/perfect-scrollbar.jquery.min.js?1522506318"></script>
<script src="/lettre/js/jquery.sticky-kit.min.js?1522506318"></script>
<script src="/lettre/js/featherlight.min.js?1522506318"></script>
<script src="/lettre/js/html5shiv-printshiv.min.js?1522506318"></script>
<script src="/lettre/js/highlight.pack.js?1522506318"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="/lettre/js/modernizr.custom.71422.js?1517057321"></script>
<script src="/lettre/js/learn.js?1517057321"></script>
<script src="/lettre/js/hugo-learn.js?1517057321"></script>
<script src="/lettre/js/modernizr.custom.71422.js?1522506318"></script>
<script src="/lettre/js/learn.js?1522506318"></script>
<script src="/lettre/js/hugo-learn.js?1522506318"></script>
<link href="/lettre/mermaid/mermaid.css?1517057321" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1517057321"></script>
<link href="/lettre/mermaid/mermaid.css?1522506318" type="text/css" rel="stylesheet" />
<script src="/lettre/mermaid/mermaid.js?1522506318"></script>
<script>
mermaid.initialize({ startOnLoad: true });
</script>