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