mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-07-30 22:48:07 -07:00
dev-python/feedparser: Version Bump
Package-Manager: portage-2.2.23 Signed-off-by: Justin Lecher <jlec@gentoo.org>
This commit is contained in:
@@ -1 +1,2 @@
|
||||
DIST feedparser-5.1.3.tar.bz2 202373 SHA256 7f6507d400d07edfd1ea8205da36808009b0c539f5b8a6e0ab54337b955e6dc3 SHA512 6a0374e001295566316ad86a581c875cd367fc6200e30296bf917cdff7fa2a83c05565b747c37079f38755ce94565d56890a995be7ee020d0f9466ee1b7c079b WHIRLPOOL bacb6cf0563ee7feb476ea4b767586cb6fbd649d036f72f18b60330e4b4120ccb1e65a923e121108eecf64ea2343fd7a40dd56d7bf71384ff3f52ad20a59a54b
|
||||
DIST feedparser-5.2.1.tar.gz 252956 SHA256 bd030652c2d08532c034c27fcd7c85868e7fa3cb2b17f230a44a6bbc92519bf9 SHA512 1fd0c4324e2eff8ef4b15e3793c767290bca562af4a5056fdbdfa12411095530c87a113bb1b9757e532ff63aecb399b18f1e6b753884798eb6b8d3fdf575af81 WHIRLPOOL 7214fbafa15351d9d759b6d281e5edd4cf38f6285e0a2d788933c1336ab0e66c2587ea341773ed956d7a006e9b09f2f769876690eec9374c9f96b464f2c71ba3
|
||||
|
||||
@@ -8,7 +8,7 @@ PYTHON_COMPAT=( python{2_7,3_{3,4}} pypy )
|
||||
inherit distutils-r1 eutils
|
||||
|
||||
DESCRIPTION="Parse RSS and Atom feeds in Python"
|
||||
HOMEPAGE="https://code.google.com/p/feedparser/ https://pypi.python.org/pypi/feedparser"
|
||||
HOMEPAGE="https://github.com/kurtmckee/feedparser https://pypi.python.org/pypi/feedparser"
|
||||
SRC_URI="https://${PN}.googlecode.com/files/${P}.tar.bz2"
|
||||
|
||||
# sgmllib is licensed under PSF-2.
|
||||
|
||||
44
dev-python/feedparser/feedparser-5.2.1.ebuild
Normal file
44
dev-python/feedparser/feedparser-5.2.1.ebuild
Normal file
@@ -0,0 +1,44 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4,5} pypy )
|
||||
|
||||
inherit distutils-r1 eutils
|
||||
|
||||
DESCRIPTION="Parse RSS and Atom feeds in Python"
|
||||
HOMEPAGE="https://github.com/kurtmckee/feedparser https://pypi.python.org/pypi/feedparser"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
# sgmllib is licensed under PSF-2.
|
||||
LICENSE="BSD-2 PSF-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x86-solaris"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
|
||||
RDEPEND=""
|
||||
|
||||
# Tests have issues with chardet installed, and are just kind of buggy.
|
||||
RESTRICT="test"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-sgmllib.patch"
|
||||
)
|
||||
|
||||
python_prepare_all() {
|
||||
mv feedparser/sgmllib3.py feedparser/_feedparser_sgmllib.py || die
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
cp feedparser/feedparsertest.py "${BUILD_DIR}" || die
|
||||
ln -s "${S}/feedparser/tests" "${BUILD_DIR}/tests" || die
|
||||
cd "${BUILD_DIR}" || die
|
||||
if [[ ${EPYTHON} == python3* ]]; then
|
||||
2to3 --no-diffs -w -n feedparsertest.py || die
|
||||
fi
|
||||
"${PYTHON}" feedparsertest.py || die "Testing failed with ${EPYTHON}"
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
--- feedparser/feedparser.py
|
||||
+++ feedparser/feedparser.py
|
||||
@@ -135,7 +135,11 @@
|
||||
#ACCEPTABLE_URI_SCHEMES = ()
|
||||
|
||||
# ---------- required modules (should come with any Python distribution) ----------
|
||||
-import sgmllib, re, sys, copy, urlparse, time, types, cgi, urllib, urllib2, datetime
|
||||
+import re, sys, copy, urlparse, time, types, cgi, urllib, urllib2, datetime
|
||||
+try:
|
||||
+ import sgmllib
|
||||
+except ImportError:
|
||||
+ import _feedparser_sgmllib as sgmllib
|
||||
try:
|
||||
from io import BytesIO as _StringIO
|
||||
except ImportError:
|
||||
--- setup.py
|
||||
+++ setup.py
|
||||
@@ -17,7 +17,7 @@
|
||||
download_url = 'http://code.google.com/p/feedparser/',
|
||||
platforms = ['POSIX', 'Windows'],
|
||||
package_dir = {'': 'feedparser'},
|
||||
- py_modules = ['feedparser'],
|
||||
+ py_modules = ['feedparser', '_feedparser_sgmllib'],
|
||||
keywords = ['atom', 'cdf', 'feed', 'parser', 'rdf', 'rss'],
|
||||
classifiers = [
|
||||
'Development Status :: 5 - Production/Stable',
|
||||
78
dev-python/feedparser/files/feedparser-5.2.1-sgmllib.patch
Normal file
78
dev-python/feedparser/files/feedparser-5.2.1-sgmllib.patch
Normal file
@@ -0,0 +1,78 @@
|
||||
From 812793c07d3202d3f5bc39091aec2e7071d000c8 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Pipping <sebastian@pipping.org>
|
||||
Date: Sun, 1 Jan 2012 19:30:57 +0100
|
||||
Subject: [PATCH] Use shipped sgmllib for Python 3.x
|
||||
|
||||
---
|
||||
feedparser/feedparser.py | 19 +++----------------
|
||||
setup.py | 2 +-
|
||||
2 files changed, 4 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/feedparser/feedparser.py b/feedparser/feedparser.py
|
||||
index 8275c29..9a8a053 100644
|
||||
--- a/feedparser/feedparser.py
|
||||
+++ b/feedparser/feedparser.py
|
||||
@@ -204,17 +204,9 @@ else:
|
||||
try:
|
||||
import sgmllib
|
||||
except ImportError:
|
||||
- # This is probably Python 3, which doesn't include sgmllib anymore
|
||||
- _SGML_AVAILABLE = 0
|
||||
+ import _feedparser_sgmllib as sgmllib
|
||||
|
||||
- # Mock sgmllib enough to allow subclassing later on
|
||||
- class sgmllib(object):
|
||||
- class SGMLParser(object):
|
||||
- def goahead(self, i):
|
||||
- pass
|
||||
- def parse_starttag(self, i):
|
||||
- pass
|
||||
-else:
|
||||
+if True:
|
||||
_SGML_AVAILABLE = 1
|
||||
|
||||
# sgmllib defines a number of module-level regular expressions that are
|
||||
@@ -2520,9 +2512,6 @@ class _RelativeURIResolver(_BaseHTMLProcessor):
|
||||
_BaseHTMLProcessor.unknown_starttag(self, tag, attrs)
|
||||
|
||||
def _resolveRelativeURIs(htmlSource, baseURI, encoding, _type):
|
||||
- if not _SGML_AVAILABLE:
|
||||
- return htmlSource
|
||||
-
|
||||
p = _RelativeURIResolver(baseURI, encoding, _type)
|
||||
p.feed(htmlSource)
|
||||
return p.output()
|
||||
@@ -2803,8 +2792,6 @@ class _HTMLSanitizer(_BaseHTMLProcessor):
|
||||
|
||||
|
||||
def _sanitizeHTML(htmlSource, encoding, _type):
|
||||
- if not _SGML_AVAILABLE:
|
||||
- return htmlSource
|
||||
p = _HTMLSanitizer(encoding, _type)
|
||||
htmlSource = htmlSource.replace('<![CDATA[', '<![CDATA[')
|
||||
p.feed(htmlSource)
|
||||
@@ -3890,7 +3877,7 @@ def parse(url_file_stream_or_string, etag=None, modified=None, agent=None, refer
|
||||
result['bozo'] = 1
|
||||
result['bozo_exception'] = feedparser.exc or e
|
||||
use_strict_parser = 0
|
||||
- if not use_strict_parser and _SGML_AVAILABLE:
|
||||
+ if not use_strict_parser:
|
||||
feedparser = _LooseFeedParser(baseuri, baselang, 'utf-8', entities)
|
||||
feedparser.feed(data.decode('utf-8', 'replace'))
|
||||
result['feed'] = feedparser.feeddata
|
||||
diff --git a/setup.py b/setup.py
|
||||
index a4a60fe..8c15451 100644
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -16,7 +16,7 @@ setup(
|
||||
download_url = 'https://pypi.python.org/pypi/feedparser',
|
||||
platforms = ['POSIX', 'Windows'],
|
||||
package_dir = {'': 'feedparser'},
|
||||
- py_modules = ['feedparser'],
|
||||
+ py_modules = ['feedparser', '_feedparser_sgmllib'],
|
||||
keywords = ['atom', 'cdf', 'feed', 'parser', 'rdf', 'rss'],
|
||||
classifiers = [
|
||||
'Development Status :: 5 - Production/Stable',
|
||||
--
|
||||
1.7.8.1
|
||||
|
||||
Reference in New Issue
Block a user