aboutsummaryrefslogtreecommitdiff
path: root/mail/offlineimap
diff options
context:
space:
mode:
authorEygene Ryabinkin <rea@FreeBSD.org>2012-06-19 08:41:42 +0000
committerEygene Ryabinkin <rea@FreeBSD.org>2012-06-19 08:41:42 +0000
commit68dba16b26408fd084e827379372a4c97a1c5c9a (patch)
treede0500f46fc648bd3325df3746f01f7a5ad855c3 /mail/offlineimap
parentda7e82640f558c26de79bae3b81b5ee4f0c36d20 (diff)
downloadports-68dba16b26408fd084e827379372a4c97a1c5c9a.tar.gz
ports-68dba16b26408fd084e827379372a4c97a1c5c9a.zip
Notes
Diffstat (limited to 'mail/offlineimap')
-rw-r--r--mail/offlineimap/Makefile49
-rw-r--r--mail/offlineimap/distinfo4
-rw-r--r--mail/offlineimap/files/patch-fix-super-usage31
-rw-r--r--mail/offlineimap/files/patch-imaplib2-python-bug347337
-rw-r--r--mail/offlineimap/files/patch-use-interpolation62
5 files changed, 101 insertions, 82 deletions
diff --git a/mail/offlineimap/Makefile b/mail/offlineimap/Makefile
index be2b60fd919a..3ec3af046777 100644
--- a/mail/offlineimap/Makefile
+++ b/mail/offlineimap/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= offlineimap
-DISTVERSION= 6.5.2.1
+DISTVERSION= 6.5.4
CATEGORIES= mail python
MASTER_SITES= http://cloud.github.com/downloads/spaetz/offlineimap/ \
http://dist.codelabs.ru/fbsd/offlineimap/
@@ -22,24 +22,36 @@ LICENSE_FILE_GPLv2=${WRKSRC}/COPYING
OPTIONS= HTMLDOCS "Generate HTML documentation" Off
-WRKSRC= ${WRKDIR}/${PORTNAME}
+WRKSRC= ${WRKDIR}/${GITHUB_USER}-${PORTNAME}-${GITHUB_HASH}
SUB_FILES= pkg-message
PATCH_STRIP= -p1
+GITHUB_USER= spaetz
+GITHUB_HASH= c9e9690
+
USE_PYTHON= 2.6+
USE_PYDISTUTILS= yes
-DOCS= Changelog.rst README.rst SubmittingPatches.rst \
- docs/FAQ.rst docs/INSTALL.rst docs/MANUAL.rst docs/UPGRADE.rst
-EXAMPLES= offlineimap.conf offlineimap.conf.minimal
-PORTDOCS= ${DOCS:T}
-PORTEXAMPLES= ${EXAMPLES}
+DOC_FILES= Changelog.maint.rst Changelog.rst \
+ docs/INSTALL.rst docs/MANUAL.rst \
+ docs/doc-src/API.rst docs/doc-src/FAQ.rst \
+ docs/doc-src/HACKING.rst docs/doc-src/INSTALL.rst \
+ docs/doc-src/MANUAL.rst docs/doc-src/advanced_config.rst \
+ docs/doc-src/features.rst docs/doc-src/index.rst \
+ docs/doc-src/nametrans.rst docs/doc-src/offlineimap.rst \
+ docs/doc-src/repository.rst docs/doc-src/ui.rst
+PORTDOCS= docs ${DOC_FILES:N*/*}
+EXAMPLE_FILES= offlineimap.conf offlineimap.conf.minimal
+PORTEXAMPLES= ${EXAMPLE_FILES:N*/*}
+
+DOC_DIRS= ${DOC_FILES:H:O:u:N.}
+EXAMPLE_DIRS= ${EXAMPLE_FILES:H:O:u:N.}
.include <bsd.port.options.mk>
.if !defined(NOPORTDOCS) && defined(WITH_HTMLDOCS)
BUILD_DEPENDS+= rst2html:${PORTSDIR}/textproc/py-docutils
-DOCS:= ${DOCS} ${DOCS:M*.rst:S/.rst$/.html/}
+DOC_FILES:= ${DOC_FILES} ${DOC_FILES:M*.rst:S/.rst$/.html/}
.endif
# This is needed for pkg-message.in
@@ -51,19 +63,32 @@ SUB_LIST+= PORTEXAMPLES=""
post-build:
.if !defined(NOPORTDOCS) && defined(WITH_HTMLDOCS)
-.for r in ${DOCS:M*.rst}
- rst2html ${WRKSRC}/${r} ${WRKSRC}/${r:R}.html
+.for r in ${DOC_FILES:M*.rst}
+ @${ECHO} "Translating ${r} to HTML..."
+ @rst2html ${WRKSRC}/${r} ${WRKSRC}/${r:R}.html
.endfor
.endif
post-install:
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
- cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${DOCSDIR}
+ @for i in ${DOC_DIRS}; do \
+ ${MKDIR} ${DOCSDIR}/$$i; \
+ done
+ @cd ${WRKSRC} && for i in ${DOC_FILES}; do \
+ ${ECHO} "Installing ${DOCSDIR}/$$i"; \
+ ${INSTALL_DATA} $$i ${DOCSDIR}/$$i; \
+ done
.endif
.if !defined(NOPORTEXAMPLES)
@${MKDIR} ${EXAMPLESDIR}
- cd ${WRKSRC} && ${INSTALL_DATA} ${EXAMPLES} ${EXAMPLESDIR}
+ @for i in ${EXAMPLE_DIRS}; do \
+ ${MKDIR} ${EXAMPLESDIR}/$$i; \
+ done
+ @cd ${WRKSRC} && for i in ${EXAMPLE_FILES}; do \
+ ${ECHO} "Installing ${EXAMPLESDIR}/$$i"; \
+ ${INSTALL_DATA} $$i ${EXAMPLESDIR}/$$i; \
+ done
.endif
@${CAT} ${PKGMESSAGE}
diff --git a/mail/offlineimap/distinfo b/mail/offlineimap/distinfo
index 7e81718ed47d..d0e13c9b8aa7 100644
--- a/mail/offlineimap/distinfo
+++ b/mail/offlineimap/distinfo
@@ -1,2 +1,2 @@
-SHA256 (offlineimap-v6.5.2.1.tar.gz) = 996aa89bcc27fbbbb40f021d7043b5606059587d79105a5c9dbc0096754c95ad
-SIZE (offlineimap-v6.5.2.1.tar.gz) = 161136
+SHA256 (offlineimap-v6.5.4.tar.gz) = 831a97b5154f398b65e1c06427668b78cf833d99fac36cc8278ad2cf0c393a0c
+SIZE (offlineimap-v6.5.4.tar.gz) = 167023
diff --git a/mail/offlineimap/files/patch-fix-super-usage b/mail/offlineimap/files/patch-fix-super-usage
deleted file mode 100644
index ada8d2ddd25e..000000000000
--- a/mail/offlineimap/files/patch-fix-super-usage
+++ /dev/null
@@ -1,31 +0,0 @@
-From 45c1d4fc6ed09d6e1a5412c2ac902b236b4e212f Mon Sep 17 00:00:00 2001
-From: Eygene Ryabinkin <rea@codelabs.ru>
-Date: Sun, 19 Feb 2012 20:55:06 +0400
-Subject: [PATCH] Fix Curses interface for Python 2.6
-
-In 2.6 all logging classes are not the new-style ones, so they
-have no mro() method and, thus, we can't use super() for them.
-Since CursesLogHanler is singly-inherited method, there will
-be no problems in usage of the explicit superclass name.
-
-Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
----
- offlineimap/ui/Curses.py | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/offlineimap/ui/Curses.py b/offlineimap/ui/Curses.py
-index af41d35..fa791bb 100644
---- a/offlineimap/ui/Curses.py
-+++ b/offlineimap/ui/Curses.py
-@@ -282,7 +282,7 @@ class CursesLogHandler(logging.StreamHandler):
- """self.ui has been set to the UI class before anything is invoked"""
-
- def emit(self, record):
-- log_str = super(CursesLogHandler, self).format(record)
-+ log_str = logging.StreamHandler.format(self, record)
- color = self.ui.gettf().curses_color
- # We must acquire both locks. Otherwise, deadlock can result.
- # This can happen if one thread calls _msg (locking curses, then
---
-1.7.9
-
diff --git a/mail/offlineimap/files/patch-imaplib2-python-bug3473 b/mail/offlineimap/files/patch-imaplib2-python-bug3473
deleted file mode 100644
index 154d309176a1..000000000000
--- a/mail/offlineimap/files/patch-imaplib2-python-bug3473
+++ /dev/null
@@ -1,37 +0,0 @@
-From b28b53c1367352eb9f634d4f23d13142b9bbbd4d Mon Sep 17 00:00:00 2001
-From: Eygene Ryabinkin <rea@codelabs.ru>
-Date: Sun, 19 Feb 2012 17:35:28 +0400
-Subject: [PATCH] Imaplib2: work around the Python bug 3473
-
-It was not possible to pass anything, but (*args, **kwargs)
-before the following bug was solved,
- http://bugs.python.org/issue3473
-so we can't say (*args, key1 = value1, key2 = value2), but we
-should pack keys and values to the dictionary and pass it
-with **kwargs.
-
-Python <= 2.5 have this unfixed, so we should fix this in our code.
-
-Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
----
- offlineimap/imaplib2.py | 4 +++-
- 1 files changed, 3 insertions(+), 1 deletions(-)
-
-diff --git a/offlineimap/imaplib2.py b/offlineimap/imaplib2.py
-index ffa2676..ed978be 100644
---- a/offlineimap/imaplib2.py
-+++ b/offlineimap/imaplib2.py
-@@ -1591,7 +1591,9 @@ class IMAP4(object):
- def _simple_command(self, name, *args, **kw):
-
- if 'callback' in kw:
-- self._command(name, *args, callback=self._command_completer, cb_arg=kw, cb_self=True)
-+ # http://bugs.python.org/issue3473
-+ kwargs = {'callback':self._command_completer, 'cb_arg':kw, 'cb_self':True}
-+ self._command(name, *args, **kwargs)
- return (None, None)
- return self._command_complete(self._command(name, *args), kw)
-
---
-1.7.9
-
diff --git a/mail/offlineimap/files/patch-use-interpolation b/mail/offlineimap/files/patch-use-interpolation
new file mode 100644
index 000000000000..a6004f25e339
--- /dev/null
+++ b/mail/offlineimap/files/patch-use-interpolation
@@ -0,0 +1,62 @@
+From 8cf576b9edd7f7fe245d4590206ff740d3ed31e3 Mon Sep 17 00:00:00 2001
+From: Eygene Ryabinkin <rea@codelabs.ru>
+Date: Wed, 6 Jun 2012 07:45:01 +0400
+Subject: [PATCH] Use '%' instead of String.format()
+
+Python 2.6 doesn't like empty {} specifications for
+String.format(), but the ones that were changed don't
+really need the full machinery of String.format() here.
+
+Signed-off-by: Eygene Ryabinkin <rea@codelabs.ru>
+---
+ offlineimap/folder/Base.py | 2 +-
+ offlineimap/ui/UIBase.py | 6 +++---
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/offlineimap/folder/Base.py b/offlineimap/folder/Base.py
+index 6f6f364..4c3f1ca 100644
+--- a/offlineimap/folder/Base.py
++++ b/offlineimap/folder/Base.py
+@@ -386,7 +386,7 @@ class BaseFolder(object):
+ self.getmessageuidlist())
+ num_to_copy = len(copylist)
+ if num_to_copy and self.repository.account.dryrun:
+- self.ui.info("[DRYRUN] Copy {} messages from {}[{}] to {}".format(
++ self.ui.info("[DRYRUN] Copy %d messages from %s[%s] to %s" % (
+ num_to_copy, self, self.repository, dstfolder.repository))
+ return
+ for num, uid in enumerate(copylist):
+diff --git a/offlineimap/ui/UIBase.py b/offlineimap/ui/UIBase.py
+index eea929d..6608d6d 100644
+--- a/offlineimap/ui/UIBase.py
++++ b/offlineimap/ui/UIBase.py
+@@ -301,7 +301,7 @@ class UIBase(object):
+ def makefolder(self, repo, foldername):
+ """Called when a folder is created"""
+ prefix = "[DRYRUN] " if self.dryrun else ""
+- self.info("{}Creating folder {}[{}]".format(
++ self.info("%sCreating folder %s[%s]" % (
+ prefix, foldername, repo))
+
+ def syncingfolder(self, srcrepos, srcfolder, destrepos, destfolder):
+@@ -346,7 +346,7 @@ class UIBase(object):
+ def deletingmessages(self, uidlist, destlist):
+ ds = self.folderlist(destlist)
+ prefix = "[DRYRUN] " if self.dryrun else ""
+- self.info("{}Deleting {} messages ({}) in {}".format(
++ self.info("%sDeleting %s messages (%s) in %s" % (
+ prefix, len(uidlist),
+ offlineimap.imaputil.uid_sequence(uidlist), ds))
+
+@@ -474,7 +474,7 @@ class UIBase(object):
+
+ def callhook(self, msg):
+ if self.dryrun:
+- self.info("[DRYRUN] {}".format(msg))
++ self.info("[DRYRUN] %s" % (msg))
+ else:
+ self.info(msg)
+
+--
+1.7.10.3
+