iCloud Emails Fail to Download Content

I have been using emClient for some time now (years) with my iCloud account. Few issues overall.

With no changes made to either the OS, the client, the account … on Friday I started having issues where the content of the messages would not download from the server. They folders sync correctly, but the messages fail to download.

After a while I get the warning triange. If you refresh the folders sync again, but the content fails to download.

Looking in the log I can see a timeout, but how do I resolve this?

Using other clients on other devices works just fine. Indeed, the Calendar sync works fine too, its just the download of message content.

I cant see any changes from the Apple side.

HELP!

ps. I have also tried deleting and recreating the account … same thing, the folders sync but the content fails to download.

What version of eM Client are you using , and are you using Windows or Mac ?

Might be an issue with the version of EMC you are using. Check that you have the latest version via https://www.emclient.com/release-history

This is the official eM Client iCloud account setup which you have to “generate an App-Specific password” if you haven’t already done that. See links below.

Email Client for iCloud email on Windows | eM Client

Using app-specific passwords - Apple Support

Note:- If you still have the same issue, can you screenshot your iCloud “Account Mail setup” in EMC so we can see your configuration to make sure that’s ok… Obviously black out your account login and password.

Hi there … Im running the latest version of the PC client … 8.1.1054 (582ba95)

Attached are screenshots, Iv tried a couple of combinations on the security policy … none have any effect … same result.

I also checked the ports against apples reccomendation … all correct.

The ‘diagnostics’ check comes back as OK, but Id expect that given it can sync the folder list.

Mike

em_version

There was an official eM Client update since your version for PC & Mac which had (an iCloud update fix) in update link above. Can you update to that version to see if that fixes your mail issue.

8.1.1060.0
Thursday, January 28, 2021
eM Client 8.1 Service Update

  • Workaround for iCloud IMAP bug that manifests with malformed downloaded attachments
  • Czech, spanish, italian, portuguese, swedish and chinese localization updates

Ahh … Sorry. I didn’t check the site, I just did ‘check for updates’ … which must just do point releases.

Downloaded and updated to v.8.1.1087 (d63975c)

Still has the same issues.

I changed IMAP settings back to 'Use SSL/TLS on special port (legacy) otherwise it throws another error.

This is the log after the change >>>

