From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id B2E67138334 for ; Mon, 16 Dec 2019 17:05:02 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id BEA96E08FF; Mon, 16 Dec 2019 17:05:01 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 8A3EAE08FF for ; Mon, 16 Dec 2019 17:05:01 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 0171B34B705 for ; Mon, 16 Dec 2019 17:05:00 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 852AD8B0 for ; Mon, 16 Dec 2019 17:04:57 +0000 (UTC) From: "Sebastian Pipping" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sebastian Pipping" Message-ID: <1576515729.0f8f02e2d863c8a591ea9bdb1a623527ec2313ba.sping@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/paramiko/files/, dev-python/paramiko/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-python/paramiko/Manifest dev-python/paramiko/files/paramiko-2.7.1-tests.patch dev-python/paramiko/paramiko-2.7.1.ebuild X-VCS-Directories: dev-python/paramiko/ dev-python/paramiko/files/ X-VCS-Committer: sping X-VCS-Committer-Name: Sebastian Pipping X-VCS-Revision: 0f8f02e2d863c8a591ea9bdb1a623527ec2313ba X-VCS-Branch: master Date: Mon, 16 Dec 2019 17:04:57 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 19d1dd6b-0cd6-4685-afdf-8676f0cc540f X-Archives-Hash: 8c5808faa9c4ea8d83207ca8104fa372 commit: 0f8f02e2d863c8a591ea9bdb1a623527ec2313ba Author: Sebastian Pipping gentoo org> AuthorDate: Mon Dec 16 16:57:17 2019 +0000 Commit: Sebastian Pipping gentoo org> CommitDate: Mon Dec 16 17:02:09 2019 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f8f02e2 dev-python/paramiko: 2.7.1 Closes: https://bugs.gentoo.org/702020 Signed-off-by: Sebastian Pipping gentoo.org> Package-Manager: Portage-2.3.81, Repoman-2.3.20 dev-python/paramiko/Manifest | 1 + .../paramiko/files/paramiko-2.7.1-tests.patch | 62 ++++++++++++++++++++++ dev-python/paramiko/paramiko-2.7.1.ebuild | 60 +++++++++++++++++++++ 3 files changed, 123 insertions(+) diff --git a/dev-python/paramiko/Manifest b/dev-python/paramiko/Manifest index cedc946bc49..5eff383e6d9 100644 --- a/dev-python/paramiko/Manifest +++ b/dev-python/paramiko/Manifest @@ -1,2 +1,3 @@ DIST paramiko-2.4.2.tar.gz 289126 BLAKE2B 767f81a09b32762241eed6661e520e3b3a96acfe8e6e638ea7ae180a8b6866f8f4adeae0a0146d46ecbfccbe71334c5f5c14e2d049744258ca4808ac21365185 SHA512 894c2ebfcfb35a84fe74670d0eb67022a49b7bf165f31acd929045c17509d8a2be111e8319f20513b5034efd033edc6432b2ca2e7027dc7e3c6703166a96790f DIST paramiko-2.6.0.tar.gz 304469 BLAKE2B cde861069c8924b2f685675266fd28600ffd24a39074e9ad5db8fd1d010c6e23ca13a2c78a79b23504dfff395b773b171e7c787119d01e3b92a2eec44ca8b40a SHA512 1ac2c3486cb786a1e4640d7b7f8628087f9b78ee247b09dbd3ac2646790da4f12cf95fc4291f27f200b63ec6c11d9ebf5a1283f88cf2de7c2eb6e6f76e892ef2 +DIST paramiko-2.7.1.tar.gz 330391 BLAKE2B 0f7a2f3b6c15a68002001d69f8402deea5421a8b1f6cf35061a8a36f4b81b7a291d7b0f0b457f32de4c4769659a2e067f0bdb6cc5dcdd0810ebf917e349e85af SHA512 2cebed2420cf9af77cb0d459b64a74adcffcdb15bd58c8fc9243855ae91f43e16706665b64ce2851f6e99e59ca6a47d7299a2aae35a4c9d01ab97b343569c4b2 diff --git a/dev-python/paramiko/files/paramiko-2.7.1-tests.patch b/dev-python/paramiko/files/paramiko-2.7.1-tests.patch new file mode 100644 index 00000000000..9c3570c2c58 --- /dev/null +++ b/dev-python/paramiko/files/paramiko-2.7.1-tests.patch @@ -0,0 +1,62 @@ +From e3e904cc88a08e88c9051de4f5a6f1b6e78bf4a6 Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping +Date: Mon, 16 Dec 2019 17:39:50 +0100 +Subject: [PATCH] Strip use of pytest-relaxed + +.. since it was removed from the tree due to breaking pytest. +--- + tests/test_client.py | 23 +++++++++++------------ + 1 file changed, 11 insertions(+), 12 deletions(-) + +diff --git a/tests/test_client.py b/tests/test_client.py +index 60ad310..22a2e40 100644 +--- a/tests/test_client.py ++++ b/tests/test_client.py +@@ -33,7 +33,6 @@ import warnings + import weakref + from tempfile import mkstemp + +-from pytest_relaxed import raises + from mock import patch, Mock + + import paramiko +@@ -684,10 +683,10 @@ class PasswordPassphraseTests(ClientTest): + + # TODO: more granular exception pending #387; should be signaling "no auth + # methods available" because no key and no password +- @raises(SSHException) + def test_passphrase_kwarg_not_used_for_password_auth(self): +- # Using the "right" password in the "wrong" field shouldn't work. +- self._test_connection(passphrase="pygmalion") ++ with self.assertRaises(SSHException): ++ # Using the "right" password in the "wrong" field shouldn't work. ++ self._test_connection(passphrase="pygmalion") + + def test_passphrase_kwarg_used_for_key_passphrase(self): + # Straightforward again, with new passphrase kwarg. +@@ -705,14 +704,14 @@ class PasswordPassphraseTests(ClientTest): + password="television", + ) + +- @raises(AuthenticationException) # TODO: more granular + def test_password_kwarg_not_used_for_passphrase_when_passphrase_kwarg_given( # noqa + self + ): +- # Sanity: if we're given both fields, the password field is NOT used as +- # a passphrase. +- self._test_connection( +- key_filename=_support("test_rsa_password.key"), +- password="television", +- passphrase="wat? lol no", +- ) ++ with self.assertRaises(AuthenticationException): ++ # Sanity: if we're given both fields, the password field is NOT used as ++ # a passphrase. ++ self._test_connection( ++ key_filename=_support("test_rsa_password.key"), ++ password="television", ++ passphrase="wat? lol no", ++ ) +-- +2.23.0 + diff --git a/dev-python/paramiko/paramiko-2.7.1.ebuild b/dev-python/paramiko/paramiko-2.7.1.ebuild new file mode 100644 index 00000000000..5587e75a3c8 --- /dev/null +++ b/dev-python/paramiko/paramiko-2.7.1.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python2_7 python3_{5,6,7,8} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="SSH2 protocol library" +HOMEPAGE="https://www.paramiko.org/ https://github.com/paramiko/paramiko/ https://pypi.org/project/paramiko/" +# pypi tarballs are missing test data +#SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" +SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris" +IUSE="examples server test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/bcrypt-3.1.3[${PYTHON_USEDEP}] + >=dev-python/cryptography-2.5[${PYTHON_USEDEP}] + >=dev-python/pynacl-1.0.1[${PYTHON_USEDEP}] + >=dev-python/pyasn1-0.1.7[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + dev-python/mock[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + ) +" + +distutils_enable_sphinx sites/docs + +src_prepare() { + eapply "${FILESDIR}"/${P}-tests.patch + + if ! use server; then + eapply "${FILESDIR}/${PN}-2.4.2-disable-server.patch" + fi + + eapply_user +} + +python_test() { + py.test -v || die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + distutils-r1_python_install_all + + if use examples; then + docinto examples + dodoc -r demos/* + fi +}