Skip to content

Latest commit

 

History

History
1015 lines (535 loc) · 60.3 KB

CHANGELOG.md

File metadata and controls

1015 lines (535 loc) · 60.3 KB

Changelog

npm history

5.0.2 (2022-01-07)

Bug Fixes

  • remove serializer check from Query.isEqual() (#1654) (f13da18)

5.0.1 (2021-12-02)

Bug Fixes

5.0.0 (2021-11-23)

⚠ BREAKING CHANGES

  • upgrade Typescript to v4.1.5 and add converter and typing upgrades (#1632)

Features

  • upgrade Typescript to v4.1.5 and add converter and typing upgrades (#1632) (c293955)

4.15.1 (2021-09-03)

Bug Fixes

4.15.0 (2021-08-26)

Features

Bug Fixes

  • Handles identical document ids from different collections. (#1599) (745b608)

4.14.2 (2021-08-17)

Bug Fixes

4.14.1 (2021-08-02)

Bug Fixes

  • avoid destructuring undefined timestamps (#1575) (a61a24a)

4.14.0 (2021-07-30)

Features

  • add "NON_EMPTY_DEFAULT" FieldBehavior (#1554) (8d9c503)
  • allow UnhandledPromiseRejection errors in BulkWriter if no error handler is specified (#1572) (e862ac8)

4.13.2 (2021-07-14)

Bug Fixes

  • deps: google-gax v2.17.1 (#1557) (866bd25)
  • lower batch size on BulkWriter retry to stay under throughput limits (#1556) (f17a36e)

4.13.1 (2021-07-01)

Bug Fixes

4.13.0 (2021-06-29)

Features

Bug Fixes

4.12.3 (2021-06-16)

Bug Fixes

  • bulkWriter: ensure buffered batches are sent after flush (#1535) (115a134)
  • GoogleAdsError missing using generator version after 1.3.0 (#1526) (adfe68e)

4.12.2 (2021-05-27)

Bug Fixes

  • do not leak credentials in Firestore.toJSON() (#1522) (791310f)

4.12.1 (2021-05-27)

Bug Fixes

  • do not load google-gax at client startup (#1517) (2141b08)
  • recursive delete: backporting changes from Java (#1514) (92ea651)
  • return results from getPartitions() in order (#1521) (c8168a8)

4.12.0 (2021-05-19)

Features

4.11.1 (2021-05-13)

Bug Fixes

4.11.0 (2021-05-05)

Features

4.10.1 (2021-04-28)

Bug Fixes

  • type of QuerySnapshot.docChanges() should be generic (#1484) (3ed1929)

4.10.0 (2021-04-15)

Features

Bug Fixes

  • use BigInt when calculating nanos in Timestamp.fromMillis() (#1468) (cf1949f)

4.9.9 (2021-04-07)

Bug Fixes

  • BulkWriter: apply rate limiter before sending batch (#1451) (3a50f8b)
  • remove floating point rounding error in Timestamp.fromMillis() (#1464) (97e7281)

4.9.8 (2021-03-15)

Bug Fixes

4.9.7 (2021-03-09)

Bug Fixes

  • export v1 and v1beta1 client class types correctly (#1445) (6c9319e)
  • retry BulkWriter deletes that fail with RST_STREAM error (#1442) (cccf48d)

4.9.6 (2021-03-03)

Bug Fixes

  • set default max ratelimiter throughput to 10k for BulkWriter (#1439) (c06fb3c)

4.9.5 (2021-03-02)

Bug Fixes

  • add typings to v1 and v1beta in firestore.d.ts (#1433) (47238a9)

4.9.4 (2021-02-15)

Bug Fixes

4.9.3 (2021-02-09)

Bug Fixes

  • use Array.isArray instead of an instanceof check (#1417) (4a8c3cf)

4.9.2 (2021-02-05)

Bug Fixes

4.9.1 (2021-01-26)

Bug Fixes

  • handle ignoreUndefinedProperties in set(merge: true) (#1396) (d870c9d)

4.9.0 (2021-01-25)

Features

4.8.1 (2020-12-16)

Bug Fixes

  • release clients that received a RST_STREAM error (#1380) (0296dd6)

4.8.0 (2020-12-03)

Features

Bug Fixes

  • stop using GRPC channels after RST_STREAM (#1373) (504bb5f)

4.7.2 (2020-11-25)

Bug Fixes

4.7.1 (2020-11-10)

Bug Fixes

  • do not modify options object, use defaultScopes (#1360) (bd40d3a)
  • ignore 'undefined' in update() with UpdateMap (#1363) (9bad804)
  • remove unneeded async signature from BulkWriter.sendBatch() (#1361) (b5cf449)

4.7.0 (2020-11-05)

Features

  • add ability to specify custom headers for individual RPC types (#1355) (0900379)

4.6.1 (2020-11-03)

Bug Fixes

  • create new batch for writes to the same doc (#1352) (bd5adc3)

4.6.0 (2020-11-03)

Features

  • add onWriteError() and onWriteResult() handlers to BulkWriter (#1315) (a173f4d)

Bug Fixes

  • retry transactions that fail with expired transaction IDs (#1347) (a18ab50)

4.5.0 (2020-10-26)

Features

  • add implicit ordering for startAt(DocumentReference) calls (#1328) (e9afa38)
  • add support for Partition API (#1320) (51961c3)

Bug Fixes

  • retry PartitionQuery for INTERNAL and DEADLINE_EXCEEDED (#1336) (fdf5462)
  • simplify BulkWriter logic (#1321) (b493baf)
  • speed up listDocuments pagination (#1344) (498301d)
  • Update getAll example in documentation (#1326) (721fce0)
  • update required field to implement NodeJS.Timeout (#1338) (6b7371b)
  • firestore/v1: give PartitionQuery retry/timeout config (#1334) (39a30c2)

4.4.0 (2020-09-29)

Features

  • add starting/max rates to BulkWriterOptions (#1305) (57dcf1c)

4.3.0 (2020-09-22)

Features

Bug Fixes

  • add capacity logging to RateLimiter (#1287) (befe625)
  • allow setLogFunction(null) (#1304) (20b1226)
  • bulkWriter: writing to the same document does not create a new batch (#1298) (6243d62)
  • change typings for select() to return Query<DocumentData> (#1303) (b678857)
  • correct BulkWriter types in firestore.d.ts (#1284) (382128b)

4.2.0 (2020-07-31)

Features

  • allow Settings.host to be used when Settings.servicePath is set (#1275) (34d6728)

4.1.2 (2020-07-24)

Bug Fixes

  • add Firestore.bulkWriter to firestore.d.ts (#1272) (5e7e627)

4.1.1 (2020-07-09)

Bug Fixes

4.1.0 (2020-07-08)

Features

  • Added Firestore.bulkWriter(), which performs large scale writes in parallel. By default, BulkWriter throttles writes according to the "500/50/5" rule and retries writes that fail due to contention. (#1252) (d0c6c4b)

4.0.0 (2020-06-24)

⚠ BREAKING CHANGES

  • drop Node 8 support (#1006)
  • FirestoreDataConverter.fromFirestore() is now called with a QueryDocumentSnapshot instead of DocumentData (#965)

Features

  • add support for serialization to BigInt (via settings({useBigInt: true}) (#1016)
  • add support for set() with SetOptions when using FirestoreDataConverter (#1087)
  • retry CommitRequests that fail with UNAVAILABLE (#1235)

Bug Fix

  • remove fallback code that periodically invoked CommitRequests inside Transactions on GCF (#1112)
  • fixes an error that prevented Firestore from connecting to the Emulator if multiple versions of @grpc/grpc-js are installed (#1233)

3.8.6 (2020-06-19)

Bug Fixes

  • reject all promises with errors (#1224) (9118521)
  • restart onSnapshot() listeners that stop receiving updates (#1220) (49ca641)

3.8.5 (2020-06-10)

Bug Fixes

3.8.4 (2020-06-01)

Bug Fixes

  • send Authentication header with every emulator request (#1105) (83f617c)

3.8.3 (2020-05-31)

Bug Fixes

  • return null for 'parent' call on root collection (#1099) (c5c0b15)

3.8.2 (2020-05-30)

Bug Fixes

3.8.1 (2020-05-27)

Bug Fixes

  • Add tests to check fields used in whereIn should be equality filters (#1081) (3153dd2)
  • capture error stacks across async calls (#1088) (7acdd7e)

3.8.0 (2020-05-13)

Features

Bug Fixes

3.7.5 (2020-04-25)

Bug Fixes

3.7.4 (2020-04-09)

Bug Fixes

3.7.3 (2020-03-31)

Bug Fixes

  • support array of references for IN queries (#993) (a6d8fe0)

3.7.2 (2020-03-25)

Bug Fixes

  • fix flaky contention test (#979) (f294998)
  • fix: use Random Number from crypto to generate AutoId (05b3363)

3.7.1 (2020-03-16)

Bug Fixes

  • support Query.stream() as first client operation (#971) (a48017c)

3.7.0 (2020-03-11)

Features

3.6.0 (2020-03-09)

Features

3.5.1 (2020-02-19)

Bug Fixes

  • collectionReference.add() validation (#925) (19c2c75)
  • pass x-goog-request-params header for streaming calls (#920) (cfbe19e)
  • propagate converter in QueryOptions.with() (#931) (e35a098)
  • wait for operations to complete before deleting clients (#915) (1e5d63f)

3.5.0 (2020-02-07)

Features

Bug Fixes

  • add missing generics on query (#917) (c5b9442)
  • better parameter naming in path template helpers (aac02f4)
  • retry streaming methods if initial write errored (#897) (2ec0489)

3.4.1 (2020-01-22)

Bug Fixes

  • do not assume all custom objects have constructors (#893) (f668e8e)

3.4.0 (2020-01-15)

Features

Bug Fixes

  • don't format log message if logging is disabled (#874) (b7b5fc9)
  • disable non-transactional retries for Code ABORTED (#881) (82273ec)
  • manually retry ABORTED reads in transactions (#883) (7562033)
  • remove ticks from code comments (#885) (b2740ed)

3.3.4 (2020-01-12)

Bug Fixes

3.3.3 (2020-01-08)

Bug Fixes

  • support Objects created with Object.create({}) (#842) (a85f0c3)
  • use rejected Promise for terminate() (#845) (f2c4d91)

3.3.2 (2020-01-06)

Bug Fixes

  • add quotes to field name to avoid ambiguity (#860) (8caee71)

3.3.1 (2020-01-06)

Bug Fixes

  • don't recreate instances when client is idle (0aa2a8b)

3.3.0 (2020-01-03)

Features

  • add Symbol.asyncInterator to Query.stream() (#843) (68795c4)
  • use GAX retry config for streams (#847) (218a4c6)

Bug Fixes

3.2.0 (2019-12-30)

Features

  • allow specifying how many idle GRPC channels to keep (#837) (37e93da)

Bug Fixes

  • reduce overhead for listDocuments()/listCollections() (#838) (5c870e6)

3.1.0 (2019-12-19)

Features

Bug Fixes

  • deps: update dependency deep-equal to v2 (#821) (25472e1)

3.0.0 (2019-12-15)

⚠ BREAKING CHANGES

  • convert Gapic client to TypeScript (#805)
  • remove deprecated timestampInSnapshots setting (#808)

Features

  • convert Gapic client to TypeScript (#805) (5000b2d)
  • remove deprecated timestampInSnapshots setting (#808) (f37fffc)

Bug Fixes

  • close GRPC channel when we dispose of clients (#779) (22ef0d0)

2.6.1 (2019-12-05)

Bug Fixes

  • deps: pin TypeScript below 3.7.0 (0d4e558)
  • docs: snippets are now replaced in jsdoc comments (#795) (396bebb)

2.6.0 (2019-11-01)

Features

2.5.0 (2019-10-22)

Features

  • introduces ARRAY_CONTAINS_ANY and IN to operator enum (2c8869d)

Bug Fixes

2.4.0 (2019-10-03)

Bug Fixes

  • provide custom error for FieldValue subclasses (#771) (29c3e9b)
  • use compatible version of google-gax (b0c89c5)

Features

  • ability to specify the Collection Group query scope in the V1 Admin API (#762) (b16cd40)

2.3.0 (2019-09-09)

Features

  • load protos from JSON, grpc-fallback support (#749) (6cb9d68)

2.2.9 (2019-08-30)

Bug Fixes

2.2.8 (2019-08-22)

Bug Fixes

  • serialization does not work with null objects (#736) (870d6a7)

2.2.7 (2019-08-16)

Bug Fixes

2.2.6 (2019-08-02)

Bug Fixes

  • allow calls with no request, add JSON proto (#725) (8b0624b)

2.2.5 (2019-08-02)

Bug Fixes

  • Better error for Collection Group Queries with documentId() cursors (#720) (169286d)

2.2.4 (2019-07-08)

Bug Fixes

  • Don't re-open streams on 'error' and 'end' (#713) (104a965)

2.2.3 (2019-06-26)

Bug Fixes

  • docs: link to reference docs section on googleapis.dev (#701) (d7c89a8)
  • Relax validation of FIRESTORE_EMULATOR_HOST in settings() (#703) (daff9de)

2.2.2 (2019-06-25)

Bug Fixes

  • Support non-ISO-8859-1 Collection Names in Queries (fc6f839)
  • Unset servicePath when FIRESTORE_EMULATOR_HOST is set (#696) (5a19931)
  • Use new stream rather than pipe (#700) (0370e03)

2.2.1 (2019-06-14)

Bug Fixes

2.2.0 (2019-06-06)

Bug Fixes

  • Split settings.host into servicePath and port (#684) (b2cbca5)
  • Store large numbers as doubles (#683) (607b3c0)

Features

  • support apiEndpoint override in client constructor (368bc5c)
  • Support host, ssl and FIRESTORE_EMULATOR_HOST for endpoint configuration (#680) (d15f29d)

2.1.1 (2019-05-30)

Dependencies

  • deps: Pin @gprc/grpc-js to 0.4.0 (#668)

Internal / Testing Changes

  • build: remove verbose logging from test scripts (#665)
  • build: ignore proto files in test coverage (#664)

2.1.0 (2019-05-28)

Bug Fixes

  • Add overloads for doc() and doc(id:string) (#662) (cb189e9)
  • retry on abort and limit retry count to 10 (#655) (9e97656)

Features

  • Support listDocuments()/listCollections() via the Firestore Emulator (#654) (eaf5a4e)

2.0.0 (2019-05-20)

⚠ BREAKING CHANGES

  • library now requires Node >= 8.13.0
  • deprecation: remove legacy support for array arguments (#625)
  • deprecation: remove deprecated getCollections() (#624)
  • upgrade engines field to >=8.10.0 (#608)

Bug Fixes

Build System

Code Refactoring

  • deprecation: remove deprecated getCollections() (#624) (43ac9c6)
  • deprecation: remove legacy support for array arguments (#625) (54dd405)

v1.3.0

04-26-2019 16:54 PDT

New Features

  • feature: Adding CollectionGroup queries (#578)(#595)

Dependencies

  • chore(deps): update dependency nyc to v14 (#600)
  • chore(deps): update dependency typescript to ~3.4.0
  • docs: add .readme-metadata.json and generate new README.md

Documentation

  • docs: Add example for Precondition (#601)

v1.2.0

03-21-2019 14:17 PDT

New Features

  • feature: Release the V1 Admin API (#590) The Firestore Node SDK now exposes the Firestore Admin API (via v1.FirebaseAdminClient()).

Implementation Changes

  • deps/refactor: Removing @google-cloud/projectify (#564)

Dependencies

  • chore(deps): update dependency hard-rejection to v2

Documentation

  • fix(docs): add namespaces so docs are generated (#591)
  • docs: fix typo in doc strings (#585)

Internal / Testing Changes

  • chore: publish to npm using wombat (#586)
  • build: use per-repo publish token (#582)
  • refactor: update json import paths (#580)

v1.1.0

03-10-2019 20:09 PDT

New Features

  • feature: Added FieldValue.increment(), which can be used in create(), update() and set(..., {merge:true}) to increment or decrement numeric field values safely without transactions (#444)

Implementation Changes

  • fix: Allow async functions (#576)
  • fix: Don't call stream.end() on Watch ended by server (#565)

Internal / Testing Changes

  • refactor: async/await to test/order.ts (#566)
  • build: Add docuploader credentials to node publish jobs (#572)
  • build: update release config (#570)
  • build: use node10 to run samples-test, system-test etc (#571)

v1.0.2

03-04-2019 13:32 PST

Implementation Changes

  • fix: throw on invalid credentials (#548)

Dependencies

  • fix(deps): update dependency google-gax to ^0.25.0 (#535)
  • chore(deps): update dependency mocha to v6
  • chore(deps): update dependency duplexify to v4 (#539)

Documentation

  • docs: update comments on protos (#559)
  • docs: update API doc comments (#557)
  • docs: update links in contrib guide (#550)
  • docs: add lint/fix example to contributing guide (#541)
  • docs: fix example comments (#540)
  • doc: show GA message in README.md (#536)
  • Add note about Datastore mode (#552)
  • chore: move CONTRIBUTING.md to root (#543)
  • docs: update contributing path in README (#544)

Internal / Testing Changes

  • refactor(typescript): enable noImplicitAny (#553)
  • chore: update array types (#555)
  • Finish TypeScript Migration (#512)
  • refactor: improve generated code style. (#538)
  • Remove unhandled Promise rejection warning (#556)
  • build: use linkinator for docs test (#549)
  • build: create docs test npm scripts (#547)
  • build: test using @grpc/grpc-js in CI (#546)

v1.0.1

01-29-2019 14:02 PST

Documentation

  • doc: update README.md to show this library as GA (#532)
  • fix(samples): constructor doesn't need project or cred options (#533)

v1.0.0

01-29-2019 12:12 PST

This is the Firestore Node.js Client Library GA release.

v0.21.0

01-25-2019 12:21 PST

This release brings in google-gax update to 0.24.0 which had its dependency google-auth-library updated to 3.0.0^ that swaps out axios in favour of gaxios and addresses an issue using the library behind a proxy (googleapis#493).

Dependencies

  • chore(deps): update dependency ts-node to v8 (#526)
  • fix(deps): update dependency google-gax to ^0.24.0 (#529)

Documentation

  • build: ignore googleapis.com in doc link check (#527)
  • docs: fix import links in the jsdocs (#524)

Internal / Testing Changes

  • chore: update year in the license headers. (#523)

v0.20.0

01-16-2019 13:14 PST

BREAKING: The timestampsInSnapshots default has changed to true.

The timestampsInSnapshots setting is now enabled by default so timestamp fields read from a DocumentSnapshot will be returned as Timestamp objects instead of Date. Any code expecting to receive a Date object must be updated.

DEPRECATED: Firestore.v1beta1 replaced by Firestore.v1

If you are currently using Firestore.v1beta1.FirestoreClient, you must switch to Firestore.v1.FirestoreClient. No other changes should be required as the API is 100% identical.

Bug Fixes

  • fix: getAll function signature to allow array destructuring (#515)
  • fix: update grpc retry config (#464)

New Features

  • feat: update to v1 protos (#516)
  • feat: add additional field transform types (#521)

Dependencies

  • fix(deps): update dependency google-gax to ^0.23.0 (#518)

Documentation

  • fix(docs): remove unused long running operations types
  • docs: elaborate on QuerySnapshot.forEach (#480)
  • docs: update doc writetime (#475)
  • docs: Fix example for writeTime (#474)
  • chore: update license file (#473)
  • docs: update readme badges (#470)

Internal / Testing Changes

  • build: check broken links in generated docs (#511)
  • chore(build): inject yoshi automation key (#492)
  • chore: update nyc and eslint configs (#491)
  • chore: fix publish.sh permission +x (#489)
  • fix(build): fix Kokoro release script (#488)
  • build: add Kokoro configs for autorelease (#487)
  • chore: add synth.metadata (#485)
  • chore: always nyc report before calling codecov (#482)
  • chore: nyc ignore build/test by default (#479)
  • chore(build): update the prettier config (#476)
  • chore(deps): update dependency typescript to ~3.2.0 (#467)
  • fix(build): fix system key decryption (#468)
  • Adding array-contains to error message (#465)

v0.17.0

Implementation Changes

  • Regenerate library with synth.py customizations (#345)
    • contains some documentation and internal timeout changes
  • Converting backoff.js to TypeScript (#328)
  • Making .dotChanges a method (#324)

Dependencies

  • chore(deps): update dependency nyc to v13 (#329)
  • fix(deps): update dependency google-gax to ^0.19.0 (#325)

Documentation

  • Fix DocumentReference.get() docs (#332)

Internal / Testing Changes

  • Retry npm install in CI (#341)
  • make synth.py generate library to ./dev (#337)
  • Revert "Re-generate library using /synth.py (#331)" (#334)
  • Re-generate library using /synth.py (#331)