1{ lib 2, buildPythonPackage 3, pythonOlder 4, fetchFromGitHub 5, flit-core 6, importlib-metadata 7, typing-extensions 8, cloudpathlib 9, azure-storage-blob 10, google-cloud-storage 11, boto3 12, psutil 13, pydantic 14, pytestCheckHook 15, pytest-cases 16, pytest-cov 17, pytest-xdist 18, python-dotenv 19, shortuuid 20}: 21 22buildPythonPackage rec { 23 pname = "cloudpathlib"; 24 version = "0.16.0"; 25 pyproject = true; 26 27 disabled = pythonOlder "3.7"; 28 29 src = fetchFromGitHub { 30 owner = "drivendataorg"; 31 repo = "cloudpathlib"; 32 rev = "v${version}"; 33 hash = "sha256-d4CbzPy3H5HQ4YmSRCRMEYaTpwB7F0Bznd26aKWiHTA="; 34 }; 35 36 nativeBuildInputs = [ 37 flit-core 38 ]; 39 40 propagatedBuildInputs = [ 41 importlib-metadata 42 typing-extensions 43 ]; 44 45 passthru.optional-dependencies = { 46 all = [ 47 cloudpathlib 48 ]; 49 azure = [ 50 azure-storage-blob 51 ]; 52 gs = [ 53 google-cloud-storage 54 ]; 55 s3 = [ 56 boto3 57 ]; 58 }; 59 60 pythonImportsCheck = [ "cloudpathlib" ]; 61 62 nativeCheckInputs = [ 63 azure-storage-blob 64 boto3 65 google-cloud-storage 66 psutil 67 pydantic 68 pytestCheckHook 69 pytest-cases 70 pytest-cov 71 pytest-xdist 72 python-dotenv 73 shortuuid 74 ]; 75 76 meta = with lib; { 77 description = "Python pathlib-style classes for cloud storage services such as Amazon S3, Azure Blob Storage, and Google Cloud Storage"; 78 homepage = "https://github.com/drivendataorg/cloudpathlib"; 79 license = licenses.mit; 80 maintainers = with maintainers; [ GaetanLepage ]; 81 }; 82}