Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
So we're safe under the green lights before further rewriting.
:)
|
|
|
|
|
|
|
|
* Some more docstring completion/fixes.
* Removed unneeded str coertion.
* Handle mailbox name in logs.
* Separate manhole boilerplate into its own file.
|
|
because THE KEYS WILL BE STRINGS AFTER ADDED TO SOLEDAD
Can I remember that?
* Fix copy from local folders
* Fix copy when we already have a copy of the message in the inbox,
marked as deleted.
* Fix also bad deferred.succeed in add_msg when it already exist.
|
|
I must have removed this to get rid of a error with some test sample
during the testing of the branch, but it's absolutely needed so that
mime attachments get shown properly. If the TypeError raises
inapropiately due to some malformed part_map, then we will have to
catch it using a workaround somewhere else.
|
|
|
|
Passing along a deferred as an observer whose callback will be
called with the proper result.
Returning to thread in the appropiate points.
just let's remember that twisted APIs are not thread safe!
SoledadStore process_item also properly returned to thread.
Changed @deferred to @deferred_to_thread so it results less
confusing to read.
"know the territory". aha!
|
|
We pre-fetch the uids from soledad on mailbox initialization
|
|
|
|
Also, check for empty body-doc
|
|
* reorganize and simplify STORE command processing
* add the notification after the processing of the whole sequence
|
|
Also some fixes for None comparisons.
|
|
|
|
|
|
|
|
* add new/dirty deferred dict to notify when written to disk
* fix eventual duplication after copy
* fix flag flickering on first retrieval.
|
|
|
|
|
|
move parts-related bits to messageparts
pass soledad in initialization for memory messages
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fixes: #5009
|
|
'refs/remotes/ivan/bug/handle-unicode-characters' into develop
|
|
Also remove some unused imports.
|
|
|
|
|
|
this way we avoid a bunch of writes.
|
|
|
|
|
|
* 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.
|
|
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.
|
|
|
|
limited to HEADER Message-ID.
This is a quick workaround for avoiding duplicate saves in Drafts Folder.
but we'll get there!
|
|
We still are getting wrong output with unicode chars, but this
at least avoids breaking the fetch command.
|
|
Check by mbox + content-hash
|
|
* 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.
|
|
|
|
|
|
* it also fixes the traceback in the errorback, thanks to
chiiph, who reads documentation instead of whinning :D
* other minor documentation corrections
|
|
* 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
|