Skip to content

Commit

Permalink
release v0.3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
robert-virkus committed Mar 7, 2021
1 parent cc39fd9 commit 0ae90b6
Show file tree
Hide file tree
Showing 3 changed files with 54 additions and 11 deletions.
31 changes: 31 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,34 @@
## 0.3.0
- [KevinBLT](https://github.com/KevinBLT) contributed the following improvements and features:
* Check out the experimental [DKIM](https://tools.ietf.org/html/rfc6376) signing of messages.
* Enjoy the improved the performance of `QuotedPrintable` encoding.
* BCC header is now stripped from messages before sending them via SMTP
- [A.Zulli](https://github.com/azulli) contributed major IMAP features in this release:
* Sort messages with `ImapClient.sortMessages(...)` [SORT](https://tools.ietf.org/html/rfc5256) - and also use the extended sort mechanism with specifying `returnOptions` on servers with [ESORT](https://tools.ietf.org/html/rfc5267).
* `ImapClient.searchMessages(...)` now accepts `List<ReturnOption>` parameter for extending the search according to the [ESEARCH](https://tools.ietf.org/html/rfc4731) standard.
* Support `PARTIAL` responses according to the [CONTEXT](https://tools.ietf.org/html/rfc5267) IMAP extension.
* Use the LIST extensions:
* [rfc5258](https://tools.ietf.org/html/rfc5258): `LIST` command extensions
* [rfc5819](https://tools.ietf.org/html/rfc5819): return `STATUS` in extended lists
* [rfc6154](https://tools.ietf.org/html/rfc6154): `SPECIAL-USE` mailboxes
- [Alexander Sotnikov](https://github.com/SotnikAP) fixed `POP3` so that you can now use the `PopClient` as intended.
- SMTP improvements:
* You can now send messages via the SMTP `BDAT` command using `SmtpClient.sendChunkedMessage()` / `sendChunkedMessageData()` / `sendChunkedMessageText()`.
* You don't require a `MimeMessage` to send any more when you send messages either via `SmtpClient.sendMessageData()` or `SmtpClient.sendMessageText()`.
- MessageBuilder / MIME generation improvements:
* Attachments are now also added when forrwarding a message without quoting in `MessageBuilder.prepareForwardMessage()`.
* You can now also prepend parts by setting `insert` to `true` when calling `addPart()`.
- Other improvements and bugfixes:
* Remove some dependencies and relax constraints on some so that we all get quicker through the `null-safety` challenge.
* Fixed decoding of 8bit messages that use a different charset than UTF8
* Fixed header decoding in some edge cases
* Some fixes in parsing personal names in email addresses
* Support Chinese encodings `GBK` and `GB-2312`
* Improve reconnecting when using the high level API
* Only download the `ENVELOPE` information when a new mail is detected in high level API
- Breaking changes:
* `MessageBuilder.replyToMessage` is renamed to `MessageBuilder.originalMessage`

## 0.2.1
- Allow to specify `connectionTimeout` for all low level clients
- Support non-ASCII IMAP searches when supported by server
Expand Down
29 changes: 20 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Add this dependency your pubspec.yaml file:

```
dependencies:
enough_mail: ^0.1.0
enough_mail: ^0.3.0
```
The latest version or `enough_mail` is [![enough_mail version](https://img.shields.io/pub/v/enough_mail.svg)](https://pub.dartlang.org/packages/enough_mail).

Expand Down Expand Up @@ -294,21 +294,36 @@ This is how you contribute:
Thank you in advance!

## Features
### Done
### Base standards
*[IMAP4 rev1](https://tools.ietf.org/html/rfc3501) support
*basic [SMTP](https://tools.ietf.org/html/rfc5321) support
*[SMTP](https://tools.ietf.org/html/rfc5321) support
*[POP3](https://tools.ietf.org/html/rfc1939) support
*[MIME](https://tools.ietf.org/html/rfc2045) parsing and generation support

### IMAP extensions
The following IMAP extensions are supported:
*[IMAP IDLE](https://tools.ietf.org/html/rfc2177)
*[IMAP METADATA](https://tools.ietf.org/html/rfc5464)
*[UIDPLUS](https://tools.ietf.org/html/rfc2359)
*[MOVE](https://tools.ietf.org/html/rfc6851)
*[CONDSTORE](https://tools.ietf.org/html/rfc7162)
*[QRESYNC](https://tools.ietf.org/html/rfc7162)
*[ENABLE](https://tools.ietf.org/html/rfc5161)
*[ENABLE](https://tools.ietf.org/html/rfc5161)
*[QUOTA](https://tools.ietf.org/html/rfc2087)
*[IMAP Support for UTF-8](https://tools.ietf.org/html/rfc6855)
*[ESEARCH](https://tools.ietf.org/html/rfc4731)
* ✅ SORT command of [SORT and THREAD](https://tools.ietf.org/html/rfc5256)
* ✅ ESORT and PARTIAL from [Contexts](https://tools.ietf.org/html/rfc5267)
* ✅ List extensions ([rfc5258](https://tools.ietf.org/html/rfc5258), [rfc5819](https://tools.ietf.org/html/rfc5819), [rfc6154](https://tools.ietf.org/html/rfc6154))

### SMTP Extensions
The following SMTP extensions are supported:
*[8-bit MIME](https://tools.ietf.org/html/rfc6152)

### Security
The following security extensions are supported:
* ✅ Partial signing of messages using [DKIM](https://tools.ietf.org/html/rfc6376)


### Supported encodings
Character encodings:
Expand All @@ -317,18 +332,14 @@ Character encodings:
* ISO-8859-1 (latin-1)
* ISO-8859-2 - 16 (latin-2 - 16)
* Windows-1250, 1251, 1252
* GB-2312 and GBK

Transfer encodings:
* [Quoted-Printable (Q)](https://tools.ietf.org/html/rfc2045#section-6.7)
* [Base-64 (base64)](https://tools.ietf.org/html/rfc2045#section-6.8)

### To do
* Compare [issues](https://github.com/Enough-Software/enough_mail/issues)
* hardening & bugfixing
* improve performance
* support [Message Preview Generation](https://datatracker.ietf.org/doc/draft-ietf-extra-imap-fetch-preview/)
* support [WebPush IMAP Extension](https://github.com/coi-dev/coi-specs/blob/master/webpush-spec.md)
* support [Open PGP](https://tools.ietf.org/html/rfc4880)

### Develop and Contribute
* To start check out the package and then run `pub run test` to run all tests.
Expand Down
5 changes: 3 additions & 2 deletions pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: enough_mail
description: IMAP, POP3 and SMTP email clients in pure Dart. Choose between a low level and a high level API for mailing.
version: 0.2.1
description: IMAP, POP3 and SMTP email clients in pure Dart. Choose between a low level and a high level API for mailing. Parse and generate MIME messages.
version: 0.3.0
homepage: https://github.com/Enough-Software/enough_mail

environment:
Expand All @@ -12,6 +12,7 @@ dependencies:
crypto: '>=2.0.0 <4.0.0'
basic_utils: '>=1.7.0 <4.0.0'
xml: '>=4.0.0 <6.0.0'
intl: '>= 0.15.0 <2.0.0'
encrypt: '>=4.0.0 <6.0.0'
enough_serialization: ^1.3.0
#path: ../enough_serialization
Expand Down

0 comments on commit 0ae90b6

Please sign in to comment.