-
-
Notifications
You must be signed in to change notification settings - Fork 4.8k
refactor: upgrade mongodb from 4.6.0 to 4.7.0 #8083
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
Conversation
Snyk has created this PR to upgrade mongodb from 4.6.0 to 4.7.0. See this package in npm: https://www.npmjs.com/package/mongodb See this project in Snyk: https://app.snyk.io/org/acinader/project/21343059-02d9-4182-87d7-718a44b181ef?utm_source=github&utm_medium=referral&page=upgrade-pr
I will reformat the title to use the proper commit message syntax. |
Codecov Report
@@ Coverage Diff @@
## alpha #8083 +/- ##
==========================================
+ Coverage 94.18% 94.20% +0.02%
==========================================
Files 182 182
Lines 13720 13720
==========================================
+ Hits 12922 12925 +3
+ Misses 798 795 -3
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
Easy test fix that needs to be done here... |
🎉 This change has been released in version 5.3.0-alpha.22 |
🎉 This change has been released in version 5.4.0-beta.1 |
🎉 This change has been released in version 5.4.0-alpha.1 |
🎉 This change has been released in version 5.4.0 |
🎉 This change has been released in version 5.4.0 |
Snyk has created this PR to upgrade mongodb from 4.6.0 to 4.7.0.
ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.
Release notes
Package name: mongodb
The MongoDB Node.js team is pleased to announce version 4.7.0 of the mongodb package! Happy MongoDB World Day!
Release Highlights
Support for ZSTD Compression
zstd compression is now supported by the NodeJS driver. To enable zstd compression, add it as a dependency in your project:
npm install –save @ mongodb-js/zstd
. The add the option to your URI options:mongodb://host:port/db?compressors=zstd
.Improved Connection Storm Avoidance
The Node driver has improved connection storm avoidance by limiting the number of connections that the driver will attempt to open to each server at a time. The number of concurrent connection attempts is set to 2 by default, but can be configured with a new MongoClient argument,
maxConnecting
. The following code example creates a new MongoClient that configuresmaxConnecting
to 5.Expanded Change Stream Events
The collection.watch function now supports a new option,
showExpandedEvents
. WhenshowExpandedEvents
is enabled, change streams will report the following events on servers 6.0 and later:createIndexes
dropIndexes
modify
create
shardCollection
On servers 6.1.0 and later,
showExpandedEvents
will also show change stream events for the following commands:reshardCollection
refineCollectionShardKey
As an example, the following code creates a change stream that has expanded events enabled on a collection:
await client.connect();
const collection = client.db('example-db').collection('example-collection');
const changeStream = collection.watch([], { showExpandedEvents: true });
Change Stream Support of Pre/Post Images
Change streams now support pre and post images for update events. To enable pre and post images, the collection must be created with the
changeStreamPreAndPostImages
option enabled:Pre and post images can then be enabled on the change stream when the change stream is created:
See the documentation on pre and post images for more information: https://www.mongodb.com/docs/v6.0/changeStreams/#change-streams-with-document-pre--and-post-images.
Improved Performance in Serverless Environments
The driver now only processes the most recent server monitoring event if multiple heartbeat events are recorded in sequence before any can be processed. In serverless environments, this results in increased performance when a function is invoked after a period of inactivity as well as lower resource consumption.
Estimated Document Count uses the Count command
The 5.0 server compatible release unintentionally broke the
estimatedDocumentCount
command on views by changing the implementation from thecount
command toaggregate
and acollStats
stage. This release fixes estimatedDocumentCount on views by reverting the implementation to usecount
.Due to an oversight, the count command was omitted from the Stable API in server versions 5.0.0 - 5.0.8 and 5.1.0 - 5.3.1, so users of the Stable API with estimatedDocumentCount are recommended to upgrade their MongoDB clusters to 5.0.9 or 5.3.2 (if on Atlas) or set apiStrict: false when constructing their MongoClients.
MongoClient.connect is now optional
If an operation is run before MongoClient.connect is called by the client, the driver will now automatically connect along with that first operation. This makes the repl experience much more streamlined, going right from client construction to your first insert or find. However, MongoClient.connect can still be called manually and remains useful for learning about misconfiguration (auth, server not started, connection string correctness) early in your application's startup.
Support for Clustered Collections
Clustered Collections can now be created using the
createCollection
method in the Node driver:More information about clustered indexes can be found on the official documentation page. https://www.mongodb.com/docs/upcoming/core/clustered-collections/
Automatic Encryption Shared Library
To enable the driver to use the new Automatic Encryption Shared Library instead of using mongocryptd, pass the location of the library in the auto-encryption extra options to the
MongoClient
. Example:autoEncryption: {
keyVaultNamespace: 'encryption.__keyVault',
kmsProviders: {
local: { key: 'localKey' }
},
extraOptions: {
cryptSharedLibPath: "/path/to/mongo_crypt_v1.dylib",
},
encryptedFieldsMap: {
"default.secretCollection": {
[
{
keyId: '_id',
path: 'ssn',
bsonType: 'string',
queries: { queryType: 'equality' }
}
]
},
},
},
})
Queryable Encryption Preview
Queryable Encryption is a beta feature that enables you to encrypt data in your application before you send it over the network to MongoDB while still maintaining the ability to query the encrypted data. With Queryable Encryption enabled, no MongoDB-managed service has access to your data in an unencrypted form.
Checkout the documentation: https://www.mongodb.com/docs/upcoming/core/queryable-encryption/queryable-encryption/
Features:
Bug Fixes
Documentation
We invite you to try the mongodb library immediately, and report any issues to the NODE project.
Read more
Commit messages
Package name: mongodb
Compare
Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs