gnu: python-parse: Update to 1.8.2.

* gnu/packages/patches/python-parse-too-many-fields.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/python.scm (python-parse): Update to 1.8.2.
[source](patches): Remove.
[arguments]: Use INVOKE instead of SYSTEM*.
This commit is contained in:
Marius Bakke 2018-02-26 02:39:15 +01:00
parent f58764d8ed
commit 2115bde302
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
3 changed files with 3 additions and 57 deletions

View File

@ -1031,7 +1031,6 @@ dist_patch_DATA = \
%D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \ %D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \
%D%/packages/patches/python-networkx2-reproducible-build.patch \ %D%/packages/patches/python-networkx2-reproducible-build.patch \
%D%/packages/patches/python-nose-timer-drop-ordereddict.patch \ %D%/packages/patches/python-nose-timer-drop-ordereddict.patch \
%D%/packages/patches/python-parse-too-many-fields.patch \
%D%/packages/patches/python-pillow-fix-failing-tests.patch \ %D%/packages/patches/python-pillow-fix-failing-tests.patch \
%D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \ %D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \
%D%/packages/patches/python-statsmodels-fix-tests.patch \ %D%/packages/patches/python-statsmodels-fix-tests.patch \

View File

@ -1,52 +0,0 @@
From 32f15cfefb7c7b6476360ac65cba807aa3dfccfa Mon Sep 17 00:00:00 2001
From: David King <dking@redhat.com>
Date: Mon, 14 Dec 2015 09:58:19 +0000
Subject: [PATCH] Fix test_too_many_fields with Python 3.5
taken from https://github.com/r1chardj0n3s/parse/pull/34
Python versions before 3.5 had a limit of 100 groups in regular
expressions. This limit was removed during 3.5 development:
http://bugs.python.org/issue22437
https://hg.python.org/cpython/rev/0b85ea4bd1af
The test_too_many_fields test asserts that the limit exists by
attempting to parse a string with 15 fields, which triggers the 100
named groups limit.
Adjust the test so that if first checks to see whether the limit of 100
named groups exists, and only assert that parsing 15 fields fails if
that is the case.
---
test_parse.py | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/test_parse.py b/test_parse.py
index c524349..1d50568 100755
--- a/test_parse.py
+++ b/test_parse.py
@@ -6,6 +6,7 @@
import unittest
from datetime import datetime, time
+import re
import parse
@@ -624,8 +625,13 @@ def test_mixed_type_variant(self):
self.assertEqual(r.fixed[21], 'spam')
def test_too_many_fields(self):
- p = parse.compile('{:ti}' * 15)
- self.assertRaises(parse.TooManyFields, p.parse, '')
+ # Python 3.5 removed the limit of 100 named groups in a regular expression,
+ # so only test for the exception if the limit exists.
+ try:
+ re.compile("".join("(?P<n{n}>{n}-)".format(n=i) for i in range(101)))
+ except AssertionError:
+ p = parse.compile('{:ti}' * 15)
+ self.assertRaises(parse.TooManyFields, p.parse, '')
class TestSearch(unittest.TestCase):

View File

@ -1431,21 +1431,20 @@ backported for previous versions of Python from 2.4 to 3.3.")
(define-public python-parse (define-public python-parse
(package (package
(name "python-parse") (name "python-parse")
(version "1.6.6") (version "1.8.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "parse" version)) (uri (pypi-uri "parse" version))
(sha256 (sha256
(base32 (base32
"0y31i3mwgv35qn0kzzjn9q8jqfdqmbi6sr6yfvn8rq4lqjm5lhvi")) "1lj9v1q4imszyhvipb6drsm3xdl35nan011mqxxas1yaypixsj40"))))
(patches (search-patches "python-parse-too-many-fields.patch"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'check (replace 'check
(lambda _ (zero? (system* "python" "test_parse.py"))))))) (lambda _ (invoke "python" "test_parse.py"))))))
(home-page "https://github.com/r1chardj0n3s/parse") (home-page "https://github.com/r1chardj0n3s/parse")
(synopsis "Parse strings") (synopsis "Parse strings")
(description (description