Commit Graph

125 Commits

Author SHA1 Message Date
Nicolas Sebrecht
d5853b5d65 learn to not delete messages
This enables the "append" mode feature. Configuration option is sync_deletes in
both local and remote repositories. Marked EXPERIMENTAL and UNTESTED.

Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-04-09 22:08:28 +02:00
Nicolas Sebrecht
41e275e9a2 make sqlite status cache the default
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-04-09 21:06:38 +02:00
Nicolas Sebrecht
e51b828013 add documentation for the ipv6 configuration option
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-02-23 07:09:53 +01:00
Nicolas Sebrecht
36165e391f update links to the new URL www.offlineimap.org
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-02-19 12:10:23 +01:00
Nicolas Sebrecht
d5bd6dd5dd declare newmail_hook option stable
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-01-24 19:31:26 +01:00
Nicolas Sebrecht
70708e2b6f declare utime_from_header option stable
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-01-24 19:24:07 +01:00
Nicolas Sebrecht
e5580ddba9 decode foldernames is removed EXPERIMENTAL flag
Introduce warnings because I'm not using this feature and encoding issues might
be a nightmare to fix. I'm not ready to support this.

Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-01-24 19:21:33 +01:00
Nicolas Sebrecht
65d2c6938a declare XOAUTH2 stable
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-01-24 19:16:25 +01:00
Nicolas Sebrecht
64763b0645 declare tls_level option stable
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-01-24 19:15:23 +01:00
Nicolas Sebrecht
94fbe8773d declare IMAP Keywords option stable
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-01-24 19:14:12 +01:00
ojab
cfa704bbf2 Allow authorization via XOAUTH2 using access token
Signed-off-by: Slava Kardakov <ojab@ojab.ru>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-12-30 00:25:57 +01:00
Igor Almeida
def087eeea IMAP keyword sync: add Maildir configuration example
Signed-off-by: Igor Almeida <igor.contato@gmail.com>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-11-22 19:51:47 +01:00
Nicolas Sebrecht
74e5ff5785 Merge branch 'renard-timestap-maildir' into next 2015-11-04 10:37:57 +01:00
Sébastien Gross
3d125602f6 Add documentation for filename_use_mail_timestamp.
Signed-off-by: Sébastien Gross <seb•ɑƬ•chezwam•ɖɵʈ•org>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-11-04 10:37:08 +01:00
Nicolas Sebrecht
8cbe5640b2 offlineimap.conf: improve namtrans doc a bit
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-10-15 13:42:17 +02:00
Nicolas Sebrecht
acd368479c offlineimap.conf: fix erroneous assumption about ssl23
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-10-12 23:40:12 +02:00
Nicolas Sebrecht
e2f2ec16a5 offlineimap.conf: improve documentation on SSL, mark tls_level experimental
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-10-12 15:54:26 +02:00
Ben Boeckel
f03afcd224 imapserver: add a tls_level option
Allow the user to block usage of known-bad versions of SSL and TLS.

Signed-off-by: Ben Boeckel <mathstuf@gmail.com>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-10-12 15:54:15 +02:00
Nicolas Sebrecht
ebb2124dbb Merge branch 'Frizlab-gmail-oauth-2' into next 2015-10-06 14:25:15 +02:00
Christopher Corley
f7efaa2093 learn XOAUTH2 authentication
Signed-off-by: François Lamboley <francois.lamboley@happn.com>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-10-06 14:24:42 +02:00
Matthew Krafczyk
839d0201be offlineimap.conf: fix a typo in the new mail hook example
Also add --play-and-stop since if vlc is being used with the loop option, at the
same time that cvlc is executed, the sound will play endlessly.

Signed-off-by: Matthew Krafczyk <krafczyk.matthew@gmail.com>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-09-26 12:56:37 +02:00
Nicolas Sebrecht
d53e5fc8bd offlineimap.conf: don't use quotes for sep option
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-09-22 09:14:03 +02:00
Nicolas Sebrecht
55ca922dd1 Merge branch 'krafczyk-new-mail-hook-2' into next 2015-09-11 21:04:52 +02:00
Matthew Krafczyk
48bb2f4113 Added the newmail_hook
When new mail arrives, this hook is triggered, allowing the user to
play a sound, or launch a popup.

