1{ 2 lib, 3 stdenv, 4 buildPythonPackage, 5 fetchFromGitHub, 6 7 # build-system 8 setuptools, 9 setuptools-scm, 10 11 # dependencies 12 fsspec, 13 xrootd, 14 15 # tests 16 pkgs, 17 pytestCheckHook, 18}: 19 20buildPythonPackage rec { 21 pname = "fsspec-xrootd"; 22 version = "0.5.1"; 23 pyproject = true; 24 25 src = fetchFromGitHub { 26 owner = "CoffeaTeam"; 27 repo = "fsspec-xrootd"; 28 tag = "v${version}"; 29 hash = "sha256-Vpe/Gcm6rmehG05h2H7BDZcBQDyie0Ww9X8LgoTgAkE="; 30 }; 31 32 build-system = [ 33 setuptools 34 setuptools-scm 35 ]; 36 37 dependencies = [ 38 fsspec 39 xrootd 40 ]; 41 42 pythonImportsCheck = [ "fsspec_xrootd" ]; 43 44 nativeCheckInputs = [ 45 pkgs.xrootd 46 pytestCheckHook 47 ]; 48 49 disabledTests = [ 50 # Fails (on aarch64-linux) as it runs sleep, touch, stat and makes assumptions about the 51 # scheduler and the filesystem. 52 "test_touch_modified" 53 ]; 54 55 # Timeout related tests hang indifinetely 56 disabledTestPaths = lib.optionals stdenv.hostPlatform.isDarwin [ "tests/test_basicio.py" ]; 57 58 meta = { 59 description = "XRootD implementation for fsspec"; 60 homepage = "https://github.com/CoffeaTeam/fsspec-xrootd"; 61 changelog = "https://github.com/CoffeaTeam/fsspec-xrootd/releases/tag/v${version}"; 62 license = lib.licenses.bsd3; 63 maintainers = with lib.maintainers; [ GaetanLepage ]; 64 }; 65}