-
-
Save chkn/9faa94422d1e90d3d1b0 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
After about a year in the making for MimeKit and nearly 8 months for MailKit, | |
they've finally reached 1.0 status. | |
I started really working on MimeKit about a year ago wanting to give the .NET | |
community a top-notch MIME parser that could handle anything the real world could | |
throw at it. I wanted it to run on any platform that can run .NET (including mobile), | |
and do it with remarkable speed and grace. I wanted to make it such that re-serializing | |
the message would be a byte-for-byte copy of the original, so that no data would | |
ever be lost. This was also very important for my last goal, which was to support | |
S/MIME and PGP. | |
All of these goals for MimeKit have been reached (partly thanks to the BouncyCastle | |
project for the crypto support). | |
At the start of December last year, I began working on MailKit to aid in the | |
adoption of MimeKit. It became clear that without a way to inter-operate with the | |
various types of mail servers, .NET developers would be unlikely to adopt it. | |
I started off implementing an SmtpClient with support for SASL authentication, | |
STARTTLS, and PIPELINING support. | |
Soon after, I began working on a Pop3Client that was designed such that I could use | |
MimeKit to parse messages on the fly, directly from the socket, without needing to | |
read the message into a massive memory buffer first. This fact, | |
combined with the fact that MimeKit's message parser is orders of magnitude faster | |
than any other .NET parser I could find, makes MailKit the fastest POP3 library the | |
world has ever seen. | |
After a month or so of avoiding the inevitable, I finally began working on an | |
ImapClient which took me roughly two weeks to produce the initial prototype | |
(compared to a single weekend for each of the other protocols). After many months of | |
implementing dozens of the more widely used IMAP4 extensions (including the GMail | |
extensions) and tweaking the APIs (along with bug fixing) thanks to feedback from | |
some of the early adopters, I believe that it is finally complete enough to call 1.0. | |
In July, at the request of someone involved with a number of the IETF email-related | |
specifications, I also implemented support for the new Internationalized Email | |
standards, making MimeKit and MailKit the first - and only - .NET email libraries to | |
support these standards. | |
If you want to do anything at all related to email in .NET, take a look at MimeKit and | |
MailKit. I guarantee that you will not be disappointed. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment