1{ lib
2, buildPythonPackage
3, fetchPypi
4, pythonOlder
5
6# build-system
7, cmake
8, scikit-build-core
9, pybind11
10, pathspec
11, ninja
12, pyproject-metadata
13
14# dependencies
15, numpy
16
17# tests
18, pytestCheckHook
19}:
20
21buildPythonPackage rec {
22 pname = "iminuit";
23 version = "2.24.0";
24 format = "pyproject";
25
26 disabled = pythonOlder "3.6";
27
28 src = fetchPypi {
29 inherit pname version;
30 hash = "sha256-JatjHDyOAksbzHyW9mM4yqxUpKIyTVXx47pWF4FuRP0=";
31 };
32
33 nativeBuildInputs = [
34 cmake
35 scikit-build-core
36 pybind11
37 pathspec
38 ninja
39 pyproject-metadata
40 ] ++ scikit-build-core.optional-dependencies.pyproject;
41
42 propagatedBuildInputs = [
43 numpy
44 ];
45
46 dontUseCmakeConfigure = true;
47
48 nativeCheckInputs = [
49 pytestCheckHook
50 ];
51
52 meta = with lib; {
53 homepage = "https://github.com/scikit-hep/iminuit";
54 description = "Python interface for the Minuit2 C++ library";
55 license = with licenses; [ mit lgpl2Only ];
56 maintainers = with maintainers; [ veprbl ];
57 };
58}