15
0

Accepting request 793355 from devel:languages:python

- Add patch to fix the tests to pass with new soupsieve too:
  * soupsieve2-tests.patch
  * The assert name changed

- Update to 4.9.0:
  * fixes to work with new soupsieve

OBS-URL: https://build.opensuse.org/request/show/793355
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-beautifulsoup4?expand=0&rev=32
This commit is contained in:
2020-04-15 17:52:40 +00:00
committed by Git OBS Bridge
5 changed files with 72 additions and 7 deletions

View File

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

View File

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

View File

@@ -1,3 +1,16 @@
-------------------------------------------------------------------
Sun Apr 12 08:31:00 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
- Add patch to fix the tests to pass with new soupsieve too:
* soupsieve2-tests.patch
* The assert name changed
-------------------------------------------------------------------
Sun Apr 12 07:50:37 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
- Update to 4.9.0:
* fixes to work with new soupsieve
-------------------------------------------------------------------
Wed Jan 1 08:52:41 UTC 2020 - Ismail Dönmez <idonmez@suse.com>

View File

@@ -18,20 +18,21 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-beautifulsoup4
Version: 4.8.2
Version: 4.9.0
Release: 0
Summary: HTML/XML Parser for Quick-Turnaround Applications Like Screen-Scraping
License: MIT
URL: https://www.crummy.com/software/BeautifulSoup/
Source: https://files.pythonhosted.org/packages/source/b/beautifulsoup4/beautifulsoup4-%{version}.tar.gz
Patch0: soupsieve2-tests.patch
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module soupsieve}
BuildRequires: %{python_module soupsieve >= 1.2}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildRequires: python3-Sphinx
Requires: python-soupsieve
Suggests: python-html5lib >= 0.999999
Requires: python-soupsieve >= 1.2
Suggests: python-html5lib
Suggests: python-lxml >= 3.4.4
BuildArch: noarch
%python_subpackages
@@ -74,6 +75,7 @@ Documentation and help files for %{name}
%prep
%setup -q -n beautifulsoup4-%{version}
%patch0 -p1
%build
%python_build

50
soupsieve2-tests.patch Normal file
View File

@@ -0,0 +1,50 @@
Index: beautifulsoup4-4.9.0/bs4/tests/test_tree.py
===================================================================
--- beautifulsoup4-4.9.0.orig/bs4/tests/test_tree.py
+++ beautifulsoup4-4.9.0/bs4/tests/test_tree.py
@@ -37,6 +37,7 @@ from bs4.testing import (
SoupTest,
skipIf,
)
+from soupsieve import SelectorSyntaxError
XML_BUILDER_PRESENT = (builder_registry.lookup("xml") is not None)
LXML_PRESENT = (builder_registry.lookup("lxml") is not None)
@@ -2018,7 +2019,7 @@ class TestSoupSelector(TreeTest):
self.assertEqual(len(self.soup.select('del')), 0)
def test_invalid_tag(self):
- self.assertRaises(SyntaxError, self.soup.select, 'tag%t')
+ self.assertRaises(SelectorSyntaxError, self.soup.select, 'tag%t')
def test_select_dashed_tag_ids(self):
self.assertSelects('custom-dashed-tag', ['dash1', 'dash2'])
@@ -2209,7 +2210,7 @@ class TestSoupSelector(TreeTest):
NotImplementedError, self.soup.select, "a:no-such-pseudoclass")
self.assertRaises(
- SyntaxError, self.soup.select, "a:nth-of-type(a)")
+ SelectorSyntaxError, self.soup.select, "a:nth-of-type(a)")
def test_nth_of_type(self):
# Try to select first paragraph
@@ -2265,7 +2266,7 @@ class TestSoupSelector(TreeTest):
self.assertEqual([], self.soup.select('#inner ~ h2'))
def test_dangling_combinator(self):
- self.assertRaises(SyntaxError, self.soup.select, 'h1 >')
+ self.assertRaises(SelectorSyntaxError, self.soup.select, 'h1 >')
def test_sibling_combinator_wont_select_same_tag_twice(self):
self.assertSelects('p[lang] ~ p', ['lang-en-gb', 'lang-en-us', 'lang-fr'])
@@ -2296,8 +2297,8 @@ class TestSoupSelector(TreeTest):
self.assertSelects('div x,y, z', ['xid', 'yid', 'zida', 'zidb', 'zidab', 'zidac'])
def test_invalid_multiple_select(self):
- self.assertRaises(SyntaxError, self.soup.select, ',x, y')
- self.assertRaises(SyntaxError, self.soup.select, 'x,,y')
+ self.assertRaises(SelectorSyntaxError, self.soup.select, ',x, y')
+ self.assertRaises(SelectorSyntaxError, self.soup.select, 'x,,y')
def test_multiple_select_attrs(self):
self.assertSelects('p[lang=en], p[lang=en-gb]', ['lang-en', 'lang-en-gb'])