Signed-off-by: Matthew Krafczyk <krafczyk.matthew@gmail.com>
2015-09-11 20:34:38 +02:00
Nicolas Sebrecht
14a0433d5c utf-7 feature is set experimental
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-09-04 00:31:15 +02:00
Tommie Gannert
a6e7b6627b Add decodefoldernames option to decode IMAP folder names using UTF-7.
Signed-off-by: Tommie Gannert <tommie@gannert.se>
2015-08-29 16:43:33 +01:00
mobamoba
115d141218 Update offlineimap.conf
Updated to add reference to how Windows refers to a SHA fingerprint.

Submitted-by: mobamoba <mobamoba@users.noreply.github.com>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-05-15 00:12:39 +02:00
Nicolas Sebrecht
5f0915d06e offlineimap.conf: proxy leaks DNS support
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-04-13 00:05:51 +02:00
Janna Martl
8096f6cd5b maxage: fix timezone issues, remove IMAP-IMAP support, add startdate option
1. When using maxage, local and remote messagelists are supposed to only
contain messages from at most maxage days ago. But local and remote used
different timezones to calculate what "maxage days ago" means, resulting
in removals on one side. Now, we ask the local folder for maxage days'
worth of mail, find the lowest UID, and then ask the remote folder for
all UID's starting with that lowest one.

2. maxage was fundamentally wrong in the IMAP-IMAP case: it assumed that
remote messages have UIDs in the same order as their local counterparts,
which could be false, e.g. when messages are copied in quick succession.
So, remove support for maxage in the IMAP-IMAP case.

3. Add startdate option for IMAP-IMAP syncs: use messages from the given
repository starting at startdate, and all messages from the other
repository. In the first sync, the other repository must be empty.

4. Allow maxage to be specified either as number of days to sync (as
previously) or as a fixed date.

Signed-off-by: Janna Martl <janna.martl109@gmail.com>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-04-07 11:54:35 +02:00
Nicolas Sebrecht
05d6357adc mark utim_from_header as TESTING
This is really in for a long time but due to recent changes and because it was
undocumented, mark it non-stable.

Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-04-06 17:50:10 +02:00
Nicolas Sebrecht
8fc8061133 offlineimap.conf: document the "utime_from_header" option
This was introduced in 3bc66c0858 and never
documented.

Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-03-27 17:00:14 +01:00
Ben Boeckel
4217fccb82 mbnames: add option to write the file once per account
The basic problem is in the context of syncing multiple accounts where
one is fast and the others are slower (due to the number of folders).
When the fast account completes, the other accounts are partially written
through the list and if the file is read during this time, the list can
be useless. However, in the general case, the file is probably left
around from a previous run of offlineimap and is more correct, so add an
option to leave it alone until all syncing is done.

Incremental is still the default since this running offlineimap using
its own timer setup is likely the most common setup. Turning it off
works best with one-shot mode triggered by cron or systemd timers.

Signed-off-by: Ben Boeckel <mathstuf@gmail.com>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-03-22 21:15:46 +01:00
Nicolas Sebrecht
60cc58c38e DNS of the website changed, reflect it
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-03-21 13:40:06 +01:00
Nicolas Sebrecht
8bcefc7558 offlineimap.conf: add note about known issues
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-03-19 17:07:04 +01:00
Nicolas Sebrecht
0dfe57d0ca offlineimap.conf: explain the remotehost line must match the domain defined in the certificate
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-03-18 22:36:01 +01:00
Nicolas Sebrecht
0b43418911 docs: full refactoring of the MANUAL
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-03-10 16:33:30 +01:00
夏恺(Xia Kai)
d36209a305 add proxy support powered by PySocks
Read proxy option in imapserver, instantiate a class in imaplibutil
using a self-defined keyword and a socket instance, and use this socket
instance to substitute the default socket instance used in imaplib2.

Signed-off-by: 夏恺(Xia Kai) <xiaket@gmail.com>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-02-17 10:34:20 +01:00
Nicolas Sebrecht
73952b8c2c offlineimap.conf: say what is the default value for the sep option
Some style improvements.

Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-02-13 17:43:29 +01:00
Eygene Ryabinkin
f69613965f Make OS-default CA certificate file to be requested explicitely
This simplifies logics for the user, especially if he uses both
fingerprint and certificate validation: it is hard to maintain
the compatibility with the prior behaviour and to avoid getting
default CA bundle to be disabled when fingerprint verification
is requested.

