diff --git a/pkgs/development/python-modules/pynetdicom/default.nix b/pkgs/development/python-modules/pynetdicom/default.nix index 4a78f020f3b7..6f0407aacdff 100644 --- a/pkgs/development/python-modules/pynetdicom/default.nix +++ b/pkgs/development/python-modules/pynetdicom/default.nix @@ -1,26 +1,29 @@ -{ lib -, stdenv -, buildPythonPackage -, fetchFromGitHub -, fetchpatch -, pydicom -, pyfakefs -, pytestCheckHook -, sqlalchemy -, pythonOlder +{ + lib, + stdenv, + buildPythonPackage, + fetchFromGitHub, + fetchpatch, + pydicom, + pyfakefs, + pytestCheckHook, + pythonAtLeast, + pythonOlder, + setuptools, + sqlalchemy, }: buildPythonPackage rec { pname = "pynetdicom"; version = "2.0.2"; - format = "setuptools"; + pyproject = true; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "pydicom"; - repo = pname; - rev = "v${version}"; + repo = "pynetdicom"; + rev = "refs/tags/v${version}"; hash = "sha256-/JWQUtFBW4uqCbs/nUxj1pRBfTCXV4wcqTkqvzpdFrM="; }; @@ -29,12 +32,12 @@ buildPythonPackage rec { name = "fix-python-3.11-test-attribute-errors"; url = "https://github.com/pydicom/pynetdicom/pull/754/commits/2126bd932d6dfb3f07045eb9400acb7eaa1b3069.patch"; hash = "sha256-t6Lg0sTZSWIE5q5pkBvEoHDQ+cklDn8SgNBcFk1myp4="; - }) + }) ]; - propagatedBuildInputs = [ - pydicom - ]; + build-system = [ setuptools ]; + + dependencies = [ pydicom ]; nativeCheckInputs = [ pyfakefs @@ -72,15 +75,24 @@ buildPythonPackage rec { disabledTestPaths = [ # Ignore apps tests "pynetdicom/apps/tests/" + ] ++ lib.optionals (pythonAtLeast "3.12") [ + # https://github.com/pydicom/pynetdicom/issues/924 + "pynetdicom/tests/test_assoc.py" + "pynetdicom/tests/test_transport.py" ]; - pythonImportsCheck = [ - "pynetdicom" + pythonImportsCheck = [ "pynetdicom" ]; + + pytestFlagsArray = [ + # https://github.com/pydicom/pynetdicom/issues/923 + "-W" + "ignore::pytest.PytestRemovedIn8Warning" ]; meta = with lib; { description = "Python implementation of the DICOM networking protocol"; homepage = "https://github.com/pydicom/pynetdicom"; + changelog = "https://github.com/pydicom/pynetdicom/releases/tag/v${version}"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; # Tests are not passing on Darwin/Aarch64, thus it's assumed that it doesn't work