summaryrefslogtreecommitdiff
path: root/src/leap/mail/imap
AgeCommit message (Collapse)Author
2014-01-22Handle non-ascii headers. Closes #5021.Ivan Alejandro
2014-01-22Add find_charset helper and use where is needed.Ivan Alejandro
2014-01-21workaround for recursionlimit due to qtreactorKali Kaneko
2014-01-20make the read/write operations over sets atomicKali Kaneko
Fixes: #5009
2014-01-20Fix search command filterTomás Touceda
2014-01-20Fix typo in the signal_unread method. Closes: #5001Kali Kaneko
It had been made public to be called from the overwritten methods in service.imap
2014-01-17Merge remote-tracking branch ↵Tomás Touceda
'refs/remotes/ivan/bug/handle-unicode-characters' into develop
2014-01-17Fix encodings usage, use custom json.loads method.Ivan Alejandro
Also remove some unused imports.
2014-01-17Add a fetch_headers for mass-header fetch queriesKali Kaneko
2014-01-17refactor common pattern to utility functionKali Kaneko
2014-01-17Separate RECENT Flag to a mailbox document.Kali Kaneko
this way we avoid a bunch of writes.
2014-01-16Temporal refactor setting of recent flag.Kali Kaneko
This flag is set way too often, and is damaging performance. Will move it to a single doc per mailbox in subsequente commits.
2014-01-16Fix grave bug with iteration in STOREKali Kaneko
This was in the root for problems with Trash behavior. Closes: #4958 Make use of the refactored utilities for bounding and filtering sequences.
2014-01-16factor out bound and filter for msg seqsKali Kaneko
2014-01-16fix internaldate storageKali Kaneko
2014-01-16reset last uid on expungeKali Kaneko
2014-01-16patch UIDVALIDITY response for conformance to the specKali Kaneko
testimap was choking on this.
2014-01-16Dispatch the flags query if it's the only one.Kali Kaneko
ie, we got something like FETCH 1:* (FLAGS) but not for FETCH 1:* (FLAGS INTERNALDATE)
2014-01-15Update service initialization fileKali Kaneko
This will need to place a configuration file with: * userid * uuid * password (optional) Use it for even faster startup times, and running under the native twisted reactor.
2014-01-15Performance improvement on FLAGS-only FETCHKali Kaneko
* Compute the intersection set of the uids on a FETCH, so we avoid iterating through the non-existant UIDs. * Dispatch FLAGS query to our specialized method, that fetches all the flags documents and return objects that only specify one subset of the MessagePart interface, apt to render flags quickly with less queries overhead. * Overwrite the do_FETCH command in the imap Server to use fetch_flags. * Use deferLater for a better dispatch of tasks in the reactor.
2014-01-15remove use of soledad_writerKali Kaneko
Since the soledad client lock gets us covered with writes now, it makes no sense to enqueue using the messageconsumer. The SoledadWriter is left orphaned by now. We might want to reuse it to enqueue low priority tasks that need a strategy of retries in case of revisionconflicts. the MessageConsumer abstraction should also be useful for the case of the smtp queue.
2014-01-14remove locks (moved to soledad client)Kali Kaneko
2014-01-13Very limited support for SEARCH Commands. Closes: #4209Kali Kaneko
limited to HEADER Message-ID. This is a quick workaround for avoiding duplicate saves in Drafts Folder. but we'll get there!
2014-01-13Restore the encoding of the messages. Fixes: #4956Kali Kaneko
We still are getting wrong output with unicode chars, but this at least avoids breaking the fetch command.
2014-01-13Add check for uniqueness when adding mails.Kali Kaneko
Check by mbox + content-hash
2014-01-11add offline flagKali Kaneko
2014-01-09Merge remote-tracking branch 'refs/remotes/ivan/feature/remove-unneded-code' ↵Tomás Touceda
into develop
2014-01-09Remove unneded repr wrapper.Ivan Alejandro
Also use pep8 recommended raise format: raise Exception("message") # instead of: raise Exception, "message"
2014-01-09Merge remote-tracking branch 'refs/remotes/kali/bug/4925_close_session' into ↵Tomás Touceda
develop
2014-01-09Convert unicode to str when raising in IMAP server (#4830).drebs
2014-01-08add a flag to be able to close the sessionKali Kaneko
2014-01-08add a quick message fetching utility for testsKali Kaneko
2014-01-08handle all fetches as sequentialKali Kaneko
* this allows quick testing using telnet, and the use of other less sofisticated MUAs.
2014-01-08Second stage of the new year's storage rewrite.Kali Kaneko
* documents of only three types: * flags * headers * content * add algorithm for walking the parsed message tree. * treat special cases like a multipart with a single part. * modify add_msg to use the walk routine * modify twisted interfaces to use the new storage schema. * tests for different multipart cases * fix multipart detection typo in the fetch This is a merge proposal for the 0.5.0-rc3. known bugs ---------- Some things are still know not to work well at this point (some cases of multipart messages do not display the bodies). IMAP server also is left in a bad internal state after a logout/login.
2014-01-08move utility to its ownKali Kaneko
2014-01-08tests infrastructure for multipartKali Kaneko
2014-01-08fix tests after rewriteKali Kaneko
2014-01-08add documentation to the decorator, fix errorback.Kali Kaneko
* it also fixes the traceback in the errorback, thanks to chiiph, who reads documentation instead of whinning :D * other minor documentation corrections
2014-01-08First stage of the storage schema rewrite.Kali Kaneko
* Separates between flags, docs, body and attachment docs. * Implement IMessageCopier interface: move and have fun! This little change is known to push forward our beloved architect emotional rollercoster. * Message deduplication. * It also fixes a hidden bug that was rendering the multipart mime interface useless (yes, the "True" parameter in the parsestr method). * Does not handle well nested attachs, includes dirty workaround that flattens them. * Includes chiiph's patch for rc2: * return deferred from addMessage * convert StringIO types to string * remove unneeded yields from the chain of deferreds in fetcher
2013-12-26Split the near-2k loc file into more handy modules.Kali Kaneko
...aaaand not a single fuck was given that day!
2013-12-26inlineCallbacks all the things!Kali Kaneko
2013-12-26Move flags and other metadata to a separate doc.Kali Kaneko
This change will allow for quicker access times, and smaller syncs since the fields that change more often will fall in a pretty small document. For the big raw message, we only need to sync once. Also, implemented multipart interface for messages. This will need additional migration helper in --repair-mailboxes.
2013-12-26defer costly operationsKali Kaneko
2013-12-24Fix parsing of IMAP folder names (#4830).drebs
2013-12-20Limit the size of the returned messages from IMAP to MUA to 100Tomás Touceda
2013-12-20fix wrong object callKali Kaneko
2013-12-20Merge remote-tracking branch ↵Tomás Touceda
'refs/remotes/kali/bug/use-soledad-writer-for-updates' into develop
2013-12-20safety catch against wrong last_uidKali Kaneko
2013-12-20use soledad_writer for puts alsoKali Kaneko
2013-12-19Only try to fetch keys for multipart signed or encrypted messages when ↵drebs
fetching mail (#4671).