1{
2 buildPythonPackage,
3 dask,
4 fetchFromGitHub,
5 hatch-docstring-description,
6 hatch-fancy-pypi-readme,
7 hatch-min-requirements,
8 hatch-vcs,
9 hatchling,
10 lib,
11 numba,
12 numpy,
13 pytest-codspeed,
14 pytest-doctestplus,
15 pytestCheckHook,
16 scipy,
17}:
18
19buildPythonPackage rec {
20 pname = "fast-array-utils";
21 version = "1.2.3";
22 pyproject = true;
23
24 src = fetchFromGitHub {
25 owner = "scverse";
26 repo = "fast-array-utils";
27 tag = "v${version}";
28 hash = "sha256-uvTViDaLey+jxWyic9m542Ip4x8cCfGaNUfYp8cQPXo=";
29 };
30
31 # hatch-min-requirements tries to talk to PyPI by default. See https://github.com/tlambert03/hatch-min-requirements?tab=readme-ov-file#environment-variables.
32 env.MIN_REQS_OFFLINE = "1";
33
34 build-system = [
35 hatch-docstring-description
36 hatch-fancy-pypi-readme
37 hatch-min-requirements
38 hatch-vcs
39 hatchling
40 ];
41
42 dependencies = [
43 numpy
44 ];
45
46 nativeCheckInputs = [
47 dask
48 numba
49 pytest-codspeed
50 pytest-doctestplus
51 pytestCheckHook
52 scipy
53 ];
54
55 pythonImportsCheck = [
56 "fast_array_utils.conv"
57 "fast_array_utils.types"
58 "fast_array_utils.typing"
59 "fast_array_utils"
60 ];
61
62 meta = {
63 description = "Fast array utilities";
64 homepage = "https://icb-fast-array-utils.readthedocs-hosted.com";
65 license = lib.licenses.mpl20;
66 maintainers = with lib.maintainers; [
67 samuela
68 ];
69 };
70}