Skip to content

Commit 0763aec

Browse files
committed
feat: add value_bitmask_filter to the read API
1 parent ca6f6be commit 0763aec

11 files changed

Lines changed: 84 additions & 71 deletions

File tree

packages/google-cloud-bigtable/google/cloud/bigtable_v2/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
import sys
1717

1818
import google.api_core as api_core
19-
2019
from google.cloud.bigtable_v2 import gapic_version as package_version
2120

2221
__version__ = package_version.__version__
@@ -28,7 +27,6 @@
2827
# this code path once we drop support for Python 3.7
2928
import importlib_metadata as metadata
3029

31-
3230
from .services.bigtable import BigtableAsyncClient, BigtableClient
3331
from .types.bigtable import (
3432
CheckAndMutateRowRequest,
@@ -80,6 +78,7 @@
8078
StreamPartition,
8179
TimestampRange,
8280
Value,
81+
ValueBitmask,
8382
ValueRange,
8483
)
8584
from .types.feature_flags import FeatureFlags
@@ -161,7 +160,7 @@ def _get_version(dependency_name):
161160
_next_supported_version = "4.25.8"
162161
_next_supported_version_tuple = (4, 25, 8)
163162
_recommendation = " (we recommend 6.x)"
164-
(_version_used, _version_used_string) = _get_version(_dependency_package)
163+
_version_used, _version_used_string = _get_version(_dependency_package)
165164
if _version_used and _version_used < _next_supported_version_tuple:
166165
warnings.warn(
167166
f"Package {_package_label} depends on "
@@ -246,4 +245,5 @@ def _get_version(dependency_name):
246245
"Type",
247246
"Value",
248247
"ValueRange",
248+
"ValueBitmask",
249249
)

packages/google-cloud-bigtable/google/cloud/bigtable_v2/services/bigtable/async_client.py

Lines changed: 20 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -37,17 +37,15 @@
3737
from google.api_core import retry_async as retries
3838
from google.api_core.client_options import ClientOptions
3939
from google.auth import credentials as ga_credentials # type: ignore
40-
from google.oauth2 import service_account # type: ignore
41-
4240
from google.cloud.bigtable_v2 import gapic_version as package_version
41+
from google.oauth2 import service_account # type: ignore
4342

4443
try:
4544
OptionalRetry = Union[retries.AsyncRetry, gapic_v1.method._MethodDefault, None]
4645
except AttributeError: # pragma: NO COVER
4746
OptionalRetry = Union[retries.AsyncRetry, object, None] # type: ignore
4847

4948
import google.protobuf.timestamp_pb2 as timestamp_pb2 # type: ignore
50-
5149
from google.cloud.bigtable_v2.types import bigtable, data, request_stats
5250

5351
from .client import BigtableClient
@@ -118,9 +116,7 @@ def from_service_account_info(cls, info: dict, *args, **kwargs):
118116
Returns:
119117
BigtableAsyncClient: The constructed client.
120118
"""
121-
sa_info_func = (
122-
BigtableClient.from_service_account_info.__func__ # type: ignore
123-
)
119+
sa_info_func = BigtableClient.from_service_account_info.__func__ # type: ignore
124120
return sa_info_func(BigtableAsyncClient, info, *args, **kwargs)
125121

126122
@classmethod
@@ -137,9 +133,7 @@ def from_service_account_file(cls, filename: str, *args, **kwargs):
137133
Returns:
138134
BigtableAsyncClient: The constructed client.
139135
"""
140-
sa_file_func = (
141-
BigtableClient.from_service_account_file.__func__ # type: ignore
142-
)
136+
sa_file_func = BigtableClient.from_service_account_file.__func__ # type: ignore
143137
return sa_file_func(BigtableAsyncClient, filename, *args, **kwargs)
144138

