<feed xmlns='http://www.w3.org/2005/Atom'>
<title>aerc/worker, branch 0.2.0</title>
<subtitle>Mirror of https://git.sr.ht/~sircmpwn/aerc
</subtitle>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/'/>
<entry>
<title>Fix error handling in maildir worker</title>
<updated>2019-07-19T21:33:33+00:00</updated>
<author>
<name>Nicolai Dagestad</name>
<email>nicolai@dagestad.fr</email>
</author>
<published>2019-07-19T18:13:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=d526786c9358bc92a5ffc3233e0ba4491aff07ba'/>
<id>d526786c9358bc92a5ffc3233e0ba4491aff07ba</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Register worker in init.</title>
<updated>2019-07-19T19:37:55+00:00</updated>
<author>
<name>Reto Brunner</name>
<email>reto@labrat.space</email>
</author>
<published>2019-07-18T04:25:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=6fed04bb9fa43d3886d47d0c845d32fff11569b5'/>
<id>6fed04bb9fa43d3886d47d0c845d32fff11569b5</id>
<content type='text'>
This allows backends which can't always be compiled due to missing
dependencies (say libnotmuch) to be compiled conditionally with buildflags.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows backends which can't always be compiled due to missing
dependencies (say libnotmuch) to be compiled conditionally with buildflags.
</pre>
</div>
</content>
</entry>
<entry>
<title>maildir: Watch for new messages</title>
<updated>2019-07-17T21:29:11+00:00</updated>
<author>
<name>Ben Burwell</name>
<email>ben@benburwell.com</email>
</author>
<published>2019-07-16T17:53:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=6473848d87de099b31812f20c7eb181d5c0c3c51'/>
<id>6473848d87de099b31812f20c7eb181d5c0c3c51</id>
<content type='text'>
When a directory is opened, start watching its "new" subdirectory for
incoming messages using the fsnotify library. When creation events are
detected, run the Unseen routine to move the message from new to cur and
add new UIDs to the store, updating the UI's list of directory contents
as we go.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When a directory is opened, start watching its "new" subdirectory for
incoming messages using the fsnotify library. When creation events are
detected, run the Unseen routine to move the message from new to cur and
add new UIDs to the store, updating the UI's list of directory contents
as we go.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix header decoding</title>
<updated>2019-07-17T19:58:15+00:00</updated>
<author>
<name>Ben Burwell</name>
<email>ben@benburwell.com</email>
</author>
<published>2019-07-15T14:30:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=eb0481b9cc7d7cfff9d9c2e163bbe106eb2a0de4'/>
<id>eb0481b9cc7d7cfff9d9c2e163bbe106eb2a0de4</id>
<content type='text'>
Email headers can be encoded with different charsets, which is signalled
using a special character sequence. The go-message package provides two
different methods for accessing header values, Get(key) (actually
inherited from the embedded textproto.Header) which returns the raw
header value and Text(key), which returns the header's value decoded as
UTF-8.

Before, in the maildir backend, we were using the Get method which
sometimes resulted in encoded headers being displayed in the UI. This
patch replaces the incorrect usage of Get() with Text().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Email headers can be encoded with different charsets, which is signalled
using a special character sequence. The go-message package provides two
different methods for accessing header values, Get(key) (actually
inherited from the embedded textproto.Header) which returns the raw
header value and Text(key), which returns the header's value decoded as
UTF-8.

Before, in the maildir backend, we were using the Get method which
sometimes resulted in encoded headers being displayed in the UI. This
patch replaces the incorrect usage of Get() with Text().
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix missing format fields in maildir/container.go</title>
<updated>2019-07-13T15:21:17+00:00</updated>
<author>
<name>Drew DeVault</name>
<email>sir@cmpwn.com</email>
</author>
<published>2019-07-13T15:21:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=dba16157de96cab2736ca8fbddc1a19fa3667a3f'/>
<id>dba16157de96cab2736ca8fbddc1a19fa3667a3f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Implement maildir copy</title>
<updated>2019-07-12T15:26:39+00:00</updated>
<author>
<name>Ben Burwell</name>
<email>ben@benburwell.com</email>
</author>
<published>2019-07-11T13:44:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=d15ba24a2f0c177593533874ce3f4b70a47d832d'/>
<id>d15ba24a2f0c177593533874ce3f4b70a47d832d</id>
<content type='text'>
Create a delivery in the destination directory with the content of the
source message.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Create a delivery in the destination directory with the content of the
source message.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add maildir backend worker</title>
<updated>2019-07-12T15:09:50+00:00</updated>
<author>
<name>Ben Burwell</name>
<email>ben@benburwell.com</email>
</author>
<published>2019-07-11T13:44:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=1b8b6e218c7a70cb61c5449a204e38738b7bd945'/>
<id>1b8b6e218c7a70cb61c5449a204e38738b7bd945</id>
<content type='text'>
Add the initial implementation of a backend for Maildir accounts. Much
of the functionality required is implemented in the go-message and
go-maildir libraries, so we use them as much as possible.

