1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 google-api-core,
6 google-cloud-core,
7 google-cloud-testutils,
8 grpc-google-iam-v1,
9 mock,
10 proto-plus,
11 protobuf,
12 pytest-asyncio,
13 pytestCheckHook,
14 pythonOlder,
15 setuptools,
16}:
17
18buildPythonPackage rec {
19 pname = "google-cloud-translate";
20 version = "3.20.2";
21 pyproject = true;
22
23 disabled = pythonOlder "3.7";
24
25 src = fetchPypi {
26 pname = "google_cloud_translate";
27 inherit version;
28 hash = "sha256-tUOE7lX0vF2WbO4OELCBT/7hN1wfKvcLkiDTvPWNhfg=";
29 };
30
31 build-system = [ setuptools ];
32
33 dependencies = [
34 google-api-core
35 google-cloud-core
36 grpc-google-iam-v1
37 proto-plus
38 protobuf
39 ] ++ google-api-core.optional-dependencies.grpc;
40
41 nativeCheckInputs = [
42 google-cloud-testutils
43 mock
44 pytest-asyncio
45 pytestCheckHook
46 ];
47
48 preCheck = ''
49 # prevent shadowing imports
50 rm -r google
51 '';
52
53 pythonImportsCheck = [
54 "google.cloud.translate"
55 "google.cloud.translate_v2"
56 "google.cloud.translate_v3"
57 "google.cloud.translate_v3beta1"
58 ];
59
60 disabledTests = [
61 # Tests require PROJECT_ID
62 "test_list_glossaries"
63 ];
64
65 meta = with lib; {
66 description = "Google Cloud Translation API client library";
67 homepage = "https://github.com/googleapis/google-cloud-python/tree/main/packages/google-cloud-translate";
68 changelog = "https://github.com/googleapis/google-cloud-python/blob/google-cloud-translate-v${version}/packages/google-cloud-translate/CHANGELOG.md";
69 license = licenses.asl20;
70 maintainers = [ ];
71 };
72}