2 commits - pykolab/cli

Jeroen van Meeuwen vanmeeuwen at kolabsys.com
Wed Oct 16 12:00:43 CEST 2013


 pykolab/cli/cmd_list_deleted_mailboxes.py |    2 +-
 pykolab/cli/cmd_list_mailbox_metadata.py  |    2 +-
 pykolab/cli/cmd_list_mailboxes.py         |    2 +-
 pykolab/cli/cmd_set_mailbox_metadata.py   |    5 +++--
 4 files changed, 6 insertions(+), 5 deletions(-)

New commits:
commit 54985158fb5d945801445cf1651758b8e3ff9636
Author: Timotheus Pokorra (TBits.net) <tp at tbits.net>
Date:   Wed Oct 16 12:00:03 2013 +0200

    Fix set-mailbox-metadata to handle folders with UTF-8 characters (#2297)

diff --git a/pykolab/cli/cmd_set_mailbox_metadata.py b/pykolab/cli/cmd_set_mailbox_metadata.py
index acff7c5..d58ee31 100644
--- a/pykolab/cli/cmd_set_mailbox_metadata.py
+++ b/pykolab/cli/cmd_set_mailbox_metadata.py
@@ -25,6 +25,7 @@ import pykolab
 
 from pykolab.imap import IMAP
 from pykolab.translate import _
+from pykolab import imap_utf7
 from pykolab import utils
 
 log = pykolab.getLogger('pykolab.cli')
@@ -93,6 +94,6 @@ def execute(*args, **kw):
         print >> sys.stderr, _("No such folder %r") % (folder)
 
     else:
-        folders = imap.lm(folder)
+        folders = imap.lm(imap_utf7.encode(folder))
         for folder in folders:
-            imap.set_metadata(folder, metadata_path, metadata_value)
+            imap.set_metadata(imap_utf7.decode(folder), metadata_path, metadata_value)


commit 05f6bf8d7ef033b70f9f9eb7fbccaba107b327e2
Author: Timotheus Pokorra (TBits.net) <tp at tbits.net>
Date:   Wed Oct 16 11:56:50 2013 +0200

    Properly encode output so it can be piped and redirected (#2254)

diff --git a/pykolab/cli/cmd_list_deleted_mailboxes.py b/pykolab/cli/cmd_list_deleted_mailboxes.py
index 305a129..d39f890 100644
--- a/pykolab/cli/cmd_list_deleted_mailboxes.py
+++ b/pykolab/cli/cmd_list_deleted_mailboxes.py
@@ -75,7 +75,7 @@ def execute(*args, **kw):
         mbox_parts = imap.parse_mailfolder(folder)
 
         if not conf.raw:
-            print "%s (Deleted at %s)" % (imap_utf7.decode(folder), datetime.datetime.fromtimestamp(int(mbox_parts['hex_timestamp'], 16)))
+            print "%s (Deleted at %s)" % (imap_utf7.decode(folder).encode('utf-8'), datetime.datetime.fromtimestamp(int(mbox_parts['hex_timestamp'], 16)))
         else:
             print "%s (Deleted at %s)" % (folder, datetime.datetime.fromtimestamp(int(mbox_parts['hex_timestamp'], 16)))
 
diff --git a/pykolab/cli/cmd_list_mailbox_metadata.py b/pykolab/cli/cmd_list_mailbox_metadata.py
index a07420d..ac98283 100644
--- a/pykolab/cli/cmd_list_mailbox_metadata.py
+++ b/pykolab/cli/cmd_list_mailbox_metadata.py
@@ -83,7 +83,7 @@ def execute(*args, **kw):
         metadata = []
         folders = imap.list_folders(folder)
         for folder in folders:
-            print "Folder", folder
+            print "Folder", folder.encode('utf-8')
 
             metadata = imap.get_metadata(folder)
 
diff --git a/pykolab/cli/cmd_list_mailboxes.py b/pykolab/cli/cmd_list_mailboxes.py
index f9391eb..d6be0ee 100644
--- a/pykolab/cli/cmd_list_mailboxes.py
+++ b/pykolab/cli/cmd_list_mailboxes.py
@@ -89,6 +89,6 @@ def execute(*args, **kw):
 
     for folder in folders:
         if not conf.raw:
-            print imap_utf7.decode(folder)
+            print imap_utf7.decode(folder).encode('utf-8')
         else:
             print folder




More information about the commits mailing list