synatic / noql

Converts SQL queries to Mongo find or aggregates
https://noql.synatic.dev/
GNU General Public License v3.0
47 stars 12 forks source link

Bump mongodb from 3.6.10 to 4.1.0 #15

Closed dependabot[bot] closed 3 years ago

dependabot[bot] commented 3 years ago

Bumps mongodb from 3.6.10 to 4.1.0.

Release notes

Sourced from mongodb's releases.

v4.1.0

The MongoDB Node.js team is pleased to announce version 4.1.0 of the mongodb package!

Release Highlights

This release includes load balancer support, intended for use with the beta Serverless platform. When using the driver with Serverless, the SRV URI will automatically put the driver into this mode. When wanting to use a non-SRV URI one must add the loadBalanced=true option to the URI to put the driver into this mode. Being in this mode enables the driver to properly route transactions and cursors to the correct service behind the load balancer.

The release also fixes an important bug where the original release of the v4 driver enabled command monitoring by default, which caused many reported observations of performance degradation when upgrading from v3 of the driver. Command monitoring is now once again disabled by default and must be enabled by passing in { monitorCommands: true } to the client if desired.

Features

  • NODE-2843: implement sessions advanceClusterTime method (#2920) (1fd0244)
  • NODE-3011: Load Balancer Support (#2909) (c554a7a)

Bug Fixes

  • NODE-2883: Aggregate Operation should not require parent parameter (#2918) (dc6e2d6)
  • NODE-3058: accept null or undefined anywhere we permit nullish values (#2921) (b42a1b4)
  • NODE-3441: fix typings for createIndexes (#2915) (f87f376)
  • NODE-3442: AsyncIterator has incorrect return type (#2916) (4a10389)
  • NODE-3452: readonly filters not permitted by typings (#2927) (ce51e78)
  • NODE-3510: omit incorrect | void in declaration of Promise overload of rename() (#2922) (58c1e84)
  • NODE-3513: default command monitoring to off (#2926) (3c60245)

Documentation

We invite you to try the mongodb library immediately, and report any issues to the NODE project.

v4.0.1

The MongoDB Node.js team is pleased to announce version 4.0.1 of the mongodb package!

Release Highlights

This release fixes two small but important bugs from our 4.0.0 release:

  • Webpack will no longer throw an error when trying to bundle the driver
  • Snapshot sessions will now correctly apply the snapshot time when initiated with a distinct operation

We hope this improves your upgrade experience!

Bug Fixes

  • NODE-3199: unable to bundle driver due to uncaught require (#2904) (9e48bbd)
  • NODE-3393: snapshot time not applied if distinct executed first (#2908) (7aa3008)
  • NODE-3417: allow calling db() before MongoClient is connected (#2889) (51ea86d)

... (truncated)

Changelog

Sourced from mongodb's changelog.

Changes in 4.x (and how to migrate!)

Hello dear reader, thank you for adopting version 4.x of the MongoDB Node.js driver, from the bottom of our developer hearts we thank you so much for taking the time to upgrade to our latest and greatest offering of a stunning database experience. We hope you enjoy your upgrade experience and this guide gives you all the answers you are searching for. If anything, and we mean anything, hinders your upgrade experience please let us know via JIRA. We know breaking changes are hard but they are sometimes for the best. Anyway, enjoy the guide, see you at the end!

Key Changes

Typescript

We've migrated the driver to Typescript! Users can now harness the power of type hinting and intellisense in editors that support it to develop their MongoDB applications. Even pure JavaScript projects can benefit from the type definitions with the right linting setup. Along with the type hinting there's consistent and helpful docs formatting that editors should be able to display while developing. Recently we migrated our BSON library to TypeScript as well, this version of the driver pulls in that change.

Community Types users (@​types/mongodb)

If you are a user of the community types (@​types/mongodb) there will likely be compilation errors while adopting the types from our codebase. Unfortunately we could not achieve a one to one match in types due to the details of writing the codebase in Typescript vs definitions for the user layer API along with the breaking changes of this major version. Please let us know if there's anything that is a blocker to upgrading on JIRA.

Node.js Version

We now require node 12.9 or greater for version 4 of the driver. If that's outside your support matrix at this time, that's okay! Bug fix support for our 3.x branch will not be ending until summer 2022, which has support going back as far as Node.js v4!

Cursor changes

Affected classes:

  • AbstractCursor
  • FindCursor
  • AggregationCursor
  • ChangeStreamCursor
    • This is the underlying cursor for ChangeStream
  • ListCollectionsCursor

Our Cursor implementation has been updated to clarify what is possible before and after execution of an operation. Take this example:

const cursor = collection.find({ a: 2.3 }).skip(1);
for await (const doc of cursor) {
  console.log(doc);
  fc.limit(1); // bad.
}

... (truncated)

Commits
  • 4ecaa37 chore(release): 4.1.0
  • ce51e78 fix(NODE-3452): readonly filters not permitted by typings (#2927)
  • c554a7a feat(NODE-3011): Load Balancer Support (#2909)
  • 3c60245 fix(NODE-3513): default command monitoring to off (#2926)
  • 58c1e84 fix(NODE-3510): omit incorrect | void in declaration of Promise overload of...
  • 1fd0244 feat(NODE-2843): implement sessions advanceClusterTime method (#2920)
  • a9c0de8 refactor(NODE-3421): replace MongoDriverError instances with MongoRuntimeErro...
  • b42a1b4 fix(NODE-3058): accept null or undefined anywhere we permit nullish values (#...
  • dc6e2d6 fix(NODE-2883): Aggregate Operation should not require parent parameter (#2918)
  • 967c193 refactor(NODE-3402): implement MongoAPIError and its children (#2891)
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
dependabot[bot] commented 3 years ago

Superseded by #22.