summaryrefslogtreecommitdiff
path: root/src/leap/bitmask/mail/imap/mailbox.py
AgeCommit message (Collapse)Author
2017-10-11[bug] fix incorrect imap flags for mailboxesKali Kaneko
for some reason the implementation was returning a list of default flags for every mailbox, that's incorrect according to the spec. we have the plan to implement special mailboxes soon, but for now I'm merging this as it's needed to get nylas prototype working. - Resolves: #9031
2017-05-24[refactor] simplify wrapper create and add_msgKali Kaneko (leap communications)
- remove premature optimization for fast-notifies. blobs will cover that, no point in maintaning the optimization at the price of creeping complexity.
2017-05-24[bug] fix sending mail error from pixelatedKali Kaneko (leap communications)
- Create the 'Sent folder' ourselves to avoid pixelated hitting a bug in mailbox creation. - I believe there's still a problem with bitmask desing for the adaptor (in get-or-create mailbox). This needs further tests. - Case manipualation to avoid having a 'Sent' and 'SENT' folder when Thunderbird and Pixelated write to those. - Further hacks to monkeypatch the leap-mail-adapter that Pixelated uses (make them reuse the account instance!). This is getting insane, I am really looking forward to the fork. - Duly note our technical debt in the area of Pixelated integration. Keeping the Pixelated codebase untouched for a long time will backfire. As far as I've noticed, we have a basic violation of the assumptions about a single-instance writes and notifications to all listeners. As commented in the commit, this should go either for a guarantee that only one account object is created per user (creating it in the bootstrapping process in bitmask), or for the opposite direction in which the listeners are communicated in some other way (zmq events, for instance). - In any case, it's strongly recommended to deduplicate the Pixelated libraries as soon as possible and make Pixelated use a better defined set of Bitmask's public apis. - Modify the wrapper create methods so that they return the modified wrapper itself. - Resolves: #8903, #8904
2017-05-16[bug] fix notification for incoming mail with several listeners registeredKali Kaneko (leap communications)
When setting the listeners in the IMAP Folder, we avoid setting more than one listener for the same imap mailbox (because in some situations we were registering way too many listeners). this was making the pixelated inbox registering the notification and therefore the imap mailbox not being registered. this MR also refactors the way pixelated is initialized, so that it avoid creating a second Account instance. In this way, we make sure that the pixelated mua and the imap server share the same collections for a given mailbox, and therefore any of the two is able to get a notification whenever the other adds a message to the mailbox. - Resolves: #8846, #8798
2017-05-01[bug] remove remanents of IMAP profiling codeRuben Pollan
- Resolves: #8870
2017-04-27[style] pep8 fixesKali Kaneko (leap communications)
2017-04-27[bug] unify logging style using class attrKali Kaneko (leap communications)
I changed most of the logger statements to use a class attribute, in this way it's easier to identify which class it's logging them. in some cases I leave a module-level logger, when we're either using functions or when the module it's too small. at the same time I did a general review and cleanup of the logging statements.
2016-11-03[bug] message can also be a BytesIOVictor Shyba
Twisted 16.5 sends a BytesIO as message, which was unexpected in this types list.
2016-10-10[bug] fix error logging calls using twisted loggerdrebs
2016-10-07[refactor] use new logger infrastructureKali Kaneko (leap communications)
2016-09-01[refactor] fix imports after merging submodulesKali Kaneko (leap communications)
2016-08-29[pkg] move mail source to leap.bitmask.mailKali Kaneko (leap communications)