1{
2 lib,
3 buildPythonPackage,
4 fastavro,
5 fetchPypi,
6 google-api-core,
7 google-auth,
8 google-cloud-bigquery,
9 pandas,
10 protobuf,
11 pyarrow,
12 pytestCheckHook,
13 pythonOlder,
14 setuptools,
15}:
16
17buildPythonPackage rec {
18 pname = "google-cloud-bigquery-storage";
19 version = "2.30.0";
20 pyproject = true;
21
22 disabled = pythonOlder "3.7";
23
24 src = fetchPypi {
25 pname = "google_cloud_bigquery_storage";
26 inherit version;
27 hash = "sha256-QayD+p7dvIIBAhd5hKuS+Le736fZDqZLOgr17LT8o/I=";
28 };
29
30 build-system = [ setuptools ];
31
32 dependencies = [
33 google-api-core
34 protobuf
35 ] ++ google-api-core.optional-dependencies.grpc;
36
37 optional-dependencies = {
38 fastavro = [ fastavro ];
39 pandas = [ pandas ];
40 pyarrow = [ pyarrow ];
41 };
42
43 nativeCheckInputs = [
44 google-auth
45 google-cloud-bigquery
46 pytestCheckHook
47 ];
48
49 # Dependency loop with google-cloud-bigquery
50 doCheck = false;
51
52 preCheck = ''
53 rm -r google
54 '';
55
56 pythonImportsCheck = [
57 "google.cloud.bigquery_storage"
58 "google.cloud.bigquery_storage_v1"
59 "google.cloud.bigquery_storage_v1beta2"
60 ];
61
62 meta = with lib; {
63 description = "BigQuery Storage API API client library";
64 homepage = "https://github.com/googleapis/python-bigquery-storage";
65 changelog = "https://github.com/googleapis/python-bigquery-storage/blob/v${version}/CHANGELOG.md";
66 license = licenses.asl20;
67 maintainers = [ ];
68 mainProgram = "fixup_bigquery_storage_v1_keywords.py";
69 };
70}