commit:     1579a89f5f0fbd3f5312e1a1973d87f91a94e05c
Author:     Sebastian Pipping <sping <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 16 23:44:03 2017 +0000
Commit:     Sebastian Pipping <sping <AT> gentoo <DOT> org>
CommitDate: Mon Jan 16 23:45:34 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1579a89f

net-analyzer/linkchecker: Fix requests check (bug #598064)

Patch is a backport of this upstream patch:
https://github.com/wummel/linkchecker/commit/c2ce810c3fb00b895a841a7be6b2e78c64e7b042

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 .../files/linkchecker-9.3-requests-check.patch     | 34 +++++++++
 net-analyzer/linkchecker/linkchecker-9.3-r2.ebuild | 83 ++++++++++++++++++++++
 2 files changed, 117 insertions(+)

diff --git 
a/net-analyzer/linkchecker/files/linkchecker-9.3-requests-check.patch 
b/net-analyzer/linkchecker/files/linkchecker-9.3-requests-check.patch
new file mode 100644
index 00000000..905b7f7
--- /dev/null
+++ b/net-analyzer/linkchecker/files/linkchecker-9.3-requests-check.patch
@@ -0,0 +1,34 @@
+From c2ce810c3fb00b895a841a7be6b2e78c64e7b042 Mon Sep 17 00:00:00 2001
+From: Bastian Kleineidam <[email protected]>
+Date: Tue, 28 Jun 2016 21:55:10 +0200
+Subject: [PATCH] Fix python requests version check
+
+---
+ linkcheck/__init__.py | 13 ++++++++++---
+ 1 file changed, 10 insertions(+), 3 deletions(-)
+
+diff --git a/linkcheck/__init__.py b/linkcheck/__init__.py
+index 22a0cf5..1cec214 100644
+--- a/linkcheck/__init__.py
++++ b/linkcheck/__init__.py
+@@ -24,10 +24,17 @@
+ # Needs Python >= 2.7.2 which fixed http://bugs.python.org/issue11467
+ if not (hasattr(sys, 'version_info') or
+         sys.version_info < (2, 7, 2, 'final', 0)):
+-    raise SystemExit("This program requires Python 2.7.2 or later.")
++    import platform
++    version = platform.python_version()
++    raise SystemExit("This program requires Python 2.7.2 or later instead of 
%s." % version)
++# require a reasonably recent requests module: 2.4.0 from 2014-08-29
+ import requests
+-if requests.__version__ <= '2.2.0':
+-    raise SystemExit("This program requires Python requests 2.2.0 or later.")
++# PEP 396 has only version strings, bummer! PEP 386 is also not helpful.
++requests_version = requests.__version__.split('.')
++# Depends on the version scheme of Python requests
++if int(requests_version[0]) < 2 or \
++   (int(requests_version[0]) == 2 and int(requests_version[1]) < 4):
++    raise SystemExit("This program requires Python requests 2.4.0 or later 
instead of %s." % requests.__version__)
+ 
+ import os
+ # add the custom linkcheck_dns directory to sys.path

diff --git a/net-analyzer/linkchecker/linkchecker-9.3-r2.ebuild 
b/net-analyzer/linkchecker/linkchecker-9.3-r2.ebuild
new file mode 100644
index 00000000..c602251
--- /dev/null
+++ b/net-analyzer/linkchecker/linkchecker-9.3-r2.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="sqlite?"
+
+inherit bash-completion-r1 distutils-r1 eutils multilib
+
+MY_PN="${PN/linkchecker/LinkChecker}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Check websites for broken links"
+HOMEPAGE="https://wummel.github.com/linkchecker/ 
https://pypi.python.org/pypi/linkchecker/";
+SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~ppc-macos ~x64-solaris"
+IUSE="gnome sqlite X"
+
+RDEPEND="
+       virtual/python-dnspython[${PYTHON_USEDEP}]
+       >=dev-python/requests-2.2.1[${PYTHON_USEDEP}]
+       gnome? ( dev-python/pygtk:2[${PYTHON_USEDEP}] )
+       X? (
+               dev-python/PyQt4[X,help,${PYTHON_USEDEP}]
+               dev-python/qscintilla-python[${PYTHON_USEDEP}]
+               )"
+DEPEND="
+       X? (
+               dev-qt/qthelp:4
+               dev-python/markdown2[${PYTHON_USEDEP}]
+               )"
+
+RESTRICT="test"
+
+S="${WORKDIR}/${MY_P}"
+
+python_prepare_all() {
+       local PATCHES=(
+               "${FILESDIR}"/${PN}-9.2-unbundle.patch
+               "${FILESDIR}"/${P}-bash-completion.patch
+               "${FILESDIR}"/${P}-desktop.patch
+               "${FILESDIR}"/${P}-requests-check.patch
+               )
+
+       emake -C doc/html
+
+       distutils-r1_python_prepare_all
+}
+
+python_install_all() {
+       DOCS=(
+               doc/upgrading.txt
+               doc/python3.txt
+               doc/changelog.txt
+               doc/development.txt
+       )
+       distutils-r1_python_install_all
+       if ! use X; then
+               delete_gui() {
+                               rm -rf \
+                                       "${ED}"/usr/bin/linkchecker-gui* \
+                                       
"${ED}"/$(python_get_sitedir)/linkcheck/gui* || die
+               }
+               python_foreach_impl delete_gui
+               rm -f "${ED}"/usr/share/applications/linkchecker*.desktop || die
+       fi
+
+       rm -f "${ED}"/usr/share/applications/linkchecker.desktop || die
+
+       newicon doc/html/logo64x64.png ${PN}.png
+
+       docinto html
+       dodoc doc/html/*
+       newbashcomp config/linkchecker-completion ${PN}
+       optfeature "bash-completion support" 
dev-python/argcomplete[${PYTHON_USEDEP}]
+       optfeature "Virus scanning" app-antivirus/clamav
+       optfeature "Geo IP support" dev-python/geoip-python[${PYTHON_USEDEP}]
+}

Reply via email to