1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 google-api-core,
6 mock,
7 proto-plus,
8 protobuf,
9 pytest-asyncio,
10 pytestCheckHook,
11 pythonOlder,
12 setuptools,
13}:
14
15buildPythonPackage rec {
16 pname = "google-cloud-vision";
17 version = "3.10.2";
18 pyproject = true;
19
20 disabled = pythonOlder "3.7";
21
22 src = fetchPypi {
23 pname = "google_cloud_vision";
24 inherit version;
25 hash = "sha256-ZJOA+quJM0QLYyv4gHLAw4KgjUmrArwLT7qCGIKuF2U=";
26 };
27
28 build-system = [ setuptools ];
29
30 dependencies = [
31 google-api-core
32 proto-plus
33 protobuf
34 ]
35 ++ google-api-core.optional-dependencies.grpc;
36
37 nativeCheckInputs = [
38 mock
39 pytestCheckHook
40 pytest-asyncio
41 ];
42
43 pythonImportsCheck = [
44 "google.cloud.vision"
45 "google.cloud.vision_helpers"
46 "google.cloud.vision_v1"
47 "google.cloud.vision_v1p1beta1"
48 "google.cloud.vision_v1p2beta1"
49 "google.cloud.vision_v1p3beta1"
50 "google.cloud.vision_v1p4beta1"
51 ];
52
53 disabledTests = [
54 # Tests require PROJECT_ID
55 "test_list_products"
56 ];
57
58 meta = with lib; {
59 description = "Cloud Vision API API client library";
60 homepage = "https://github.com/googleapis/google-cloud-python/tree/main/packages/google-cloud-vision";
61 changelog = "https://github.com/googleapis/google-cloud-python/blob/google-cloud-vision-v${version}/packages/google-cloud-vision/CHANGELOG.md";
62 license = licenses.asl20;
63 maintainers = [ ];
64 };
65}