The maildir worker hooks into a new maildir:// URL scheme in the
accounts.conf file which points to a container of several maildir
directories. From there, the OpenDirectory, FetchDirectoryContents, etc
messages work on subdirectories. This is implemented as a Container
struct which handles mapping between the symbolic email folder names and
UIDs to the concrete directories and file names.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add the initial implementation of a backend for Maildir accounts. Much
of the functionality required is implemented in the go-message and
go-maildir libraries, so we use them as much as possible.

The maildir worker hooks into a new maildir:// URL scheme in the
accounts.conf file which points to a container of several maildir
directories. From there, the OpenDirectory, FetchDirectoryContents, etc
messages work on subdirectories. This is implemented as a Container
struct which handles mapping between the symbolic email folder names and
UIDs to the concrete directories and file names.
</pre>
</div>
</content>
</entry>
<entry>
<title>#190 Handle gmail duplicate folder</title>
<updated>2019-07-11T23:38:40+00:00</updated>
<author>
<name>Daniel Bridges</name>
<email>bridges2@gmail.com</email>
</author>
<published>2019-07-11T04:49:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=06da4512b98e6dd0526522f5350d22555d7e5d83'/>
<id>06da4512b98e6dd0526522f5350d22555d7e5d83</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Support imaps with oauthbearer authentication (Gmail)</title>
<updated>2019-07-11T23:36:14+00:00</updated>
<author>
<name>Frode Aannevik</name>
<email>frode.aa@gmail.com</email>
</author>
<published>2019-07-10T19:00:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=b0eaf5191c9bc5b128e347625b7eef998ba63c41'/>
<id>b0eaf5191c9bc5b128e347625b7eef998ba63c41</id>
<content type='text'>
    imaps+oauthbearer://user:token@host?token_endpoint=...

 - the config Source password is used as access token if
   no token_endpoint parameter is set
 - the config Source password is used as refresh token if
   token_endpoint parameter is set, and used to exchange
   with an access token

The implementation has only been tested with Gmail.

    source = imaps+oauthbearer://{username}:{refersh_token}@imap.gmail.com:993? \
    client_id=XX&amp;\
    client_secret=XX&amp;\
    token_endpoint=https%3A%2F%2Faccounts.google.com%2Fo%2Foauth2%2Ftoken

client credentials created with

    https://console.developers.google.com/apis/credentials

refresh token created with

    https://github.com/google/gmail-oauth2-tools/blob/master/python/oauth2.py

rel: https://todo.sr.ht/~sircmpwn/aerc2/42
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
    imaps+oauthbearer://user:token@host?token_endpoint=...

 - the config Source password is used as access token if
   no token_endpoint parameter is set
 - the config Source password is used as refresh token if
   token_endpoint parameter is set, and used to exchange
   with an access token

The implementation has only been tested with Gmail.

    source = imaps+oauthbearer://{username}:{refersh_token}@imap.gmail.com:993? \
    client_id=XX&amp;\
    client_secret=XX&amp;\
    token_endpoint=https%3A%2F%2Faccounts.google.com%2Fo%2Foauth2%2Ftoken

client credentials created with

    https://console.developers.google.com/apis/credentials

refresh token created with

    https://github.com/google/gmail-oauth2-tools/blob/master/python/oauth2.py

rel: https://todo.sr.ht/~sircmpwn/aerc2/42
</pre>
</div>
</content>
</entry>
<entry>
<title>Factor IMAP-specific structs out of UI models</title>
<updated>2019-07-08T20:06:28+00:00</updated>
<author>
<name>Ben Burwell</name>
<email>ben@benburwell.com</email>
</author>
<published>2019-07-08T02:43:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=c610c3cd9dd47c400e52c1858e987f5f32a7a45b'/>
<id>c610c3cd9dd47c400e52c1858e987f5f32a7a45b</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
</feed>
