Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 pytestCheckHook, 6 pythonOlder, 7 google-auth, 8 google-auth-oauthlib, 9 google-cloud-storage, 10 requests, 11 decorator, 12 fsspec, 13 ujson, 14 aiohttp, 15 crcmod, 16 pytest-timeout, 17 pytest-vcr, 18 vcrpy, 19}: 20 21buildPythonPackage rec { 22 pname = "gcsfs"; 23 version = "2024.2.0"; 24 format = "setuptools"; 25 26 disabled = pythonOlder "3.7"; 27 28 src = fetchFromGitHub { 29 owner = "fsspec"; 30 repo = pname; 31 rev = "refs/tags/${version}"; 32 hash = "sha256-6O09lP2cWLzeMTBathb3O/tVGZPEHSqujfUPWZIBUJI="; 33 }; 34 35 propagatedBuildInputs = [ 36 aiohttp 37 crcmod 38 decorator 39 fsspec 40 google-auth 41 google-auth-oauthlib 42 google-cloud-storage 43 requests 44 ujson 45 ]; 46 47 nativeCheckInputs = [ 48 pytest-vcr 49 pytest-timeout 50 pytestCheckHook 51 vcrpy 52 ]; 53 54 disabledTests = [ 55 # Cannot connect to host storage.googleapis.com:443 56 "test_credentials_from_raw_token" 57 ]; 58 59 disabledTestPaths = [ 60 # Tests require a running Docker instance 61 "gcsfs/tests/test_core.py" 62 "gcsfs/tests/test_mapping.py" 63 "gcsfs/tests/test_retry.py" 64 "gcsfs/tests/derived/gcsfs_test.py" 65 "gcsfs/tests/test_inventory_report_listing.py" 66 ]; 67 68 pytestFlagsArray = [ "-x" ]; 69 70 pythonImportsCheck = [ "gcsfs" ]; 71 72 meta = with lib; { 73 description = "Convenient Filesystem interface over GCS"; 74 homepage = "https://github.com/fsspec/gcsfs"; 75 changelog = "https://github.com/fsspec/gcsfs/raw/${version}/docs/source/changelog.rst"; 76 license = licenses.bsd3; 77 maintainers = with maintainers; [ nbren12 ]; 78 }; 79}