1{ lib
2, buildPythonPackage
3, fetchPypi
4, google-api-core
5, google-cloud-core
6, grpcio
7, grpc-google-iam-v1
8, libcst
9, mock
10, proto-plus
11, protobuf
12, pytestCheckHook
13, pythonOlder
14}:
15
16buildPythonPackage rec {
17 pname = "google-cloud-bigtable";
18 version = "2.21.0";
19 format = "setuptools";
20
21 disabled = pythonOlder "3.7";
22
23 src = fetchPypi {
24 inherit pname version;
25 hash = "sha256-2fDvv5QMo5LwfRN4f8LadtHhaN7a+uD48bQgjgwRMtw=";
26 };
27
28 propagatedBuildInputs = [
29 google-api-core
30 google-cloud-core
31 grpc-google-iam-v1
32 proto-plus
33 protobuf
34 ] ++ google-api-core.optional-dependencies.grpc;
35
36 passthru.optional-dependencies = {
37 libcst = [
38 libcst
39 ];
40 };
41
42 nativeCheckInputs = [
43 grpcio
44 mock
45 pytestCheckHook
46 ];
47
48 checkPhase = ''
49 # Prevent google directory from shadowing google imports
50 rm -r google
51 '';
52
53 disabledTests = [
54 "policy"
55 ];
56
57 pythonImportsCheck = [
58 "google.cloud.bigtable_admin_v2"
59 "google.cloud.bigtable_v2"
60 "google.cloud.bigtable"
61 ];
62
63 meta = with lib; {
64 description = "Google Cloud Bigtable API client library";
65 homepage = "https://github.com/googleapis/python-bigtable";
66 changelog = "https://github.com/googleapis/python-bigtable/blob/v${version}/CHANGELOG.md";
67 license = licenses.asl20;
68 maintainers = with maintainers; [ ];
69 };
70}