diff --git a/0001-urlgrabber-ext-down-another-python-3-compat.patch b/0001-urlgrabber-ext-down-another-python-3-compat.patch deleted file mode 100644 index c3d3470..0000000 --- a/0001-urlgrabber-ext-down-another-python-3-compat.patch +++ /dev/null @@ -1,48 +0,0 @@ -From e7a01334f653661c657d4c4e6e1ad10aababfb5b Mon Sep 17 00:00:00 2001 -From: Pavel Raiskup -Date: Sun, 12 May 2019 08:54:01 +0200 -Subject: [PATCH] urlgrabber-ext-down: another python 3 compat - -Expect that _readlines() returns array of bytes objects in -Python 3 environments. - -Fixes rhbz #1707657 and #1688173 ---- - scripts/urlgrabber-ext-down | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/scripts/urlgrabber-ext-down b/scripts/urlgrabber-ext-down -index bbaebd5..13d6dc7 100755 ---- a/scripts/urlgrabber-ext-down -+++ b/scripts/urlgrabber-ext-down -@@ -19,12 +19,17 @@ - # Boston, MA 02111-1307 USA - - import time, os, errno, sys -+import six - from urlgrabber.grabber import \ - _readlines, URLGrabberOptions, _loads, \ - PyCurlFileObject, URLGrabError - - def write(fmt, *arg): -- try: os.write(1, fmt % arg) -+ buf = fmt % arg -+ if six.PY3: -+ buf = buf.encode() -+ try: -+ os.write(1, buf) - except OSError as e: - if e.args[0] != errno.EPIPE: raise - sys.exit(1) -@@ -46,6 +51,8 @@ def main(): - lines = _readlines(0) - if not lines: break - for line in lines: -+ if not isinstance(line, six.string_types): -+ line = line.decode('utf-8') - cnt += 1 - opts = URLGrabberOptions() - opts._id = cnt --- -2.21.0 - diff --git a/0002-Revert-Simplify-mirror-conversion-to-utf8.patch b/0002-Revert-Simplify-mirror-conversion-to-utf8.patch deleted file mode 100644 index 464c14d..0000000 --- a/0002-Revert-Simplify-mirror-conversion-to-utf8.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 7607b9f408b71b6533ca4f8e8808090a5b930555 Mon Sep 17 00:00:00 2001 -From: Michal Domonkos -Date: Mon, 20 May 2019 15:06:38 +0200 -Subject: [PATCH 2/4] Revert "Simplify mirror conversion to utf8" - -This reverts commit be8ee10e35319e80200d4ff384434d46fe7783d9. - -A list of dicts (as opposed to strings) is valid input as well; see the -module-level doc string for details (section 2 under CUSTOMIZATION). In -fact, the nested estimate() function in MirrorGroup.__init__() accounts -for that, too. - -This fixes a traceback in YUM which does pass such a dict list. - -Closes #10. ---- - urlgrabber/mirror.py | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/urlgrabber/mirror.py b/urlgrabber/mirror.py -index 75f0bcb..d95863e 100644 ---- a/urlgrabber/mirror.py -+++ b/urlgrabber/mirror.py -@@ -297,7 +297,12 @@ class MirrorGroup: - self.default_action = kwargs.get('default_action') - - def _parse_mirrors(self, mirrors): -- return [{'mirror':_to_utf8(m)} for m in mirrors] -+ parsed_mirrors = [] -+ for m in mirrors: -+ if isinstance(m, string_types): -+ m = {'mirror': _to_utf8(m)} -+ parsed_mirrors.append(m) -+ return parsed_mirrors - - def _load_gr(self, gr): - # OVERRIDE IDEAS: --- -2.21.0 - diff --git a/0003-urlgrabber-ext-down-convert-url-into-bytes.patch b/0003-urlgrabber-ext-down-convert-url-into-bytes.patch deleted file mode 100644 index 67eff79..0000000 --- a/0003-urlgrabber-ext-down-convert-url-into-bytes.patch +++ /dev/null @@ -1,56 +0,0 @@ -From c696255c5f50341688d718b3547efb1a9971927b Mon Sep 17 00:00:00 2001 -From: Michal Domonkos -Date: Tue, 21 May 2019 11:12:12 +0200 -Subject: [PATCH 3/4] urlgrabber-ext-down: convert url into bytes - -We need to convert the parsed url back into bytes before passing it to -the PyCurlFileObject constructor (since _set_opts() expects self.scheme, -constructed from the url, to be a bytes object). - -This caused the unit test "bypassing proxy cache on failure" to fail -(together with a bug in the test itself which is also being fixed here). - -Closes #14. ---- - scripts/urlgrabber-ext-down | 4 ++-- - test/test_mirror.py | 2 +- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/scripts/urlgrabber-ext-down b/scripts/urlgrabber-ext-down -index 13d6dc7..40469a7 100755 ---- a/scripts/urlgrabber-ext-down -+++ b/scripts/urlgrabber-ext-down -@@ -22,7 +22,7 @@ import time, os, errno, sys - import six - from urlgrabber.grabber import \ - _readlines, URLGrabberOptions, _loads, \ -- PyCurlFileObject, URLGrabError -+ PyCurlFileObject, URLGrabError, _to_utf8 - - def write(fmt, *arg): - buf = fmt % arg -@@ -65,7 +65,7 @@ def main(): - - dlsz = dltm = 0 - try: -- fo = PyCurlFileObject(opts.url, opts.filename, opts) -+ fo = PyCurlFileObject(_to_utf8(opts.url), opts.filename, opts) - fo._do_grab() - fo.fo.close() - size = fo._amount_read -diff --git a/test/test_mirror.py b/test/test_mirror.py -index a2daf19..66cafd0 100644 ---- a/test/test_mirror.py -+++ b/test/test_mirror.py -@@ -350,7 +350,7 @@ class HttpReplyCode(TestCase): - self.content = b'version1' - - def checkfunc_read(obj): -- if obj.data == 'version1': -+ if obj.data == b'version1': - raise URLGrabError(-1, 'Outdated version of foo') - - def checkfunc_grab(obj): --- -2.21.0 - diff --git a/python-urlgrabber.spec b/python-urlgrabber.spec index 0783dc3..fc29b39 100644 --- a/python-urlgrabber.spec +++ b/python-urlgrabber.spec @@ -1,14 +1,10 @@ Name: python-urlgrabber -Version: 4.0.0 -Release: 3 +Version: 4.1.0 +Release: 1 Summary: Cross-protocol urlgrabber License: LGPLv2+ Url: http://urlgrabber.baseurl.org/ -Source0: http://urlgrabber.baseurl.org/download/urlgrabber-%{version}.tar.gz - -Patch0001: 0001-urlgrabber-ext-down-another-python-3-compat.patch -Patch0002: 0002-Revert-Simplify-mirror-conversion-to-utf8.patch -Patch0003: 0003-urlgrabber-ext-down-convert-url-into-bytes.patch +Source0: https://github.com/rpm-software-management/urlgrabber/releases/download/urlgrabber-4-1-0/urlgrabber-%{version}.tar.gz BuildArch: noarch @@ -33,10 +29,10 @@ BuildRequires: python3-devel python3dist(setuptools) python3dist(pycurl) python3 %build %py3_build +sed -e "s|/usr/bin/python|%{__python3}|" -i scripts/* %install %py3_install -sed -e "s|/usr/bin/python|%{__python3}|" -i $RPM_BUILD_ROOT/%{_libexecdir}/* rm -rf $RPM_BUILD_ROOT/%{_docdir}/urlgrabber-%{version} %files -n python3-urlgrabber @@ -45,9 +41,12 @@ rm -rf $RPM_BUILD_ROOT/%{_docdir}/urlgrabber-%{version} %{_bindir}/urlgrabber %{_libexecdir}/urlgrabber-ext-down %{python3_sitelib}/urlgrabber -%{python3_sitelib}/urlgrabber-%{version}-py?.??.egg-info +%{python3_sitelib}/urlgrabber-%{version}-py%{python3_version}.egg-info/ %changelog +* Wed Jun 14 2023 yaoxin - 4.1.0-1 +- Update to 4.1.0 + * Sat Dec 18 2021 shixuantong - 4.0.1-3 - fix build fail diff --git a/urlgrabber-4.0.0.tar.gz b/urlgrabber-4.0.0.tar.gz deleted file mode 100644 index 14d22bf..0000000 Binary files a/urlgrabber-4.0.0.tar.gz and /dev/null differ diff --git a/urlgrabber-4.1.0.tar.gz b/urlgrabber-4.1.0.tar.gz new file mode 100644 index 0000000..a24464a Binary files /dev/null and b/urlgrabber-4.1.0.tar.gz differ