at 24.05-pre 2.9 kB view raw
1{ lib 2, stdenv 3, aiohttp 4, buildPythonPackage 5, fetchFromGitHub 6, numpy 7, paramiko 8, pytest-asyncio 9, pytest-mock 10, pytest-vcr 11, pytestCheckHook 12, pythonOlder 13, requests 14, smbprotocol 15, tqdm 16, adlfs 17, dask 18, distributed 19, dropbox 20, fusepy 21, gcsfs 22, libarchive-c 23, ocifs 24, panel 25, pyarrow 26, pygit2 27, s3fs 28}: 29 30buildPythonPackage rec { 31 pname = "fsspec"; 32 version = "2023.10.0"; 33 format = "setuptools"; 34 35 disabled = pythonOlder "3.8"; 36 37 src = fetchFromGitHub { 38 owner = "fsspec"; 39 repo = "filesystem_spec"; 40 rev = "refs/tags/${version}"; 41 hash = "sha256-cLkCQQbb/AakDSz1NTrVlHh8LdgoqtjX8OPT+Nb1NA4="; 42 }; 43 44 propagatedBuildInputs = [ 45 aiohttp 46 paramiko 47 requests 48 smbprotocol 49 tqdm 50 ]; 51 52 passthru.optional-dependencies = { 53 entrypoints = [ 54 ]; 55 abfs = [ 56 adlfs 57 ]; 58 adl = [ 59 adlfs 60 ]; 61 dask = [ 62 dask 63 distributed 64 ]; 65 dropbox = [ 66 # missing dropboxdrivefs 67 requests 68 dropbox 69 ]; 70 gcs = [ 71 gcsfs 72 ]; 73 git = [ 74 pygit2 75 ]; 76 github = [ 77 requests 78 ]; 79 gs = [ 80 gcsfs 81 ]; 82 hdfs = [ 83 pyarrow 84 ]; 85 arrow = [ 86 pyarrow 87 ]; 88 http = [ 89 aiohttp 90 requests 91 ]; 92 sftp = [ 93 paramiko 94 ]; 95 s3 = [ 96 s3fs 97 ]; 98 oci = [ 99 ocifs 100 ]; 101 smb = [ 102 smbprotocol 103 ]; 104 ssh = [ 105 paramiko 106 ]; 107 fuse = [ 108 fusepy 109 ]; 110 libarchive = [ 111 libarchive-c 112 ]; 113 gui = [ 114 panel 115 ]; 116 tqdm = [ 117 tqdm 118 ]; 119 }; 120 121 nativeCheckInputs = [ 122 numpy 123 pytest-asyncio 124 pytest-mock 125 pytest-vcr 126 pytestCheckHook 127 ]; 128 129 __darwinAllowLocalNetworking = true; 130 131 disabledTests = [ 132 # Test assumes user name is part of $HOME 133 # AssertionError: assert 'nixbld' in '/homeless-shelter/foo/bar' 134 "test_strip_protocol_expanduser" 135 # test accesses this remote ftp server: 136 # https://ftp.fau.de/debian-cd/current/amd64/log/success 137 "test_find" 138 # Tests want to access S3 139 "test_urlpath_inference_errors" 140 "test_mismatch" 141 ] ++ lib.optionals (stdenv.isDarwin) [ 142 # works locally on APFS, fails on hydra with AssertionError comparing timestamps 143 # darwin hydra builder uses HFS+ and has only one second timestamp resolution 144 # this two tests however, assume nanosecond resolution 145 "test_modified" 146 "test_touch" 147 ]; 148 149 disabledTestPaths = [ 150 # JSON decoding issues 151 "fsspec/implementations/tests/test_dbfs.py" 152 ]; 153 154 pythonImportsCheck = [ 155 "fsspec" 156 ]; 157 158 meta = with lib; { 159 description = "A specification that Python filesystems should adhere to"; 160 homepage = "https://github.com/fsspec/filesystem_spec"; 161 changelog = "https://github.com/fsspec/filesystem_spec/raw/${version}/docs/source/changelog.rst"; 162 license = licenses.bsd3; 163 maintainers = with maintainers; [ ]; 164 }; 165}