aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2019-07-06 19:50:06 +0200
committerGuilhem Moulin <guilhem@fripost.org>2019-07-07 04:01:55 +0200
commit550f778dbcb84a9aa67732b1fff0191b55bea24c (patch)
tree01058d5e892ce17a3d5732eb26e33db19c4ddd0b
parent4b61d5e13773bf8bf25537f28d1a42f7c6473b75 (diff)
interimap: clarify that 'ignore-mailbox' is matched against internal names.
That is, without leading reference, and where the hierarchy delimiter is replaced with null characters. /!\ This changes breaks backward compatibility!
-rw-r--r--Changelog8
-rw-r--r--doc/interimap.1.md5
-rw-r--r--interimap.sample9
3 files changed, 19 insertions, 3 deletions
diff --git a/Changelog b/Changelog
index 4cc66ba..84a62b6 100644
--- a/Changelog
+++ b/Changelog
@@ -1,5 +1,13 @@
interimap (0.5) upstream;
+ Breaking changes:
+ * interimap: when matching mailbox names against the 'ignore-mailbox'
+ pattern, the hierarchy delimiter is substituted with a null character
+ before hand. For instance one should now use '^virtual(?:\x00|$)' to
+ exclude the mailbox named 'virtual' as well as its descendants
+ (regardless of the hierarchy delimiter in use).
+
+ Other changes:
* interimap: the space-speparated list of names and/or patterns in
'list-mailbox' can now contain C-style escape sequences (backslash
and hexadecimal escape).
diff --git a/doc/interimap.1.md b/doc/interimap.1.md
index 387850a..d7c3711 100644
--- a/doc/interimap.1.md
+++ b/doc/interimap.1.md
@@ -266,7 +266,10 @@ Valid options are:
: An optional Perl Compatible Regular Expressions ([PCRE]) covering
mailboxes to exclude: any ([UTF-7 encoded][RFC 2152] and unquoted)
mailbox listed in the initial `LIST` responses is ignored if it
- matches the given expression.
+ matches the given expression after trimming the reference names and
+ substituting the hiearchy delimiter with the null character. For
+ instance, specifying `^virtual(?:\x00|$)` excludes the mailbox named
+ “virtual” as well as its descendants.
Note that the *MAILBOX*es given as command-line arguments bypass the
check and are always considered for synchronization. This option is
only available in the default section.
diff --git a/interimap.sample b/interimap.sample
index f771e54..2433563 100644
--- a/interimap.sample
+++ b/interimap.sample
@@ -1,7 +1,12 @@
#database = imap.example.org.db
-#list-mailbox = "*"
+
+# only consider subscribed mailboxes
list-select-opts = SUBSCRIBED
-ignore-mailbox = ^virtual/
+#list-mailbox = "*"
+
+# ignore the mailbox named 'virtual' and its descendants
+ignore-mailbox = ^virtual(?:\x00|$)
+
[local]
type = tunnel