Hello ports@,

This is an update for mail/rss2email to 3.13.1. Changelog here:
https://github.com/rss2email/rss2email/blob/master/CHANGELOG

One of the changes is switching to feedparser 6, which makes some
breaking changes. As I recently discovered, there are still some ports
depending on the Python 2 support, which was dropped in feedparser 6:
https://marc.info/?l=openbsd-ports&m=162426699521483&w=2, so upgrading
feedparser is somewhat blocked until we get rid of or upgrade the
ports depending on Python 2 feedparser.

Luckily it's not too hard to patch rss2email to support feedparser 5,
see the patch below. Also includes a change to do-test to pick up some
new tests.

I'll try to make some changes upstream to keep rss2email feedparser 5/6
compatible, so we won't need this patch at some point.

diff --git mail/rss2email/Makefile mail/rss2email/Makefile
index 0df852869d0..ea4308b1618 100644
--- mail/rss2email/Makefile
+++ mail/rss2email/Makefile
@@ -2,7 +2,7 @@

 COMMENT =      convert RSS/Atom newsfeeds to email

-MODPY_EGG_VERSION = 3.12.1
+MODPY_EGG_VERSION = 3.13.1
 DISTNAME =     rss2email-${MODPY_EGG_VERSION}
 CATEGORIES =   mail www

@@ -23,6 +23,6 @@ post-install:
        ${INSTALL_MAN} ${WRKSRC}/r2e.1 ${PREFIX}/man/man1/

 do-test:
-       cd ${WRKSRC} && env PYTHONPATH=. ${MODPY_BIN} test/test.py
+       cd ${WRKSRC}/test && env PYTHONPATH=. ${MODPY_BIN} -m unittest

 .include <bsd.port.mk>
diff --git mail/rss2email/distinfo mail/rss2email/distinfo
index 21ccd7c800a..7644c8993c6 100644
--- mail/rss2email/distinfo
+++ mail/rss2email/distinfo
@@ -1,2 +1,2 @@
-SHA256 (rss2email-3.12.1.tar.gz) = gGL9XSOQDu4/03N9yYr/NnPoYGrG+MQd7YbmMOCKF38=
-SIZE (rss2email-3.12.1.tar.gz) = 82342
+SHA256 (rss2email-3.13.1.tar.gz) = OZRER2aHS7Ncn4htp287JL4ct7uvQPrRKxbyr4CsEpY=
+SIZE (rss2email-3.13.1.tar.gz) = 164683
diff --git mail/rss2email/patches/patch-rss2email_feed_py 
mail/rss2email/patches/patch-rss2email_feed_py
new file mode 100644
index 00000000000..436d8c773f4
--- /dev/null
+++ mail/rss2email/patches/patch-rss2email_feed_py
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Maintain compatibility with feedparser 5, which doesn't have the 
feedparser.http module.
+
+Index: rss2email/feed.py
+--- rss2email/feed.py.orig
++++ rss2email/feed.py
+@@ -445,7 +445,7 @@ class Feed (object):
+         elif isinstance(exc, _SOCKET_ERRORS):
+             _LOG.error('{}: {}'.format(exc, self))
+             warned = True
+-        elif isinstance(exc, _feedparser.http.zlib.error):
++        elif isinstance(exc, _feedparser.zlib.error):
+             _LOG.error('broken compression: {}'.format(self))
+             warned = True
+         elif isinstance(exc, (IOError, AttributeError)):

Reply via email to