diff --git a/pkgs/development/python-modules/can-isotp/default.nix b/pkgs/development/python-modules/can-isotp/default.nix new file mode 100644 index 000000000000..90dba000d395 --- /dev/null +++ b/pkgs/development/python-modules/can-isotp/default.nix @@ -0,0 +1,51 @@ +{ + lib, + stdenv, + buildPythonPackage, + fetchFromGitHub, + pythonOlder, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage rec { + pname = "can-isotp"; + version = "2.0.6"; + pyproject = true; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "pylessard"; + repo = "python-can-isotp"; + rev = "refs/tags/v${version}"; + hash = "sha256-wfZMVfLBdYkFbb0DiDWmGaraykJ/QL64Zkl2/nBu4lY="; + }; + + build-system = [ setuptools ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + disabledTestPaths = [ + # we don't support socket tests + "test/test_can_stack.py" + "test/test_layer_vs_socket.py" + "test/test_socket.py" + + # behaves inconsistently due to timing + "test/test_transport_layer.py" + "test/test_helper_classes.py" + ]; + + pythonImportsCheck = [ "isotp" ]; + + meta = with lib; { + description = "Python package that provides support for ISO-TP (ISO-15765) protocol"; + homepage = "https://github.com/pylessard/python-can-isotp"; + changelog = "https://github.com/pylessard/python-can-isotp/releases/tag/v${version}"; + license = licenses.mit; + maintainers = with maintainers; [ + jacobkoziej + ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index bb45317ec90d..319dd25f521b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1977,6 +1977,8 @@ self: super: with self; { camel-converter = callPackage ../development/python-modules/camel-converter { }; + can-isotp = callPackage ../development/python-modules/can-isotp { }; + canals = callPackage ../development/python-modules/canals { }; canmatrix = callPackage ../development/python-modules/canmatrix { };