summaryrefslogtreecommitdiff
path: root/src/leap/bitmask/mail
AgeCommit message (Collapse)Author
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] allow incoming mail to be properly notified to pixelatedKali Kaneko (leap communications)
If we do fast-notifies with pixelated running, the poll notifications for new mail on inbox break on pixelated side, because the email is not ready. - Related: #8798
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-05-01[feature] streamline and move manhole into coreKali Kaneko (leap communications)
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.
2017-04-27[bug] migrate all failures to twisted loggerKali Kaneko (leap communications)
2017-04-27[bug] catch failures with newer twisted loggerKali Kaneko (leap communications)
the migration from the stdlib python's logger to twisted logger is unable to format properly the failures unless the call is adapted - Related: #8849
2017-04-12[bug] delay initialization of pixelatedKali Kaneko (leap communications)
- Related: #8798
2017-03-31[bug] Log error in case JSON parsing fails for decrypted docSriram Viswanathan
In addition to the UnicodeError exception in _process_decrypted_doc function, we have added ValueError to the exception list so that we can catch any error in JSON parsing, specially a 'NODATA' error that we were getting with some of the emails. This is in reference to issues - https://github.com/pixelated/pixelated-user-agent/issues/908 & https://github.com/pixelated/pixelated-user-agent/issues/981 - to ignore documents that have this problem and not have Soledad try to sync them again and again. with @deniscostadsc
2017-03-31[bug] fix errBack in _decrypt_doc in incoming mail serviceSriram Viswanathan
with @deniscostadsc
2017-03-15[feature] Add errBack to log the doc_id when decrypt failsSriram Viswanathan
with @deniscostadsc
2017-03-12[bug] remove offline toggledrebs
The offline toggle added a race condition in which the client could end up offline forever. We decided to remove it for now and then decide if soledad client needs to know about network connectivity (check: https://0xacab.org/leap/soledad/issues/8789).
2017-03-05[feature] pixelated UA integrationKali Kaneko (leap communications)
a bit hacky and all, but this should launch the service and allow interacting from the default site (localhost:9090). this is the first example of a pyqt-js bridge, it's an interesting mechanism that we can use more in the future. no efforts made so far in authenticating the app.
2017-02-27[test] pass a fake shared db to soledad during testsdrebs
2017-02-27[refactor] use new soledad client parameterdrebs
- Resolves: #8721
2017-02-09[style] remove unused signaling new mail methodRuben Pollan
2017-02-09[feat] Get more detailed status report for emailRuben Pollan
- Resolves: #8754
2017-01-31Extract re-decrypt with new key methodTulio Casagrande
Signed-off-by: Ruben Pollan <meskio@sindominio.net>
2017-01-31Propagate errors to the calling methodsTulio Casagrande
Signed-off-by: Ruben Pollan <meskio@sindominio.net>
2017-01-31[docs] update parameters and return namesTulio Casagrande
Signed-off-by: Ruben Pollan <meskio@sindominio.net>
2017-01-31Repeat decryption if signed with attached keyTulio Casagrande
Previously, if an email was signed with a new key, that was also sent as an attachment, the verification of the signature could fail if the only available source of this new key is the attachment ifself. I changed to extract the attachment before adding the leap header, which is responsible for the signed/encrypted flags. Also, if the previous verification failed and a new key was successful imported, it's going to decrypt the original email again, just to update the verify status. Signed-off-by: Ruben Pollan <meskio@sindominio.net>
2017-01-31Indicate a successful/failure OpenPGP header importTulio Casagrande
Signed-off-by: Ruben Pollan <meskio@sindominio.net>
2017-01-31Extract method for easy reuseTulio Casagrande
Signed-off-by: Ruben Pollan <meskio@sindominio.net>
2017-01-31Add missing errbackTulio Casagrande
Signed-off-by: Ruben Pollan <meskio@sindominio.net>
2017-01-31Remove unused parameterTulio Casagrande
Signed-off-by: Ruben Pollan <meskio@sindominio.net>
2016-11-22[tests] fix keymanager tests after refactor and mergeZara Gebru
- some pep8 problems - some confusion with old and new code after merging from old keymanager
2016-11-06[feat] change update period with environment variabledrebs
2016-11-04[doc] fix typoTulio Casagrande
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-21[bug] capture the exception value properlyKali Kaneko (leap communications)
this looks like a careless migration to twisted failures. who knows how long this was like this, this should be covered by tests.
2016-10-21[bug] fix yet another logger syntax errorKali Kaneko (leap communications)
2016-10-19[bug] Fix warning logging.Denis Costa
Following Twisted documentation, I found out that the warning method doesn't exist on logger class. That class has warn method instead. And I got a error because of that. https://twistedmatrix.com/documents/16.4.1/api/twisted.logger.Logger.html
2016-10-19[feat] leap.mail: expose content charset as a separated attributeNavaL
Before we used to have content_doc.content_type = 'text/plain; charset="utf-8"'. Currently, we have content_doc.content_type = 'text/plain'. This change will give us, on top of that: content_doc.charset = 'utf-8'. One can reconstruct the original one using .content_type and .charset.
2016-10-17[bug] use twisted.logger and fix logging namespacedrebs
2016-10-10[feat] improve mail service log messagesdrebs
2016-10-10[bug] fix error logging calls using twisted loggerdrebs
2016-10-07[style] pep8Kali Kaneko (leap communications)
2016-10-07[refactor] use new logger infrastructureKali Kaneko (leap communications)
2016-10-07[refactor] remove dead codeKali Kaneko (leap communications)
not using this anymore, was a vile hack. and a very bad idea too, happy to see it gone.
2016-10-03[feature] stop fetching mail on inavalid token errordrebs
2016-10-03[refactor] standardize smtp and imap service modulesdrebs
2016-10-03[bug] use correct twisted log api for warningsdrebs
2016-10-03[bug] stop syncing after logout (#8479)drebs
2016-09-30[refactor] turn mail services into twisted servicesdrebs
2016-09-28[bug] fix typoKali Kaneko (leap communications)
2016-09-22[feat] use twisted.logger in incoming mail service moduledrebs
2016-09-20[feat] discover gpg bin path instead of hardcode itRuben Pollan
2016-09-01[refactor] fix imports after merging submodulesKali Kaneko (leap communications)