diff options
| author | nixpkgs-ci[bot] <190413589+nixpkgs-ci[bot]@users.noreply.github.com> | 2025-08-11 00:20:27 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-08-11 00:20:27 +0000 |
| commit | 4c0c4f6e8f5fbb41e5f9aa99d1d1caccd70b5042 (patch) | |
| tree | 21439de8d34f51d63abce66aa6e536301c16063e | |
| parent | bpftools: Re-apply patch to fix build on powerpc64* (#422391) (diff) | |
| parent | python3Packages.python-hosts: fix src (diff) | |
| download | nixpkgs-4c0c4f6e8f5fbb41e5f9aa99d1d1caccd70b5042.tar.gz | |
Merge staging-next into staging
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']) |
