diff options
Diffstat (limited to 'dev-python/future')
4 files changed, 148 insertions, 0 deletions
diff --git a/dev-python/future/Manifest b/dev-python/future/Manifest index 97e41f92710f..029ce2d24b60 100644 --- a/dev-python/future/Manifest +++ b/dev-python/future/Manifest @@ -1,6 +1,9 @@ AUX future-0.15.2-fix-py35-test-failures.patch 2339 BLAKE2B 737ba57bc09a141ee2fbfc7339350e3bcf1a1e7feb96cbd8d54bda1e630fd5ef431c0814731d6191618ae88481d39faaa9716ece98c6a481a293cbab95df5ad1 SHA512 816a3d30461f6e0eed0106bc46952e3f6d98323d03ff3f212332871b7eaf7d3b9817ee2043110bd004152c4239bfa427d9ed74f1dc7166d41534ba0fc76ad055 +AUX future-0.16.0-disable-tests-with-internet-connection.patch 2253 BLAKE2B e14121b3b4ef9d2b57f39fe7bfb5dbbe1aab87f03b0a8d2ac0aec3b74314027bfa5f1de5f9fe0309e2270f9da55318b14326bc86abed4378ed3c8126ba8ca3e0 SHA512 f49e468ae59223c3e58fefec25f5006781b4e69cdc3bca4aa65035f6b65e040862c0bdf67798a982a5d9a593bb660949487689b82396a4af6e67d980206b9762 +AUX future-0.16.0-fix-tests-py37.patch 1700 BLAKE2B 175dd229c31768555aef3ed3156c040ed440a480afb6a3179cdbcf8bfec31f2a018cc0c193a0a6306c8c020388827647f4bdce07d05ab418b7003fa6125511cb SHA512 26dcd5fcb18dd0e01032ebbbf2135167558a08c79ed226eed461e4d6c48bc80ded90212b9e8c427828b52e2d6186992f8c2b60558dbb4478c6b0be10e596faa3 DIST future-0.15.2.tar.gz 1583441 BLAKE2B 9c552a5f3598922f8910480d054015020112aae4f7e14d2c139dda13a0b26e878b75eaf5068d66f20823ac4659d85edd4087a95d9474dc27bf15767cf6e9d921 SHA512 24a0eaf70795efe1644b098c5abbcb0103d9172a5243721f0d26b1cbd108872b6c0616180da8f5507855ddfc7b26bb10a606a64e59d307d39042b346700f77ee DIST future-0.16.0.tar.gz 824484 BLAKE2B b098366cc7a7866c4aa4a35f1a6a5cf113698307de8f4cce6c77e4ce72a8433dd102111f991e35ffa920c09a0d31cc048b9502dacd0aba1b701c11eaaeab8392 SHA512 41c795cd1746a76df84de2da9fbc611fc6164322c1c712ec9e8a8626c21c2717cb4899ec150d95c5e0c037270e6bb71e099edd169609369aae619daea9df2e5f EBUILD future-0.15.2.ebuild 495 BLAKE2B 6796334fd8cb1a1e2c90a4a55c4262bbfba55eab6defad0deb788466ed93790887b38f1e3d63f41baa0b586d7cab5e5731c08cbc4f958ae9799ef7c085ed4b8d SHA512 39de67be4877db5f248267e72642090763473ea15935e69ec069a726a5d4836c1de9efc46626e422d4bb18299b5ddcb5e42514781020417fdfdd6038350ea2b3 +EBUILD future-0.16.0-r1.ebuild 1267 BLAKE2B 4371b204cbe93400f3041443fc411df89dd2cf16239a45c334c1dfa14f48677b53ed5e7854c4bdbf5393e3c3dbe224230d779adef8d3a12685864e9295dbc427 SHA512 d70b38403832a533be2a451225514ccb3af4fb0fc8c795a8fa3f34af65414c693ed1f6841c33308f783e40b1cc15539a92fbddba80dd4ab1e63ec182a1af1d0a EBUILD future-0.16.0.ebuild 616 BLAKE2B e97f5a31c707ef172cc572f0beacde74cfdbf5fb8653b5cb0999cc55f46ffbaca07357c076921e90f8f172ad00cb2484e24abe69b1a81f3c957e7011806fa598 SHA512 52b2288073dea8d3d8dc5ed1504aa1b88c19d74d10e8c0c1156b9fc17013eabd5a2b1d44600fb0b91de209e52ea07f5a7a4d96648e2d97b415eebcfe11f5fcf8 MISC metadata.xml 309 BLAKE2B ac0715185226cea8e3c38698ed3e494b6464d86dad0211e4d0583e3ceb6634c2b1ec230d9dff659d5ef47208b6f3358c701a0c42e49848816ae99703cab82f46 SHA512 e01e3b2733211e1eb6aaef4da19265c7165411a46fde4c2156118700c315bc2ad52cd87de1b90355741de77d91aa22eed5f9e5847d45186bf7138d246cd775e4 diff --git a/dev-python/future/files/future-0.16.0-disable-tests-with-internet-connection.patch b/dev-python/future/files/future-0.16.0-disable-tests-with-internet-connection.patch new file mode 100644 index 000000000000..b4ba01ed796a --- /dev/null +++ b/dev-python/future/files/future-0.16.0-disable-tests-with-internet-connection.patch @@ -0,0 +1,50 @@ +##Skipping tests due to connection failures on Fedora build-system +##See https://github.com/PythonCharmers/python-future/issues/165 + +--- a/tests/test_future/test_standard_library.orig.py 2014-11-21 12:52:03.000000000 +0100 ++++ b/tests/test_future/test_standard_library.py 2015-09-02 11:37:36.808826777 +0200 +@@ -318,7 +318,7 @@ + import builtins + self.assertTrue(hasattr(builtins, 'tuple')) + +- # @unittest.skip("ssl support has been stripped out for now ...") ++ @unittest.skip("ConnectionError: ('Connection aborted.', gaierror(-3, 'Temporary failure in name resolution'))...") + def test_urllib_request_ssl_redirect(self): + """ + This site redirects to https://... +@@ -332,6 +332,7 @@ + # pprint(r.read().decode('utf-8')) + self.assertTrue(True) + ++ @unittest.skip("ConnectionError: ('Connection aborted.', gaierror(-3, 'Temporary failure in name resolution'))...") + def test_moves_urllib_request_http(self): + """ + This site (python-future.org) uses plain http (as of 2014-09-23). +@@ -343,6 +343,7 @@ + data = r.read() + self.assertTrue(b'</html>' in data) + ++ @unittest.skip("ConnectionError: ('Connection aborted.', gaierror(-3, 'Temporary failure in name resolution'))...") + def test_urllib_request_http(self): + """ + This site (python-future.org) uses plain http (as of 2014-09-23). + +--- a/tests/test_future/test_requests.orig.py 2014-11-21 12:52:03.000000000 +0100 ++++ b/tests/test_future/test_requests.py 2015-09-02 11:39:01.509378296 +0200 +@@ -57,6 +57,7 @@ + This class tests whether the requests module conflicts with the + standard library import hooks, as in issue #19. + """ ++ @unittest.skip("ConnectionError: ('Connection aborted.', gaierror(-3, 'Temporary failure in name resolution'))...") + def test_remove_hooks_then_requests(self): + code = """ + from future import standard_library +@@ -79,6 +80,7 @@ + self.assertTrue(True) + + ++ @unittest.skip("ConnectionError: ('Connection aborted.', gaierror(-3, 'Temporary failure in name resolution'))...") + def test_requests_cm(self): + """ + Tests whether requests can be used importing standard_library modules + diff --git a/dev-python/future/files/future-0.16.0-fix-tests-py37.patch b/dev-python/future/files/future-0.16.0-fix-tests-py37.patch new file mode 100644 index 000000000000..d925d49f983e --- /dev/null +++ b/dev-python/future/files/future-0.16.0-fix-tests-py37.patch @@ -0,0 +1,43 @@ +commit ce4f015978d250718ec8dd9f50721da90a9bd18b +Author: Louis Sautier <sautier.louis@gmail.com> +Date: Mon Aug 20 12:42:29 2018 +0200 + + Skip int() keyword tests with Python 3.7 + + The first argument must be positional since + https://github.com/python/cpython/commit/2e5642422f6234fd8d0c082142b27340e588f96e + +diff --git a/tests/test_future/test_int.py b/tests/test_future/test_int.py +index f1d9c5d..e306550 100644 +--- a/tests/test_future/test_int.py ++++ b/tests/test_future/test_int.py +@@ -265,6 +265,9 @@ class IntTestCases(unittest.TestCase): + def test_no_args(self): + self.assertEqual(int(), 0) + ++ @unittest.skipIf(sys.version_info >= (3, 7), ++ "The first parameter must be positional with Python >= 3.7" ++ ) + def test_keyword_args(self): + # Test invoking int() using keyword arguments. + self.assertEqual(int(x=1.2), 1) + +commit d7a3451753982d944ae0894c9e9f01d0460d03d5 +Author: Louis Sautier <sautier.louis@gmail.com> +Date: Mon Aug 20 11:17:59 2018 +0200 + + Make test_bad_status_repr work for Python 3.7 + +diff --git a/tests/test_future/test_httplib.py b/tests/test_future/test_httplib.py +index 968e933..a1e2b19 100644 +--- a/tests/test_future/test_httplib.py ++++ b/tests/test_future/test_httplib.py +@@ -197,7 +197,7 @@ class BasicTest(TestCase): + if not utils.PY3: + self.assertEqual(repr(exc), '''BadStatusLine("u\'\'",)''') + else: +- self.assertEqual(repr(exc), '''BadStatusLine("\'\'",)''') ++ self.assertIn(repr(exc), ('''BadStatusLine("''",)''', '''BadStatusLine("''")''')) + + def test_partial_reads(self): + # if we have a length, the system knows when to close itself diff --git a/dev-python/future/future-0.16.0-r1.ebuild b/dev-python/future/future-0.16.0-r1.ebuild new file mode 100644 index 000000000000..03ae068da381 --- /dev/null +++ b/dev-python/future/future-0.16.0-r1.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python{2_7,3_{4,5,6,7}} ) + +inherit distutils-r1 + +DESCRIPTION="Easy, clean, reliable Python 2/3 compatibility" +HOMEPAGE="http://python-future.org/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~hppa ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~amd64-fbsd ~x86-linux" +IUSE="doc test" + +BDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + doc? ( + dev-python/sphinx[${PYTHON_USEDEP}] + dev-python/sphinx-bootstrap-theme[${PYTHON_USEDEP}] + ) + test? ( + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + ) +" + +PATCHES=( + # https://github.com/PythonCharmers/python-future/issues/165 + "${FILESDIR}/${P}-disable-tests-with-internet-connection.patch" + # https://github.com/PythonCharmers/python-future/pull/355 + "${FILESDIR}/${P}-fix-tests-py37.patch" +) + +python_prepare_all() { + sed -i "/'sphinx.ext.intersphinx'/d" docs/conf.py || die + distutils-r1_python_prepare_all +} + +python_compile_all() { + if use doc; then + sphinx-build docs/ docs/_build/html || die + HTML_DOCS=( docs/_build/html/. ) + fi +} + +python_test() { + pytest -vv || die "Tests failed under ${EPYTHON}" +} |