Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): bump the driver group with 2 updates #723

Closed
wants to merge 1 commit into from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github May 3, 2024

Bumps the driver group with 2 updates: bson and mongodb.

Updates bson from 6.2.0 to 6.7.0

Release notes

Sourced from bson's releases.

v6.7.0

6.7.0 (2024-05-01)

The MongoDB Node.js team is pleased to announce version 6.7.0 of the bson package!

Release Notes

Add Long.fromStringStrict method

The Long.fromStringStrict method is almost identical to the Long.fromString method, except it throws a BSONError if any of the following are true:

  • input string has invalid characters, for the given radix
  • the string contains whitespace
  • the value the input parameters represent is too large or too small to be a 64-bit Long

Unlike Long.fromString, this method does not coerce the inputs '+/-Infinity' and 'NaN' to Long.ZERO, in any case.

Examples:

Long.fromStringStrict('1234xxx5'); // throws BSONError
Long.fromString('1234xxx5'); // coerces input and returns new Long(123400)
// when writing in radix 10, 'n' and 'a' are both invalid characters
Long.fromStringStrict('NaN'); // throws BSONError
Long.fromString('NaN'); // coerces input and returns Long.ZERO

[!NOTE] Long.fromStringStrict's functionality will be present in Long.fromString in the V7 BSON release.

Add static Double.fromString method

This method attempts to create an Double type from a string, and will throw a BSONError on any string input that is not representable as a IEEE-754 64-bit double. Notably, this method will also throw on the following string formats:

  • Strings in non-decimal and non-exponential formats (binary, hex, or octal digits)
  • Strings with characters other than sign, numeric, floating point, or slash characters (Note: 'Infinity', '-Infinity', and 'NaN' input strings are still allowed)
  • Strings with leading and/or trailing whitespace Strings with leading zeros, however, are also allowed.

Add static Int32.fromString method

This method attempts to create an Int32 type from string, and will throw a BSONError on any string input that is not representable as an Int32. Notably, this method will also throw on the following string formats:

  • Strings in non-decimal formats (exponent notation, binary, hex, or octal digits)
  • Strings with non-numeric and non-leading sign characters (ex: '2.0', '24,000')
  • Strings with leading and/or trailing whitespace

Strings with leading zeros, however, are allowed

UTF-8 validation now throws a BSONError on overlong encodings in Node.js

... (truncated)

Changelog

Sourced from bson's changelog.

6.7.0 (2024-05-01)

