From 6d57def2c65c1574ce68449814ff764829b08ae7ca9d9febae0a0c3bd4c0cf8e Mon Sep 17 00:00:00 2001 From: Matej Cepl Date: Sun, 20 Nov 2022 20:28:40 +0000 Subject: [PATCH] Accepting request 1036973 from home:bnavigator:branches:devel:languages:python - Update to 2.12.0 * [Feature] #2125: (also re: #2054) Add a transport_factory kwarg to SSHClient.connect for advanced users to gain more control over early Transport setup and manipulation. Thanks to Noah Pederson for the patch. - Release 2.11.1 * [Bug]: bug:1637 (via #1599) Raise SSHException explicitly when blank private key data is loaded, instead of the natural result of IndexError. This should help more bits of Paramiko or Paramiko-adjacent codebases to correctly handle this class of error. Credit: Nicholas Dietz. * [Bug] #1822: (via, and relating to, far too many other issues to mention here) Update SSHClient so it explicitly closes its wrapped socket object upon encountering socket errors at connection time. This should help somewhat with certain classes of memory leaks, resource warnings, and/or errors (though we hasten to remind everyone that Client and Transport have their own .close() methods for use in non-error situations!). Patch courtesy of @YoavCohen. - Rename and refresh: - paramiko-pr1655-remove-pytest-relaxed.patch + paramiko-pr1665-remove-pytest-relaxed.patch * gh#paramiko/paramiko#1665 OBS-URL: https://build.opensuse.org/request/show/1036973 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-paramiko?expand=0&rev=107 --- paramiko-2.11.0.tar.gz | 3 --- paramiko-2.12.0.tar.gz | 3 +++ ...aramiko-pr1665-remove-pytest-relaxed.patch | 15 +++++------ python-paramiko.changes | 27 +++++++++++++++++++ python-paramiko.spec | 20 +++++++------- 5 files changed, 47 insertions(+), 21 deletions(-) delete mode 100644 paramiko-2.11.0.tar.gz create mode 100644 paramiko-2.12.0.tar.gz rename paramiko-pr1655-remove-pytest-relaxed.patch => paramiko-pr1665-remove-pytest-relaxed.patch (88%) diff --git a/paramiko-2.11.0.tar.gz b/paramiko-2.11.0.tar.gz deleted file mode 100644 index ad155e4..0000000 --- a/paramiko-2.11.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:003e6bee7c034c21fbb051bf83dc0a9ee4106204dd3c53054c71452cc4ec3938 -size 1075390 diff --git a/paramiko-2.12.0.tar.gz b/paramiko-2.12.0.tar.gz new file mode 100644 index 0000000..6266887 --- /dev/null +++ b/paramiko-2.12.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:376885c05c5d6aa6e1f4608aac2a6b5b0548b1add40274477324605903d9cd49 +size 1076369 diff --git a/paramiko-pr1655-remove-pytest-relaxed.patch b/paramiko-pr1665-remove-pytest-relaxed.patch similarity index 88% rename from paramiko-pr1655-remove-pytest-relaxed.patch rename to paramiko-pr1665-remove-pytest-relaxed.patch index 7a28b63..a2ba4cf 100644 --- a/paramiko-pr1655-remove-pytest-relaxed.patch +++ b/paramiko-pr1665-remove-pytest-relaxed.patch @@ -15,20 +15,19 @@ on the system. It has been banned from Gentoo for this reason. tests/test_client.py | 20 ++++++++++---------- 3 files changed, 10 insertions(+), 14 deletions(-) -Index: paramiko-2.11.0/tests/test_client.py +Index: paramiko-2.12.0/tests/test_client.py =================================================================== ---- paramiko-2.11.0.orig/tests/test_client.py 2022-05-17 03:04:13.000000000 +0200 -+++ paramiko-2.11.0/tests/test_client.py 2022-05-26 22:57:20.216831045 +0200 -@@ -33,7 +33,7 @@ - import weakref +--- paramiko-2.12.0.orig/tests/test_client.py ++++ paramiko-2.12.0/tests/test_client.py +@@ -34,7 +34,6 @@ import weakref from tempfile import mkstemp + import pytest -from pytest_relaxed import raises -+import pytest from mock import patch, Mock import paramiko -@@ -733,11 +733,11 @@ +@@ -787,11 +786,11 @@ class PasswordPassphraseTests(ClientTest # TODO: more granular exception pending #387; should be signaling "no auth # methods available" because no key and no password @@ -43,7 +42,7 @@ Index: paramiko-2.11.0/tests/test_client.py @requires_sha1_signing def test_passphrase_kwarg_used_for_key_passphrase(self): -@@ -757,15 +757,15 @@ +@@ -811,15 +810,15 @@ class PasswordPassphraseTests(ClientTest password="television", ) diff --git a/python-paramiko.changes b/python-paramiko.changes index 34782ae..500fd2b 100644 --- a/python-paramiko.changes +++ b/python-paramiko.changes @@ -1,3 +1,30 @@ +------------------------------------------------------------------- +Sun Nov 20 18:38:07 UTC 2022 - Ben Greiner + +- Update to 2.12.0 + * [Feature] #2125: (also re: #2054) Add a transport_factory kwarg + to SSHClient.connect for advanced users to gain more control + over early Transport setup and manipulation. Thanks to Noah + Pederson for the patch. +- Release 2.11.1 + * [Bug]: bug:1637 (via #1599) Raise SSHException explicitly when + blank private key data is loaded, instead of the natural result + of IndexError. This should help more bits of Paramiko or + Paramiko-adjacent codebases to correctly handle this class of + error. Credit: Nicholas Dietz. + * [Bug] #1822: (via, and relating to, far too many other issues + to mention here) Update SSHClient so it explicitly closes its + wrapped socket object upon encountering socket errors at + connection time. This should help somewhat with certain classes + of memory leaks, resource warnings, and/or errors (though we + hasten to remind everyone that Client and Transport have their + own .close() methods for use in non-error situations!). Patch + courtesy of @YoavCohen. +- Rename and refresh: + - paramiko-pr1655-remove-pytest-relaxed.patch + + paramiko-pr1665-remove-pytest-relaxed.patch + * gh#paramiko/paramiko#1665 + ------------------------------------------------------------------- Thu May 26 20:43:45 UTC 2022 - Michael Ströder diff --git a/python-paramiko.spec b/python-paramiko.spec index adae1b6..180ec1c 100644 --- a/python-paramiko.spec +++ b/python-paramiko.spec @@ -16,10 +16,9 @@ # -%{?!python_module:%define python_module() python-%{**} python3-%{**}} %define skip_python2 1 Name: python-paramiko -Version: 2.11.0 +Version: 2.12.0 Release: 0 Summary: SSH2 protocol library License: LGPL-2.1-or-later @@ -27,8 +26,8 @@ Group: Documentation/Other URL: https://www.paramiko.org/ Source0: https://files.pythonhosted.org/packages/source/p/paramiko/paramiko-%{version}.tar.gz Patch0: paramiko-test_extend_timeout.patch -# PATCH-FIX-UPSTREAM paramiko-pr1655-remove-pytest-relaxed.patch gh#paramiko/paramiko#1655 -- pytest-relaxed is broken -Patch1: paramiko-pr1655-remove-pytest-relaxed.patch +# PATCH-FIX-UPSTREAM paramiko-pr1665-remove-pytest-relaxed.patch gh#paramiko/paramiko#1665 -- pytest-relaxed is broken +Patch1: paramiko-pr1665-remove-pytest-relaxed.patch BuildRequires: %{python_module PyNaCl >= 1.0.1} BuildRequires: %{python_module bcrypt >= 3.1.3} BuildRequires: %{python_module cryptography >= 2.5} @@ -39,6 +38,7 @@ BuildRequires: %{python_module pyasn1 >= 0.1.7} BuildRequires: %{python_module pytest-xdist} BuildRequires: %{python_module pytest} BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module six} BuildRequires: fdupes BuildRequires: python-rpm-macros Recommends: python-gssapi @@ -47,6 +47,7 @@ Requires: python-PyNaCl >= 1.0.1 Requires: python-bcrypt >= 3.1.3 Requires: python-cryptography >= 2.5 Requires: python-pyasn1 >= 0.1.7 +Requires: python-six BuildArch: noarch %python_subpackages @@ -70,11 +71,9 @@ are supported. SFTP client and server mode are both supported too. This package contains the documentation. %prep -%setup -q -n paramiko-%{version} -%autopatch -p1 - +%autosetup -p1 -n paramiko-%{version} # Fix non-executable script rpmlint issue: -find demos -name "*.py" -exec sed -i "/#\!\/usr\/bin\/.*/d" {} \; +find demos -name "*.py" -exec sed -i "/#\!\/usr\/bin\/.*/d" {} \; -exec chmod -x {} \; %build %python_build @@ -84,7 +83,7 @@ find demos -name "*.py" -exec sed -i "/#\!\/usr\/bin\/.*/d" {} \; %python_expand %fdupes %{buildroot}%{$python_sitelib} %check -# https://github.com/paramiko/paramiko/issues/2027 +# https://github.com/paramiko/paramiko/issues/2027 -- despite being "completed" upstream, this is not fixed yet. sed -i 's:from mock:from unittest.mock:' tests/test_*.py export LANG=en_US.UTF-8 %pytest @@ -92,7 +91,8 @@ export LANG=en_US.UTF-8 %files %{python_files} %license LICENSE %doc README.rst -%{python_sitelib}/* +%{python_sitelib}/paramiko +%{python_sitelib}/paramiko-%{version}*-info %files -n python-paramiko-doc %license LICENSE