What this package is like to depend on
Last release 20 days ago
03 Aug 2026
Ships fairly regularly
a new release about every 2 months
Most releases are documented
notes for 39 of 49 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
65 releases · first in 2015
5 releases in the last 12 months
see the full history below
Release timeline
65 releases · Oct 2015 to Aug 2026Releases
latest 60 of 65-
0.11.2303 Aug 2026Release notes
Open source →Bug Fixes
- Separate lines of multiline SMTP error replies (#1153)
Misc
- Upgrade
base64to v0.23 (#1152)
Release notes
Open source →Bug Fixes
- Separate lines of multiline SMTP error replies (#1153)
Misc
- Upgrade
base64to v0.23 (#1152)
<a name="v0.11.22"></a>
-
0.11.2214 May 2026Release notes
Open source →Security
- Fix inverted TLS hostname verification flag in
boring-tlsbackend that silently disabled hostname verification f5efffc
Bug Fixes
- Cap
read_responsebuffer to prevent unbounded memory growth #1143
Misc
- Upgrade
rustls-platform-verifierto v0.7 #1136
Release notes
Open source →Security
- Fix inverted TLS hostname verification flag in
boring-tlsbackend that silently disabled hostname verification (f5efffc)
Bug Fixes
- Cap
read_responsebuffer to prevent unbounded memory growth (#1143)
Misc
- Upgrade
rustls-platform-verifierto v0.7 (#1136)
<a name="v0.11.21"></a>
- Fix inverted TLS hostname verification flag in
-
0.11.2104 Apr 2026 -
0.11.2028 Mar 2026Release notes
Open source → -
0.11.1908 Oct 2025Release notes
Open source → -
0.11.1828 Jul 2025Release notes
Open source →Release notes
Open source →Features
- Allow inline attachments to be named (#1101)
Misc
- Upgrade
socket2to v0.6 (#1098)
<a name="v0.11.17"></a>
-
0.11.1705 Jun 2025Release notes
Open source →Features
- Add support for
rustls-platform-verifier(#1081)
Misc
- Change readme example to use
Mailbox::newinstead of string parsing (#1090) - Replace futures-util
Mutexwith stdMutexinAsyncStubTransport(#1091) - Avoid duplicate
abort_concurrentimplementation (#1092)
<a name="v0.11.16"></a>
- Add support for
-
0.11.1612 May 2025Release notes
Open source →Features
- Always implement
CloneforAsyncFileTransport(#1075)
Changes
Tls,CertificateStore,TlsParameters,TlsParametersBuilder,CertificateandIdentity
are now marked as deprecated when no TLS backend is enabled. They will be properly feature gated
in lettre v0.12 (#1084)
Misc
- Gate
web-timebehindcfg(target_arch = "wasm32")](#1086) - Add missing
#[doc(cfg(...))]attributes (#1086) - Upgrade
webpki-rootsto v1 (#1088) - Cleanup internal
TlsParametersand(Async)NetworkStreamstructures (#1082) - Feature gate internal
TransportBuilder::tlsto avoid recursive call site warnings (#1083) - Fix workaround for embedding cargo script in rustdoc output ([#1077])
- Fix
clippy::io_other_errorwarnings (#1078) - Upgrade semver compatible dependencies (#1076, #1079, #1080)
Release notes
Open source →Features
- Always implement
CloneforAsyncFileTransport(#1075)
Changes
Tls,CertificateStore,TlsParameters,TlsParametersBuilder,CertificateandIdentityare now marked as deprecated when no TLS backend is enabled. They will be properly feature gated in lettre v0.12 (#1084)
Misc
- Gate
web-timebehindcfg(target_arch = "wasm32")](#1086) - Add missing
#[doc(cfg(...))]attributes (#1086) - Upgrade
webpki-rootsto v1 (#1088) - Cleanup internal
TlsParametersand(Async)NetworkStreamstructures (#1082) - Feature gate internal
TransportBuilder::tlsto avoid recursive call site warnings (#1083) - Fix workaround for embedding cargo script in rustdoc output (#1077)
- Fix
clippy::io_other_errorwarnings (#1078) - Upgrade semver compatible dependencies (#1076, #1079, #1080)
<a name="v0.11.15"></a>
- Always implement
-
0.11.1510 Mar 2025 -
0.11.1423 Feb 2025Release notes
Open source →This release deprecates the
rustls-tls,tokio1-rustls-tlsandasync-std1-rustls-tls
features, which will be removed in lettre v0.12.rustls users should start migrating to the
rustls,tokio1-rustlsand
async-std1-rustlsfeatures. Unlike the deprecated *rustls-tls features,
which automatically enabled theringandwebpki-rootsbackends, the new
features do not. To complete the migration, users must either enable the
aws-lc-rsor theringfeature. Additionally, those who rely onwebpki-roots
for TLS certificate verification must now explicitly enable its feature.
Users ofrustls-native-certsdo not need to enablewebpki-roots.Find out more about the new features via the lettre rustls docs.
Features
- Make it possible to use different
rustlscrypto providers and TLS verifiers (#1054)
Bug fixes
- Use the same
rustlscrypto provider everywhere (#1055)
Misc
- Deprecate
AsyncNetworkStreambeing public (#1059) - Upgrade
nomto v8 ([#1048]) - Drop
rustls-pemfilein favor ofrustls-pki-typesAPIs (#1050) - Ban direct use of
std::time::SystemTime::nowvia clippy (#1043) - Drop direct dependency on
rustls-pki-types(#1051) - Remove artifact from
web-timerefactor (#1049) - Fix warnings with
rustls-native-certswhentracingis disabled (#1053) - Bump license year (#1057)
- Cleanup
Cargo.tomlstyle (#1047)
Release notes
Open source →This release deprecates the
rustls-tls,tokio1-rustls-tlsandasync-std1-rustls-tlsfeatures, which will be removed in lettre v0.12.rustls users should start migrating to the
rustls,tokio1-rustlsandasync-std1-rustlsfeatures. Unlike the deprecated *rustls-tls features, which automatically enabled theringandwebpki-rootsbackends, the new features do not. To complete the migration, users must either enable theaws-lc-rsor theringfeature. Additionally, those who rely onwebpki-rootsfor TLS certificate verification must now explicitly enable its feature. Users ofrustls-native-certsdo not need to enablewebpki-roots.Find out more about the new features via the lettre rustls docs.
Features
- Make it possible to use different
rustlscrypto providers and TLS verifiers (#1054)
Bug fixes
- Use the same
rustlscrypto provider everywhere (#1055)
Misc
- Deprecate
AsyncNetworkStreambeing public (#1059) - Upgrade
nomto v8 (#1048) - Drop
rustls-pemfilein favor ofrustls-pki-typesAPIs (#1050) - Ban direct use of
std::time::SystemTime::nowvia clippy (#1043) - Drop direct dependency on
rustls-pki-types(#1051) - Remove artifact from
web-timerefactor (#1049) - Fix warnings with
rustls-native-certswhentracingis disabled (#1053) - Bump license year (#1057)
- Cleanup
Cargo.tomlstyle (#1047)
<a name="v0.11.13"></a>
- Make it possible to use different
-
0.11.1317 Feb 2025Release notes
Open source →Features
Bug fixes
- Synchronous pool shutdowns being arbitrarily delayed (#1041)
<a name="v0.11.12"></a>
-
0.11.1202 Feb 2025Release notes
Open source →Misc
- Warn against manually configuring
portandtlson SMTP transport builder (#1014) - Document variants of
Tlsenum (#1015) - Fix rustdoc warnings (#1016)
- Add
ContentType::TEXT_PLAINtoMessagebuilder examples (#1017) - Document
SmtpTransportandAsyncSmtpTransport(#1018) - Fix typo in transport builder
credentialsmethod (#1019) - Document required system dependencies for OpenSSL (#1030)
- Improve docs for the
transport::smtpmodule (#1031) - Improve docs for smtp transport builder
from_url(#1032) - Replace
assert!with?onsendexamples (#1033) - Warn on more pedantic clippy lints and fix them (#1035, #1036)
<a name="v0.11.11"></a>
- Warn against manually configuring
-
0.11.1105 Dec 2024Release notes
Open source →Upgrade notes
- MSRV is now 1.71 (#1008)
Bug fixes
- Fix off-by-one error reaching the minimum number of configured pooled connections (#1012)
Misc
<a name="v0.11.10"></a>
-
0.11.1023 Oct 2024Release notes
Open source →Bug fixes
- Ignore disconnect errors when
poolfeature of SMTP transport is disabled (#999) - Use case insensitive comparisons for matching login challenge requests (#1000)
<a name="v0.11.9"></a>
- Ignore disconnect errors when
-
0.11.913 Sep 2024Release notes
Open source →Bug fixes
- Fix feature gate for
accept_invalid_hostnamesfor rustls (#988) - Fix parsing
Mailboxwith trailing spaces (#986)
Misc
<a name="v0.11.8"></a>
- Fix feature gate for
-
0.11.803 Sep 2024Release notes
Open source →Features
- Add mTLS support (#974)
- Implement
accept_invalid_hostnamesfor rustls (#977) - Provide certificate chain for peer certificates when using
rustlsorboring-tls(#976)
Changes
- Make
HeaderNamecomparisons viaPartialEqcase insensitive (#980)
Misc
- Fix clippy warnings ([#979])
- Replace manual impl of
#[non_exhaustive]forInvalidHeaderName(#981)
<a name="v0.11.7"></a>
-
0.11.723 Apr 2024Release notes
Open source →Misc
- Bump
hostnameto v0.4 (#956) - Fix
tracingmessage consistency (#960) - Bump minimum required
rustlsto v0.23.5 (#958) - Dropped use of
refsyntax in the entire project (#959)
<a name="v0.11.6"></a>
- Bump
-
0.11.628 Mar 2024Release notes
Open source →Bug fixes
- Upgraded
email-encodingto v0.3 - fixing multiple encoding bugs in the process (#952)
Misc
- Updated copyright year in license (#954)
<a name="v0.11.5"></a>
- Upgraded
-
0.11.525 Mar 2024 -
0.11.428 Jan 2024Release notes
Open source →Bug fixes
- Percent decode credentials in SMTP connect URL (#932, #934)
- Fix mimebody DKIM body-hash computation (#923)
<a name="v0.11.3"></a>
-
0.11.302 Jan 2024 -
0.11.223 Nov 2023 -
0.11.124 Oct 2023Release notes
Open source → -
0.11.015 Oct 2023Release notes
Open source →While this release technically contains breaking changes, we expect most projects to be able to upgrade by only bumping the version in
Cargo.toml.Upgrade notes
Features
- Improve mailbox parsing (#839)
- Add construction of SMTP transport from URL (#901)
- Add
From<Address>implementation forMailbox(#879)
Misc
- Bump
socket2to v0.5 (#868) - Bump
idnato v0.4,fastrandto v2,quoted_printableto v0.5,rsato v0.9 (#882) - Bump
webpki-rootsto v0.25 (#884 and #890) - Bump
ed25519-dalekto v2 fixing RUSTSEC-2022-0093 (#896) - Bump
boringssl crates to v3 (#897)
<a name="v0.10.4"></a>
-
0.10.402 Apr 2023Release notes
Open source → -
0.10.320 Feb 2023Release notes
Open source →Announcements
It was found that what had been used until now as a basic lettre 0.10
MessageBuilder::bodyexample failed to mention that for maximum compatibility with various email clients aContent-Typeheader should always be present in the message.Before
Message::builder() // [...] some headers skipped for brevity .body(String::from("A plaintext or html body"))?Patch
Message::builder() // [...] some headers skipped for brevity + .header(ContentType::TEXT_PLAIN) // or `TEXT_HTML` if the body is html .body(String::from("A plaintext or html body"))?Features
- Add support for rustls-native-certs when using rustls (#843)
<a name="v0.10.2"></a>
-
0.10.229 Jan 2023Release notes
Open source →Upgrade notes
- MSRV is now 1.60 (#828)
Features
- Allow providing a custom
tokiostream forAsyncSmtpTransport(#805) - Return whole SMTP error message (#821)
Bug fixes
- Mailbox displays wrongly when containing a comma and a non-ascii char in its name (#827)
- Require
quoted_printable^0.4.6 in order to fix encoding of tabs and spaces at the end of line (#837)
Misc
- Increase tracing (#848)
- Bump
idnato 0.3 (#816) - Update
base64to 0.21 (#840 and #851) - Update
rsato 0.8 (#829 and #852)
<a name="v0.10.1"></a>
-
0.10.120 Jul 2022Release notes
Open source →Features
- Add
boring-tlssupport forSmtpTransportandAsyncSmtpTransport. The latter is only supported with the tokio runtime. (#797) (#798) - Make the minimum TLS version configurable. (#799) (#800)
Bug Fixes
<a name="v0.10.0"></a>
- Add
-
0.10.029 Jun 2022Release notes
Open source →Upgrade notes
Several breaking changes were made between 0.9 and 0.10, but changes should be straightforward:
- MSRV is now 1.56.0
- The
lettre_emailcrate has been merged intolettre. To migrate, replacelettre_emailwithlettre::messageand make sure to enable thebuilderfeature (it's enabled by default). SendableEmailhas been renamed toEmailandEmailBuilder::build()produces it directly. To migrate, renameSendableEmailtoEmail.- The
serde-implsfeature has been renamed toserde. To migrate, rename the feature.
Features
- Add
tokio1 support - Add
rustlssupport - Add
async-stdsupport. NOTE: native-tls isn't supported when using async-std for the smtp transport. - Allow enabling multiple SMTP authentication mechanisms
- Allow providing a custom message id
- Allow sending raw emails
Breaking Changes
- Merge
lettre_emailintolettre - Merge
EmailandSendableEmailintolettre::message::Email - SmtpTransport is now an high level SMTP client. It provides connection pooling and shortcuts for building clients using commonly desired values
- Refactor
TlsParametersimplementation to not expose the internal TLS library FileTransportwrites emails into.emlinstead of.json- When the hostname feature is disabled or hostname cannot be fetched,
127.0.0.1is used instead oflocalhostas EHLO parameter (for better RFC compliance and mail server compatibility) - The
sendmailandfiletransports aren't enabled by default anymore. - The
newmethod ofClientIdis deprecated - Rename
serde-implsfeature toserde - The
SendmailTransportnow uses thesendmailcommand in currentPATHby default instead of/usr/bin/sendmail.
Bug Fixes
- Fix argument injection in
SendmailTransport(see RUSTSEC-2020-0069) - Correctly encode header values containing non-ASCII characters
- Timeout bug causing infinite hang
- Fix doc tests in website
- Fix docs for
domainfield
Misc
- Improve documentation, examples and tests
- Replace
line-wrap,email,bufstreamwith our own implementations - Remove
bytes - Remove
time - Remove
fast_chemail - Update
base64to 0.13 - Update
hostnameto 0.3 - Update to
nom6 - Replace
logwithtracing - Move CI to GitHub Actions
- Use criterion for benchmarks
<a name="v0.9.2"></a>
-
0.10.0-rc.704 Jun 2022 pre-releaseNothing published for this version
-
0.10.0-rc.629 Apr 2022 pre-releaseNothing published for this version
-
0.10.0-rc.502 Apr 2022 pre-releaseNothing published for this version
-
0.10.0-rc.429 Oct 2021 pre-releaseNothing published for this version
-
0.10.0-rc.322 May 2021 pre-releaseNothing published for this version
-
0.10.0-rc.218 May 2021 pre-releaseNothing published for this version
-
0.10.0-rc.114 May 2021 pre-releaseNothing published for this version
-
0.10.0-beta.404 May 2021 pre-releaseNothing published for this version
-
0.10.0-beta.318 Mar 2021 pre-releaseNothing published for this version
-
0.10.0-beta.210 Mar 2021 pre-releaseNothing published for this version
-
0.10.0-beta.127 Feb 2021 pre-releaseNothing published for this version
-
0.10.0-alpha.528 Jan 2021 pre-releaseNothing published for this version
-
0.10.0-alpha.411 Nov 2020 pre-releaseNothing published for this version
-
0.10.0-alpha.321 Oct 2020 pre-releaseNothing published for this version
-
0.10.0-alpha.209 Sep 2020 pre-releaseNothing published for this version
-
0.10.0-alpha.131 May 2020 pre-releaseNothing published for this version
-
0.9.622 May 2021Nothing published for this version
-
0.9.511 Nov 2020Nothing published for this version
-
0.9.319 Apr 2020Nothing published for this version
-
0.9.211 Jun 2019Release notes
Open source → -
0.9.105 May 2019 -
0.9.017 Mar 2019Release notes
Open source →Bug Fixes
-
email:
-
transport:
Features
-
all:
- Update dependencies
- Start using the failure crate for errors (c10fe3d)
-
transport:
- Remove TLS 1.1 in accepted protocols by default (only allow TLS 1.2) (4b48bdb)
- Initial support for XOAUTH2 (ed7c164)
- Remove support for CRAM-MD5 (bc09aa2)
- SMTP connection pool implementation with r2d2 (434654e)
- Use md-5 and hmac instead of rust-crypto (e7e0f34)
- Gmail transport simple example (a8d8e2a)
-
email:
<a name="v0.8.2"></a>
-
-
0.8.411 Nov 2020Nothing published for this version
-
0.8.302 Nov 2018Nothing published for this version
-
0.8.203 May 2018Release notes
Open source →Bug Fixes
- transport: Write timeout is not set in smtp transport (cc3580a8)
Style
- all: Fix typos (360c42ff)
Features
- all:
- Add set -xe option to build scripts (57bbabaa)
- Move post-success scripts to separate files (3177b58c)
- Add website upload to travis build script (a5294df6)
- Add codecov upload in travis (a03bfa00)
- Update README to put useful links at the top (1ebbe660)
- Update badges in README and Cargo.toml (f7ee5c42)
- Move docs from hugo to gitbook (27935e32)
- transport: Use md-5 and hmac instead of rust-crypto (0cf018a8)
<a name="v0.8.1"></a>
-
0.8.111 Apr 2018Release notes
Open source →Fix
- all:
- Replace skeptic by some custom rustdoc invocations (81bad131)
Documentation
- all:
Style
- transport-smtp: Avoid useless empty format strings (f3271715)
<a name="v0.8.0"></a>
- all:
-
0.8.031 Mar 2018Release notes
Open source →Added
- Support binary files as attachment
- Move doc to a dedicated website
- Add tests for the doc using skeptic
- Added a code of conduct
- Use hostname as
ClientIdwhen available
Changed
- Detail in SMTP Response is now an enum
- Use nom for parsing smtp responses
Envelopewas moved fromlettre_emailtolettreEmailAddress::new()now returns aResultSendableEmailreplacesfromandtobyenvelopethat returns anEnvelopeFiletransport storage format has changed
Fixed
- Add missing "Bcc" headers when building the email
- Specify utf-8 charset for html
- Use parts for text and html methods to work with attachments
Removed
get_ehloandresetin SmtpTransport are now private
<a name="v0.7.0"></a>
-
0.7.111 Nov 2020Nothing published for this version
-
0.7.008 Oct 2017Release notes
Open source →Added
- Allow validating server certificate
- Initial (incomplete) attachments support
Changed
- Split into the lettre and lettre_email crates
- A lot of small improvements
- Use tls-native instead of openssl in smtp transport
<a name="v0.6.2"></a>
-
0.6.321 Oct 2020Nothing published for this version
-
0.6.218 Feb 2017Release notes
Open source →Changed
- Update env-logger crate to 0.4
- Update openssl crate to 0.9
- Update uuid crate to 0.4
<a name="v0.6.1"></a>