diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 8962995a357..db75a6275b9 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -6977,6 +6977,12 @@ githubId = 818502; name = "Nathan Yong"; }; + nbren12 = { + email = "nbren12@gmail.com"; + github = "nbren12"; + githubId = 1386642; + name = "Noah Brenowitz"; + }; nckx = { email = "github@tobias.gr"; github = "nckx"; diff --git a/pkgs/development/python-modules/fsspec/default.nix b/pkgs/development/python-modules/fsspec/default.nix index 1734ad2f507..fbcf09de2eb 100644 --- a/pkgs/development/python-modules/fsspec/default.nix +++ b/pkgs/development/python-modules/fsspec/default.nix @@ -5,34 +5,36 @@ , pytestCheckHook , numpy , stdenv +, aiohttp +, pytest-vcr +, requests }: buildPythonPackage rec { pname = "fsspec"; - version = "0.8.3"; + version = "2021.04.0"; disabled = pythonOlder "3.5"; src = fetchFromGitHub { owner = "intake"; repo = "filesystem_spec"; rev = version; - sha256 = "0mfy0wxjfwwnp5q2afhhfbampf0fk71wsv512pi9yvrkzzfi1hga"; + sha256 = "sha256-9072kb1VEQ0xg9hB8yEzJMD2Ttd3UGjBmTuhE+Uya1k="; }; - checkInputs = [ - pytestCheckHook - numpy - ]; + checkInputs = [ pytestCheckHook numpy pytest-vcr ]; + + __darwinAllowLocalNetworking = true; + + propagatedBuildInputs = [ aiohttp requests ]; disabledTests = [ # Test assumes user name is part of $HOME # AssertionError: assert 'nixbld' in '/homeless-shelter/foo/bar' "test_strip_protocol_expanduser" - # flaky: works locally but fails on hydra - # as it uses the install dir for tests instead of a temp dir - # resolved in https://github.com/intake/filesystem_spec/issues/432 and - # can be enabled again from version 0.8.4 - "test_pathobject" + # test accesses this remote ftp server: + # https://ftp.fau.de/debian-cd/current/amd64/log/success + "test_find" ] ++ lib.optionals (stdenv.isDarwin) [ # works locally on APFS, fails on hydra with AssertionError comparing timestamps # darwin hydra builder uses HFS+ and has only one second timestamp resolution diff --git a/pkgs/development/python-modules/gcsfs/default.nix b/pkgs/development/python-modules/gcsfs/default.nix new file mode 100644 index 00000000000..483e4a61084 --- /dev/null +++ b/pkgs/development/python-modules/gcsfs/default.nix @@ -0,0 +1,37 @@ +{ buildPythonPackage, fetchFromGitHub, lib, pytestCheckHook, google-auth +, google-auth-oauthlib, requests, decorator, fsspec, ujson, aiohttp, crcmod +, pytest-vcr, vcrpy }: + +buildPythonPackage rec { + pname = "gcsfs"; + version = "2021.04.0"; + + # github sources needed for test data + src = fetchFromGitHub { + owner = "dask"; + repo = pname; + rev = version; + sha256 = "sha256-OA43DaQue7R5d6SzfKThEQFEwJndjLfznu1LMubs5fs="; + }; + + propagatedBuildInputs = [ + google-auth + google-auth-oauthlib + requests + decorator + fsspec + aiohttp + ujson + crcmod + ]; + + checkInputs = [ pytestCheckHook pytest-vcr vcrpy ]; + pythonImportsCheck = [ "gcsfs" ]; + + meta = with lib; { + description = "Convenient Filesystem interface over GCS"; + homepage = "https://github.com/dask/gcsfs"; + license = licenses.bsd3; + maintainers = [ maintainers.nbren12 ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9f19c47b22a..ce472c130a0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2696,6 +2696,8 @@ in { gcovr = callPackage ../development/python-modules/gcovr { }; + gcsfs = callPackage ../development/python-modules/gcsfs { }; + gdal = toPythonModule (pkgs.gdal.override { pythonPackages = self; }); gdata = callPackage ../development/python-modules/gdata { };