15
0

- Update to 3.5.1

* [Bug] #2490: Private key material is now explicitly ‘unpadded’ during
    decryption, removing a reliance on some lax OpenSSL behavior & making
    us compatible with future Cryptography releases. Patch courtesy of
    Alex Gaynor.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-paramiko?expand=0&rev=128
This commit is contained in:
2025-02-12 10:40:50 +00:00
committed by Git OBS Bridge
commit 20e1148d4c
12 changed files with 1238 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
.osc

BIN
paramiko-3.4.0.tar.gz LFS Normal file

Binary file not shown.

BIN
paramiko-3.4.1.tar.gz LFS Normal file

Binary file not shown.

3
paramiko-3.5.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ad11e540da4f55cedda52931f1a3f812a8238a7af7f62a60de538cd80bb28124
size 1704305

BIN
paramiko-3.5.1.tar.gz LFS Normal file

Binary file not shown.

View File

@@ -0,0 +1,13 @@
Index: paramiko-2.5.0/tests/test_buffered_pipe.py
===================================================================
--- paramiko-2.5.0.orig/tests/test_buffered_pipe.py
+++ paramiko-2.5.0/tests/test_buffered_pipe.py
@@ -68,7 +68,7 @@ class BufferedPipeTest(unittest.TestCase
self.assertTrue(False)
except PipeTimeout:
pass
- self.assertEqual(b"b", p.read(1, 1.0))
+ self.assertEqual(b"b", p.read(1, 3.0))
self.assertEqual(b"", p.read(1))
def test_close_while_reading(self):

1020
python-paramiko.changes Normal file

File diff suppressed because it is too large Load Diff

100
python-paramiko.spec Normal file
View File

@@ -0,0 +1,100 @@
#
# spec file for package python-paramiko
#
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?sle15_python_module_pythons}
Name: python-paramiko
Version: 3.5.1
Release: 0
Summary: SSH2 protocol library
License: LGPL-2.1-or-later
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-OPENSUSE remove-icecream-dep.patch to do not depend on python-icecream and unvendor lexicon
Patch1: remove-icecream-dep.patch
BuildRequires: %{python_module PyNaCl >= 1.0.1}
BuildRequires: %{python_module Sphinx}
BuildRequires: %{python_module bcrypt >= 3.2}
BuildRequires: %{python_module cryptography >= 3.3}
BuildRequires: %{python_module gssapi}
BuildRequires: %{python_module invocations}
BuildRequires: %{python_module invoke >= 2.0}
BuildRequires: %{python_module lexicon}
BuildRequires: %{python_module pyasn1}
BuildRequires: %{python_module pytest-relaxed}
BuildRequires: %{python_module pytest-xdist}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Recommends: python-gssapi
Recommends: python-invoke
Recommends: python-pyasn1 >= 0.1.7
Requires: python-PyNaCl >= 1.5
Requires: python-bcrypt >= 3.2
Requires: python-cryptography >= 3.3
BuildArch: noarch
%python_subpackages
%description
This is a library for making SSH2 connections (client or server).
Emphasis is on using SSH2 as an alternative to SSL for making secure
connections between python scripts. All major ciphers and hash methods
are supported. SFTP client and server mode are both supported too.
%package -n python-paramiko-doc
Summary: Documentation for %{name}
Provides: %{python_module paramiko-doc = %{version}}
%description -n python-paramiko-doc
This is a library for making SSH2 connections (client or server).
Emphasis is on using SSH2 as an alternative to SSL for making secure
connections between python scripts. All major ciphers and hash methods
are supported. SFTP client and server mode are both supported too.
This package contains the documentation.
%prep
%autosetup -p1 -n paramiko-%{version}
# Fix non-executable script rpmlint issue:
find demos -name "*.py" -exec sed -i "/#\!\/usr\/bin\/.*/d" {} \; -exec chmod -x {} \;
%build
%python_build
%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
export LANG=en_US.UTF-8
# Do not test k5shell to avoid dependency
donttest="k5shell"
%pytest tests/test_*.py -k "not $donttest"
%files %{python_files}
%license LICENSE
%doc README.rst
%{python_sitelib}/paramiko
%{python_sitelib}/paramiko-%{version}*-info
%files -n python-paramiko-doc
%license LICENSE
%doc demos/
%changelog

27
remove-icecream-dep.patch Normal file
View File

@@ -0,0 +1,27 @@
Index: paramiko-3.3.1/tests/conftest.py
===================================================================
--- paramiko-3.3.1.orig/tests/conftest.py
+++ paramiko-3.3.1/tests/conftest.py
@@ -4,7 +4,7 @@ import shutil
import threading
from pathlib import Path
-from invoke.vendor.lexicon import Lexicon
+from lexicon import Lexicon
import pytest
from paramiko import (
@@ -22,13 +22,6 @@ from ._loop import LoopSocket
from ._stub_sftp import StubServer, StubSFTPServer
from ._util import _support
-from icecream import ic, install as install_ic
-
-
-# Better print() for debugging - use ic()!
-install_ic()
-ic.configureOutput(includeContext=True)
-
# Perform logging by default; pytest will capture and thus hide it normally,
# presenting it on error/failure. (But also allow turning it off when doing

23
support-pytest-8.patch Normal file
View File

@@ -0,0 +1,23 @@
From d71046151d9904df467ff72709585cde39cdd4ca Mon Sep 17 00:00:00 2001
From: Alex Gaynor <alex.gaynor@gmail.com>
Date: Sat, 27 Jan 2024 17:04:18 -0500
Subject: [PATCH] Use pytest's setup_method -- in pytest 8 the nose method
setup is deprecated
---
tests/test_config.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/test_config.py b/tests/test_config.py
index 2e49aa3de..1e623e0ad 100644
--- a/tests/test_config.py
+++ b/tests/test_config.py
@@ -53,7 +53,7 @@ def load_config(name):
class TestSSHConfig:
- def setup(self):
+ def setup_method(self):
self.config = load_config("robey")
def test_init(self):

View File

@@ -0,0 +1,19 @@
Index: paramiko-3.4.0/tests/test_transport.py
===================================================================
--- paramiko-3.4.0.orig/tests/test_transport.py
+++ paramiko-3.4.0/tests/test_transport.py
@@ -1423,12 +1423,12 @@ class TestStrictKex:
setattr(
self.packetizer,
"_Packetizer__sequence_number_in",
- sys.maxsize,
+ 2**63-1,
)
setattr(
self.packetizer,
"_Packetizer__sequence_number_out",
- sys.maxsize,
+ 2**63-1,
)
with raises(