If an exception is raised during the sending of a notification, that notification is then lost.
We should build a queue for stuff like this - if an exception is raised, cause hell until it's acknowledged.
2019-02-09 04:36:30,336 [7] DEBUG Stwalkerster.IrcClient.IrcClient.Freenode.NetworkClient.Outbound [(null)] - PING :GNU Terry Pratchett 1549686990 2019-02-09 04:36:45,336 [5] WARN Stwalkerster.IrcClient.IrcClient.Freenode [(null)] - Ping reply not received! 2019-02-09 04:37:02,222 [14] ERROR EyeInTheSky.Services.RecentChangeHandler [(null)] - Failed to send notification email for RC EyeInTheSky.Model.RecentChange System.TimeoutException: The operation has timed out. at MailKit.Net.SocketUtils.ConnectAsync (System.String host, System.Int32 port, System.Net.IPEndPoint localEndPoint, System.Int32 timeout, System.Boolean doAsync, System.Threading.CancellationToken cancellationToken) [0x000d9] in <1725046bb13a456591705d9d771b9e7c>:0 at MailKit.MailService.ConnectSocket (System.String host, System.Int32 port, System.Boolean doAsync, System.Threading.CancellationToken cancellationToken) [0x00171] in <1725046bb13a456591705d9d771b9e7c>:0 at MailKit.Net.Smtp.SmtpClient.ConnectAsync (System.String host, System.Int32 port, MailKit.Security.SecureSocketOptions options, System.Boolean doAsync, System.Threading.CancellationToken cancellationToken) [0x0014f] in <1725046bb13a456591705d9d771b9e7c>:0 at MailKit.Net.Smtp.SmtpClient.Connect (System.String host, System.Int32 port, MailKit.Security.SecureSocketOptions options, System.Threading.CancellationToken cancellationToken) [0x00012] in <1725046bb13a456591705d9d771b9e7c>:0 at EyeInTheSky.Services.EmailSender.SendEmail (System.String sender, System.String to, System.String subject, System.String body, System.String hostname, System.Int32 port, System.String username, System.String password, System.String thumbprint, System.String inReplyTo) [0x0008e] in <1002aacd5a2946609376a94741251293>:0 at EyeInTheSky.Services.EmailHelper.SendEmail (System.String message, System.String subject, System.String inReplyTo, EyeInTheSky.Model.Interfaces.IBotUser recipient) [0x0019d] in <1002aacd5a2946609376a94741251293>:0 at EyeInTheSky.Services.RecentChangeHandler.SendIndividualEmail (System.Collections.Generic.IList`1[T] stalks, EyeInTheSky.Model.Interfaces.IRecentChange rc, EyeInTheSky.Model.Interfaces.IBotUser botUser) [0x0005f] in <1002aacd5a2946609376a94741251293>:0