Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at python-updates 157 lines 4.1 kB view raw
1{ 2 array-api-compat, 3 awkward, 4 boltons, 5 buildPythonPackage, 6 dask, 7 distributed, 8 fetchFromGitHub, 9 filelock, 10 h5py, 11 hatch-vcs, 12 hatchling, 13 joblib, 14 lib, 15 natsort, 16 numba, 17 numpy, 18 openpyxl, 19 packaging, 20 pandas, 21 pyarrow, 22 pytest-mock, 23 pytest-xdist, 24 pytestCheckHook, 25 pythonOlder, 26 scikit-learn, 27 scipy, 28 stdenv, 29 typing-extensions, 30 zarr, 31}: 32 33buildPythonPackage rec { 34 pname = "anndata"; 35 version = "0.12.1"; 36 pyproject = true; 37 38 src = fetchFromGitHub { 39 owner = "scverse"; 40 repo = "anndata"; 41 tag = version; 42 hash = "sha256-vxyRJ77PIkRIyl4aTQggXSQVoMKLQe3mCA5H3W/wmN8="; 43 }; 44 45 build-system = [ 46 hatch-vcs 47 hatchling 48 ]; 49 50 dependencies = [ 51 array-api-compat 52 h5py 53 natsort 54 numpy 55 pandas 56 scipy 57 ]; 58 59 nativeCheckInputs = [ 60 awkward 61 boltons 62 dask 63 distributed 64 filelock 65 joblib 66 numba 67 openpyxl 68 pyarrow 69 pytest-mock 70 pytest-xdist 71 pytestCheckHook 72 scikit-learn 73 zarr 74 ]; 75 76 # Optionally disable pytest-xdist to make it easier to debug the test suite. 77 # Test suite takes ~5 minutes without pytest-xdist. Note that some tests will 78 # fail when running without pytest-xdist ("worker_id not found"). 79 # pytestFlags = [ "-oaddopts=" ]; 80 81 disabledTestPaths = [ 82 # Tests that require scanpy, creating a circular dependency chain 83 "src/anndata/_core/anndata.py" 84 "src/anndata/_core/merge.py" 85 "src/anndata/_core/sparse_dataset.py" 86 "src/anndata/_io/specs/registry.py" 87 "src/anndata/_io/utils.py" 88 "src/anndata/_warnings.py" 89 "src/anndata/experimental/merge.py" 90 "src/anndata/experimental/multi_files/_anncollection.py" 91 "src/anndata/utils.py" 92 ]; 93 94 disabledTests = [ 95 # doctests that require scanpy, creating a circular dependency chain. These 96 # do not work in disabledTestPaths for some reason. 97 "anndata._core.anndata.AnnData.concatenate" 98 "anndata._core.anndata.AnnData.obs_names_make_unique" 99 "anndata._core.anndata.AnnData.var_names_make_unique" 100 "anndata._core.merge.concat" 101 "anndata._core.merge.gen_reindexer" 102 "anndata._core.sparse_dataset.sparse_dataset" 103 "anndata._io.specs.registry.read_elem_as_dask" 104 "anndata._io.utils.report_read_key_on_error" 105 "anndata._io.utils.report_write_key_on_error" 106 "anndata._warnings.ImplicitModificationWarning" 107 "anndata.experimental.merge.concat_on_disk" 108 "anndata.experimental.multi_files._anncollection.AnnCollection" 109 "anndata.utils.make_index_unique" 110 "ci.scripts.min-deps.min_dep" 111 "concatenation.rst" 112 113 # Tests that require cupy and GPU access. Introducing cupy as a dependency 114 # would make this package unfree and GPU access is not possible within the 115 # nix build environment anyhow. 116 "test_adata_raw_gpu" 117 "test_as_cupy_dask" 118 "test_as_dask_functions" 119 "test_concat_different_types_dask" 120 "test_concat_on_var_outer_join" 121 "test_concatenate_layers_misaligned" 122 "test_concatenate_layers_outer" 123 "test_concatenate_layers" 124 "test_concatenate_roundtrip" 125 "test_dask_to_memory_unbacked" 126 "test_ellipsis_index" 127 "test_error_on_mixed_device" 128 "test_gpu" 129 "test_io_spec_cupy" 130 "test_modify_view_component" 131 "test_nan_merge" 132 "test_pairwise_concat" 133 "test_raw_gpu" 134 "test_set_scalar_subset_X" 135 "test_transposed_concat" 136 "test_view_different_type_indices" 137 "test_view_of_view" 138 139 # Tests that are seemingly broken. See https://github.com/scverse/anndata/issues/2017. 140 "test_concat_dask_sparse_matches_memory" 141 ] 142 ++ lib.optionals (stdenv.isAarch64 && stdenv.isDarwin) [ 143 # RuntimeError: Cluster failed to start: [Errno 1] Operation not permitted 144 "test_dask_distributed_write" 145 "test_read_lazy_h5_cluster" 146 ]; 147 148 pythonImportsCheck = [ "anndata" ]; 149 150 meta = { 151 changelog = "https://github.com/scverse/anndata/blob/main/docs/release-notes/${src.tag}.md"; 152 description = "Python package for handling annotated data matrices in memory and on disk"; 153 homepage = "https://anndata.readthedocs.io/"; 154 license = lib.licenses.bsd3; 155 maintainers = with lib.maintainers; [ samuela ]; 156 }; 157}