* feat: add new v3.0.0 API skeleton (#745)
* feat: improve rows filters (#751)
* feat: read rows query model class (#752)
* feat: implement row and cell model classes (#753)
* feat: add pooled grpc transport (#748)
* feat: implement read_rows (#762)
* feat: implement mutate rows (#769)
* feat: literal value filter (#767)
* feat: row_exists and read_row (#778)
* feat: read_modify_write and check_and_mutate_row (#780)
* feat: sharded read rows (#766)
* feat: ping and warm with metadata (#810)
* feat: mutate rows batching (#770)
* chore: restructure module paths (#816)
* feat: improve timeout structure (#819)
* fix: api errors apply to all bulk mutations
* chore: reduce public api surface (#820)
* feat: improve error group tracebacks on < py11 (#825)
* feat: optimize read_rows (#852)
* chore: add user agent suffix (#842)
* feat: optimize retries (#854)
* feat: add test proxy (#836)
* chore(tests): add conformance tests to CI for v3 (#870)
* chore(tests): turn off fast fail for conformance tets (#882)
* feat: add TABLE_DEFAULTS enum for table method arguments (#880)
* fix: pass None for retry in gapic calls (#881)
* feat: replace internal dictionaries with protos in gapic calls (#875)
* chore: optimize gapic calls (#863)
* feat: expose retryable error codes to users (#879)
* chore: update api_core submodule (#897)
* chore: merge main into experimental_v3 (#900)
* chore: pin conformance tests to v0.0.2 (#903)
* fix: bulk mutation eventual success (#909)
---------
Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Make sure our hand-written layer disables gapic retries whenever it calls into the gapic layer. We implement retries at a higher level.
Fixes #807