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.32.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-6UT19DhfC+J+BJ5z5NzPVIt3NIMBZjp3O10Dq9vUniA=";
28 };
29
30 build-system = [ setuptools ];
31
32 dependencies = [
33 google-api-core
34 protobuf
35 ]
36 ++ google-api-core.optional-dependencies.grpc;
37
38 optional-dependencies = {
39 fastavro = [ fastavro ];
40 pandas = [ pandas ];
41 pyarrow = [ pyarrow ];
42 };
43
44 nativeCheckInputs = [
45 google-auth
46 google-cloud-bigquery
47 pytestCheckHook
48 ];
49
50 # Dependency loop with google-cloud-bigquery
51 doCheck = false;
52
53 preCheck = ''
54 rm -r google
55 '';
56
57 pythonImportsCheck = [
58 "google.cloud.bigquery_storage"
59 "google.cloud.bigquery_storage_v1"
60 "google.cloud.bigquery_storage_v1beta2"
61 ];
62
63 meta = with lib; {
64 description = "BigQuery Storage API API client library";
65 homepage = "https://github.com/googleapis/python-bigquery-storage";
66 changelog = "https://github.com/googleapis/python-bigquery-storage/blob/v${version}/CHANGELOG.md";
67 license = licenses.asl20;
68 maintainers = [ ];
69 mainProgram = "fixup_bigquery_storage_v1_keywords.py";
70 };
71}