Package: planet-venus Version: 0~git9de2109-4 Severity: normal Tags: patch pending
Dear maintainer, I've prepared an NMU for planet-venus (versioned as 0~git9de2109-4.1) and uploaded it to DELAYED/10. Please feel free to tell me if I should delay it longer. Regards. - Jonas diff -Nru planet-venus-0~git9de2109/debian/changelog planet-venus-0~git9de2109/debian/changelog --- planet-venus-0~git9de2109/debian/changelog 2016-02-17 17:25:44.000000000 +0100 +++ planet-venus-0~git9de2109/debian/changelog 2018-10-01 17:46:13.000000000 +0200 @@ -1,3 +1,13 @@ +planet-venus (0~git9de2109-4.1) unstable; urgency=medium + + * Non-maintainer upload. + * Modernize patch html5lib-no_XHTMLSerializer. + Closes: Bug#845987. Thanks to Jakob Haufe. + * Add patch django-setup.patch to fix setup django before use. + Closes: Bug#824347. Thanks to Antoine Beaupré. + + -- Jonas Smedegaard <d...@jones.dk> Mon, 01 Oct 2018 17:46:13 +0200 + planet-venus (0~git9de2109-4) unstable; urgency=medium * Team upload. diff -Nru planet-venus-0~git9de2109/debian/patches/django-setup.patch planet-venus-0~git9de2109/debian/patches/django-setup.patch --- planet-venus-0~git9de2109/debian/patches/django-setup.patch 1970-01-01 01:00:00.000000000 +0100 +++ planet-venus-0~git9de2109/debian/patches/django-setup.patch 2018-10-01 17:45:55.000000000 +0200 @@ -0,0 +1,18 @@ +Description: fix setup django before use +Author: Antoine Beaupré <anar...@debian.org> +Bug-Debian: https://bugs.debian.org/824347 +Last-Update: 2018-10-01 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/planet/shell/dj.py ++++ b/planet/shell/dj.py +@@ -27,6 +27,9 @@ + ) + except RuntimeError: + pass ++ import django ++ django.setup() ++ + from django.template import Context + from django.template.loader import get_template + diff -Nru planet-venus-0~git9de2109/debian/patches/html5lib-no_XHTMLSerializer.patch planet-venus-0~git9de2109/debian/patches/html5lib-no_XHTMLSerializer.patch --- planet-venus-0~git9de2109/debian/patches/html5lib-no_XHTMLSerializer.patch 2014-05-08 16:05:25.000000000 +0200 +++ planet-venus-0~git9de2109/debian/patches/html5lib-no_XHTMLSerializer.patch 2018-10-01 17:27:30.000000000 +0200 @@ -3,11 +3,9 @@ adaptations (tested to comply with the test suite mainly). Author: Olivier Berger <ober...@debian.org> -diff --git a/planet/scrub.py b/planet/scrub.py -index fef5c22..bd707f1 100644 --- a/planet/scrub.py +++ b/planet/scrub.py -@@ -128,24 +128,23 @@ def scrub(feed_uri, data): +@@ -128,24 +128,23 @@ node['value'] = feedparser._resolveRelativeURIs( node.value, node.base, 'utf-8', node.type) @@ -19,12 +17,25 @@ - doc = minidom.parseString(node['value']) - except: - node['type']='text/html' -- ++ if node['value']: ++ # Run this through HTML5's sanitizer ++ doc = None ++ if 'xhtml' in node['type']: ++ try: ++ from xml.dom import minidom ++ doc = minidom.parseString(node['value']) ++ except: ++ node['type']='text/html' + - if not doc: - from html5lib import html5parser, treebuilders - p=html5parser.HTMLParser(tree=treebuilders.getTreeBuilder('dom')) - doc = p.parseFragment(node['value'], encoding='utf-8') -- ++ if not doc: ++ from html5lib import html5parser, treebuilders ++ p=html5parser.HTMLParser(tree=treebuilders.getTreeBuilder('dom')) ++ doc = p.parseFragment(node['value']) + - from html5lib import treewalkers, serializer - from html5lib.filters import sanitizer - walker = sanitizer.Filter(treewalkers.getTreeWalker('dom')(doc)) @@ -32,21 +43,6 @@ - tree = xhtml.serialize(walker, encoding='utf-8') - - node['value'] = ''.join([str(token) for token in tree]) -+ if node['value']: -+ # Run this through HTML5's sanitizer -+ doc = None -+ if 'xhtml' in node['type']: -+ try: -+ from xml.dom import minidom -+ doc = minidom.parseString(node['value']) -+ except: -+ node['type']='text/html' -+ -+ if not doc: -+ from html5lib import html5parser, treebuilders, sanitizer -+ p=html5parser.HTMLParser(tree=treebuilders.getTreeBuilder('dom'), tokenizer=sanitizer.HTMLSanitizer) -+ doc = p.parseFragment(node['value'], encoding='utf-8') -+ + from html5lib import treewalkers, serializer + walker = treewalkers.getTreeWalker('dom')(doc) + xhtml = serializer.HTMLSerializer(inject_meta_charset = False) @@ -54,7 +50,7 @@ + node['value'] = ''.join([str(token) for token in tree]) --- a/planet/reconstitute.py +++ b/planet/reconstitute.py -@@ -16,8 +16,7 @@ Todo: +@@ -16,8 +16,7 @@ import re, time, sgmllib from xml.sax.saxutils import escape from xml.dom import minidom, Node @@ -64,17 +60,17 @@ import planet, config try: -@@ -168,7 +171,7 @@ def content(xentry, name, detail, bozo): +@@ -168,8 +167,8 @@ bozo=1 if detail.type.find('xhtml')<0 or bozo: - parser = html5parser.HTMLParser(tree=dom.TreeBuilder) +- html = parser.parse(xdiv % detail.value, encoding="utf-8") + parser = html5parser.HTMLParser(tree=treebuilders.getTreeBuilder('dom')) - html = parser.parse(xdiv % detail.value, encoding="utf-8") ++ html = parser.parse(xdiv % detail.value, override_encoding="utf-8") for body in html.documentElement.childNodes: if body.nodeType != Node.ELEMENT_NODE: continue -diff --git a/filters/html2xhtml.plugin b/filters/html2xhtml.plugin -index 3ab7a8c..3840c43 100644 + if body.nodeName != 'body': continue --- a/filters/html2xhtml.plugin +++ b/filters/html2xhtml.plugin @@ -1,6 +1,6 @@ diff -Nru planet-venus-0~git9de2109/debian/patches/series planet-venus-0~git9de2109/debian/patches/series --- planet-venus-0~git9de2109/debian/patches/series 2014-05-08 16:05:25.000000000 +0200 +++ planet-venus-0~git9de2109/debian/patches/series 2018-10-01 17:39:23.000000000 +0200 @@ -9,4 +9,5 @@ updated.patch command-improvement.patch handlefetchingerror.patch -theme-diveintomark.patch \ Intet linjeskift ved filafslutning +theme-diveintomark.patch +django-setup.patch