1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 pytestCheckHook,
7 coverage,
8 miss-hit-core,
9 python,
10 setuptools,
11}:
12
13buildPythonPackage rec {
14 pname = "miss-hit";
15 version = "0.9.44";
16 pyproject = true;
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchFromGitHub {
21 owner = "florianschanda";
22 repo = "miss_hit";
23 tag = version;
24 hash = "sha256-dJZIleDWmdarhmxoKvQxWvI/Tmx9pSCNlgFXj5NFIUc=";
25 };
26
27 build-system = [ setuptools ];
28
29 dependencies = [
30 miss-hit-core
31 ];
32
33 configurePhase = ''
34 runHook preConfigure
35
36 cp setup_agpl.py setup.py
37
38 runHook postConfigure
39 '';
40
41 nativeCheckInputs = [
42 coverage
43 ];
44
45 checkPhase = ''
46 runHook preCheck
47
48 cd tests
49 ${python.interpreter} ./run.py
50
51 runHook postCheck
52 '';
53
54 pythonImportsCheck = [
55 "miss_hit"
56 ];
57
58 meta = {
59 description = "Static analysis and other utilities for programs written in the MATLAB/Simulink and Octave languages";
60 homepage = "https://misshit.org/";
61 changelog = "https://github.com/florianschanda/miss_hit/releases/tag/${version}";
62 license = lib.licenses.agpl3Plus;
63 maintainers = with lib.maintainers; [
64 jacobkoziej
65 ];
66 };
67}