1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 # build-system
7 setuptools,
8
9 # dependencies
10 numpy,
11 pandas,
12 scipy,
13 xmltodict,
14
15 # tests
16 pytestCheckHook,
17 pytest-benchmark,
18}:
19
20let
21 version = "1.4.0";
22in
23buildPythonPackage {
24 pname = "motmetrics";
25 version = "${version}-unstable-2025-01-14";
26 pyproject = true;
27
28 src = fetchFromGitHub {
29 owner = "cheind";
30 repo = "py-motmetrics";
31 # Latest release is not compatible with pandas 2.0
32 rev = "c199b3e853d589af4b6a7d88f5bcc8b8802fc434";
33 hash = "sha256-DJ82nioW3jdIVo1B623BE8bBhVa1oMzYIkhhit4Z4dg=";
34 };
35
36 build-system = [ setuptools ];
37
38 dependencies = [
39 numpy
40 pandas
41 scipy
42 xmltodict
43 ];
44
45 nativeCheckInputs = [
46 pytestCheckHook
47 pytest-benchmark
48 ];
49
50 pytestFlags = [ "--benchmark-disable" ];
51
52 pythonImportsCheck = [ "motmetrics" ];
53
54 meta = {
55 description = "Benchmark multiple object trackers (MOT) in Python";
56 homepage = "https://github.com/cheind/py-motmetrics";
57 changelog = "https://github.com/cheind/py-motmetrics/releases/tag/v${version}";
58 license = lib.licenses.mit;
59 maintainers = [ ];
60 };
61}