summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornixpkgs-ci[bot] <190413589+nixpkgs-ci[bot]@users.noreply.github.com>2025-08-11 00:20:27 +0000
committerGitHub <noreply@github.com>2025-08-11 00:20:27 +0000
commit4c0c4f6e8f5fbb41e5f9aa99d1d1caccd70b5042 (patch)
tree21439de8d34f51d63abce66aa6e536301c16063e
parentbpftools: Re-apply patch to fix build on powerpc64* (#422391) (diff)
parentpython3Packages.python-hosts: fix src (diff)
downloadnixpkgs-4c0c4f6e8f5fbb41e5f9aa99d1d1caccd70b5042.tar.gz
Merge staging-next into staging
-rw-r--r--pkgs/development/python-modules/pgspecial/default.nix25
-rw-r--r--pkgs/development/python-modules/pycomposefile/default.nix7
-rw-r--r--pkgs/development/python-modules/python-hosts/default.nix6
-rw-r--r--pkgs/development/python-modules/sshtunnel/default.nix4
-rw-r--r--pkgs/development/python-modules/sshtunnel/paramiko-4.0-compat.patch117
5 files changed, 142 insertions, 17 deletions
diff --git a/pkgs/development/python-modules/pgspecial/default.nix b/pkgs/development/python-modules/pgspecial/default.nix
index 5876bab95168..10fe8a87c17c 100644
--- a/pkgs/development/python-modules/pgspecial/default.nix
+++ b/pkgs/development/python-modules/pgspecial/default.nix
@@ -4,10 +4,12 @@
click,
configobj,
fetchPypi,
+ postgresql,
+ postgresqlTestHook,
psycopg,
pytestCheckHook,
- pythonOlder,
setuptools,
+ setuptools-scm,
sqlparse,
}:
@@ -16,14 +18,15 @@ buildPythonPackage rec {
version = "2.2.1";
pyproject = true;
- disabled = pythonOlder "3.7";
-
src = fetchPypi {
inherit pname version;
hash = "sha256-2mx/zHvve7ATLcIEb3TsZROx/m8MgOVSjWMNFLfEhJ0=";
};
- build-system = [ setuptools ];
+ build-system = [
+ setuptools
+ setuptools-scm
+ ];
dependencies = [
click
@@ -34,11 +37,21 @@ buildPythonPackage rec {
nativeCheckInputs = [
configobj
pytestCheckHook
+ postgresqlTestHook
+ postgresql
];
+ pytestFlagsArray = [ "-vvv" ];
+
+ env = {
+ PGDATABASE = "_test_db";
+ PGUSER = "postgres";
+ };
+
disabledTests = [
- # Test requires a Postgresql server
- "test_slash_dp_pattern_schema"
+ "test_slash_d_view_verbose"
+ "test_slash_ddp"
+ "test_slash_ddp_pattern"
];
meta = with lib; {
diff --git a/pkgs/development/python-modules/pycomposefile/default.nix b/pkgs/development/python-modules/pycomposefile/default.nix
index e8eb77a8ec00..f82c86315f93 100644
--- a/pkgs/development/python-modules/pycomposefile/default.nix
+++ b/pkgs/development/python-modules/pycomposefile/default.nix
@@ -2,9 +2,8 @@
lib,
buildPythonPackage,
fetchPypi,
+ flit-core,
pyyaml,
- pythonOlder,
- setuptools,
}:
buildPythonPackage rec {
@@ -12,14 +11,12 @@ buildPythonPackage rec {
version = "0.0.34";
pyproject = true;
- disabled = pythonOlder "3.8";
-
src = fetchPypi {
inherit pname version;
hash = "sha256-kzqTtDn4aSiCtNUP90ThKj2ZYEAGjpZlGjfdhCEmpQg=";
};
- build-system = [ setuptools ];
+ build-system = [ flit-core ];
dependencies = [ pyyaml ];
diff --git a/pkgs/development/python-modules/python-hosts/default.nix b/pkgs/development/python-modules/python-hosts/default.nix
index 7eb9ce7dbad7..5c7f7418313f 100644
--- a/pkgs/development/python-modules/python-hosts/default.nix
+++ b/pkgs/development/python-modules/python-hosts/default.nix
@@ -3,7 +3,6 @@
buildPythonPackage,
fetchPypi,
pytestCheckHook,
- pythonOlder,
pyyaml,
setuptools,
}:
@@ -13,11 +12,8 @@ buildPythonPackage rec {
version = "1.1.2";
pyproject = true;
- disabled = pythonOlder "3.7";
-
src = fetchPypi {
- pname = "python_hosts";
- inherit version;
+ inherit pname version;
hash = "sha256-XiU6aO6EhFVgj1g7TYMdbgg7IvjkU2DFoiwYikrB13A=";
};
diff --git a/pkgs/development/python-modules/sshtunnel/default.nix b/pkgs/development/python-modules/sshtunnel/default.nix
index c119e971e965..59a2bbd6243c 100644
--- a/pkgs/development/python-modules/sshtunnel/default.nix
+++ b/pkgs/development/python-modules/sshtunnel/default.nix
@@ -18,6 +18,9 @@ buildPythonPackage rec {
hash = "sha256-58sOp3Tbgb+RhE2yLecqQKro97D5u5ug9mbUdO9r+fw=";
};
+ # https://github.com/pahaz/sshtunnel/pull/301
+ patches = [ ./paramiko-4.0-compat.patch ];
+
build-system = [ setuptools ];
dependencies = [ paramiko ];
@@ -35,7 +38,6 @@ buildPythonPackage rec {
];
meta = with lib; {
- broken = true; # incompatible with paramiko 4.0 https://github.com/pahaz/sshtunnel/issues/299
description = "Pure python SSH tunnels";
mainProgram = "sshtunnel";
homepage = "https://github.com/pahaz/sshtunnel";
diff --git a/pkgs/development/python-modules/sshtunnel/paramiko-4.0-compat.patch b/pkgs/development/python-modules/sshtunnel/paramiko-4.0-compat.patch
new file mode 100644
index 000000000000..f6118fa407f9
--- /dev/null
+++ b/pkgs/development/python-modules/sshtunnel/paramiko-4.0-compat.patch
@@ -0,0 +1,117 @@
+commit 46d08c8eefc18d22e9d893a627cc6d73b43cdb9a
+Author: Martin Weinelt <hexa@gaia.lossy.network>
+Date: Mon Aug 11 00:48:21 2025 +0200
+
+ sshtunnel: remove DSA support
+
+ The support for DSA keys was removed[1] in Paramiko 4.0.
+
+ [1] https://www.paramiko.org/changelog.html#4.0.0
+
+diff --git a/README.rst b/README.rst
+index 7400816..ff27733 100644
+--- a/README.rst
++++ b/README.rst
+@@ -255,9 +255,9 @@ CLI usage
+ -k SSH_HOST_KEY, --ssh_host_key SSH_HOST_KEY
+ Gateway's host key
+ -K KEY_FILE, --private_key_file KEY_FILE
+- RSA/DSS/ECDSA private key file
++ RSA/ECDSA private key file
+ -S KEY_PASSWORD, --private_key_password KEY_PASSWORD
+- RSA/DSS/ECDSA private key password
++ RSA/ECDSA private key password
+ -t, --threaded Allow concurrent connections to each tunnel
+ -v, --verbose Increase output verbosity (default: ERROR)
+ -V, --version Show version number and quit
+diff --git a/sshtunnel.py b/sshtunnel.py
+index c48e330..e6442da 100644
+--- a/sshtunnel.py
++++ b/sshtunnel.py
+@@ -1090,7 +1090,6 @@ class SSHTunnelForwarder(object):
+ host_pkey_directories = [DEFAULT_SSH_DIRECTORY]
+
+ paramiko_key_types = {'rsa': paramiko.RSAKey,
+- 'dsa': paramiko.DSSKey,
+ 'ecdsa': paramiko.ECDSAKey}
+ if hasattr(paramiko, 'Ed25519Key'):
+ # NOQA: new in paramiko>=2.2: http://docs.paramiko.org/en/stable/api/keys.html#module-paramiko.ed25519key
+@@ -1286,7 +1285,7 @@ class SSHTunnelForwarder(object):
+
+ Arguments:
+ pkey_file (str):
+- File containing a private key (RSA, DSS or ECDSA)
++ File containing a private key (RSA or ECDSA)
+ Keyword Arguments:
+ pkey_password (Optional[str]):
+ Password to decrypt the private key
+@@ -1295,7 +1294,7 @@ class SSHTunnelForwarder(object):
+ paramiko.Pkey
+ """
+ ssh_pkey = None
+- key_types = (paramiko.RSAKey, paramiko.DSSKey, paramiko.ECDSAKey)
++ key_types = (paramiko.RSAKey, paramiko.ECDSAKey)
+ if hasattr(paramiko, 'Ed25519Key'):
+ # NOQA: new in paramiko>=2.2: http://docs.paramiko.org/en/stable/api/keys.html#module-paramiko.ed25519key
+ key_types += (paramiko.Ed25519Key, )
+@@ -1805,7 +1804,7 @@ def _parse_arguments(args=None):
+ dest='ssh_private_key',
+ metavar='KEY_FILE',
+ type=str,
+- help='RSA/DSS/ECDSA private key file'
++ help='RSA/ECDSA private key file'
+ )
+
+ parser.add_argument(
+@@ -1813,7 +1812,7 @@ def _parse_arguments(args=None):
+ dest='ssh_private_key_password',
+ metavar='KEY_PASSWORD',
+ type=str,
+- help='RSA/DSS/ECDSA private key password'
++ help='RSA/ECDSA private key password'
+ )
+
+ parser.add_argument(
+diff --git a/tests/test_forwarder.py b/tests/test_forwarder.py
+index 40662d0..02af175 100644
+--- a/tests/test_forwarder.py
++++ b/tests/test_forwarder.py
+@@ -81,11 +81,9 @@ open_tunnel = partial(
+
+ SSH_USERNAME = get_random_string()
+ SSH_PASSWORD = get_random_string()
+-SSH_DSS = b'\x44\x78\xf0\xb9\xa2\x3c\xc5\x18\x20\x09\xff\x75\x5b\xc1\xd2\x6c'
+ SSH_RSA = b'\x60\x73\x38\x44\xcb\x51\x86\x65\x7f\xde\xda\xa2\x2b\x5a\x57\xd5'
+ ECDSA = b'\x25\x19\xeb\x55\xe6\xa1\x47\xff\x4f\x38\xd2\x75\x6f\xa5\xd5\x60'
+ FINGERPRINTS = {
+- 'ssh-dss': SSH_DSS,
+ 'ssh-rsa': SSH_RSA,
+ 'ecdsa-sha2-nistp256': ECDSA,
+ }
+@@ -1202,7 +1200,7 @@ class AuxiliaryTest(unittest.TestCase):
+ '-P={0}'.format(SSH_PASSWORD), # GW password
+ '-R', '10.0.0.1:8080', '10.0.0.2:8080', # remote bind list
+ '-L', ':8081', ':8082', # local bind list
+- '-k={0}'.format(SSH_DSS), # hostkey
++ '-k={0}'.format(SSH_RSA), # hostkey
+ '-K={0}'.format(__file__), # pkey file
+ '-S={0}'.format(SSH_PASSWORD), # pkey password
+ '-t', # concurrent connections (threaded)
+@@ -1232,7 +1230,7 @@ class AuxiliaryTest(unittest.TestCase):
+ '--password={0}'.format(SSH_PASSWORD), # GW password
+ '--remote_bind_address', '10.0.0.1:8080', '10.0.0.2:8080',
+ '--local_bind_address', ':8081', ':8082', # local bind list
+- '--ssh_host_key={0}'.format(SSH_DSS), # hostkey
++ '--ssh_host_key={0}'.format(SSH_RSA), # hostkey
+ '--private_key_file={0}'.format(__file__), # pkey file
+ '--private_key_password={0}'.format(SSH_PASSWORD),
+ '--threaded', # concurrent connections (threaded)
+@@ -1254,7 +1252,7 @@ class AuxiliaryTest(unittest.TestCase):
+ [('10.0.0.1', 8080), ('10.0.0.2', 8080)])
+ self.assertListEqual(parser['local_bind_addresses'],
+ [('', 8081), ('', 8082)])
+- self.assertEqual(parser['ssh_host_key'], str(SSH_DSS))
++ self.assertEqual(parser['ssh_host_key'], str(SSH_RSA))
+ self.assertEqual(parser['ssh_private_key'], __file__)
+ self.assertEqual(parser['ssh_private_key_password'], SSH_PASSWORD)
+ self.assertTrue(parser['threaded'])