nixpkgs/pkgs/development/python-modules/canmatrix/default.nix

68 lines
1.3 KiB
Nix
Raw Normal View History

2018-02-01 21:31:14 +00:00
{ lib
, buildPythonPackage
, fetchFromGitHub
2019-04-03 14:23:53 +01:00
, pythonOlder
, attrs
, bitstruct
, click
2019-04-03 14:23:53 +01:00
, future
, pathlib2
, typing
2018-02-01 21:31:14 +00:00
, lxml
, xlwt
, xlrd
, XlsxWriter
, pyyaml
2019-04-03 14:23:53 +01:00
, pytest
}:
2018-02-01 21:31:14 +00:00
buildPythonPackage rec {
pname = "canmatrix";
version = "0.9.1";
2018-02-01 21:31:14 +00:00
# uses fetchFromGitHub as PyPi release misses test/ dir
src = fetchFromGitHub {
owner = "ebroecker";
repo = pname;
rev = version;
sha256 = "129lcchq45h8wqjvvn0rwpbmih4m0igass2cx7a21z94li97hcia";
2018-02-01 21:31:14 +00:00
};
2019-04-03 14:23:53 +01:00
propagatedBuildInputs = [
# required
attrs
bitstruct
click
2019-04-03 14:23:53 +01:00
future
pathlib2
# optional
lxml
xlwt
xlrd
XlsxWriter
pyyaml
] ++ lib.optional (pythonOlder "3.5") typing;
postPatch = ''
substituteInPlace setup.py \
--replace "version = versioneer.get_version()" "version = \"${version}\""
'';
2019-04-03 14:23:53 +01:00
checkInputs = [
pytest
];
# long_envvar_name_imports requires stable key value pair ordering
2018-02-01 21:31:14 +00:00
checkPhase = ''
pytest -s src/canmatrix -k 'not long_envvar_name_imports'
2018-02-01 21:31:14 +00:00
'';
meta = with lib; {
homepage = "https://github.com/ebroecker/canmatrix";
2018-02-01 21:31:14 +00:00
description = "Support and convert several CAN (Controller Area Network) database formats .arxml .dbc .dbf .kcd .sym fibex xls(x)";
license = licenses.bsd2;
maintainers = with maintainers; [ sorki ];
};
}