1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 pandas,
7 pythonOlder,
8}:
9
10buildPythonPackage rec {
11 pname = "pycatch22";
12 version = "0.4.5";
13 pyproject = true;
14
15 disabled = pythonOlder "3.7";
16
17 src = fetchFromGitHub {
18 owner = "DynamicsAndNeuralSystems";
19 repo = "pycatch22";
20 rev = "refs/tags/v${version}";
21 hash = "sha256-NvZrjOdC6rV4hwCuGcc2Br/VDhLwZcYpfnNvQpqU134=";
22 };
23
24 nativeBuildInputs = [ setuptools ];
25
26 nativeCheckInputs = [ pandas ];
27
28 # This packages does not have real tests
29 # But we can run this file as smoketest
30 checkPhase = ''
31 runHook preCheck
32
33 python tests/testing.py
34
35 runHook postCheck
36 '';
37
38 pythonImportsCheck = [ "pycatch22" ];
39
40 meta = with lib; {
41 description = "Python implementation of catch22";
42 homepage = "https://github.com/DynamicsAndNeuralSystems/pycatch22";
43 changelog = "https://github.com/DynamicsAndNeuralSystems/pycatch22/releases/tag/v${version}";
44 license = licenses.gpl3Plus;
45 maintainers = with maintainers; [ mbalatsko ];
46 };
47}