Features

  • NODE-5648: add Long.fromStringStrict() (#675) (9d5a5df)
  • NODE-6086: add Double.fromString() method (#671) (e943cdb)
  • NODE-6087: add Int32.fromString method (#670) (5a21889)

Bug Fixes

  • NODE-6102: Double.fromString prohibiting '+' character and prohibiting exponential notation (#674) (c58d1e2)
  • NODE-6123: utf8 validation is insufficiently strict (#676) (ae8bac7)
  • NODE-6144: Long.fromString incorrectly coerces valid inputs to Long.ZERO in special cases (#677) (208f7e8)

6.6.0 (2024-04-01)

Features

  • NODE-5958: add BSON iterating API (#656) (269df91)
  • NODE-5959: make byte parsing utils available on onDemand library (#662) (efab49a)

Bug Fixes

  • NODE-6042: Binary.toString output with respect to position (#663) (d7898f9)
  • NODE-6059: clean up experimental APIs (#665) (3289184)

6.5.0 (2024-03-12)

Features

Bug Fixes

  • NODE-6016: flip byte order depending on system endianness (#659) (6a7ef5d)

6.4.0 (2024-02-29)

Features

  • NODE-5909: optimize writing basic latin strings (#645) (ec51256)

... (truncated)

Commits
  • 370396e chore(main): release 6.7.0 [skip-ci] (#672)
  • 208f7e8 fix(NODE-6144): Long.fromString incorrectly coerces valid inputs to Long.ZERO...
  • 9d5a5df feat(NODE-5648): add Long.fromStringStrict() (#675)
  • ae8bac7 fix(NODE-6123): utf8 validation is insufficiently strict (#676)
  • c58d1e2 fix(NODE-6102): Double.fromString prohibiting '+' character and prohibiting e...
  • 23d13f2 chore(NODE-6080): bump dev dependencies (#673)
  • e943cdb feat(NODE-6086): add Double.fromString() method (#671)
  • 5a21889 feat(NODE-6087): add Int32.fromString method (#670)
  • eeab1e8 chore(main): release 6.6.0 [skip-ci] (#661)
  • 3289184 fix(NODE-6059): clean up experimental APIs (#665)
  • Additional commits viewable in compare view

Updates mongodb from 6.3.0 to 6.5.0

Release notes

Sourced from mongodb's releases.

v6.5.0

6.5.0 (2024-03-11)

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

Release Notes

Bulk Write Operations Generate Ids using pkFactory

When performing inserts, the driver automatically generates _ids for each document if there is no _id present. By default, the driver generates ObjectIds. An option, pkFactory, can be used to configure the driver to generate _ids that are not object ids.

For a long time, only Collection.insert and Collection.insertMany actually used the pkFactory, if configured. Notably, Collection.bulkWrite(), Collection.initializeOrderedBulkOp() and Collection.initializeOrderedBulkOp() always generated ObjectIds, regardless of what was configured on collection.

The driver always generates _ids for inserted documents using the pkFactory.

[!CAUTION] If you are using a pkFactory and performing bulk writes, you may have inserted data into your database that does not have _ids generated by the pkFactory.

Fixed applying read preference to commands depending on topology

When connecting to a secondary in a replica set with a direct connection, if a read operation is performed, the driver attaches a read preference of primaryPreferred to the command.

Fixed memory leak in Connection layer

The Connection class has recently been refactored to operate on our socket operations using promises. An oversight how we made async network operations interruptible made new promises for every operation. We've simplified the approach and corrected the leak.

Query SRV and TXT records in parallel

When connecting using a convenient SRV connection string (mongodb+srv://) hostnames are obtained from an SRV dns lookup and some configuration options are obtained from a TXT dns query. Those DNS operations are now performed in parallel to reduce first-time connection latency.

Container and Kubernetes Awareness

The Node.js driver now keeps track of container metadata in the client.env.container field of the handshake document.

If space allows, the following metadata will be included in client.env.container:

env?: { 
  container?: {
    orchestrator?: 'kubernetes' // if process.env.KUBERNETES_SERVICE_HOST is set
    runtime?: 'docker' // if the '/.dockerenv' file exists
  } 
}

Note: If neither Kubernetes nor Docker is present, client.env will not have the container property.

Add property errorResponse to MongoServerError

The MongoServer error maps keys from the error document returned by the server on to itself. There are some use cases where the original error document is desirable to obtain in isolation. So now, the mongoServerError.errorResponse property stores a reference to the error document returned by the server.

... (truncated)

Changelog

Sourced from mongodb's changelog.

6.5.0 (2024-03-11)

Features

  • NODE-5968: container and Kubernetes awareness in client metadata (#4005) (28b7040)
  • NODE-5988: Provide access to raw results doc on MongoServerError (#4016) (c023242)
  • NODE-6008: deprecate CloseOptions interface (#4030) (f6cd8d9)

Bug Fixes

  • NODE-5636: generate _ids using pkFactory in bulk write operations (#4025) (fbb5059)
  • NODE-5981: read preference not applied to commands properly (#4010) (937c9c8)
  • NODE-5985: throw Nodejs' certificate expired error when TLS fails to connect instead of CERT_HAS_EXPIRED (#4014) (057c223)
  • NODE-5993: memory leak in the Connection class (#4022) (69de253)

Performance Improvements

  • NODE-5986: parallelize SRV/TXT resolution (#4012) (eab8f23)

6.4.0 (2024-02-29)

Features

  • NODE-3449: Add serverConnectionId to Command Monitoring Spec (735f7aa)
  • NODE-3470: retry selects another mongos (#3963) (84959ee)
  • NODE-3689: require hello command for connection handshake to use OP_MSG disallowing OP_QUERY (#3938) (ce7df0f)
  • NODE-4686: Add log messages to CLAM (#3955) (e3bfa30)
  • NODE-4687: Add logging to server selection (#3946) (7f3ce0b)
  • NODE-4719: add SDAM Logging Spec (#3940) (a3c0298)
  • NODE-4847: Add config error handling to logging (#3970) (8f7bb59)
  • NODE-5717: make ExceededTimeLimit retryable reads error (#3947) (106ab09)
  • NODE-5885: upgrade BSON to ^6.3.0 (#3983) (9401d09)
  • NODE-5939: Implement 6.x: cache the AWS credentials provider in the MONGODB-AWS auth logic (#3991) (e0a37e5)
  • NODE-5978: upgrade BSON to ^6.4.0 (#4007) (90f2f70)

Bug Fixes

  • NODE-5127: implement reject kmsRequest on server close (#3964) (568e05f)
  • NODE-5609: node driver omits base64 padding in sasl-continue command (#3975) (b7d28d3)
  • NODE-5765: change type for countDocuments (#3932) (22cae0f)
  • NODE-5791: type error with $addToSet in bulkWrite (#3953) (b93d405)
  • NODE-5818: Add feature flagging to server selection logging (#3974) (55203ef)
  • NODE-5839: support for multibyte code-points in stringifyWithMaxLen (#3979) (aed1cf0)
  • NODE-5840: heartbeat duration includes socket creation (#3973) (a42039b)
  • NODE-5901: propagate errors to transformed stream in cursor (#3985) (ecfc615)

... (truncated)

Commits
  • c9e32ad chore(main): release 6.5.0 [skip-ci] (#4013)
  • f6cd8d9 feat(NODE-6008): deprecate CloseOptions interface (#4030)
  • 36fa752 refactor(NODE-5915): topology close logic to be synchronous (#4021)
  • 937c9c8 fix(NODE-5981): read preference not applied to commands properly (#4010)
  • 31f1eed test(NODE-5969): convert CSFLE corpus test #6 to TS, async/await and add writ...
  • fbb5059 fix(NODE-5636): generate _ids using pkFactory in bulk write operations (#4025)
  • 2348548 test(DRIVERS-2812): sdam load balancer tests in serverless (#4026)
  • c023242 feat(NODE-5988): Provide access to raw results doc on MongoServerError (#4016)
  • 69de253 fix(NODE-5993): memory leak in the Connection class (#4022)
  • 28b7040 feat(NODE-5968): container and Kubernetes awareness in client metadata (#4005)
  • Additional commits viewable in compare view

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 show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps the driver group with 2 updates: [bson](https://github.com/mongodb/js-bson) and [mongodb](https://github.com/mongodb/node-mongodb-native).


Updates `bson` from 6.2.0 to 6.7.0
- [Release notes](https://github.com/mongodb/js-bson/releases)
- [Changelog](https://github.com/mongodb/js-bson/blob/main/HISTORY.md)
- [Commits](mongodb/js-bson@v6.2.0...v6.7.0)

Updates `mongodb` from 6.3.0 to 6.5.0
- [Release notes](https://github.com/mongodb/node-mongodb-native/releases)
- [Changelog](https://github.com/mongodb/node-mongodb-native/blob/main/HISTORY.md)
- [Commits](mongodb/node-mongodb-native@v6.3.0...v6.5.0)

---
updated-dependencies:
- dependency-name: bson
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: driver
- dependency-name: mongodb
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: driver
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label May 3, 2024
Copy link
Contributor Author

dependabot bot commented on behalf of github May 6, 2024

Superseded by #725.

@dependabot dependabot bot closed this May 6, 2024
@dependabot dependabot bot deleted the dependabot/npm_and_yarn/driver-d3fdd0516a branch May 6, 2024 04:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants