Skip to content

dependabot npm(deps): bump mongodb from 4.3.1 to 4.4.0

Depen d'Abot requested to merge dependabot-npm_and_yarn-mongodb-4.4.0 into master

Bumps mongodb from 4.3.1 to 4.4.0.

Release notes

Sourced from mongodb's releases.

v4.4.0

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

Release Highlights

This release includes a few new features described below.

KMIP

KMIP can now be configured as a KMS provider for CSFLE by providing the KMIP endpoint in the kmsProviders option.

Example:

new MongoClient(uri, { autoEncryption: { kmsProviders: { kmip: { endpoint: 'host:port' }}}})

CSFLE TLS

Custom TLS options can now be provided for connection to the KMS servers on a per KMS provider basis.

Example:

new MongoClient(uri, { autoEncryption: { tlsOptions: { aws: { tlsCAFile: 'path/to/file' }}}})

Valid options are tlsCAFile, tlsCertificateKeyFile, tlsCertificateKeyFilePassword and all accept strings as values: a string path to a certificate location on the file system or a string password.

Kerberos

Hostname canonicalization when using GSSAPI authentication now accepts 'none', 'forward', and 'forwardAndReverse' as auth mechanism properties. 'none' will perform no canonicalization (default), 'forward' will perform a forward cname lookup, and 'forwardAndReverse' will perform a forward lookup followed by a reverse PTR lookup on the IP address. Previous boolean values are still accepted and map to false -> 'none' and true -> 'forwardAndReverse'.

Example:

new MongoClient('mongodb://user:pass@host:port/db?authMechanism=GSSAPI&authMechanismProperties=CANONICALIZE_HOST_NAME=forward');

For cases when the service host name differs from the connection’s host name (most likely when creating new users on localhost), a SERVICE_HOST auth mechanism property may now be provided.

Example:

new MongoClient('mongodb://user:pass@host:port/db?authMechanism=GSSAPI&authMechanismProperties=SERVICE_HOST:example.com')

️ collection.count() and cursor.count()

In the 4.0.0 release of the driver, the deprecated collection.count() method was inadvertently changed to behave like collection.countDocuments(). In this release, we have updated the collection.count() behavior to match the legacy behavior:

  • If a query is passed in, collection.count will behave the same as collection.countDocuments and perform a collection scan.
  • If no query is passed in, collection.count will behave the same as collection.estimatedDocumentCount and rely on collection metadata.

We also deprecated the cursor.count() method and will remove it in the next major version along with collection.count(); please use collection.estimatedDocumentCount() or collection.countDocuments() instead.

Features

... (truncated)

Commits
  • b578d89 chore(release): 4.4.0
  • d0390d0 feat(NODE-2939): add new hostname canonicalization opts (#3131)
  • aa069f1 chore(NODE-3719): spec compliance review wrap up (#3145)
  • b192493 fix(NODE-3917): Throw an error when directConnection is set with multiple hos...
  • 3e7b894 fix(NODE-3813): unexpected type conversion of read preference tags (#3138)
  • 9242de5 test(NODE-3860): improve skipReason reporting for disabled 'auth' tests (#3137)
  • 46d5821 feat(NODE-2938): add service host mechanism property (#3130)
  • 541e939 fix: fix csfle imports (#3142)
  • 489e05b test(NODE-3733): Make retryable write test error labels behave consistently w...
  • 3807d01 test(NODE-3885): update spec tests to remove legacy language (#3139)
  • Additional commits viewable in compare view

Merge request reports