145139
from_service_account_json = from_service_account_file
@@ -281,21 +275,23 @@ def __init__(
281275
): # pragma: NO COVER
282276
_LOGGER.debug(
283277
"Created client `google.bigtable_v2.BigtableAsyncClient`.",
284-
extra={
285-
"serviceName": "google.bigtable.v2.Bigtable",
286-
"universeDomain": getattr(
287-
self._client._transport._credentials, "universe_domain", ""
288-
),
289-
"credentialsType": f"{type(self._client._transport._credentials).__module__}.{type(self._client._transport._credentials).__qualname__}",
290-
"credentialsInfo": getattr(
291-
self.transport._credentials, "get_cred_info", lambda: None
292-
)(),
293-
}
294-
if hasattr(self._client._transport, "_credentials")
295-
else {
296-
"serviceName": "google.bigtable.v2.Bigtable",
297-
"credentialsType": None,
298-
},
278+
extra=(
279+
{
280+
"serviceName": "google.bigtable.v2.Bigtable",
281+
"universeDomain": getattr(
282+
self._client._transport._credentials, "universe_domain", ""
283+
),
284+
"credentialsType": f"{type(self._client._transport._credentials).__module__}.{type(self._client._transport._credentials).__qualname__}",
285+
"credentialsInfo": getattr(
286+
self.transport._credentials, "get_cred_info", lambda: None
287+
)(),
288+
}
289+
if hasattr(self._client._transport, "_credentials")
290+
else {
291+
"serviceName": "google.bigtable.v2.Bigtable",
292+
"credentialsType": None,
293+
}
294+
),
299295
)
300296

301297
def read_rows(

packages/google-cloud-bigtable/google/cloud/bigtable_v2/services/bigtable/client.py

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,8 @@
4444
from google.auth.exceptions import MutualTLSChannelError # type: ignore
4545
from google.auth.transport import mtls # type: ignore
4646
from google.auth.transport.grpc import SslCredentials # type: ignore
47-
from google.oauth2 import service_account # type: ignore
48-
4947
from google.cloud.bigtable_v2 import gapic_version as package_version
48+
from google.oauth2 import service_account # type: ignore
5049

5150
try:
5251
OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault, None]
@@ -63,7 +62,6 @@
6362
_LOGGER = std_logging.getLogger(__name__)
6463

6564
import google.protobuf.timestamp_pb2 as timestamp_pb2 # type: ignore
66-
6765
from google.cloud.bigtable_v2.types import bigtable, data, request_stats
6866

6967
from .transports.base import DEFAULT_CLIENT_INFO, BigtableTransport
@@ -774,21 +772,25 @@ def __init__(
774772
): # pragma: NO COVER
775773
_LOGGER.debug(
776774
"Created client `google.bigtable_v2.BigtableClient`.",
777-
extra={
778-
"serviceName": "google.bigtable.v2.Bigtable",
779-
"universeDomain": getattr(
780-
self._transport._credentials, "universe_domain", ""
781-
),
782-
"credentialsType": f"{type(self._transport._credentials).__module__}.{type(self._transport._credentials).__qualname__}",
783-
"credentialsInfo": getattr(
784-
self.transport._credentials, "get_cred_info", lambda: None
785-
)(),
786-
}
787-
if hasattr(self._transport, "_credentials")
788-
else {
789-
"serviceName": "google.bigtable.v2.Bigtable",
790-
"credentialsType": None,
791-
},
775+
extra=(
776+
{
777+
"serviceName": "google.bigtable.v2.Bigtable",
778+
"universeDomain": getattr(
779+
self._transport._credentials, "universe_domain", ""
780+
),
781+
"credentialsType": f"{type(self._transport._credentials).__module__}.{type(self._transport._credentials).__qualname__}",
782+
"credentialsInfo": getattr(
783+
self.transport._credentials,
784+
"get_cred_info",
785+
lambda: None,
786+
)(),
787+
}
788+
if hasattr(self._transport, "_credentials")
789+
else {
790+
"serviceName": "google.bigtable.v2.Bigtable",
791+
"credentialsType": None,
792+
}
793+
),
792794
)
793795

