44 lines
1.0 KiB
Nix
44 lines
1.0 KiB
Nix
{ lib
|
|
, buildPythonPackage
|
|
, fetchFromGitHub
|
|
, pythonOlder
|
|
, wrapt
|
|
, typing
|
|
, pyserial
|
|
, nose
|
|
, mock
|
|
, hypothesis
|
|
, future
|
|
, pytest
|
|
, pytest-timeout }:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "python-can";
|
|
version = "3.1.0";
|
|
|
|
# PyPI tarball is missing some tests and is missing __init__.py in test
|
|
# directory causing the tests to fail. See:
|
|
# https://github.com/hardbyte/python-can/issues/518
|
|
src = fetchFromGitHub {
|
|
repo = pname;
|
|
owner = "hardbyte";
|
|
rev = "v${version}";
|
|
sha256 = "01lfsh7drm4qvv909x9i0vnhskdh27mcb5xa86sv9m3zfpq8cjis";
|
|
};
|
|
|
|
propagatedBuildInputs = [ wrapt pyserial ] ++ lib.optional (pythonOlder "3.5") typing;
|
|
checkInputs = [ nose mock pytest pytest-timeout hypothesis future ];
|
|
|
|
# Add the scripts to PATH
|
|
checkPhase = ''
|
|
PATH=$out/bin:$PATH pytest -c /dev/null
|
|
'';
|
|
|
|
meta = with lib; {
|
|
homepage = https://github.com/hardbyte/python-can;
|
|
description = "CAN support for Python";
|
|
license = licenses.lgpl3;
|
|
maintainers = with maintainers; [ sorki ];
|
|
};
|
|
}
|