MailKit 2.1.0.3
Prefix ReservedSee the version list below for details.
Requires NuGet 2.12 or higher.
dotnet add package MailKit --version 2.1.0.3
NuGet\Install-Package MailKit -Version 2.1.0.3
<PackageReference Include="MailKit" Version="2.1.0.3" />
paket add MailKit --version 2.1.0.3
#r "nuget: MailKit, 2.1.0.3"
// Install MailKit as a Cake Addin #addin nuget:?package=MailKit&version=2.1.0.3 // Install MailKit as a Cake Tool #tool nuget:?package=MailKit&version=2.1.0.3
MailKit is an Open Source cross-platform .NET mail-client library that is based on MimeKit and optimized for mobile devices.
Features include:
* Socks4, Socks4a and Socks5 proxy support.
* SASL Authentication via SCRAM-SHA-256, SCRAM-SHA-1, NTLM, DIGEST-MD5, CRAM-MD5, LOGIN, PLAIN, and XOAUTH2.
* A fully-cancellable SmtpClient with support for STARTTLS, 8BITMIME, BINARYMIME, ENHANCEDSTATUSCODES, SIZE, DSN, PIPELINING and SMTPUTF8.
* A fully-cancellable Pop3Client with support for STLS, UIDL, APOP, PIPELINING, UTF8, and LANG.
* A fully-cancellable ImapClient with support for ACL, QUOTA, LITERAL+, IDLE, NAMESPACE, ID, CHILDREN, LOGINDISABLED, STARTTLS, MULTIAPPEND, UNSELECT, UIDPLUS, CONDSTORE, ESEARCH, SASL-IR, COMPRESS, WITHIN, ENABLE, QRESYNC, SORT, THREAD, LIST-EXTENDED, ESORT, METADATA / METADATA-SERVER, NOTIFY, FILTERS, LIST-STATUS, SORT=DISPLAY, SPECIAL-USE / CREATE-SPECIAL-USE, SEARCH=FUZZY, MOVE, UTF8=ACCEPT / UTF8=ONLY, LITERAL-, APPENDLIMIT, STATUS=SIZE, OBJECTID, XLIST, and X-GM-EXT1.
* Client-side sorting and threading of messages (the Ordinal Subject and the Jamie Zawinski threading algorithms are supported).
* Asynchronous versions of all methods that hit the network.
* S/MIME, OpenPGP and DKIM signature support via MimeKit.
* Microsoft TNEF support via MimeKit.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp1.0 was computed. netcoreapp1.1 was computed. netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard1.3 is compatible. netstandard1.4 was computed. netstandard1.5 was computed. netstandard1.6 is compatible. netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net45 is compatible. net451 was computed. net452 was computed. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid is compatible. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen30 was computed. tizen40 was computed. tizen60 was computed. |
Universal Windows Platform | uap was computed. uap10.0 was computed. |
Xamarin.iOS | xamarinios is compatible. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.5
- BouncyCastle (>= 1.8.2)
- MimeKit (>= 2.1.0)
-
.NETStandard 1.3
- MimeKit (>= 2.1.0)
- NETStandard.Library (>= 1.6.1)
- Portable.BouncyCastle (>= 1.8.2)
- System.Data.Common (>= 4.3.0)
- System.Globalization.Extensions (>= 4.3.0)
- System.Net.Http (>= 4.3.0)
- System.Net.NameResolution (>= 4.3.0)
- System.Net.NetworkInformation (>= 4.3.0)
- System.Net.Security (>= 4.3.0)
- System.Reflection.TypeExtensions (>= 4.3.0)
- System.Runtime.Serialization.Primitives (>= 4.3.0)
- System.Text.Encoding.CodePages (>= 4.3.0)
-
.NETStandard 1.6
- MimeKit (>= 2.1.0)
- NETStandard.Library (>= 1.6.1)
- Portable.BouncyCastle (>= 1.8.2)
- System.Data.Common (>= 4.3.0)
- System.Globalization.Extensions (>= 4.3.0)
- System.Net.Http (>= 4.3.0)
- System.Net.NameResolution (>= 4.3.0)
- System.Net.NetworkInformation (>= 4.3.0)
- System.Net.Security (>= 4.3.0)
- System.Reflection.TypeExtensions (>= 4.3.0)
- System.Runtime.Serialization.Primitives (>= 4.3.0)
- System.Text.Encoding.CodePages (>= 4.3.0)
-
.NETStandard 2.0
- MimeKit (>= 2.1.0)
- NETStandard.Library (>= 1.6.1)
- Portable.BouncyCastle (>= 1.8.2)
- System.Data.Common (>= 4.3.0)
- System.Globalization.Extensions (>= 4.3.0)
- System.Net.Http (>= 4.3.0)
- System.Net.NameResolution (>= 4.3.0)
- System.Net.NetworkInformation (>= 4.3.0)
- System.Net.Security (>= 4.3.0)
- System.Reflection.TypeExtensions (>= 4.3.0)
- System.Runtime.Serialization.Primitives (>= 4.3.0)
- System.Text.Encoding.CodePages (>= 4.3.0)
-
MonoAndroid 0.0
- MimeKit (>= 2.1.0)
-
Portable Class Library (Windows 8.1, WindowsPhoneApp 8.1)
- MimeKit (>= 2.1.0)
- Portable.BouncyCastle (>= 1.8.2)
-
Xamarin.iOS 0.0
- MimeKit (>= 2.1.0)
NuGet packages (949)
Showing the top 5 NuGet packages that depend on MailKit:
Package | Downloads |
---|---|
Umbraco.Cms.Infrastructure
Contains the infrastructure assembly needed to run Umbraco CMS. |
|
NETCore.MailKit
MailKit extension for asp.net core. Easy send email in asp.net core project. |
|
Serilog.Sinks.Email
Send Serilog events as SMTP email using MailKit. |
|
Abp.MailKit
Abp.MailKit |
|
NET6CustomLibrary
open source custom dotnet extension library |
GitHub repositories (124)
Showing the top 5 popular GitHub repositories that depend on MailKit:
Repository | Stars |
---|---|
ardalis/CleanArchitecture
Clean Architecture Solution Template: A starting point for Clean Architecture with ASP.NET Core
|
|
bitwarden/server
Bitwarden infrastructure/backend (API, database, Docker, etc).
|
|
abpframework/abp
Open-source web application framework for ASP.NET Core! Offers an opinionated architecture to build enterprise software solutions with best practices on top of the .NET. Provides the fundamental infrastructure, cross-cutting-concern implementations, startup templates, application modules, UI themes, tooling and documentation.
|
|
aspnetboilerplate/aspnetboilerplate
ASP.NET Boilerplate - Web Application Framework
|
|
duplicati/duplicati
Store securely encrypted backups in the cloud!
|
Version | Downloads | Last updated |
---|---|---|
4.8.0 | 70,348 | 9/29/2024 |
4.7.1.1 | 1,643,287 | 7/15/2024 |
4.7.1 | 131,161 | 7/12/2024 |
4.7.0 | 367,738 | 6/29/2024 |
4.6.0 | 1,364,094 | 5/17/2024 |
4.5.0 | 1,048,049 | 4/13/2024 |
4.4.0 | 1,702,311 | 3/2/2024 |
4.3.0 | 5,114,943 | 11/11/2023 |
4.2.0 | 2,556,775 | 9/2/2023 |
4.1.0 | 3,507,614 | 6/17/2023 |
4.0.0 | 2,416,144 | 4/15/2023 |
3.6.0 | 2,427,040 | 3/4/2023 |
3.5.0 | 2,181,927 | 1/28/2023 |
3.4.3 | 3,225,459 | 11/25/2022 |
3.4.2 | 2,184,111 | 10/24/2022 |
3.4.1 | 1,972,384 | 9/12/2022 |
3.4.0 | 299,583 | 9/5/2022 |
3.3.0 | 5,062,298 | 6/12/2022 |
3.2.0 | 9,173,963 | 3/26/2022 |
3.1.1 | 3,548,626 | 1/30/2022 |
3.1.0 | 788,855 | 1/15/2022 |
3.0.0 | 2,545,234 | 12/11/2021 |
2.15.0 | 11,116,435 | 8/19/2021 |
2.14.0 | 788,954 | 7/28/2021 |
2.13.0 | 2,709,004 | 6/12/2021 |
2.12.0 | 1,325,665 | 5/12/2021 |
2.11.1 | 2,331,755 | 3/16/2021 |
2.11.0 | 153,162 | 3/12/2021 |
2.10.1 | 4,550,529 | 1/2/2021 |
2.10.0 | 3,098,130 | 11/21/2020 |
2.9.0 | 3,203,694 | 9/12/2020 |
2.8.0 | 3,312,320 | 7/11/2020 |
2.7.0 | 2,843,298 | 5/30/2020 |
2.6.0 | 7,495,986 | 4/4/2020 |
2.5.2 | 1,248,765 | 3/14/2020 |
2.5.1 | 1,282,938 | 2/15/2020 |
2.5.0 | 1,123,841 | 1/18/2020 |
2.4.1 | 2,224,622 | 11/10/2019 |
2.4.0.1 | 116,132 | 11/5/2019 |
2.4.0 | 24,801 | 11/3/2019 |
2.3.2 | 506,441 | 10/12/2019 |
2.3.1.6 | 1,154,917 | 9/9/2019 |
2.3.1 | 96,043 | 9/8/2019 |
2.3.0 | 701,385 | 8/24/2019 |
2.2.0 | 2,316,452 | 6/11/2019 |
2.1.5.1 | 913,474 | 5/13/2019 |
2.1.4 | 632,873 | 4/13/2019 |
2.1.3 | 1,227,127 | 2/24/2019 |
2.1.2 | 1,348,316 | 12/30/2018 |
2.1.1 | 199,607 | 12/17/2018 |
2.1.0.3 | 205,212 | 12/7/2018 |
2.0.7 | 910,542 | 10/28/2018 |
2.0.6 | 2,962,805 | 8/4/2018 |
2.0.5 | 488,520 | 7/7/2018 |
2.0.4 | 657,338 | 5/25/2018 |
2.0.3 | 646,854 | 4/15/2018 |
2.0.2 | 228,785 | 3/18/2018 |
2.0.1 | 1,678,512 | 1/6/2018 |
2.0.0 | 181,767 | 12/22/2017 |
1.22.0 | 669,555 | 11/24/2017 |
1.20.0 | 573,000 | 10/28/2017 |
1.18.1.1 | 710,414 | 9/4/2017 |
1.18.1 | 20,982 | 9/3/2017 |
1.18.0 | 216,763 | 8/7/2017 |
1.16.2 | 514,466 | 7/1/2017 |
1.16.1 | 673,744 | 5/5/2017 |
1.16.0 | 90,663 | 4/21/2017 |
1.14.2 | 46,208 | 4/12/2017 |
1.12.0 | 215,153 | 3/12/2017 |
1.10.2 | 222,104 | 1/28/2017 |
1.10.1 | 188,106 | 12/4/2016 |
1.10.0 | 476,332 | 10/31/2016 |
Changes for 2.1.0.3:
* Really fixed the bug in Connect() and ConnectAsync() this time. (issue #782)
Changes for 2.1.0.2:
* Fixed a bug in Connect() and ConnectAsync(). (issue #782)
Changes for 2.1.0.1:
* Fixed MailKit 2.1.0 to depend on MimeKit 2.1.0
Changes for 2.1.0:
* A number of fixes to bugs exposed in new unit tests for NTLM authentication.
* Made SmtpClient, Pop3Client, and ImapClient's Connect() methods truly cancellable as well as made the underlying socket.Connect() call adhere to any specified client.Timeout value.
* Added support for connecting via a SOCKS4, SOCKS4a, or SOCKS5 proxy server.
* Fixed ImapClient's OnAuthenticated() method to protect aganst throwing an ArgumentNullException when trying to emit the Authenticated event if the server did not supply any resp-code-text in the OK response to the AUTHENTICATE command. (issue #774)
* Modified ImapFolder.Create() to handle [ALREADYEXISTS] resp-codes.
* Fixed ImapFolder.Create() for GMail when the isMessageFolder is false (GMail doesn't handle it when the client attempts to create a folder ending with a directory separator).
* Optimized ImapFolder's fallback for UID COPY command when UIDPLUS is not supported.
* Reduced string allocations in the Connect(Uri) wrapper.
* Added new ConnectedEventArgs and DisconnectedEventArgs that are used with the Connected and Disconnected events to provide developers with even more useful information about what server, port and SecureSocketOptions were used when connecting the client.
* Fixed SmtpClient to immediately throw stream reading exceptions instead of ignoring them. (issue #776)
* Fixed ImapClient.GetFoldersAsync() to call ImapFolder.StatusAsync() instead of Status() when StatusItems are specified.
* Changed ImapFolder.GetSubfolders() to return IList<IMailFolder> instead of IEnumerable<IMailFolder>.
* Fixed ImapClient's NAMESPACE parser - it had Shared and Other namespace ordering reversed.
* Fixed ImapFolder.Create() (for special-use) to only use unique uses if any were specified multiple times.
* Modified ImapFolder.Open() to allow devs to re-Open() a folder with the same access in case they need to do this to work around an IMAP server bug(?).
* Fixed adding/removing/setting of GMail labels to use UTF-8 when enabled.
* Added support for the IMAP STATUS=SIZE extension which now provides a ImapFolder.Size property that specifies how large a folder is (in bytes). Clients can request this information using the StatusItems.Size enum with either ImapFolder.GetSubfolders() or ImapFolder.Status().
* Added support for the IMAP OBJECTID extension. ImapFolder and IMessageSummary now both have an Id property which is a globally unique identifier. IMessageSummary also now has a ThreadId property which is a unique identifier for the message thread/conversation that the message belongs to. This information can be retrieved for ImapFolders using ImapFolder.Status() with the new StatusItems.MailboxId enum value. The IMessageSummary.Id and ThreadId properties have the corresponding MessageSummaryItems enum values of Id and ThreadId, respectively.
* Added another work-around for bad GMail IMAP BODYSTRUCTURE responses. (issue #777)
* Fixed all integer TryParse methods to use NumberStyles.None and CultureInfo.InvariantCulture.
* Added Connect() and ConnectAsync() overloads which accept a Stream instead of a Socket.
* All ImapFolder.MessageFlagsChanged, ModSeqChanged, and LabelsChanged events will now also be followed by a MessageSummaryFetched event containing the combined information of those events.
* Added support for IMAP's NOTIFY extension. Many thanks to Steffen Kieß for getting the ball rolling on this feature by implementing the neccessary ImapEvent, ImapEventGroup, and ImapMailboxFilter classes as well as the initial support.
API Changes Since 2.0.x:
* Obsoleted SearchQuery.HasCustomFlags() and SearchQuery.DoesNotHaveCustomFlags(). These are now SearchQuery.HasKeywords() and SearchQuery.NotKeywords(), respectively.
* Obsoleted SearchQuery.DoesNotHaveFlags() in favor of SearchQuery.NotFlags().
* Obsoleted the IMessageSummary.UserFlags property in favor of IMessageSummary.Keywords.
* Obsoleted the MessageFlagsChangedEventArgs.UserFlags property in favor of MessageFlagsChangedEventArgs.Keywords.
* All IMailFolder.Fetch and IMailFolder.FetchAsync methods that took a HashSet<string> userFlags argument now take an IEnumerable<string> keywords argument. Note: this only affects you if your code used named method parameters (e.g. userFlags: myUserFlags).
Note to users upgrading from MailKit 1.x:
In order to authenticate using the XOAUTH2 SASL mechanism, you must now use the following approach:
client.Authenticate (new SaslMechanismOAuth2 (username, auth_token));