Skip to content
This repository was archived by the owner on Apr 1, 2026. It is now read-only.

Commit 3ddfb0c

Browse files
committed
docs: Added UPGRADING.md with admin client migration
1 parent 3648d70 commit 3ddfb0c

1 file changed

Lines changed: 36 additions & 0 deletions

File tree

UPGRADING.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# 3.0.0 Migration Guide
2+
3+
The v3.0.0 release of `google-cloud-bigtable` deprecates the previous `google.cloud.bigtable.Client` class in favor of distinct clients for the two API surfaces, supporting both sync and async calls:
4+
- Data API:
5+
- `google.cloud.bigtable.data.BigtableDataClient`
6+
- `google.cloud.bigtable.data.BigtableDataClientAsync`
7+
- Admin API:
8+
- `google.cloud.bigtable.admin.BigtableInstanceAdminClient`
9+
- `google.cloud.bigtable.admin.BigtableInstanceAdminClientAsync`
10+
- `google.cloud.bigtable.admin.BigtableTableAdminClient`
11+
- `google.cloud.bigtable.admin.BigtableTableAdminClientAsync`
12+
13+
The deprecated client will remain available as an alternative API surface, which internally delegates calls to the respective new clients. For most users, existing code will continue to work as before. But there may be some breaking changes associated with this update, which are detailed in this document.
14+
15+
### Admin Client Migration
16+
17+
While we do recommend you instantiate the new admin API clients directly, you can access the new admin API
18+
clients via the `google.cloud.bigtable.Client` class:
19+
20+
```
21+
from google.cloud.bigtable import Client
22+
23+
client = Client()
24+
25+
26+
# google.cloud.bigtable.admin.BigtableInstanceAdminClient
27+
instance_admin_client = client.instance_admin_client()
28+
29+
# google.cloud.bigtable.admin.BigtableTableAdminClient
30+
table_admin_client = client.table_admin_client()
31+
```
32+
33+
## Breaking Changes
34+
- **[MutationBatcher](https://github.com/googleapis/python-bigtable/blob/main/google/cloud/bigtable/data/_sync_autogen/mutations_batcher.py#L151)and [MutationBatcherAsync](https://github.com/googleapis/python-bigtable/blob/main/google/cloud/bigtable/data/_async/mutations_batcher.py#L182)'s `table` argument was renamed to `target`**, since it also supports [Authorized View](https://github.com/googleapis/python-bigtable/pull/1034) instances. This matches the naming used in other classes (PR: https://github.com/googleapis/python-bigtable/pull/1153)
35+
<!-- TODO: Replace Github link once the feature branch is merged -->
36+
- **[`BigtableTableAdminClient`/`BigtableTableAdminAsyncClient`](https://github.com/googleapis/python-bigtable/blob/main/google/cloud/bigtable_admin_v2/overlay/services/bigtable_table_admin)'s location was changed from `google.cloud.bigtable_admin_v2.services.bigtable_table_admin` to `google.cloud.bigtable_admin_v2.overlay.services.bigtable_table_admin`**. This should not affect you if you are importing these clients via `import google.cloud.bigtable_admin_v2` due to import aliasing, but will affect you if you are importing these clients via `import google.cloud.bigtable_admin_v2.services.bigtable_table_admin`.

0 commit comments

Comments
 (0)