Changelog
2.4.0 (2022-03-08)
Features
allow ‘Collection.where(name, in, [hello, world])’ (#501) (7d71244)
update client libraries to support Database operations (#513) (74d8171)
Bug Fixes
deps: drop packaging dependency (6b5a779)
deps: require google-api-core >= 1.28.0 (6b5a779)
deps: require google-api-core>=1.31.5, >=2.3.2 (#543) (c214732)
handle empty last chunk correctly in ‘Query._chunkify’ (#489) (3ddc718)
hash snapshots using correct type for ‘update_time’ (#467) (5e66a73)
resolve DuplicateCredentialArgs error when using credentials_file (77b9082)
Documentation
clarify docstring in RunQueryRequest/RunQueryResponse (#544) (d17febb)
list oneofs in docstring (6b5a779)
2.3.4 (2021-09-30)
Bug Fixes
- improper types in pagers generation (4434415)
2.3.3 (2021-09-24)
Bug Fixes
add ‘dict’ annotation type to ‘request’ (32bc180)
harden ‘query.stream’ against retriable exceptions (#456) (0dca32f)
unbreak query orders w/ non-orderable operators (#453) (2dbbba0)
Performance Improvements
2.3.2 (2021-09-09)
Bug Fixes
2.3.1 (2021-08-30)
Bug Fixes
2.3.0 (2021-08-18)
Features
Bug Fixes
Documentation
2.2.0 (2021-07-22)
Features
Bug Fixes
reseed RNG for each auto id on 3.6 to avoid collisions (#388) (784e8ae)
update type hint for
async_collection.document()
(#370) (ee6a1c2)
Documentation
2.1.3 (2021-06-15)
Bug Fixes
2.1.2 (2021-06-14)
Documentation
2.1.1 (2021-05-03)
Bug Fixes
2.1.0 (2021-03-30)
Features
Bug Fixes
limit data transferred as part of list_documents as we don’t require field data (#280) (0386bc4)
patch emulator channel to be created accordingly (#288) (1a973f3)
remove client recv msg limit fix: add enums to
types/__init__.py
(#274) (2b47c00)
Documentation
add documentation for documentsnapshot class (#263) (448c965)
clarify semantics of ‘merge’ argument to ‘Document.set’ (#278) (29c6374), closes #277
2.0.2 (2020-12-05)
Bug Fixes
- request and flattened params are exclusive, surface transport in generated layer (#256) (386e85e), closes #251 #252
2.0.1 (2020-11-12)
Bug Fixes
Documentation
2.0.0 (2020-11-06)
⚠ BREAKING CHANGES
remove support for Python 2.7
remove v1beta1 surface for v2 (#96)
Begin using new microgenerator for v2 firestore (#91)
from
firestore-0.30.0
: revert to merge not being an option;
Features
add retry/timeout to manual surface (#222) (db5f286), closes #221
add support for not-in and not-eq query operators (#202) (1d09f21)
Begin using new microgenerator for v2 firestore (#91) (e0add08)
use
DatetimeWithNanoseconds
throughout library (#116) (1801ba2)firestore: add
IN
,ARRAY_CONTAINS_ANY
operators; update docstrings (via synth) (#9439) (107e526)firestore: add v1beta1 deprecation annotation (#34) (b9e2ab5)
firestore: surface new ‘IN’ and ‘ARRAY_CONTAINS_ANY’ operators (#9541) (5e9fe4f)
Bug Fixes
add import message via synth (#231) (5fb02e9), closes #227 #228 #229
async_document docs to match expected usecase (#129) (f26f222)
coverage to 99p (8ddfe1d)
harden version data gathering against DistributionNotFound (#212) (20b7260)
name parameter to indicate snapshot support (#169) (be98897), closes #56
recover watch stream on more error types (#9995) (af5fd1d), closes #L817
Support more Python sequence types when encoding to Protobuf (#21) (b1c5987)
firestore: fix get and getall method of transaction (#16) (de3aca0)
respect transform values passed into collection.add (#7072) (c643d91), closes #6826
update resume token for restarting BiDi streams (#10282) (61ec5a2)
firestore: simplify ‘Collection.add’, avoid spurious API call (#9634) (20f093e), closes #9629
Reverts
Revert “Replace relative class refs with fully-qualifed names. (#8039)” (#8095) (2441825), closes #8039 #8095
Revert “Do not use easily-misread glyphs in Firestore auto-IDs.” (#4589) (bbfd2ff), closes #4589 #4588 #4583 #4107
Refactor conformance tests. (#6291) (4d29c1f), closes #6291 #6290
Documentation
add python 2 sunset banner to documentation (#9036) (819d154)
add upgrading section to index of documentation (#248) (55d1356)
adds UPGRADING.md, note to readme, to help inform users about migration to v2 (#245) (6a8cbdd)
re-add changelog entries lost in V2 switch (#178) (d4a0f81), closes #177
firestore: add documentation for Document,Collection .on_snapshot (#9275) (f250443)
firestore: add new where operators to docstring (#9789) (c3864f7)
firestore: remove duplicated word in README (#9297) (250024c)
firestore: standardize use of ‘required’ and ‘optional’ in docstrings; add py2 deprecation warning; add 3.8 unit tests (via synth) (#10068) (0f72f2c)
Remove CI for gh-pages, use googleapis.dev for api_core refs. (#9085) (c7b3de8)
Replace links to ‘/stable/’ with ‘/latest/’. (#5901) (e2f606e), closes #5894
2.0.0-dev2 (2020-10-26)
⚠ BREAKING CHANGES
remove v1beta1 surface for v2 (#96)
Begin using new microgenerator for v2 firestore (#91)
from
firestore-0.30.0
: revert to merge not being an option;
Features
add
retry
/timeout
to manual surface (#222) (db5f286), closes #221add support for
not-in
andnot-eq
query operators (#202) (1d09f21)use
update_transforms
for mutations (#219) (c122e41), closes #217
Bug Fixes
add import message via synth (#231) (5fb02e9), closes #227 #228 #229
harden version data gathering against DistributionNotFound (#212) (20b7260)
name parameter to indicate snapshot support (#169) (be98897), closes #56
Documentation
2.0.0-dev1 (2020-08-20)
⚠ BREAKING CHANGES
remove v1beta1 surface for v2 (#96)
Begin using new microgenerator for v2 firestore (#91)
from
firestore-0.30.0
: revert to merge not being an option;
Features
firestore: add
IN
,ARRAY_CONTAINS_ANY
operators; update docstrings (via synth) (#9439) (107e526)firestore: add v1beta1 deprecation annotation (#34) (b9e2ab5)
firestore: surface new ‘IN’ and ‘ARRAY_CONTAINS_ANY’ operators (#9541) (5e9fe4f)
Begin using new microgenerator for v2 firestore (#91) (e0add08)
use
DatetimeWithNanoseconds
throughout library (#116) (1801ba2)
Bug Fixes
async_document docs to match expected usecase (#129) (f26f222)
coverage to 99p (8ddfe1d)
recover watch stream on more error types (#9995) (af5fd1d), closes #L817
respect transform values passed into collection.add (#7072) (c643d91), closes #6826
Support more Python sequence types when encoding to Protobuf (#21) (b1c5987)
update resume token for restarting BiDi streams (#10282) (61ec5a2)
firestore: fix get and getall method of transaction (#16) (de3aca0)
firestore: simplify ‘Collection.add’, avoid spurious API call (#9634) (20f093e), closes #9629
Documentation
add python 2 sunset banner to documentation (#9036) (819d154)
Remove CI for gh-pages, use googleapis.dev for api_core refs. (#9085) (c7b3de8)
Replace links to ‘/stable/’ with ‘/latest/’. (#5901) (e2f606e), closes #5894
firestore: add documentation for Document,Collection .on_snapshot (#9275) (f250443)
firestore: add new where operators to docstring (#9789) (c3864f7)
firestore: remove duplicated word in README (#9297) (250024c)
firestore: standardize use of ‘required’ and ‘optional’ in docstrings; add py2 deprecation warning; add 3.8 unit tests (via synth) (#10068) (0f72f2c)
Tests
1.9.0 (2020-08-13)
Features
1.8.1 (2020-07-07)
Bug Fixes
1.8.0 (2020-07-06)
Features
firestore: add support of emulator to run system tests on emulator (#31) (891edc7)
firestore: add v1beta1 deprecation annotation (#34) (b9e2ab5)
Bug Fixes
Documentation
1.7.0 (2020-05-18)
Features
Bug Fixes
1.6.2 (2020-01-31)
Bug Fixes
1.6.1
01-02-2020 10:35 PST
Implementation Changes
Recover watch streams on more error types (#9995)
Simplify ‘Collection.add’ and avoid a spurious API call (#9634)
Documentation
Add new where operators to docstring (#9789)
Change spacing in docs templates (via synth) (#9750)
Add python 2 sunset banner to documentation (#9036)
1.6.0
11-06-2019 13:49 PST
New Features
- Surface new ‘IN’ and ‘ARRAY_CONTAINS_ANY’ query operators. (#9541)
1.5.0
10-15-2019 06:45 PDT
Implementation Changes
Expand dotted keys in mappings used as cursors. (#8568)
Tweak GAPIC client configuration (via synth). (#9173)
New Features
Add
IN
,ARRAY_CONTAINS_ANY
operators; update docstrings (via synth). (#9439)Add
COLLECTION_GROUP
toIndex.QueryScope
enum; update docstrings (via synth). (#9253)Add
client_options
to v1 client. (#9048)
Dependencies
- Pin ‘google-cloud-core >= 1.0.3, < 2.0.0dev’. (#9445)
Documentation
Update README example to use non-deprecated
query.get
. (#9235)Remove duplicated word in README. (#9297)
Fix intersphinx reference to
requests
. (#9294)Remove CI for gh-pages, use googleapis.dev for
api_core refs
. (#9085)Add license file. (#9109)
Fix reference to library name (#9047)
Remove compatability badges from READMEs. (#9035)
1.4.0
08-06-2019 11:43 PDT
New Features
Support emulator in client. (#8721)
Add GAPIC client for Admin V1. (#8667)
Add
Transaction.get
/Transaction.get_all
. (#8628)
Implementation Changes
Remove send/recv msg size limit (via synth). (#8955)
Deprecate
v1beta1
API / client. (#8886)Allow snapshot cursors from other collections for collection group queries. (#8882)
Fix sorting
delete_changes
inWatch._compute_snapshot
. (#8809)Treat
None
as EOF inWatch.on_snapshot
. (#8687)Fix V1
Client.collections
method. (#8718)Avoid adding
prefix
to update mask for transforms used inupdate
. (#8701)Add
should_terminate
predicate for clean BiDi shutdown. (#8650)
Dependencies
- Bump minimum version for google-api-core to 1.14.0. (#8709)
Documentation
Update intersphinx mapping for requests. (#8805)
Link to googleapis.dev documentation in READMEs. (#8705)
Add compatibility check badges to READMEs. (#8288)
Internal / Testing Changes
Preserve manual change in noxfile (run systests verbosely). (#8744)
Update V1 conformance tests to match new repo / format. (#8689)
Improve cleanups for
watch
system tests. (#8638)Avoid sharing top-level collection across test cases / CI runs. (#8637)
1.3.0
07-09-2019 13:19 PDT
Implementation Changes
Add missing transforms to ‘google.cloud.firestore’ shim. (#8481)
Preserve reference to missing documents in ‘Client.get_all’. (#8472)
Add gRPC keepalive to gapic client initialization. (#8264)
Add disclaimer to auto-generated template files. (#8314)
Use correct environment variable to guard the ‘system’ part. (#7912)
New Features
Add ‘client_options’ support, update list method docstrings (via synth). (#8509)
Allow kwargs to be passed to create_channel (via synth). (#8390)
Add ‘FieldPath.documentId()’. (#8543)
Documentation
Fix docstring example for ‘Client.collection_group’. (#8438)
Normalize docstring class refs. (#8102)
Internal / Testing Changes
Pin black version (via synth). (#8583)
All: Add docs job to publish to googleapis.dev. (#8464)
Declare encoding as utf-8 in pb2 files (via synth). (#8352)
Suppress checking ‘cov-fail-under’ in nox default session (via synth). (#8241)
Blacken noxfile.py, setup.py (via synth). (#8123)
Add empty lines (via synth). (#8058)
1.2.0
05-16-2019 12:25 PDT
New Features
Add support for numeric transforms:
increment
/maximum
/minimum
. (#7989)
Dependencies
- Pin
google-cloud-core >= 1.0.0, < 2.0dev
. (#7993)
Internal / Testing Changes
- Add nox session
docs
, add routing header to method metadata, reorder methods (via synth).. (#7771)
1.1.0
04-30-2019 12:29 PDT
New Features
- Add support for CollectionGroup queries. (#7758)
1.0.0
04-30-2019 10:00 PDT
Implementation Changes
Use parent path for watch on queries. (#7752)
Add routing header to method metadata (via synth). (#7749)
0.32.1
04-05-2019 10:51 PDT
Dependencies
- Update google-api-core dependency
0.32.0
04-01-2019 11:44 PDT
Implementation Changes
Allow passing metadata as part of creating a bidi (#7514)
Remove classifier for Python 3.4 for end-of-life. (#7535)
Rename ‘Query.get’ -> ‘stream’. (#7284)
Remove bogus error checking of query response stream. (#7206) -’increment’ / ‘minimum’ / ‘maximum’ field transform attributes. (#7129)
Respect transform values passed into collection.add (#7072)
Protoc-generated serialization update. (#7083)
New Features
Firestore: Add v1 API version. (#7494)
Add ‘Collection.list_documents’ method. (#7221)
Add ‘DocumentReference.path’ property. (#7219)
Documentation
Updated client library documentation URLs. (#7307)
Fix the docstring example for ‘Query.on_snapshot’. (#7281)
Update copyright headers
Internal / Testing Changes
Fix typo in proto comments (via synth).
Prep firestore unit tests for generation from ‘v1’ protos. (#7437)
Copy lintified proto files (via synth). (#7466)
Add clarifying comment to blacken nox target. (#7392)
Add protos as an artifact to library (#7205)
0.31.0
12-18-2018 11:20 PST
Implementation Changes
Implement equality semantics for public types (#6916)
Pick up stub docstring fix in GAPIC generator. (#6988)
Use ‘DatetimeWithNanos’ for converting timestamp messages. (#6920)
Enable use of ‘WriteBatch’ as a context manager. (#6912)
Document timeouts for ‘Query.get’ / ‘Collection.get’. (#6853)
Normalize FieldPath parsing / escaping (#6904)
For queries ordered on
__name__
, expand field values to full paths. (#6829)Import
iam.policy
fromgoogle.api_core
. (#6741)Prevent use of transforms as values passed to ‘Query.where’. (#6703)
‘Query.select([])’ implies
__name__
. (#6735)Reject invalid paths passed to ‘Query.{select,where,order_by}’ (#6770)
Prevent use of transforms as cursor values. (#6706)
Refactor ‘Document.get’ to use the ‘GetDocument’ API. (#6534)
Pick up enum fixes in the GAPIC generator. (#6612)
Pick up changes to GAPIC client config. (#6589)
Suppress deprecation warnings for ‘assertRaisesRegexp’. (#6543)
Firestore: pick up fixes to GAPIC generator. (#6523)
Fix
client_info
bug, update docstrings. (#6412)Block calling ‘DocumentRef.get()’ with a single string. (#6270)
New Features
Impose required semantics for snapshots as cursors: (#6837)
Make cursor-related ‘Query’ methods accept lists (#6697)
Add ‘Client.collections’ method. (#6650)
Add support for ‘ArrayRemove’ / ‘ArrayUnion’ transforms (#6651)
Add support for
array_contains
query operator. (#6481)Add Watch Support (#6191)
Remove use of deprecated ‘channel’ argument. (#6271)
Dependencies
Pin ‘google-api_core >= 1.7.0’. (#6937)
Update dependency to google-cloud-core (#6835)
Bump minimum ‘api_core’ version for all GAPIC libs to 1.4.1. (#6391)
Documentation
Document Python 2 deprecation (#6910)
Nnormalize docs for
page_size
/max_results
/page_token
. (#6842)Port changelog from 30.1 branch to main (#6903)
Normalize use of support level badges (#6159)
Internal / Testing Changes
Add driver for listen conformance tests. (#6935)
Add driver for query conformance tests. (#6839)
Update noxfile.
Blacken libraries (#6794)
Omit local deps (#6701)
Run black at end of synth.py (#6698)
Add templates for flake8, coveragerc, noxfile, and black. (#6642)
Fix delete conformance (#6559)
Add synth metadata. (#6567)
Refactor conformance tests. (#6291)
Import stdlib ABCs from ‘collections.abc’ rather than ‘collections’. (#6451)
Fix path of tests-to-include in MANIFEST.in (#6381)
Fix error from new flake8 version. (#6320)
0.30.1
12-11-2018 10:49 PDT
Dependencies
- Update
core
andapi_core
dependencies to latest versions.
0.30.0
10-15-2018 09:04 PDT
New Features
Add
Document.collections
method. (#5613)Add
merge
as an option toDocumentReference.set()
(#4851)Return emtpy snapshot instead of raising NotFound exception (#5007)
Add Field path class (#4392)
Implementation Changes
Avoid overwriting
__module__
of messages from shared modules. (#5364)Don’t omit originally-empty map values when processing timestamps. (#6050)
Documentation
Prep docs for repo split. (#6000)
Docs: Replace links to
/stable/
with/latest/
. (#5901)Document
FieldPath.from_string
(#5121)
Internal / Testing Changes
Use new Nox (#6175)
Add new conformance tests. (#6124)
Add
synth.py
. (#6079)Test document update w/ integer ids (#5895)
Nox: use inplace installs (#5865)
Re-sync with .proto / .textproto files from google-cloud-common. (#5351)
Modify system tests to use prerelease versions of grpcio (#5304)
Add test runs for Python 3.7 and remove 3.4 (#5295)
Fix over-long line. (#5129)
Distinguish
FieldPath
classes from field path strings (#4466)Fix bad trove classifier
Cleanup
FieldPath
(#4996)Fix typo in
Document.collections
docstring. (#5669)Implement
FieldPath.__add__
(#5149)
0.29.0
New features
- All non-simple field names are converted into unicode (#4859)
Implementation changes
The underlying generated code has been re-generated to pick up new features and bugfixes. (#4916)
The
Admin
API interface has been temporarily removed.
Dependencies
Update dependency range for api-core to include v1.0.0 releases (#4944)
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)
Documentation
- Fixing “Fore” -> “For” typo in README docs. (#4317)
Testing and internal changes
Install local dependencies when running lint (#4936)
Re-enable lint for tests, remove usage of pylint (#4921)
Normalize all setup.py files (#4909)
System test fix, changed ALREADY_EXISTS and MISSING_ENTITY to DOCUMENT_EXISTS and MISSING_DOCUMENT and updated wording (#4803)
Cross-language tests (#4359)
Fix import column lengths pass 79 (#4464)
Making a
nox -s default
session for all packages. (#4324)Shorten test names (#4321)
0.28.0
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)
PyPI: https://pypi.org/project/google-cloud-firestore/0.28.0/