aboutsummaryrefslogtreecommitdiffstats
path: root/worker/imap/fetch.go
Commit message (Collapse)AuthorAgeFilesLines
* imap/fetch.go: report error when fetching headers failsBen Fiedler2020-04-241-3/+4
| | | | | Correct me if I'm wrong, but shouldn't this raise an error when it fails?
* Ignore missing message part in getDecodedPartAmir Yalon2020-03-091-1/+1
| | | | The code that calls this function handles nil without issues.
* Mark sent messages as "seen" in maildirGalen Abell2020-03-031-3/+3
| | | | | | | - Add maildir flags to complement a messages imap flags - Set the "seen" flag on sent messages when using the maildir backend - Cleanup AppendMessage interface to use models.Flag for both IMAP and maildir
* worker/imap: don't decode in FetchFullMessage.Reto Brunner2020-01-181-27/+2
| | | | | Doing that breaks `git am` as it expected the encoded variant. Same is probably true for any sort of signature validation (gpg / dkim)
* imap: decode reader prior to returning themReto Brunner2020-01-051-10/+90
|
* Factor IMAP-specific structs out of UI modelsBen Burwell2019-07-081-5/+5
| | | | | | | Before, we were using several IMAP-specific concepts to represent information being displayed in the UI. Factor these structures out of the IMAP package to make it easier for other backends to provide the required information.
* Use []uint32 instead of imap.SeqSetBen Burwell2019-07-081-8/+6
| | | | | | | | A sequence-set is an IMAP-specific implementation detail. Throughout the UI, aerc simply operates using lists of opaque identifiers. In order to loosen the coupling between the UI and IMAP in particular, replace most usages of imap.SeqSet with []uint32, leaving the translation to a SeqSet to the IMAP backend as needed.
* Factor UI models out of the worker message packageBen Burwell2019-07-081-15/+26
| | | | | | | | Before, the information needed to display different parts of the UI was tightly coupled to the specific messages being sent back and forth to the backend worker. Separating out a models package allows us to be more specific about exactly what a backend is able to and required to provide for the UI.
* Update our message flags when server updates themDrew DeVault2019-06-091-2/+22
|
* Fetch headers w/peek to leave emails unreadYash Srivastav2019-06-081-0/+1
|
* implements ability to view headers in message viewYash Srivastav2019-06-071-1/+20
|
* Don't send Done until finished fetching messagesDrew DeVault2019-06-021-0/+3
|
* Flesh out multipart switcherDrew DeVault2019-05-201-1/+1
|
* s/aerc2/aerc/gDrew DeVault2019-05-171-1/+1
|
* worker/imap: use the IMAP connection from a single goroutineSimon Ser2019-04-291-41/+37
| | | | | | | | | | | | | Unfortunately, the IMAP protocol hasn't been designed to be used from multiple goroutines at the same time. For instance, if you fetch twice the same message from two different goroutines, it's not possible to tell whether the response is for one receiver or the other. For this reason, go-imap clients aren't safe to use from multiple goroutines. This commit changes the IMAP workers to be synchronous again (a command is executed only after the previous one has completed). To use IMAP from different threads, popular clients (e.g. Thunderbird) typically open multiple connections.
* Make message viewer real, part twoDrew DeVault2019-03-311-11/+14
|
* Rename FetchMessageBodies to FetchFullMessagesDrew DeVault2019-03-311-10/+10
|
* Make the message viewer real, part oneDrew DeVault2019-03-311-6/+26
|
* Don't parse mail in worker; send a reader insteadDrew DeVault2019-03-311-10/+2
|
* Pull BodyStructure up from IMAP workerDrew DeVault2019-03-311-4/+6
|
* Add body fetching support codeDrew DeVault2019-03-291-15/+46
|
* Implement :delete-messageDrew DeVault2019-03-201-0/+1
|
* Display message subjects in message listDrew DeVault2019-03-141-0/+46