794796
def read_rows(

packages/google-cloud-bigtable/google/cloud/bigtable_v2/services/bigtable/transports/base.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,9 @@
2323
from google.api_core import gapic_v1
2424
from google.api_core import retry as retries
2525
from google.auth import credentials as ga_credentials # type: ignore
26-
from google.oauth2 import service_account # type: ignore
27-
2826
from google.cloud.bigtable_v2 import gapic_version as package_version
2927
from google.cloud.bigtable_v2.types import bigtable
28+
from google.oauth2 import service_account # type: ignore
3029

3130
DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo(
3231
gapic_version=package_version.__version__

packages/google-cloud-bigtable/google/cloud/bigtable_v2/services/bigtable/transports/grpc.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,8 @@
2626
from google.api_core import gapic_v1, grpc_helpers
2727
from google.auth import credentials as ga_credentials # type: ignore
2828
from google.auth.transport.grpc import SslCredentials # type: ignore
29-
from google.protobuf.json_format import MessageToJson
30-
3129
from google.cloud.bigtable_v2.types import bigtable
30+
from google.protobuf.json_format import MessageToJson
3231

3332
from .base import DEFAULT_CLIENT_INFO, BigtableTransport
3433

packages/google-cloud-bigtable/google/cloud/bigtable_v2/services/bigtable/transports/grpc_asyncio.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,10 @@
2828
from google.api_core import retry_async as retries
2929
from google.auth import credentials as ga_credentials # type: ignore
3030
from google.auth.transport.grpc import SslCredentials # type: ignore
31+
from google.cloud.bigtable_v2.types import bigtable
3132
from google.protobuf.json_format import MessageToJson
3233
from grpc.experimental import aio # type: ignore
3334

34-
from google.cloud.bigtable_v2.types import bigtable
35-
3635
from .base import DEFAULT_CLIENT_INFO, BigtableTransport
3736
from .grpc import BigtableGrpcTransport
3837

packages/google-cloud-bigtable/google/cloud/bigtable_v2/services/bigtable/transports/rest.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,10 @@
2525
from google.api_core import retry as retries
2626
from google.auth import credentials as ga_credentials # type: ignore
2727
from google.auth.transport.requests import AuthorizedSession # type: ignore
28+
from google.cloud.bigtable_v2.types import bigtable
2829
from google.protobuf import json_format
2930
from requests import __version__ as requests_version
3031

31-
from google.cloud.bigtable_v2.types import bigtable
32-
3332
from .base import DEFAULT_CLIENT_INFO as BASE_DEFAULT_CLIENT_INFO
3433
from .rest_base import _BaseBigtableRestTransport
3534

@@ -1164,7 +1163,9 @@ def __call__(
11641163
11651164
"""
11661165

1167-
http_options = _BaseBigtableRestTransport._BaseGenerateInitialChangeStreamPartitions._get_http_options()
1166+
http_options = (
1167+
_BaseBigtableRestTransport._BaseGenerateInitialChangeStreamPartitions._get_http_options()
1168+
)
11681169

11691170
request, metadata = (
11701171
self._interceptor.pre_generate_initial_change_stream_partitions(

packages/google-cloud-bigtable/google/cloud/bigtable_v2/services/bigtable/transports/rest_base.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,8 @@
1818
from typing import Any, Callable, Dict, List, Optional, Sequence, Tuple, Union
1919

2020
from google.api_core import gapic_v1, path_template
21-
from google.protobuf import json_format
22-
2321
from google.cloud.bigtable_v2.types import bigtable
22+
from google.protobuf import json_format
2423

2524
from .base import DEFAULT_CLIENT_INFO, BigtableTransport
2625

packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/__init__.py

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -63,26 +63,19 @@
6363
StreamPartition,
6464
TimestampRange,
6565
Value,
66+
ValueBitmask,
6667
ValueRange,
6768
)
68-
from .feature_flags import (
69-
FeatureFlags,
70-
)
71-
from .peer_info import (
72-
PeerInfo,
73-
)
69+
from .feature_flags import FeatureFlags
70+
from .peer_info import PeerInfo
7471
from .request_stats import (
7572
FullReadStatsView,
7673
ReadIterationStats,
7774
RequestLatencyStats,
7875
RequestStats,
7976
)
80-
from .response_params import (
81-
ResponseParams,
82-
)
83-
from .types import (
84-
Type,
85-
)
77+
from .response_params import ResponseParams
78+
from .types import Type
8679

8780
__all__ = (
8881
"CheckAndMutateRowRequest",
@@ -133,6 +126,7 @@
133126
"TimestampRange",
134127
"Value",
135128
"ValueRange",
129+
"ValueBitmask",
136130
"FeatureFlags",
137131
"PeerInfo",
138132
"FullReadStatsView",

packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/bigtable.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@
2222
import google.protobuf.wrappers_pb2 as wrappers_pb2 # type: ignore
2323
import google.rpc.status_pb2 as status_pb2 # type: ignore
2424
import proto # type: ignore
25-
26-
from google.cloud.bigtable_v2.types import data, types
25+
from google.cloud.bigtable_v2.types import data
2726
from google.cloud.bigtable_v2.types import request_stats as gb_request_stats
27+
from google.cloud.bigtable_v2.types import types
2828

2929
__protobuf__ = proto.module(
3030
package="google.bigtable.v2",

0 commit comments

Comments
 (0)