at 25.11-pre 120 lines 2.1 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 6 # build-system 7 hatchling, 8 hatch-vcs, 9 10 # dependencies 11 aiohttp, 12 awkward, 13 cachetools, 14 cloudpickle, 15 correctionlib, 16 dask, 17 dask-awkward, 18 dask-histogram, 19 fsspec-xrootd, 20 hist, 21 lz4, 22 matplotlib, 23 mplhep, 24 numba, 25 numpy, 26 packaging, 27 pandas, 28 pyarrow, 29 requests, 30 scipy, 31 toml, 32 tqdm, 33 uproot, 34 vector, 35 36 # tests 37 distributed, 38 pyinstrument, 39 pytest-xdist, 40 pytestCheckHook, 41}: 42 43buildPythonPackage rec { 44 pname = "coffea"; 45 version = "2025.3.0"; 46 pyproject = true; 47 48 src = fetchFromGitHub { 49 owner = "CoffeaTeam"; 50 repo = "coffea"; 51 tag = "v${version}"; 52 hash = "sha256-NZ3r/Dyw5bB4qOO29DUAARPzdJJxgR9OO9LxVu3YbNo="; 53 }; 54 55 build-system = [ 56 hatchling 57 hatch-vcs 58 ]; 59 60 pythonRelaxDeps = [ 61 "dask" 62 ]; 63 64 dependencies = [ 65 aiohttp 66 awkward 67 cachetools 68 cloudpickle 69 correctionlib 70 dask 71 dask-awkward 72 dask-histogram 73 fsspec-xrootd 74 hist 75 lz4 76 matplotlib 77 mplhep 78 numba 79 numpy 80 packaging 81 pandas 82 pyarrow 83 requests 84 scipy 85 toml 86 tqdm 87 uproot 88 vector 89 ] ++ dask.optional-dependencies.array; 90 91 nativeCheckInputs = [ 92 distributed 93 pyinstrument 94 pytest-xdist 95 pytestCheckHook 96 ]; 97 98 pythonImportsCheck = [ "coffea" ]; 99 100 disabledTests = [ 101 # Requires internet access 102 # https://github.com/CoffeaTeam/coffea/issues/1094 103 "test_lumimask" 104 105 # Flaky: FileNotFoundError: [Errno 2] No such file or directory 106 # https://github.com/scikit-hep/coffea/issues/1246 107 "test_packed_selection_cutflow_dak" # cutflow.npz 108 "test_packed_selection_nminusone_dak" # nminusone.npz 109 ]; 110 111 __darwinAllowLocalNetworking = true; 112 113 meta = { 114 description = "Basic tools and wrappers for enabling not-too-alien syntax when running columnar Collider HEP analysis"; 115 homepage = "https://github.com/CoffeaTeam/coffea"; 116 changelog = "https://github.com/CoffeaTeam/coffea/releases/tag/v${version}"; 117 license = with lib.licenses; [ bsd3 ]; 118 maintainers = with lib.maintainers; [ veprbl ]; 119 }; 120}