1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 google-api-core, 6 grpc-google-iam-v1, 7 libcst, 8 mock, 9 nix-update-script, 10 proto-plus, 11 protobuf, 12 pytest-asyncio, 13 pytestCheckHook, 14 setuptools, 15}: 16 17buildPythonPackage rec { 18 pname = "google-cloud-datacatalog"; 19 version = "3.31.3"; 20 pyproject = true; 21 22 src = fetchFromGitHub { 23 owner = "googleapis"; 24 repo = "google-cloud-python"; 25 tag = "google-cloud-build-v${version}"; 26 hash = "sha256-qQ+8X6I8lt4OTgbvODsbdab2dYUk0wxWsbaVT2T651U="; 27 }; 28 29 sourceRoot = "${src.name}/packages/google-cloud-datacatalog"; 30 31 build-system = [ setuptools ]; 32 33 dependencies = [ 34 google-api-core 35 grpc-google-iam-v1 36 libcst 37 proto-plus 38 protobuf 39 ] 40 ++ google-api-core.optional-dependencies.grpc; 41 42 nativeCheckInputs = [ 43 mock 44 pytest-asyncio 45 pytestCheckHook 46 ]; 47 48 pythonImportsCheck = [ "google.cloud.datacatalog" ]; 49 50 passthru.updateScript = nix-update-script { 51 extraArgs = [ 52 "--version-regex" 53 "google-cloud-datacatalog-v([0-9.]+)" 54 ]; 55 }; 56 57 meta = { 58 description = "Google Cloud Data Catalog API API client library"; 59 homepage = "https://github.com/googleapis/google-cloud-python/tree/main/packages/google-cloud-datacatalog"; 60 changelog = "https://github.com/googleapis/google-cloud-python/blob/google-cloud-datacatalog-${src.tag}/packages/google-cloud-datacatalog/CHANGELOG.md"; 61 license = lib.licenses.asl20; 62 maintainers = [ lib.maintainers.sarahec ]; 63 }; 64}