anki-bin: 24.06.3 -> 24.11 (#360722)
[NixPkgs.git] / pkgs / development / python-modules / boost-histogram / default.nix
blobfb656151a13b954ef7d422f4a0177d972b76118e
2   lib,
3   stdenv,
4   buildPythonPackage,
5   fetchFromGitHub,
7   # nativeBuildInputs
8   cmake,
10   # build-system
11   pybind11,
12   nanobind,
13   ninja,
14   scikit-build-core,
15   setuptools-scm,
17   # buildInputs
18   boost,
20   # dependencies
21   numpy,
23   # tests
24   pytestCheckHook,
25   pytest-benchmark,
28 buildPythonPackage rec {
29   pname = "boost-histogram";
30   version = "1.5.0";
31   pyproject = true;
33   src = fetchFromGitHub {
34     owner = "scikit-hep";
35     repo = "boost-histogram";
36     rev = "refs/tags/v${version}";
37     hash = "sha256-GsgzJqZTrtc4KRkGn468m0e+sgX9rzJdwA9JMPSSPWk=";
38   };
40   nativeBuildInputs = [ cmake ];
42   dontUseCmakeConfigure = true;
44   build-system = [
45     pybind11
46     nanobind
47     ninja
48     scikit-build-core
49     setuptools-scm
50   ];
52   buildInputs = [ boost ];
54   dependencies = [ numpy ];
56   nativeCheckInputs = [
57     pytestCheckHook
58     pytest-benchmark
59   ];
61   disabledTests = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [
62     # Segfaults: boost_histogram/_internal/hist.py", line 799 in sum
63     # Fatal Python error: Segmentation fault
64     "test_numpy_conversion_4"
65   ];
67   meta = {
68     description = "Python bindings for the C++14 Boost::Histogram library";
69     homepage = "https://github.com/scikit-hep/boost-histogram";
70     changelog = "https://github.com/scikit-hep/boost-histogram/releases/tag/v${version}";
71     license = lib.licenses.bsd3;
72     maintainers = with lib.maintainers; [ veprbl ];
73   };