Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

example that maintains local cache? #402

Open
simsong opened this issue Jun 7, 2020 · 1 comment
Open

example that maintains local cache? #402

simsong opened this issue Jun 7, 2020 · 1 comment

Comments

@simsong
Copy link

simsong commented Jun 7, 2020

This imap implementation is much easier to use than the one built into Python! Thank you for providing it.

The IMAP Wiki says that it is incorrect for imap clients to download an entire mailbox every time it is referenced. Instead, the client is supposed to cache the mailbox locally and just download changes.

This is functionality that would be reasonable to have in imapclient. However, it seems that this functionality is not present. Is there an intent to add such functionality? Failing that, could there be an example of how to implement it?

@mjs
Copy link
Owner

mjs commented Jul 1, 2020

I don't think it makes sense for IMAPClient to have this sort of functionality built in as the approach to syncing will likely be driven by requirements, technology stack and server capabilites. A starter example in the documentation would be good to have though.

I'm not sure when I'll have time to write this but as a starting point I'd recommend looking at the UID and UIDVALIDITY sections of RFC3501. RFC4949 and RFC7162 are also really useful in this respect.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants