tokio-imap

Tokio-based IMAP implementation

APACHE-2.0 License

Downloads
423.7K
Stars
118
Committers
32

Bot releases are hidden (Show)

tokio-imap - imap-proto 0.13.0 Latest Release

Published by djc over 3 years ago

  • Breaking change: Cow is used in many places to avoid unnecessary allocations (#115, thanks to @jonhoo)
  • Add RFC 5464 METADATA response codes (#116, thanks to @jonhoo)
  • Add helper methods for the BodyStructure type (#111, thanks to @yageek and @mmirate)
tokio-imap - imap-proto 0.12.0

Published by djc almost 4 years ago

imap-proto 0.12.0 is a minor feature release, which essentially adds support for one new IMAP extension response:

  • Add support for RFC7162 (QRESYNC) VANISHED response (#101, thanks to @mordak)
  • Mark some enum types as non-exhaustive to hopefully limit semver-incompatible releases
  • Upgrade to nom 6
tokio-imap - imap-proto 0.11.0

Published by djc about 4 years ago

This release contains numerous internal improvements and some hopefully minor API changes.

  • Add workaround for Zoho Mail invalid FLAGS response (#91, thanks to @link2xt)
  • Add support for RFC 5161 ENABLED extension (#85, thanks to @mordak)
  • Add parser for HEADER.FIELDS (#72, thanks to @link2xt)
  • Lots of refactoring to make the parsers easier to navigate (#81, #82, thanks to @duesee)
tokio-imap - imap-proto 0.10.2

Published by djc over 4 years ago

This is a small maintenance release (I erroneously published 0.10.1 incompletely).

  • Parse HEADER.FIELDS (fixed in #72, thanks to @link2xt)
  • Do not require nom's default features
tokio-imap - tokio-imap 0.5.0

Published by djc almost 5 years ago

  • Upgrade to tokio 0.2 final release
  • Remove some unused dependencies
  • Upgrade to latest imap-proto
tokio-imap - imap-proto 0.10.0

Published by djc almost 5 years ago

This release contains one incompatible change: all fields of the Address type as well as some fields of the Envelope type are now &[u8] instead of &str. It turns out that parsing these as UTF-8 was, unfortunately, too restrictive for parsing messages in the wild. Thanks to @link2xt for investigating and fixing this.

  • Allow arbitrary bytes for some string fields (#63, thanks to @link2xt)
  • Allow invalid continuation responses as seen from Yandex (#68, thanks to @dignifiedquire)
tokio-imap - tokio-imap 0.5.0-alpha.1

Published by djc almost 5 years ago

  • Initial support for async/await
  • Use rustls as the underlying TLS implementation
  • Simplify the ImapTransport abstraction
tokio-imap - imap-proto 0.9.1

Published by djc almost 5 years ago

  • Added support for the RFC 5464 METADATA extension (#59, thanks to @Sergey-Kitov)
  • Fixed a regression in number parsing (introduced in 0.9.0)
  • Added a Clone impl for Request
tokio-imap - imap-proto 0.9.0

Published by djc about 5 years ago

  • Corrected parser to allow non-uppercase keywords (thanks to @avitex and @link2xt)
  • Upgraded to nom 5 (thanks to @marcusklaas)
tokio-imap - imap-proto 0.8.1

Published by djc about 5 years ago

  • Add support for BODYSTRUCTURE (#48, thanks to @avitex)
  • Implement missing response codes (#41, thanks to @Emm54321)
  • Parse capabilities into an enum (#47, thanks to @marcelbuesing and @avitex)
  • Fix parsing of RFC 3501 test envelope (#39, thanks to @marcelbuesing)

(0.8.0 was skipped due to an error in the crate metadata.)

tokio-imap - imap-proto 0.7.0

Published by djc almost 6 years ago

  • Make LIST/LSUB delimiters optional (fixes #33)
  • Add support for RFC822.TEXT (fixes #32)
  • Merge LSUB and LIST response types (thanks to @jonhoo)
tokio-imap - tokio-imap 0.4.0

Published by djc almost 6 years ago

tokio-imap hasn't gotten a lot of attention, but here is a release with accumulated small improvements and fixes. The motivating issue for this release was a fix to remove unsafe API:

  • Improve safety for unsafe use of transmute (fixes #30, thanks to @ExpHP for reviewing). tokio-imap has one instance of unsafe to build an efficient and ergonomic response type. Unfortunately this code exposed a field as public that shouldn't have been, making it possible to cause invalid data. Normal usage of the API should still be safe, but everyone is advised to upgrade to this release.

Other changes:

  • Some minor API changes to make the API easier to use
  • Added a basic example (thanks to @sanmai-NL!)
  • Upgraded to latest tokio and native-tls releases and fixed resulting deprecations
tokio-imap - imap-proto 0.6.0

Published by djc almost 6 years ago

Unfortunately the new StatusAttribute::HighestModSeq value type was wrong in the 0.5.0 release, so here's a follow-up release with a higher minor version number to prevent any confusion. Sorry for the inconvenience!

  • Correct HighestModSeq type to u64 (thanks to @dario23 for #29)
tokio-imap - imap-proto 0.5.0

Published by djc almost 6 years ago

This is a new minor release version due to an added enum variant in StatusAttribute and the upgrade to nom 4 (which affects error types for parsing). Otherwise, the API is unchanged from before.

  • Add support for HIGHESTMODSEQ status attributes to improve compatibility with Dovecot server (#28, thanks to @dario23)
  • Made the parser slightly more lenient to improve compatibility with the DavMail server (#25, thanks to @vandenoever)
  • Upgrade to nom 4.0 (#22, thanks to @theduke for taking care of this)
  • Improved handling of INBOX folder names
tokio-imap - imap-proto 0.4.1

Published by djc almost 6 years ago

  • Implement support for RFC822.HEADER (see #11)
tokio-imap - imap-proto 0.4.0

Published by djc over 6 years ago

The imap-proto crate has been merged into the tokio-imap repository (again). To be precise, tokio-imap commit 4a024f3d7a59550179f74c2737ddf1272c04f188 merges the imap-proto code as of 522f84d. The later commit 4ecd2f5fabbcd0e4d8e262832cf0b96d4003d62c was merged in 09848b9121cdcbbb64e1313b502094239c2fca44.

  • Add parsing for SEARCH response returning a Vector of IDs (#19)
  • Add basic support for continuation responses
  • Add support for STATUS responses
  • Return parser errors instead of panicking for invalid strings