See
  http://thread.gmane.org/gmane.mail.imap.offlineimap.general/6695
for discussion about this change.

Default CA bundle is requested via 'sslcertfile = OS-DEFAULT'.

I had also enforced all cases where explicitely-requested CA bundles
are non-existent to be hard errors: when users asks us to use CA
bundle (and, thus, certificate validation), but we can't find one,
we must error out rather than happily continue and downgrade to
no validation.

Reported-By: Edd Barrett <edd@theunixzoo.co.uk>
Reviewed-By: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
2015-01-18 22:05:49 +03:00
Nicolas Sebrecht
03eafcc00f offlineimap.conf: normalize style and format
- improve style and reading for the eyes
- improve wording
- add minor comments
- remove on duplicate option
- give location of each +1 section

Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-01-14 17:23:53 +01:00
Nicolas Sebrecht
16baabdeaa minor: offlineimap.conf: give the specific entry to the MANUAL about IDLE
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-01-10 12:36:18 +01:00
Nicolas Sebrecht
3a60c85373 offlineimap.conf: fix minor typo in comments
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-01-08 16:01:27 +01:00
Eygene Ryabinkin
e51ed80ecc Enable tilde and environment variable expansion on some items
Expand environment variables in the following configuration items:
- general.pythonfile;
- general.metadata;
- mbnames.filename;
- Repository.localfolders.
- Repository.sslcacertfile.

Make tilde and environment variable expansion in the following
configuration items:
- Repository.sslclientcert;
- Repository.sslclientkey.

GitHub pull request: https://github.com/OfflineIMAP/offlineimap/pull/113
Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
2014-11-12 09:40:12 +03:00
Eygene Ryabinkin
d2ec2a4e9e Extend handling of cert_fingerprint
Add ability to specify multiple fingerprints.

Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
2014-05-11 22:45:34 +04:00
Abdo Roig-Maranges
09556d645e Adapt plain status folder to gmail labels stuff
* Implements Status Folder format v2, with a mechanism to upgrade an
    old statusfolder.

  * Do not warn about Gmail and GmailMaildir needing sqlite backend
    anymore.

  * Clean repository.LocalStatus reusing some code from
    folder.LocalStatus.

  * Change field separator in the plaintext file from ':' to '|'. Now
    the local status stores gmail labels. If they contain field
    separator character (formerly ':'), they get messed up. The new
    character '|' is less likely to appear in a label.

Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
2014-05-06 23:37:11 +04:00
Abdó Roig-Maranges
789e047734 Extend handling of GMail labels header
Format headers X-Label and Keywords as a space separated list and all
other ones as comma-separated entities.  This makes OfflineIMAP label
handling to be compatible with some user agents that recognise these
headers.

Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
2014-05-06 23:37:03 +04:00
Abdó Roig-Maranges
0e4afa9132 Make GmailFolder sync GMail labels
When synclabels config flag is set to "yes" for the GMail repo,
offlineimap fetches the message labels along with the messages, and
embeds them into the body under the header X-Keywords (or whatever
'labelsheader' was set to), as a comma separated list.

It also adds an extra pass to savemessageto, that performs label
synchronization on existing messages from GMail to local, the same way
it is done with flags.

We also introduce GmailMaildir repository that adds functionality to
change message labels.  It keeps track of messages modification time,
so one can quickly detect when the labels may have changed.

Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
2014-05-06 23:36:06 +04:00
Abdó Roig-Maranges
5391476dfb Add ability to trim some local mail headers
When filterheaders is set to a comma-separated list of headers,
OfflineIMAP removes those headers from messages before uploading them
to the server.

Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
2014-05-03 14:45:28 +04:00
Abdó Roig-Maranges
0903428fda Enable compressed connections to the IMAP server
Added the configuration setting usecompression for the IMAP repositories.
When enabled, the data from and to the IMAP server is compressed.

Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
2014-05-02 19:30:49 +04:00
Eygene Ryabinkin
829c9cf4be Introduce dynamic filtering for repository folders
Allow people who want folder filtering to depend on the external
conditions or to make it dynamic for other reasons, to do what
they want.

New repository configuration knob 'dynamic_folderfilter' was
introduced; it defaults to 'False' that matches historical behaviour.

GitHub: #73
Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
2014-03-02 16:37:41 +04:00