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}:
15
16buildPythonPackage rec {
17 pname = "google-cloud-bigquery-storage";
18 version = "2.25.0";
19 format = "setuptools";
20
21 disabled = pythonOlder "3.7";
22
23 src = fetchPypi {
24 inherit pname version;
25 hash = "sha256-GV/9KxgOnqoivqs+QKC2Hs0UbssyZnz0Immo1xEbTUg=";
26 };
27
28 propagatedBuildInputs = [
29 google-api-core
30 protobuf
31 ] ++ google-api-core.optional-dependencies.grpc;
32
33 passthru.optional-dependencies = {
34 fastavro = [ fastavro ];
35 pandas = [ pandas ];
36 pyarrow = [ pyarrow ];
37 };
38
39 nativeCheckInputs = [
40 google-auth
41 google-cloud-bigquery
42 pytestCheckHook
43 ];
44
45 # Dependency loop with google-cloud-bigquery
46 doCheck = false;
47
48 preCheck = ''
49 rm -r google
50 '';
51
52 pythonImportsCheck = [
53 "google.cloud.bigquery_storage"
54 "google.cloud.bigquery_storage_v1"
55 "google.cloud.bigquery_storage_v1beta2"
56 ];
57
58 meta = with lib; {
59 description = "BigQuery Storage API API client library";
60 mainProgram = "fixup_bigquery_storage_v1_keywords.py";
61 homepage = "https://github.com/googleapis/python-bigquery-storage";
62 changelog = "https://github.com/googleapis/python-bigquery-storage/blob/v${version}/CHANGELOG.md";
63 license = licenses.asl20;
64 maintainers = with maintainers; [ ];
65 };
66}