summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschmonz <schmonz@pkgsrc.org>2013-07-02 01:13:30 +0000
committerschmonz <schmonz@pkgsrc.org>2013-07-02 01:13:30 +0000
commit7d50ee61a31e31e4c9043f54d33931edba779816 (patch)
tree01b4db7dcd21ab25ce0f36e8c5a3ea939bbbd539
parentd46665e4bbe2cb1b33d76bb2e7275566634c2cb5 (diff)
downloadpkgsrc-7d50ee61a31e31e4c9043f54d33931edba779816.tar.gz
Update to 3.5 (new upstream). From the changelog:
v3.5 (2013-06-05) * Added digest generation and post-processing hooks. * Fix html2text configuration (ignored since 2012-10-04). * Fix opmlexport crash due to orphaned feed data. * Use feed names in OPML 'text' attributes. v3.4 (2013-05-14) * Added post-processing hooks for user-specified message manipulation. * Added settings for IMAP delivery. The old `use-smtp` boolean has been replaced by a new `email-protocol` setting. Non-IMAP users should adjust their configuration to set `email-protocol` to either `sendmail` or `smtp`. v3.3 (2013-04-13) * Fix SMTP message submission logic. * Fix error inheritence (super() calls). * Convert html2text parsing errors to `ProcessingError`s. * Cleanup html2text error handling. * Drop Google Reader rel-via manipulation. * Drop the wrapping <table> elements from HTML mail v3.2 (2013-03-13) * Use extended interpolation in configuration files, to allow percent signs (%). * Added .as_string() fallback to email flattening (only used if `use-smtp = False` and `use-8bit = True`). * Added sendmail configuration option. Change this if you want to use an alternative, sendmail-compatible mailer. v3.1 (2013-02-14) * Import __url__, __author__, and __email__ in rss2email.error, which fixes bugs in formatting a number of errors. v3.0 (2013-02-13) * Changed project email (rss2email@tremily.us) and homepage (http://github.com/wking/rss2email). * Split static configuration parameters into a ConfigParser-read config file (rss2email.cfg). Data that depends on the feed state is recorded using JSON (rss2email.json). * Use the XDG Base Directory Specification for standardized configuration and data file locations. * Converted the command line interface to argparse, with some restructuring along the way. * Added the r2e.1 man page (based on one from the Debian package). * Added setup.py and a PyPI page for simpler installation (http://pypi.python.org/pypi/rss2email). * Added Message-ID headers to outgoing email. * Added a test suite. * Upgraded to Python 3.2 to take advantage of cleaner Unicode handling and argparse. * Require Signed-off-by lines in new commit messages, following the Linux and Git projects.
-rw-r--r--mail/rss2email/MESSAGE9
-rw-r--r--mail/rss2email/Makefile51
-rw-r--r--mail/rss2email/PLIST43
-rw-r--r--mail/rss2email/distinfo13
-rw-r--r--mail/rss2email/files/r2e.194
-rw-r--r--mail/rss2email/patches/patch-aa21
-rw-r--r--mail/rss2email/patches/patch-ab15
-rw-r--r--mail/rss2email/patches/patch-ad14
-rw-r--r--mail/rss2email/patches/patch-rss2email_feed.py15
-rw-r--r--mail/rss2email/patches/patch-rss2email_main.py15
10 files changed, 105 insertions, 185 deletions
diff --git a/mail/rss2email/MESSAGE b/mail/rss2email/MESSAGE
index 6811b775c24..ecacc737c5f 100644
--- a/mail/rss2email/MESSAGE
+++ b/mail/rss2email/MESSAGE
@@ -1,9 +1,16 @@
===========================================================================
-$NetBSD: MESSAGE,v 1.1 2013/06/07 02:13:39 schmonz Exp $
+$NetBSD: MESSAGE,v 1.2 2013/07/02 01:13:30 schmonz Exp $
Just before upgrading to 3.x:
$ r2e run
$ r2e opmlexport feeds.xml
+Just after upgrading from 2.x:
+
+$ r2e new
+$ vi ~/.rss2email/config.py ~/.config/rss2email.cfg # keep custom settings
+$ r2e opmlimport feeds.xml
+$ r2e run --no-send
+
===========================================================================
diff --git a/mail/rss2email/Makefile b/mail/rss2email/Makefile
index 34ff358c8a7..8ae9a05110a 100644
--- a/mail/rss2email/Makefile
+++ b/mail/rss2email/Makefile
@@ -1,50 +1,41 @@
-# $NetBSD: Makefile,v 1.31 2013/06/07 02:13:39 schmonz Exp $
+# $NetBSD: Makefile,v 1.32 2013/07/02 01:13:30 schmonz Exp $
#
-DISTNAME= rss2email-2.71
-PKGREVISION= 3
+R2EVER= 3.5
+DISTNAME= rss2email-${R2EVER}
CATEGORIES= mail
-MASTER_SITES= ${HOMEPAGE}
-EXTRACT_SUFX= .zip
+MASTER_SITES= -http://nodeload.github.com/wking/rss2email/tar.gz/v${R2EVER}
MAINTAINER= schmonz@NetBSD.org
-HOMEPAGE= http://www.allthingsrss.com/rss2email/
+HOMEPAGE= http://github.com/wking/rss2email/
COMMENT= Get RSS feeds emailed to you
LICENSE= gnu-gpl-v2
-DEPENDS+= ${PYPKGPREFIX}-feedparser-[0-9]*:../../textproc/py-feedparser
-DEPENDS+= ${PYPKGPREFIX}-html2text-[0-9]*:../../textproc/py-html2text
+DEPENDS+= ${PYPKGPREFIX}-expat-[0-9]*:../../textproc/py-expat
+DEPENDS+= ${PYPKGPREFIX}-feedparser>=5.0.1:../../textproc/py-feedparser
+DEPENDS+= ${PYPKGPREFIX}-html2text>=3.0.1:../../textproc/py-html2text
-NO_BUILD= yes
-PYTHON_PATCH_SCRIPTS= *.py
+PYTHON_VERSIONS_INCLUDE_3X= yes
+PYTHON_VERSIONS_INCOMPATIBLE= 26 27
+
+PYDISTUTILSPKG= yes
+PY_PATCHPLIST= yes
+REPLACE_PYTHON= test/test.py
SUBST_CLASSES+= bin
SUBST_STAGE.bin= do-configure
-SUBST_FILES.bin= rss2email.py r2e
+SUBST_FILES.bin= rss2email/main.py
SUBST_SED.bin= -e 's|@LOCALBASE@|${LOCALBASE}|g'
-SUBST_SED.bin+= -e 's|@PREFIX@|${PREFIX}|g'
-SUBST_SED.bin+= -e 's|@PYTHONBIN@|${PYTHONBIN}|g'
-
-SUBST_CLASSES+= crlf
-SUBST_STAGE.crlf= post-extract
-SUBST_FILES.crlf= config.py.example
-SUBST_SED.crlf= -e 's| ||g'
-SHAREDIR= ${PREFIX}/share/rss2email
-EGDIR= ${PREFIX}/share/examples/rss2email
-INSTALLATION_DIRS= bin ${PKGMANDIR}/man1
+INSTALLATION_DIRS= ${PKGMANDIR}/man1
-post-extract:
- cp ${FILESDIR}/r2e.1 ${WRKSRC}
+do-test:
+ cd ${WRKSRC} && env PYTHONPATH=.:${LOCALBASE}/share/html2text ./test/test.py
-do-install:
+post-install:
set -e; cd ${WRKSRC}; \
- ${INSTALL_SCRIPT_DIR} ${DESTDIR}${SHAREDIR}; \
- ${INSTALL_SCRIPT} rss2email.py ${DESTDIR}${SHAREDIR}; \
- ${INSTALL_DATA_DIR} ${DESTDIR}${EGDIR}; \
- ${INSTALL_DATA} config.py.example ${DESTDIR}${EGDIR}/config.py; \
- ${INSTALL_MAN} r2e.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1; \
- ${INSTALL_SCRIPT} r2e ${DESTDIR}${PREFIX}/bin
+ ${INSTALL_MAN} r2e.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
.include "../../lang/python/application.mk"
+.include "../../lang/python/extension.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/mail/rss2email/PLIST b/mail/rss2email/PLIST
index 661fcf98a31..ba376b30dbe 100644
--- a/mail/rss2email/PLIST
+++ b/mail/rss2email/PLIST
@@ -1,5 +1,42 @@
-@comment $NetBSD: PLIST,v 1.3 2009/06/14 18:04:42 joerg Exp $
+@comment $NetBSD: PLIST,v 1.4 2013/07/02 01:13:30 schmonz Exp $
bin/r2e
man/man1/r2e.1
-share/examples/rss2email/config.py
-share/rss2email/rss2email.py
+${PYSITELIB}/rss2email/__init__.py
+${PYSITELIB}/rss2email/__init__.pyc
+${PYSITELIB}/rss2email/__init__.pyo
+${PYSITELIB}/rss2email/command.pyc
+${PYSITELIB}/rss2email/command.pyo
+${PYSITELIB}/rss2email/config.pyc
+${PYSITELIB}/rss2email/config.pyo
+${PYSITELIB}/rss2email/email.pyc
+${PYSITELIB}/rss2email/email.pyo
+${PYSITELIB}/rss2email/error.pyc
+${PYSITELIB}/rss2email/error.pyo
+${PYSITELIB}/rss2email/feed.pyc
+${PYSITELIB}/rss2email/feed.pyo
+${PYSITELIB}/rss2email/feeds.pyc
+${PYSITELIB}/rss2email/feeds.pyo
+${PYSITELIB}/rss2email/main.pyc
+${PYSITELIB}/rss2email/main.pyo
+${PYSITELIB}/rss2email/util.pyc
+${PYSITELIB}/rss2email/util.pyo
+${PYSITELIB}/rss2email/version.pyc
+${PYSITELIB}/rss2email/version.pyo
+${PYSITELIB}/rss2email/command.py
+${PYSITELIB}/rss2email/config.py
+${PYSITELIB}/rss2email/email.py
+${PYSITELIB}/rss2email/error.py
+${PYSITELIB}/rss2email/feed.py
+${PYSITELIB}/rss2email/feeds.py
+${PYSITELIB}/rss2email/main.py
+${PYSITELIB}/rss2email/post_process/__init__.py
+${PYSITELIB}/rss2email/post_process/__init__.pyc
+${PYSITELIB}/rss2email/post_process/__init__.pyo
+${PYSITELIB}/rss2email/post_process/downcase.pyc
+${PYSITELIB}/rss2email/post_process/downcase.pyo
+${PYSITELIB}/rss2email/post_process/prettify.pyc
+${PYSITELIB}/rss2email/post_process/prettify.pyo
+${PYSITELIB}/rss2email/post_process/downcase.py
+${PYSITELIB}/rss2email/post_process/prettify.py
+${PYSITELIB}/rss2email/util.py
+${PYSITELIB}/rss2email/version.py
diff --git a/mail/rss2email/distinfo b/mail/rss2email/distinfo
index 8ae39a33726..e4f78c7cc83 100644
--- a/mail/rss2email/distinfo
+++ b/mail/rss2email/distinfo
@@ -1,8 +1,7 @@
-$NetBSD: distinfo,v 1.20 2011/06/09 06:21:58 schmonz Exp $
+$NetBSD: distinfo,v 1.21 2013/07/02 01:13:30 schmonz Exp $
-SHA1 (rss2email-2.71.zip) = aa0123a02139415acdcb765bdcafe4c568d5c16b
-RMD160 (rss2email-2.71.zip) = 2c2e81b6d4e2101ca7e82d524b6222aa44056e95
-Size (rss2email-2.71.zip) = 63612 bytes
-SHA1 (patch-aa) = 5c35ae987257ed8fbe2efae11f144e37b1236d45
-SHA1 (patch-ab) = a53ac7577f897750d51f0db17be5b28480278097
-SHA1 (patch-ad) = 2dd7fe698eae415085fe62f3df16337cc95481c3
+SHA1 (rss2email-3.5.tar.gz) = b6fb59c1765ffd5a7f8b2d892011ca7fb351cd5f
+RMD160 (rss2email-3.5.tar.gz) = d94321e3d3fea4274f6d0d2f91cd72b0de3e76e2
+Size (rss2email-3.5.tar.gz) = 158424 bytes
+SHA1 (patch-rss2email_feed.py) = 142520ccf2a567bb0925253c257586f8b4da33ad
+SHA1 (patch-rss2email_main.py) = 3d30cec4068f11031624356dd36cf9b739d0755f
diff --git a/mail/rss2email/files/r2e.1 b/mail/rss2email/files/r2e.1
deleted file mode 100644
index 5cd8e60da4a..00000000000
--- a/mail/rss2email/files/r2e.1
+++ /dev/null
@@ -1,94 +0,0 @@
-.TH R2E 1a
-.SH NAME
-r2e \- receive RSS feeds by email
-.SH SYNOPSIS
-.B r2e action [options]
-.SH DESCRIPTION
-.BR r2e
-is a simple program which you can run in your crontab.
-It watches RSS feeds and sends you nicely formatted email message
-for each new item.
-.P
-The program is configured by ~/.rss2email/config.py
-.P
-For a quick start with r2e, try these steps:
-.P
-.RS
-.nf
-.BI "r2e new " your@address
-.BI "r2e add " http://feed.url/somewhere.rss
-.BI "r2e run "
-.RE
-.P
-The last command should eventually be put into your crontab, if you
-want things be sent you automatically.
-.SH ACTIONS
-.TP
-.B new [youremail]
-Create a new feedfile. If the second option is specified, it sets the
-default email address that mails are sent to.
-.TP
-.B add url [youremail]
-Subscribe to a feed. The first option is the URL of the feed.
-The optional second option is the email address to send new items to.
-Repeat for each feed you want to subscribe to.
-.TP
-.B run [--no-send]
-Scan the feeds and send emails for new items. This can be run in a cron
-job.
-The --no-send option stops r2e from sending any email. This can be
-useful the first time you run it, as otherwise it would send every
-available story.
-.TP
-.B email yournewemail
-Change the default email address.
-.TP
-.B list
-List all your currently subscribed feeds.
-.TP
-.B delete n
-Delete a feed, using its number from the list command.
-.SH "CONFIGURATION"
-The following configuration variables can be set in the ~/.rss2email/config.py
-config file. The file is a python file, so variables are set using a syntax
-like this: VARIABLE = "value"
-.P
-If the value is a number, the quotes may be omitted. Most configuration
-variables in the file are boolean values, where a 1 indicates the option is
-set, and a 0 disables it.
-.TP
-.B DEFAULT_FROM
-The email address messages are from by default, if the rss feed does not
-specify an email address. The default valus is "bozo@dev.null"
-.TP
-.B FORCE_FROM
-If set, the DEFAULT_FROM address will always be used, otherwise use
-the email address specified by the feed, when possible.
-.TP
-.B HTML_MAIL
-If set, HTML mail will be sent as such. Otherwise, entries will be
-converted to plain text before sending.
-.TP
-.B TRUST_GUID
-If set, receive one email per post. Otherwise, a new email will be sent
-each time a post changes.
-.TP
-.B DATE_HEADER
-If set, the mail's date will be set to the date the item was posted, if
-possible. Otherwise, the date will be based on the time the email is sent.
-.TP
-.B QP_REQUIRED
-If set, do a quoted printible conversion; otherwise send message in 8 bits.
-.TP
-.B VERBOSE
-If set, feeds are named as they're processed.
-.SH FILES
-.TP
-.B ~/.rss2email/feeds.dat
-The database of feeds. Use r2e to add, remove, or modify feeds, do not edit
-it directly.
-.TP
-.B ~/.rss2email/config.py
-If this file exists, it it read to configure the program.
-.SH AUTHOR
-Aaron Swartz <me@aaronsw.com>
diff --git a/mail/rss2email/patches/patch-aa b/mail/rss2email/patches/patch-aa
deleted file mode 100644
index 3a1db9a98da..00000000000
--- a/mail/rss2email/patches/patch-aa
+++ /dev/null
@@ -1,21 +0,0 @@
-$NetBSD: patch-aa,v 1.5 2011/06/09 06:21:58 schmonz Exp $
-
-Missing sample config entries from the Debian package.
-
---- config.py.example.orig 2011-01-28 01:22:26.000000000 +0000
-+++ config.py.example
-@@ -92,3 +92,14 @@ PROXY=""
- # To most correctly encode emails with international characters, we iterate through the list below and use the first character set that works
- # Eventually (and theoretically) ISO-8859-1 and UTF-8 are our catch-all failsafes
- CHARSET_LIST='US-ASCII', 'BIG5', 'ISO-2022-JP', 'ISO-8859-1', 'UTF-8'
-+
-+## html2text options ##
-+
-+# Use Unicode characters instead of their ascii psuedo-replacements
-+UNICODE_SNOB = 0
-+
-+# Put the links after each paragraph instead of at the end.
-+LINKS_EACH_PARAGRAPH = 0
-+
-+# Wrap long lines at position. 0 for no wrapping. (Requires Python 2.3.)
-+BODY_WIDTH = 0
diff --git a/mail/rss2email/patches/patch-ab b/mail/rss2email/patches/patch-ab
deleted file mode 100644
index 116033c32ad..00000000000
--- a/mail/rss2email/patches/patch-ab
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-ab,v 1.5 2011/06/09 06:21:58 schmonz Exp $
-
-Fixes from the Debian package.
-
---- r2e.orig 2006-03-16 23:43:03.000000000 +0000
-+++ r2e
-@@ -1,2 +1,7 @@
- #!/bin/sh
--python rss2email.py feeds.dat $*
-+set -e
-+if [ ! -d ~/.rss2email ]; then
-+ mkdir ~/.rss2email
-+fi
-+cd ~/.rss2email
-+exec @PYTHONBIN@ @PREFIX@/share/rss2email/rss2email.py feeds.dat $*
diff --git a/mail/rss2email/patches/patch-ad b/mail/rss2email/patches/patch-ad
deleted file mode 100644
index 1b266bd72b9..00000000000
--- a/mail/rss2email/patches/patch-ad
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD: patch-ad,v 1.9 2011/06/09 06:21:58 schmonz Exp $
-
-Find the pkgsrc-provided py-html2text.
-
---- rss2email.py.orig 2011-03-04 13:51:24.000000000 +0000
-+++ rss2email.py
-@@ -296,6 +296,7 @@ for e in ['error', 'gaierror']:
- import feedparser
- feedparser.USER_AGENT = "rss2email/"+__version__+ " +http://www.allthingsrss.com/rss2email/"
-
-+sys.path.append("@LOCALBASE@/share/html2text")
- import html2text as h2t
-
- h2t.UNICODE_SNOB = UNICODE_SNOB
diff --git a/mail/rss2email/patches/patch-rss2email_feed.py b/mail/rss2email/patches/patch-rss2email_feed.py
new file mode 100644
index 00000000000..9d7c9e3d12f
--- /dev/null
+++ b/mail/rss2email/patches/patch-rss2email_feed.py
@@ -0,0 +1,15 @@
+$NetBSD: patch-rss2email_feed.py,v 1.1 2013/07/02 01:13:30 schmonz Exp $
+
+Upstream 4aa7f1d: "Fixed syntactical error when generating HTML mails"
+
+--- rss2email/feed.py.orig 2013-06-05 22:13:14.000000000 +0000
++++ rss2email/feed.py
+@@ -709,7 +709,7 @@ class Feed (object):
+ lines.extend([
+ '</head>',
+ '<body>',
+- '<div id="entry>',
++ '<div id="entry">',
+ '<h1 class="header"><a href="{}">{}</a></h1>'.format(
+ link, subject),
+ '<div id="body">',
diff --git a/mail/rss2email/patches/patch-rss2email_main.py b/mail/rss2email/patches/patch-rss2email_main.py
new file mode 100644
index 00000000000..c7362151460
--- /dev/null
+++ b/mail/rss2email/patches/patch-rss2email_main.py
@@ -0,0 +1,15 @@
+$NetBSD: patch-rss2email_main.py,v 1.1 2013/07/02 01:13:30 schmonz Exp $
+
+Find the pkgsrc-provided py-html2text.
+
+--- rss2email/main.py.orig 2013-06-05 22:13:14.000000000 +0000
++++ rss2email/main.py
+@@ -21,6 +21,8 @@ import argparse as _argparse
+ import logging as _logging
+ import sys as _sys
+
++_sys.path.append("@LOCALBASE@/share/html2text")
++
+ from . import __doc__ as _PACKAGE_DOCSTRING
+ from . import __version__
+ from . import LOG as _LOG