79 lines
1.5 KiB
Nix
79 lines
1.5 KiB
Nix
{
|
|
lib,
|
|
buildPythonPackage,
|
|
fetchFromGitHub,
|
|
pytestCheckHook,
|
|
pythonOlder,
|
|
google-auth,
|
|
google-auth-oauthlib,
|
|
google-cloud-storage,
|
|
requests,
|
|
decorator,
|
|
fsspec,
|
|
ujson,
|
|
aiohttp,
|
|
crcmod,
|
|
pytest-timeout,
|
|
pytest-vcr,
|
|
vcrpy,
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "gcsfs";
|
|
version = "2024.2.0";
|
|
format = "setuptools";
|
|
|
|
disabled = pythonOlder "3.7";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "fsspec";
|
|
repo = pname;
|
|
rev = "refs/tags/${version}";
|
|
hash = "sha256-6O09lP2cWLzeMTBathb3O/tVGZPEHSqujfUPWZIBUJI=";
|
|
};
|
|
|
|
propagatedBuildInputs = [
|
|
aiohttp
|
|
crcmod
|
|
decorator
|
|
fsspec
|
|
google-auth
|
|
google-auth-oauthlib
|
|
google-cloud-storage
|
|
requests
|
|
ujson
|
|
];
|
|
|
|
nativeCheckInputs = [
|
|
pytest-vcr
|
|
pytest-timeout
|
|
pytestCheckHook
|
|
vcrpy
|
|
];
|
|
|
|
disabledTests = [
|
|
# Cannot connect to host storage.googleapis.com:443
|
|
"test_credentials_from_raw_token"
|
|
];
|
|
|
|
disabledTestPaths = [
|
|
# Tests require a running Docker instance
|
|
"gcsfs/tests/test_core.py"
|
|
"gcsfs/tests/test_mapping.py"
|
|
"gcsfs/tests/test_retry.py"
|
|
"gcsfs/tests/derived/gcsfs_test.py"
|
|
"gcsfs/tests/test_inventory_report_listing.py"
|
|
];
|
|
|
|
pytestFlagsArray = [ "-x" ];
|
|
|
|
pythonImportsCheck = [ "gcsfs" ];
|
|
|
|
meta = with lib; {
|
|
description = "Convenient Filesystem interface over GCS";
|
|
homepage = "https://github.com/fsspec/gcsfs";
|
|
changelog = "https://github.com/fsspec/gcsfs/raw/${version}/docs/source/changelog.rst";
|
|
license = licenses.bsd3;
|
|
maintainers = with maintainers; [ nbren12 ];
|
|
};
|
|
}
|