Accepting request 485264 from home:alois:branches:devel:languages:python

OBS-URL: https://build.opensuse.org/request/show/485264
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-html5lib?expand=0&rev=22
This commit is contained in:
Dirk Mueller 2017-04-06 05:42:07 +00:00 committed by Git OBS Bridge
parent 642aa315f9
commit ddfc3ba998
5 changed files with 36 additions and 98 deletions

View File

@ -1,65 +0,0 @@
From 0c551c9519e47f76f8f185089ed71cb9539b6e00 Mon Sep 17 00:00:00 2001
From: Geoffrey Sneddon <geoffers@gmail.com>
Date: Mon, 23 Nov 2015 15:17:07 +0000
Subject: [PATCH] Make lxml tree-builder coerce comments to work with lxml 3.5.
---
html5lib/ihatexml.py | 3 +++
html5lib/treebuilders/etree_lxml.py | 9 +++++----
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/html5lib/ihatexml.py b/html5lib/ihatexml.py
index 0fc7930..5da5d93 100644
--- a/html5lib/ihatexml.py
+++ b/html5lib/ihatexml.py
@@ -225,6 +225,9 @@ def coerceComment(self, data):
while "--" in data:
warnings.warn("Comments cannot contain adjacent dashes", DataLossWarning)
data = data.replace("--", "- -")
+ if data.endswith("-"):
+ warnings.warn("Comments cannot end in a dash", DataLossWarning)
+ data += " "
return data
def coerceCharacters(self, data):
diff --git a/html5lib/treebuilders/etree_lxml.py b/html5lib/treebuilders/etree_lxml.py
index 35d08ef..c6c981f 100644
--- a/html5lib/treebuilders/etree_lxml.py
+++ b/html5lib/treebuilders/etree_lxml.py
@@ -54,7 +54,7 @@ def _getChildNodes(self):
def testSerializer(element):
rv = []
finalText = None
- infosetFilter = ihatexml.InfosetFilter()
+ infosetFilter = ihatexml.InfosetFilter(preventDoubleDashComments=True)
def serializeElement(element, indent=0):
if not hasattr(element, "tag"):
@@ -189,7 +189,7 @@ class TreeBuilder(_base.TreeBuilder):
def __init__(self, namespaceHTMLElements, fullTree=False):
builder = etree_builders.getETreeModule(etree, fullTree=fullTree)
- infosetFilter = self.infosetFilter = ihatexml.InfosetFilter()
+ infosetFilter = self.infosetFilter = ihatexml.InfosetFilter(preventDoubleDashComments=True)
self.namespaceHTMLElements = namespaceHTMLElements
class Attributes(dict):
@@ -257,7 +257,7 @@ def _getData(self):
data = property(_getData, _setData)
self.elementClass = Element
- self.commentClass = builder.Comment
+ self.commentClass = Comment
# self.fragmentClass = builder.DocumentFragment
_base.TreeBuilder.__init__(self, namespaceHTMLElements)
@@ -344,7 +344,8 @@ def insertRoot(self, token):
# Append the initial comments:
for comment_token in self.initial_comments:
- root.addprevious(etree.Comment(comment_token["data"]))
+ comment = self.commentClass(comment_token["data"])
+ root.addprevious(comment._element)
# Create the root document and add the ElementTree to it
self.document = self.documentClass()

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2612a191a8d5842bfa057e41ba50bbb9dcb722419d2408c78cff4758d0754868
size 889312

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ee747c0ffd3028d2722061936b5c65ee4fe13c8e4613519b4447123fc4546298
size 245488

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Tue Apr 4 14:54:02 UTC 2017 - aloisio@gmx.com
- Updated to version 0.999999999 (see CHANGES.rst)
- Converted to single-spec
- Dropped coerce_comments_to_work_with_lxml.patch (accepted
upstream)
-------------------------------------------------------------------
Fri Feb 12 14:54:04 UTC 2016 - toddrme2178@gmail.com

View File

@ -1,7 +1,7 @@
#
# spec file for package python-html5lib
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -16,35 +16,33 @@
#
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-html5lib
Version: 0.9999999
Version: 0.999999999
Release: 0
Summary: HTML parser based on the WHAT-WG Web Applications 1
License: MIT
Group: Development/Languages/Python
Url: https://github.com/html5lib/html5lib-python
Source: http://pypi.python.org/packages/source/h/html5lib/html5lib-%{version}.tar.gz
# PATCH-FIX-UPSTREAM coerce_comments_to_work_with_lxml.patch - fix comments for new lxml comment validation - https://github.com/html5lib/html5lib-python/issues/224
Patch0: coerce_comments_to_work_with_lxml.patch
BuildRequires: python-Genshi >= 0.7
BuildRequires: python-devel
BuildRequires: python-lxml
BuildRequires: python-mock
BuildRequires: python-pytest
BuildRequires: python-setuptools >= 18.0.1
BuildRequires: python-six >= 1.9.0
Requires: python-six >= 1.9.0
%if 0%{?suse_version}
Recommends: python-Genshi >= 0.7
Source: https://pypi.io/packages/source/h/html5lib/html5lib-%{version}.tar.gz
BuildRequires: %{python_module Genshi}
BuildRequires: %{python_module datrie}
BuildRequires: %{python_module devel}
BuildRequires: %{python_module lxml}
BuildRequires: %{python_module mock}
BuildRequires: %{python_module pytest-expect}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools >= 18.5}
BuildRequires: %{python_module six}
BuildRequires: %{python_module webencodings}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-six
Recommends: python-Genshi
Recommends: python-lxml
%endif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
%{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
%else
BuildArch: noarch
%endif
%python_subpackages
%description
HTML parser designed to follow the HTML5
@ -58,24 +56,21 @@ simple custom format
%prep
%setup -q -n html5lib-%{version}
%patch0 -p1
%build
python setup.py build
%python_build
%install
python setup.py install --prefix=%{_prefix} --root=%{buildroot}
%python_install
%python_expand %fdupes -s %{buildroot}%{$python_sitelib}
%if 0%{?suse_version} && 0%{?suse_version} > 1110
%check
export LANG=en_US.UTF-8
py.test
%endif
%python_expand %python_exec %{_bindir}/py.test --tb=short
%files
%files %{python_files}
%defattr(-,root,root,-)
%doc CHANGES.rst LICENSE README.rst
%{python_sitelib}/html5lib/
%{python_sitelib}/html5lib-%{version}-py*.egg-info
%{python_sitelib}/html5lib-%{version}-py%{python_version}.egg-info
%changelog