Paolo Barbolini
49787e0c41
chore: avoid collecting iterators when possible
2020-08-04 11:44:47 +02:00
Paolo Barbolini
3e62efb46a
chore: simplify ClientId::hostname
2020-08-04 11:44:47 +02:00
Paolo Barbolini
6c440bda73
chore: minor improvements
2020-08-04 11:44:47 +02:00
Paolo Barbolini
cedfd8bfbb
chore: simplify Error and Display implementations
2020-08-04 11:44:47 +02:00
Paolo Barbolini
889ef0ba6a
Merge pull request #435 from paolobarbolini/bufstream
...
Replace unmaintained bufstream crate with std::io::BufReader
2020-08-04 10:30:50 +02:00
Paolo Barbolini
4b238829c7
chore: replace Vec::write_all usage with Vec::extend_from_slice
...
The underlying implementation simply calls extends_from_slice anyway,
but this removes the error that would never happen
https://doc.rust-lang.org/1.45.2/src/std/io/impls.rs.html#389-393
2020-08-04 10:09:25 +02:00
Paolo Barbolini
8fa66c1e0f
clippy: fix warning from #444
2020-08-02 21:48:26 +02:00
Paolo Barbolini
72015da467
Add support for encrypted and signed multipart emails ( #444 )
...
Co-authored-by: Tim Anderson <tim@claritynetworks.com.au >
2020-08-02 21:47:37 +02:00
Paolo Barbolini
2173bc5f43
Add tokio ^0.2 support ( #440 )
...
* Use fs::write for writing files
* Fix running tests without tokio
2020-07-26 15:11:54 +00:00
Alexis Mousset
df6169bc98
Merge pull request #436 from paolobarbolini/line-wrap
...
Remove line-wrap crate and replace it with slice.chunks
2020-07-26 15:32:23 +02:00
Paolo Barbolini
e2b641ae89
Refactor async-std support to prepare for more async runtimes
...
Renames the async feature to async-std1
Moves things out of mod async since it makes things have to be written as r#async
and makes them feel less important.
2020-07-26 14:28:03 +02:00
Paolo Barbolini
f86c544792
Better document that SmtpTransport::builder shouldn't be used
2020-07-26 12:06:28 +02:00
Paolo Barbolini
9e24786f67
Fix broken docs links
2020-07-26 11:40:22 +02:00
Paolo Barbolini
c41948ccd8
Remove line-wrap crate and replace it with slice.chunks
2020-07-22 18:52:51 +02:00
Paolo Barbolini
43adb0fb11
Replace unmaintained bufstream crate with std::io::BufReader
2020-07-21 19:00:59 +02:00
Danilo Bargen
427fb4e35c
Replace textnonce with rand
...
The textnonce dependency pulls in quite a few transitive dependencies.
However, we only use the dependency in a single location, to generate
MIME boundaries. For this, we can use `rand` directly (which is already
a transitive dependency anyways, since it's required by uuid).
This reduces the dependency count for a standard build from 117 to 105.
2020-07-03 16:07:02 +02:00
Alexis Mousset
8c8aa770bf
feat(transport): Start async implementation (sendmail, file and stub transports)
2020-05-10 16:12:51 +02:00
Alexis Mousset
0d063873fc
feat(transport-smtp): Use a streaming parser for response
2020-05-09 15:12:29 +02:00
Alexis Mousset
ce08d9e8aa
feat(builder): Add a content-type method
...
for SinglePart
2020-05-09 11:27:25 +02:00
Alexis Mousset
c43e205212
feat(transport-smtp): Refactor connection pooling
2020-05-08 17:16:27 +02:00
Alexis Mousset
33b0a9e27d
feat(transport-sendmail): Make the command parameter an OsStr
2020-05-08 11:46:25 +02:00
Alexis Mousset
4f0ea6366c
fix(all): Document optional features
2020-05-07 19:51:14 +02:00
Alexis Mousset
6499bfe3d4
fix(builder): Fail if required headers are missing ( fixes #95 )
2020-05-06 20:36:36 +02:00
Alexis Mousset
6afdb0cf3a
feat(transport): Make Transport result type an actual Result ( fixes #405 )
2020-05-05 22:33:35 +02:00
Alexis Mousset
ed9f38d2c8
feat(builder): Allow overriding envelope
2020-05-03 22:03:45 +02:00
Alexis Mousset
8425f1d7c4
chore(all): Move docs from website into API doc
2020-05-03 11:21:47 +02:00
Alexis Mousset
349b349518
fix(transport): Make logs optional and disabled by default ( fixes #390 )
2020-05-02 22:48:47 +02:00
Alexis Mousset
e609c6bb72
fix(transport): Remove last info logs ( fixes #398 )
2020-05-02 22:29:10 +02:00
Alexis Mousset
0b98ccad45
Merge pull request #416 from amousset/retry-dns
...
Retry connection in SMTP transport
2020-05-02 22:10:10 +02:00
Alexis Mousset
c352efcb86
feat(transport-smtp): Retry over DNS connection issues ( fixes #391 )
2020-05-02 22:03:25 +02:00
Paolo Barbolini
4c2f40dcb6
Fix broken smtp/extension.rs
2020-05-02 21:05:06 +02:00
Alexis Mousset
18a89d4407
feat(transport-smtp): Allow building without tls support
2020-05-02 20:58:40 +02:00
Alexis Mousset
b3414bd1ff
fix(transport): Fix connection pool
2020-05-02 19:45:58 +02:00
Alexis Mousset
0604030b91
Remove SmtpClient and make transport immutable
...
in Transport methods. Also make proper use of
connection pools.
2020-05-01 22:25:12 +02:00
Alexis Mousset
dfbe6e9ba2
Rename InnerClient to SmtpConnection
2020-04-30 19:59:31 +02:00
Alexis Mousset
a661de16c9
fix(all): Rustfmt
2020-04-29 10:18:14 +02:00
Alexis Mousset
0ac3438d32
feat(transport-file): Store email as string when possible ( fixes #385 )
2020-04-28 23:45:37 +02:00
Alexis Mousset
7f22a98f2f
feat(builder): Improve Message representation
...
* Remove bytes dependency and rely directly on bytes vec
* Allow encoding non-utf-8 strings
* Use Vec<u8> instead of Display for email formatting
2020-04-28 23:45:03 +02:00
Alexis Mousset
4e500ded50
feat(transport): Allow sending raw emails ( fixes #409 )
2020-04-28 23:44:23 +02:00
Ollie Ford
482d74f7bc
fix(transport-smtp): Set root certs when using rustls
2020-04-19 15:21:37 +02:00
Alexis Mousset
2fdafcd573
chore(all): Code cleanup
2020-04-19 11:59:04 +02:00
Alexis Mousset
53aa5b4df6
Replace email builder by a new implementation ( #393 )
...
* Update dependencies (#386 )
* Update dependencies and set MSRV to 1.40
* update hyperx
* Use display instead of description for errors
* Make hostname an optional feature
* Envelope from headers
* Update hyperx to 1.0
* rename builder to message
* Cleanup and make Transport send Messages
* Update rustls from 0.16 to 0.17
* Move transports into a common folder
* Merge imports from same crate
* Add message creation example to the site
* Hide "extern crate" in doc examples
* Add References and In-Reply-To methods
* Add message-id header
* Add blog posts and improve doc examples
2020-04-18 21:10:03 +00:00
Marek Janda
16ac97e9d0
Support for embeds with Content-ID
2020-02-04 22:01:23 +01:00
Alexis Mousset
245c600c82
Update dependencies ( #386 )
...
Update dependencies and set MSRV to 1.40
2019-12-23 11:02:43 +00:00
Alexis Mousset
3995ea2983
fix(builder): rfc2047-encode non-ascii text
2019-12-19 11:15:24 +01:00
Alexis Mousset
d1b54dc990
Revert "fix(builder): rfc2047-encode non-ascii text"
2019-12-18 23:06:29 +00:00
Alexis Mousset
22eced1dbf
Merge pull request #383 from amousset/encode-utf8
...
fix(builder): rfc2047-encode non-ascii text
2019-12-18 22:46:44 +00:00
Alexis Mousset
f0fd4556b5
fix(builder): rfc2047-encode non-ascii text
2019-12-18 23:42:24 +01:00
Paolo Barbolini
c4d4413242
fix(all): rename remaining 'serde-impls' features gates to 'serde'
...
This renames the remaining 'serde-impls' features I forgot to change
in aac3e00 to 'serde'
2019-12-18 17:51:48 +01:00
Alexis Mousset
ce37464050
feat(all): Merge Email and SendableEmail into lettre::Email
2019-12-18 16:51:04 +01:00