21:41:39 xxxxx IMAP Synchronizing folder list
21:42:17 xxxxx CardDAV Synchronizing folder list
21:42:17 xxxxx CalDAV Synchronizing folder list
21:42:40 xxxxx [IMAP] MailClient.Accounts.ConnectionException: Server did not respond in 00:01:00
—> System.TimeoutException: Server did not respond in 00:01:00
at MailClient.Imap.Base.Extensions.CopyToAsyncWithTimer(Stream source, PipeWriter writer, TimeoutTimer timer, ITaskSource readDemandSource, CancellationToken cancellationToken)
at MailClient.Imap.Base.TransportPipe.StartReading(Stream stream, CancellationToken token)
at System.IO.Pipelines.PipeCompletion.ThrowLatchedException()
at System.IO.Pipelines.Pipe.GetReadResult(ReadResult& result)
at System.IO.Pipelines.Pipe.GetReadAsyncResult()
at System.IO.Pipelines.Pipe.DefaultPipeReader.GetResult(Int16 token)
at MailClient.Imap.Base.Extensions.<>c__DisplayClass30_0.<g__SlowAsyncPath|1>d.MoveNext()
— End of stack trace from previous location where exception was thrown —
at MailClient.Imap.Base.Connection.ReceiveAsync()
— End of inner exception stack trace —
at MailClient.Protocols.Imap.ImapActionCommand.ExecuteInternalSync(WorkerStatus status)
at MailClient.Protocols.Imap.ImapActionCommand.Execute(WorkerStatus status)
at MailClient.Commands.Command.Process(WorkerStatus status)
— End of stack trace from previous location where exception was thrown —
at MailClient.Storage.Synchronization.FolderSynchronizerExtensions.SynchronizeSubfoldersAsync(IFolderSynchronizer synchronizer, Folder folder, SynchronizationPriority priority, CancellationToken cancellationToken)
at MailClient.Protocols.Imap.ImapAccount.SynchronizeIntAsync(Boolean forced)
at MailClient.Protocols.Common.SynchronizableMailAccount.<>c__DisplayClass6_0.<b__0>d.MoveNext()
EnqueuedStackTrace =
at MailClient.Protocols.Common.FolderSynchronizer.EnqueueGetFolderList(Folder homeFolder, Action1 completed) at MailClient.Protocols.Common.FolderSynchronizer.GoOnlinePre() at MailClient.Protocols.Imap.ImapFolderSynchronizer.GoOnlinePre() at MailClient.Protocols.Imap.ImapAccount.GoOnlineInt() at MailClient.Protocols.Common.AccountBase.ChangeOnlineState(Boolean online, OfflineReason offlineReason) at MailClient.Protocols.Common.AccountBase.GoOnline() at MailClient.Protocols.Common.AccountBase.RunIfOnline(Action actionIfOnline, Action actionIfOffline) at MailClient.Protocols.Common.SynchronizableMailAccount.Synchronize(SynchronizationPriority priority) at MailClient.Accounts.BindingAccountBase.Receive() at MailClient.UI.Controls.Folders.controlFolders.treeView_NodeClicked(Object sender, TreeViewCancelEventArgs e) at MailClient.Common.UI.Controls.ControlTreeView.ControlTreeView.OnNodeClicked(TreeViewCancelEventArgs e) at MailClient.Common.UI.Controls.ControlTreeView.ControlTreeView.OnMouseDown(MouseEventArgs e) at System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ScrollableControl.WndProc(Message& m) at System.Windows.Forms.ContainerControl.WndProc(Message& m) at System.Windows.Forms.UserControl.WndProc(Message& m) at MailClient.Common.UI.Controls.AutomationViewUserControl.WndProc(Message& m) at MailClient.Common.UI.Controls.TouchScrollUserControl.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg) at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData) at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.Run(ApplicationContext context) at MailClient.Program.<>c.<Main>b__167_1() at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor, Boolean wrapExceptions) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at System.Delegate.DynamicInvokeImpl(Object[] args) at System.Delegate.DynamicInvoke(Object[] args) at System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme) at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj) at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme) at System.Windows.Forms.Control.InvokeMarshaledCallbacks() at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ScrollableControl.WndProc(Message& m) at System.Windows.Forms.ContainerControl.WndProc(Message& m) at System.Windows.Forms.Form.WndProc(Message& m) at MailClient.Common.UI.Forms.BaseForm.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) at Xilium.CefGlue.Interop.libcef.run_message_loop() at MailClient.Program.Main(String[] args) 21:42:40 xxxxx [IMAP] MailClient.Accounts.ConnectionException: Server did not respond in 00:01:00 ---> System.TimeoutException: Server did not respond in 00:01:00 at MailClient.Imap.Base.Extensions.CopyToAsyncWithTimer(Stream source, PipeWriter writer, TimeoutTimer timer, ITaskSource readDemandSource, CancellationToken cancellationToken) at MailClient.Imap.Base.TransportPipe.StartReading(Stream stream, CancellationToken token) at System.IO.Pipelines.PipeCompletion.ThrowLatchedException() at System.IO.Pipelines.Pipe.GetReadResult(ReadResult& result) at System.IO.Pipelines.Pipe.GetReadAsyncResult() at System.IO.Pipelines.Pipe.DefaultPipeReader.GetResult(Int16 token) at MailClient.Imap.Base.Extensions.<>c__DisplayClass30_0.<<ReadLineAsync>g__SlowAsyncPath|1>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at MailClient.Imap.Base.Connection.ReceiveAsync() --- End of inner exception stack trace --- at MailClient.Protocols.Imap.ImapActionCommand.ExecuteInternalSync(WorkerStatus status) at MailClient.Protocols.Imap.ImapActionCommand.Execute(WorkerStatus status) at MailClient.Commands.Command.Process(WorkerStatus status) --- End of stack trace from previous location where exception was thrown --- at MailClient.Storage.Synchronization.FolderSynchronizerExtensions.SynchronizeSubfoldersAsync(IFolderSynchronizer synchronizer, Folder folder, SynchronizationPriority priority, CancellationToken cancellationToken) at MailClient.Protocols.Imap.ImapAccount.SynchronizeIntAsync(Boolean forced) at MailClient.Protocols.Common.SynchronizableMailAccount.<>c__DisplayClass6_0.<<SynchronizeAsync>b__0>d.MoveNext() EnqueuedStackTrace = at MailClient.Protocols.Common.FolderSynchronizer.EnqueueGetFolderList(Folder homeFolder, Action1 completed)
at MailClient.Protocols.Common.FolderSynchronizer.GoOnlinePre()
at MailClient.Protocols.Imap.ImapFolderSynchronizer.GoOnlinePre()
at MailClient.Protocols.Imap.ImapAccount.GoOnlineInt()
at MailClient.Protocols.Common.AccountBase.ChangeOnlineState(Boolean online, OfflineReason offlineReason)
at MailClient.Protocols.Common.AccountBase.GoOnline()
at MailClient.Protocols.Common.AccountBase.RunIfOnline(Action actionIfOnline, Action actionIfOffline)
at MailClient.Protocols.Common.SynchronizableMailAccount.Synchronize(SynchronizationPriority priority)
at MailClient.Accounts.BindingAccountBase.Receive()
at MailClient.UI.Controls.Folders.controlFolders.treeView_NodeClicked(Object sender, TreeViewCancelEventArgs e)
at MailClient.Common.UI.Controls.ControlTreeView.ControlTreeView.OnNodeClicked(TreeViewCancelEventArgs e)
at MailClient.Common.UI.Controls.ControlTreeView.ControlTreeView.OnMouseDown(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.UserControl.WndProc(Message& m)
at MailClient.Common.UI.Controls.AutomationViewUserControl.WndProc(Message& m)
at MailClient.Common.UI.Controls.TouchScrollUserControl.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(ApplicationContext context)
at MailClient.Program.<>c.b__167_1()
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor, Boolean wrapExceptions)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Delegate.DynamicInvokeImpl(Object[] args)
at System.Delegate.DynamicInvoke(Object[] args)
at System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallbacks()
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at MailClient.Common.UI.Forms.BaseForm.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at Xilium.CefGlue.Interop.libcef.run_message_loop()
at MailClient.Program.Main(String[] args)

Ok. Have you tried IMAP Port 993 with different Protocols ?

Mail server settings for iCloud email clients - Apple Support

IMAP information for the incoming mail server
Server name: imap.mail.me.com
SSL Required: Yes
If you see an error message when using SSL, try using TLS instead.
Port: 993
Username: This is usually the name part of your iCloud email address (for example, emilyparker, not emilyparker@icloud.com). If your email client can’t connect to iCloud using just the name part of your iCloud email address, try using the full address.
Password: Generate an app-specific password.

Hi …

Yes, tried different protocols, the only one it connects with 'Use SSL/TLS on special port (legacy)

You can see from the diagnostics that its connecting, and occasionally it will update with new mail (headers only) but the content of the message just isnt downloading.

Ok. Yes you appear to be logging in ok which is strange you are getting those errors and not getting email.

Hopefully one of the forum members or eM Client Devs can assist with the log you provided. Sry I’m not skilled enough to read where the issue is in the log.