- 3.50.1 (latest)
- 3.50.0
- 3.46.0
- 3.45.0
- 3.44.0
- 3.43.0
- 3.42.0
- 3.41.0
- 3.40.1
- 3.39.0
- 3.38.0
- 3.37.0
- 3.36.0
- 3.35.1
- 3.34.0
- 3.33.0
- 3.32.0
- 3.31.0
- 3.30.0
- 3.29.0
- 3.28.0
- 3.27.1
- 3.26.0
- 3.25.0
- 3.24.0
- 3.23.0
- 3.22.2
- 3.21.0
- 3.20.0
- 3.19.0
- 3.18.0
- 3.17.0
- 3.16.0
- 3.15.1
- 3.14.1
- 3.13.0
- 3.12.1
- 3.11.1
- 3.10.0
- 3.9.0
- 3.8.0
- 3.7.0
- 3.6.0
- 3.5.0
- 3.4.0
- 3.3.0
- 3.2.0
- 3.1.0
- 3.0.0
- 2.1.1
- 2.0.0
- 1.19.3
- 1.18.0
- 1.17.1
- 1.16.0
- 1.15.1
- 1.14.0
- 1.13.0
- 1.12.0
- 1.11.0
- 1.10.0
Changelog
3.11.1 (2021-10-04)
Bug Fixes
3.11.0 (2021-09-29)
Features
3.10.0 (2021-09-17)
Features
Bug Fixes
db_api: move connection validation into a separate method (#543) (237ae41)
handle google.api_core.exceptions.OutOfRange exception and throw InegrityError as expected by dbapi standards (#571) (dffcf13)
3.9.0 (2021-08-26)
Features
3.8.0 (2021-08-15)
Features
Bug Fixes
3.7.0 (2021-07-29)
Features
Bug Fixes
avoid bad version of
opentelemetry-instrumentation
(#429) (1620c12)deps: pin ‘google-{api,cloud}-core’ to allow 2.x versions (#415) (b0455d0)
disable always_use_jwt_access (c37bf21)
support merging for NUMERIC values (#434) (06b4215), closes #433
Documentation
3.6.0 (2021-06-23)
Features
Bug Fixes
Documentation
3.5.0 (2021-06-11)
Features
add decimal validation for numeric precision and scale supported by Spanner (#340) (aa36c5e)
add progress field to UpdateDatabaseDdlMetadata (#361) (1c03dcc)
Bug Fixes
an Aborted exception isn’t properly retried (#345) (e69e6ab)
correctly classify select statements that begin with brackets (#351) (d526acc)
update to support the open-telemetry status code spec change (#358) (0f894f1)
3.4.0 (2021-04-29)
Features
added support for numeric field for python decimal value (#316) (070a171)
dbapi: remove string conversion for numeric fields (#317) (772aa3c)
Bug Fixes
correctly set resume token when restarting streams (#314) (0fcfc23)
support INSERT from SELECT clause with args (#306) (0dcda5e)
Performance Improvements
3.3.0 (2021-03-25)
Features
add support for custom timeout and retry parameters in execute_update method in transactions (#251) (8abaebd)
added retry and timeout params to partition read in database and snapshot class (#278) (1a7c9d2)
db_api: support executing several DDLs separated by semicolon (#277) (801ddc8)
Bug Fixes
avoid consuming pending null values when merging (#286) (c6cba9f)
db_api: ensure DDL statements are being executed (#290) (baa02ee)
Documentation
3.2.0 (2021-03-02)
Features
Bug Fixes
3.1.0 (2021-02-23)
Features
Bug Fixes
connection attribute of connection class and include related unit tests (#228) (4afea77)
fix execute insert for homogeneous statement (#233) (36b12a7)
use datetime timezone info when generating timestamp strings (#236) (539f145)
Performance Improvements
3.0.0 (2021-01-15)
⚠ BREAKING CHANGES
- convert operations pbs into Operation objects when listing operations (#186)
Features
add support for ssl credentials; add throttled field to UpdateDatabaseDdlMetadata (#161) (2faf01b)
adding missing docstrings for functions & classes (#188) (9788cf8)
Bug Fixes
convert operations pbs into Operation objects when listing operations (#186) (ed7152a)
dbapi: autocommit enabling fails if no transactions begun (#177) (e981adb)
dbapi: executemany() hiding all the results except the last (#181) (020dc17)
dbapi: Spanner protobuf changes causes KeyError’s (#206) (f1e21ed)
Rename to fix “Mismatched region tag” check (#201) (c000ec4)
Documentation
2.1.0 (2020-11-24)
Features
dbapi: add aborted transactions retry support (#168) (d59d502), closes #34 googleapis/python-spanner-django#544
remove adding a dummy WHERE clause into UPDATE and DELETE statements (#169) (7f4d478)
Bug Fixes
Reverts
2.0.0 (2020-11-11)
⚠ BREAKING CHANGES
- list_instances, list_databases, list_instance_configs, and list_backups will now return protos rather than the handwritten wrapper (#147)
Features
1.19.1 (2020-10-13)
Bug Fixes
Documentation
1.19.0 (2020-09-08)
Features
Bug Fixes
1.18.0 (2020-08-25)
Features
Bug Fixes
Documentation
add install reference for cloud trace exporter (opentelemetry) (#127) (23fcd4c)
add instructions for using a Cloud Spanner emulator (#136) (808837b)
add samples from spanner/cloud-client (#117) (8910771), closes #804 #815 #818 #887 #914 #922 #928 #962 #992 #1004 #1035 #1055 #1063 #1093 #1107 #1121 #1158 #1138 #1186 #1192 #1207 #1254 #1316 #1354 #1376 #1377 #1402 #1406 #1425 #1441 #1464 #1519 #1548 #1633 #1742 #1836 #1846 #1872 #1980 #2068 #2153 #2224 #2198 #2251 #2295 #2356 #2392 #2439 #2535 #2005 #2721 #3093 #3101 #2806 #3377
1.17.1 (2020-06-24)
Documentation
remove client-usage sections that no longer apply (#95) (16a812f)
update batch-usage reflect the correct usage (#93) (6ec64d8)
1.17.0 (2020-05-26)
Features
Bug Fixes
1.16.0 (2020-05-05)
Features
Bug Fixes
1.15.1 (2020-04-08)
Bug Fixes
1.15.0 (2020-03-17)
Features
Bug Fixes
1.14.0 (2020-01-31)
Features
Add deprecation warnings; add field_mask to get_instance; add endpoint_uris to Instance proto; update timeouts; make mutations optional for commits (via synth) (62edbe1)
Add resource based routing implementation (#10183) (e072d5d)
Un-deprecate resource name helper functions, add 3.8 tests (via synth) (#10062) (dbb79b0)
Bug Fixes
1.13.0
11-11-2019 15:59 PST
Implementation Changes
Fix TransactionPingingPool to stop thowing ‘’NoneType’ object is not callable’ error. (#9609) Return sessions from pool in LIFO order. (#9454)
Documentation
Add Python 2 sunset banner to documentation. (#9036)
Update description of the
timeout_secs
parameter. (#9381)
Internal / Testing Changes
- Harden
test_transaction_batch_update\*
systests against partial success + abort. (#9579)
1.12.0
10-23-2019 19:09 PDT
Implementation Changes
- Add
batch_create_session
calls to session pools. (#9488)
New Features
- Add
client_options
to client constructor. (#9151)
Internal / Testing Changes
Harden ‘test_reload_instance’ systest against eventual consistency failures. (#9394)
Harden ‘test_transaction_batch_update_w_syntax_error’ systest. (#9395)
Propagate errors from ‘Transaction.batch_update’ in systest. (#9393)
1.11.0
10-15-2019 06:55 PDT
Implementation Changes
Adjust gRPC timeouts (via synth). (#9330)
Make
session_count
optional forSpannerClient.batch_create_sessions
(via synth). (#9280)Remove send / receive message size limit, update docstrings (via synth). (#8968)
New Features
- Add
batch_create_sessions
method to generated client (via synth). (#9087)
Dependencies
- Pin ‘google-cloud-core >= 1.0.3, < 2.0.0dev’. (#9445)
Documentation
Remove references to old authentication credentials in docs. (#9456)
Fix intersphinx reference to requests. (#9294)
Fix
run_in_transaction
return value docs. (#9264)Remove CI for gh-pages, use googleapis.dev for
api_core
refs. (#9085)Remove compatability badges from READMEs. (#9035)
Add DML insert and update examples to README. (#8698)
Update intersphinx mapping for requests. (#8805)
1.10.0
07-24-2019 17:32 PDT
Implementation Changes
Add backoff for
run_in_transaction
when backend does not provide ‘RetryInfo’ in response. (#8461)Adjust gRPC timeouts (via synth). (#8445)
Allow kwargs to be passed to create_channel (via synth). (#8403)
New Features
Add ‘options_’ argument to clients’ ‘get_iam_policy’; pin black version (via synth). (#8659)
Add ‘client_options’ support, update list method docstrings (via synth). (#8522)
Dependencies
Bump minimum version for google-api-core to 1.14.0. (#8709)
Update pin for ‘grpc-google-iam-v1’ to 0.12.3+. (#8647)
Documentation
Link to googleapis.dev documentation in READMEs. (#8705)
Add compatibility check badges to READMEs. (#8288)
Internal / Testing Changes
Fixes #8545 by removing typing information for kwargs to not conflict with type checkers (#8546)
Add docs job to publish to googleapis.dev. (#8464)
Declare encoding as utf-8 in pb2 files (via synth). (#8363)
Add disclaimer to auto-generated template files (via synth). (#8327)
Suppress checking ‘cov-fail-under’ in nox default session (via synth). (#8251)
Blacken noxfile.py, setup.py (via synth). (#8131)
Harden synth replacement against template adding whitespace. (#8103)
1.9.0
05-16-2019 12:54 PDT
Implementation Changes
Add routing header to method metadata (via synth). (#7750)
Remove classifier for Python 3.4 for end-of-life. (#7535)
New Features
- Add
client_info
support to client. (#7878)
Dependencies
- Pin
google-cloud-core >= 1.0.0, < 2.0dev
. (#7993)
Documentation
- Expand API reference for snapshot / transaction. (#7618)
Internal / Testing Changes
Add nox session
docs
, remove retries for DEADLINE_EXCEEDED (via synth). (#7781)Added matching END tags to Spanner Tests (#7529)
1.8.0
03-05-2019 12:57 PST
Implementation Changes
New Features
- Add Batch DML support. (#7485)
Documentation
Copy lintified proto files, update docstrings (via synth). (#7453)
Fix Batch object creation instructions. (#7341)
Updated client library documentation URLs. (#7307)
Fix README to install spanner instead of datastore. (#7301)
Internal / Testing Changes
Add clarifying comment to blacken nox target. (#7403)
Ensure that GRPC config file is included in MANIFEST.in after templating. (#7046)
Add protos as an artifact to library. (#7205)
Update copyright headers.
1.7.1
12-14-2018 15:18 PST
Documentation
Announce Python 2 deprecation (#6910)
Normalize documentation for ‘page_size’ / ‘max_results’ / ‘page_token’ (#6842)
Internal / Testing Changes
- Include grpc config in manifest (#6928)
1.7.0
12-10-2018 13:10 PST
Implementation Changes
Add PingingPool and TransactionPingingPool to toplevel module (#6886)
Add
operation_id
parameter toDatabase.update_ddl
. (#6825)Pick up changes to GAPIC method configuration (#6615)
Add timeout + retry settings to Sessions/Snapshots (#6536)
Pick up fixes to GAPIC generator. (#6576)
Dependencies
- Update dependency to google-cloud-core (#6835)
Internal / Testing Changes
Add baseline for synth.metadata
Blacken. (#6846)
Update noxfile.
Blacken all gen’d libs (#6792)
Omit local deps (#6701)
Run black at end of synth.py (#6698)
Run Black on Generated libraries (#6666)
Add templates for flake8, coveragerc, noxfile, and black. (#6642)
Add tags to DML system tests (#6580)
1.6.1
11-09-2018 14:49 PST
Implementation Changes
- Fix client_info bug, update docstrings. (#6420)
Documentation
Update README service links in quickstart guides. (#6322)
Normalize use of support level badges (#6159)
Fix typo in spanner usage documentation (#6209)
Internal / Testing Changes
Rationalize ‘all_types’ round-trip systest (#6379)
Bump minimum ‘api_core’ version for all GAPIC libs to 1.4.1. (#6391)
Add systest for returning empty array struct (#4449)
Add systests not needing tables (#6308)
Use new Nox (#6175)
1.6.0
10-08-2018 08:25 PDT
New Features
- Add support for DML/PDML. (#6151)
Implementation Changes
- Add ‘synth.py’ and regen GAPIC code. (#6040)
Documentation
Remove invalid examples of
database.transaction()
. (#6032)Redirect renamed
usage.html
/client.html
->index.html
. (#5996)Fix leakage of sections into sidebar menu. (#5986)
Prepare documentation for repo split. (#5938)
Internal / Testing Changes
- Remove extra
grpc_gcp
system tests. (#6049)
1.5.0
New Features
Dependencies
- Add
grpcio-gcp
dependency for Cloud Spanner (#5904)
Internal / Testing Changes
Don’t hardcode endpoint URL in grpc_gcp unit tests. (#5893)
Run
grpc_gcp
unit tests only with Python 2.7 / 3.6. (#5871)Nox: use inplace installs (#5865)
Benchmarks: print() is a function in Python 3 (#5862)
Retry
test_transaction_read_and_insert_then_rollback
when aborted. (#5737)Skip the flaky
test_update_database_ddl
systest. (#5704)
1.4.0
Implementation Changes
Ensure that initial resume token is bytes, not text. (#5450)
Prevent process_read_batch from mutating params (#5416)
Avoid overwriting ‘module’ of messages from shared modules. (#5364)
New Features
Add support for Python 3.7 (#5288)
Add support for Spanner struct params. (#5463)
Internal / Testing Changes
- Modify system tests to use prerelease versions of grpcio (#5304)
1.3.0
Interface additions
- Added
spanner_v1.COMMIT_TIMESTAMP
. (#5102)
1.2.0
New features
- Added batch query support (#4938)
Implementation changes
- Removed custom timestamp class in favor of the one in google-api-core. (#4980)
Dependencies
- Update minimum version for google-api-core to 1.1.0 (#5030)
Documentation
- Update package metadata release status to ‘Stable’ (#5031)
1.1.0
Dependencies
- The minimum version for
google-api-core
has been updated to version 1.0.0. This may cause some incompatibility with older google-cloud libraries, you will need to update those libraries if you have a dependency conflict. (#4944, #4946)
Testing and internal changes
Fix load_keys() in YCSB-like benchmark for cloud spanner. (#4919)
Install local dependencies when running lint (#4936)
Re-enable lint for tests, remove usage of pylint (#4921)
Normalize all setup.py files (#4909)
Fix system test util to populate streaming (#4888)
Retry conflict errors in system test (#4850)
1.0.0
Breaking Changes
to_pb
has now been made private (_to_pb
) inKeySet
andKeyRange
(#4740)
Documentation Changes
- Database update_ddl missing param in documentation (#4749)
0.30.0
Breaking Changes
The underlying autogenerated client library was re-generated to pick up new features and resolve bugs, this may change the exceptions raised from various methods. (#4695)
Made
StreamedResultSet
’srow
,consume_all
, andconsume_next
members private (#4492)
Implementation Changes
Keyset
can now infer defaults tostart_closed
orend_closed
when only one argument is specified. (#4735)
Documentation
- Brought Spanner README more in line with others. (#4306, #4317)
Testing
Added several new system tests and fixed minor issues with existing tests. (
4631, #4569, #4573, #4572, #4416, #4411, #4407, #4386, #4419, #4489,
4678, #4620, #4418, #4403, #4397, #4383, #4371, #4372, #4374, #4370, #4285,
4321)
Excluded generated code from linting. (#4375)
Added a
nox -s default
session for all packages. (#4324)
0.29.0
Implementation Changes
Bugfix: Clear
session._transaction
before calling_delay_until_retry
(#4185)Bugfix: Be permissive about merging an empty list. (#4170, fixes #4164)
Documentation
- Added link to “Python Development Environment Setup Guide” in project README (#4187, h/t to @michaelawyu)
Dependencies
Upgrading to
google-cloud-core >= 0.28.0
and adding dependency ongoogle-api-core
(#4221, #4280)Deferring to
google-api-core
forgrpcio
andgoogleapis-common-protos
dependencies (#4096, #4098)