Docs Menu

Docs HomeView & Analyze DataMongoDB Shell

Release Notes

On this page

  • v2.2.2
  • v2.2.1
  • v2.2.0
  • v2.1.5
  • v2.1.4
  • v2.1.3
  • v2.1.0
  • v2.0.2
  • v2.0.1
  • v2.0.0
  • v1.10.6
  • v1.10.5
  • v1.10.4
  • v1.10.3
  • v1.10.2
  • v1.10.1
  • v1.10.0
  • v1.9.1
  • v1.9.0
  • v1.8.1
  • v1.8.0
  • v1.7.1
  • v1.7.0
  • v1.6.2
  • v1.6.1
  • v1.6.0
  • v1.5.4
  • v1.5.3
  • v1.5.2
  • v1.5.1
  • v1.5.0
  • v1.4.2
  • v1.4.1
  • v1.3.1
  • v1.3.0
  • v1.2.3
  • v1.2.2
  • v1.2.1
  • v1.1.9
  • v1.1.8
  • v1.1.7
  • v1.1.6
  • v1.1.5
  • v1.1.4
  • v1.1.2
  • v1.1.1
  • v1.1.0
  • v1.0.7
  • v1.0.6
  • v1.0.5
  • v1.0.4
  • v1.0.3
  • v1.0.1
  • v1.0
  • v0.15.4
  • v0.15.3
  • v0.15.1
  • v0.14.0
  • v0.13.1
  • v0.12.1
  • v0.12.0
  • v0.11.0
  • v0.10.1
  • v0.10.0
  • v0.9.0
  • v0.8.2
  • v0.8.1
  • v0.8.0
  • v0.7.7
  • v0.6.1
  • v0.5.2
  • v0.5.0
  • v0.4.2
  • v0.4.0
  • v0.3.1
  • v0.2.2
  • Past Releases

Released March 26, 2024

Fixes a bug where connections that use OIDC workforce authentication caused an error:

  • MONGOSH-1743 - use JS Proxy for forwarding "lazy-loaded" webpack function exports.

Full release notes available on JIRA.

Released March 19, 2024

Fixes a bug in 2.2.0 where require('<module>') caused an error in script mode:

Full release notes available on JIRA.

Released March 11, 2024

Warning

This release is affected by a bug, fixed in 2.2.1, where require('<module>') caused an error in script mode.

Performance improvements:

  • MONGOSH-1605mongosh uses Node.js startup snapshots again to improve initialization performance.

  • MONGOSH-1721mongosh now defaults to --quiet in non-interactive mode. For example, using --json or loading files from the command line without also specifying --shell. Users who do not want this behavior need to specify --no-quiet.

  • MONGOSH-1720 – Script execution in non-interactive mode becomes significantly faster by replacing the underlying evaluation mechanism.

Node.js:

  • mongosh now uses version 6.5.0 of the Node.js driver.

  • NODE-5981 – Improved compliance for the Node.js driver. mongosh enters directConnection=true by default when only a single host/port is given on the command line. This ignores readPreference options and consistently applies a primaryPreferred read preference, even if a read preference is specified on the connection string or on the individual command.

OIDC functionality:

  • COMPASS-7437mongosh will not request default OIDC scopes that are not supported by the Identity Provider.

  • MONGOSH-1712 – The --tlsUseSystemCA flag now also applies to HTTP requests made to the Identity Provider, to better accommodate customers behind TLS-terminating firewalls.

Issues fixed:

  • MONGOSH-1667passwordPrompt() works as originally intended.

  • MONGOSH-1702 – No more flaky deprecation warnings showing up for macOS homebrew users.

  • MONGOSH-1617 – Piping scripts into mongosh together with custom prompts from your .mongoshrc.js works consistently now.

Full release notes available on JIRA.

Released February 19, 2024

Upgrades to Node.js version 20.11.1. Node 20.11.1 resolves security issues. For more information, see the February 2024 Node.js security release and CVE-2024-24806.

Full release notes available on JIRA.

Released February 7, 2024

  • MONGOSH-1198 - Shows the code for an error with the error response.

  • MONGOSH-1669 - Allows OIDC device auth flow without an id_ token.

  • MONGOSH-1679 - Improves error message reading from a secondary.

  • MONGOSH-1706 - Accounts for unsharded collections becoming part of the sharding catalog. This ensures forward compatibility with upcoming server versions.

Full release notes available on JIRA.

Released January 29, 2024

  • MONGOSH-1631 - Adds support for the new type field when creating search indexes for runCommand, createSearchIndex, and createSearchIndexes commands.

  • MONGOSH-1664 - Removes tests for the validate command background option.

Full release notes available on JIRA.

Released November 21, 2023

  • MONGOSH-1621 and NODE-5709 – Homebrew users who were automatically upgraded to Node.js 21 stop seeing deprecation warnings.

  • MONGOSH-1452 and NODE-5040mongosh now displays BSON objects in a format that is more consistent with other mongosh output. Also, many BSON objects now support syntax highlighting.

  • MONGOSH-1527 – You can now iterate mongosh cursors with idiomatic syntax: for (const doc of db.coll.find()) { }. Previously, mongosh only supported .forEach syntax for iteration.

Full release notes available on JIRA.

Released October 16, 2023

Important

mongosh 1.x does not address the security issues in the previous list. For improved security, upgrade to mongosh 2.0.2.

Full release notes available on JIRA.

Released September 14, 2023

Full release notes available on JIRA.

Released September 6, 2023

  • Amazon Linux 1, Debian 9, and macOS 10.14 aren't supported.

  • Red Hat Enterprise Linux (RHEL) 7, Amazon Linux 2, SUSE Linux Enterprise Server (SLES) 12, and Ubuntu 18.04 support is deprecated and might be removed in a later mongosh release.

  • If you must use Node.js 16 with mongosh, install Node.js and then install mongosh through npm. The ability to run mongosh installed with npm and use Node.js 16 might be removed during the lifetime of mongosh 2.x.

Full release notes available on JIRA.

Released August 25, 2023

  • MONGOSH-1533 - Display a notification banner when a new mongosh release is available.

  • MONGOSH-923 - Disable and hide getLastError when connecting to a cluster older than 5.1.0.

  • MONGOSH-1539 - Add support for Debian 12.

Full release notes available on JIRA.

Released August 11, 2023

Provides a programmatically accessible list of mongosh downloads that can be accessed through your application.

Released August 10, 2023

  • MONGOSH-1140 - mongosh now officially supports Amazon Linux 2023 on all architectures.

  • MONGOSH-1142 - mongosh now officially supports RHEL9 on all architectures.

  • MONGOSH-1146 - mongosh now officially supports Ubuntu 22.04 and Debian 12 on all architectures.

  • MONGOSH-1546 - mongosh now produces Linux release artifacts that support using OpenSSL 3 on arm64 architectures.

Full release notes available on JIRA.

Released July 31, 2023

Updates environment variables related to telemetry.

Full release notes available on JIRA.

Released July 28, 2023

  • Inverts and fixes passwordless-auth-mechanism check

  • MONGOSH-1495 Remove argument validation for db.killOp()

  • MONGOSH-1499 Rename configureQueryAnalyzer option to match server

  • MONGOSH-1449 Cap number of log files to 100

  • MONGOSH-1496 Do not include crypt shared library version in buildInfo

Full release notes available on JIRA.

Released June 21, 2023

  • Upgrades to Node.js version 16.20.1. Node 16.20.1 addresses security issues. For more information, see Node.js security releases.

  • MONGOSH-1286 mongosh --build-info now lists driver dependency versions.

    • You can access driver dependency versions within the shell by running the new buildInfo() function.

Full release notes available on JIRA.

Released June 14, 2023

  • MONGOSH-1469 Node driver for MongoDB 5.6.0.

  • MONGOSH-1432 Added helper for the checkMetadataConsistency command. For details, see the driver command example.

  • MONGOSH-1442 Added helpers for shard key selection:

    • db.collection.analyzeShardKey( key )

    • db.collection.configureQueryAnalyzer( { mode, sampleRate } )

Full release notes available on JIRA.

Released May 25, 2023

  • Internal improvements for reporting and monitoring.

Full release notes available on JIRA.

Released May 17, 2023

  • mongosh supports the new Queryable Encryption protocol. Starting in v1.9.0, mongosh is not compatible with MongoDB server versions earlier than 7.0 when using Queryable Encryption.

    • When using queryable encryption on pre-7.0 servers, you can decrypt encrypted data, but you cannot insert or query data.

Full release notes available on JIRA.

Released April 24, 2023

mongosh now uses version 5.3.0 of the Node.js driver.

  • MONGOSH-1304 rs.reconfig() will no longer automatically retry operations

  • MONGOSH-1413 This is the first release that uploads to PPAs for Amazon 2023 after the distro rename

Full release notes available on JIRA.

Released February 28, 2023

Autocomplete suggests completions for database level aggregation stages.

  • EJSON.stringify no longer accepts a {{strict}} option.

  • These methods are removed:

    • ObjectId.prototype.generate

    • ObjectId.prototype.getInc

    • ObjectId.prototype.get_inc

    • ObjectId.getInc

  • Code objects store a string in their .code property. Code objects do not store JavaScript functions in their .code property.

  • If an object passes a key to a database function, mongosh only sends the object's own keys to the server. mongosh does not send inherited enumerable keys to the server.

Full release notes available on JIRA.

Released February 16, 2023

  • MONGOSH-1378 Fixes connectivity issues when mongosh is installed using Homebrew.

Full release notes available on JIRA.

Released February 10, 2023

  • MONGOSH-57 Display a warning when connecting to databases that mimic MongoDB.

  • MONGOSH-545 To get the current connection string, use db.getMongo().getURI().

Full release notes available on JIRA.

Released January 9, 2023

Full release notes available on JIRA.

Released December 1, 2022

  • MONGOSH-1320: Fixes a startup bug related to Docker and similar environments.

  • MONGOSH-1050: Adds support for the convertShardKeyToHashed() helper method.

Full release notes available on JIRA.

Released September 20, 2022

Full release notes available on JIRA.

Released July 31, 2022

Fixes a potential data corruption bug in KeyVault.rewrapManyDataKey() when rotating encrypted data encryption keys backed by Azure or GCP key services.

In previous versions of mongosh, this bug occurs when an Azure-backed or GCP-backed data encryption key being rewrapped requires fetching an access token for decryption of the data encryption key.

As a result of this bug, all data encryption keys being rewrapped are replaced by new randomly generated material, destroying the original key material.

To mitigate potential data corruption, upgrade mongosh to v1.5.4 or higher before using KeyVault.rewrapManyDataKey() to rotate Azure-backed or GCP-backed data encryption keys. You should always create a backup of the key vault collection before key rotation.

Released July 29, 2022

Updates telemetry internals.

Full release notes available on JIRA.

Released July 27, 2022

mongosh now uses Node.js driver 4.8.1.

Full release notes available on JIRA.

Released July 14, 2022

Full release notes available on JIRA.

Released June 2, 2022

  • MONGOSH-1138mongosh now supports Queryable Encryption.

  • MONGOSH-1169mongosh now supports FIPS-compliant mode.

  • mongosh now uses Node.js version 16.x.

  • mongosh no longer provides per-distribution mongosh linux packages. You can still get .rpm, .deb and .tgz packages through your package manager but the naming convention may change slightly.

Full release notes available on JIRA.

Released May 17, 2022

  • MONGOSH-1139 - Adds Debian 11 support for mongosh.

  • MONGOSH-1183 - cursor.allowDiskUse() now accepts true or false.

  • MONGOSH-1204 - Adds visual identifier for Queryable Encyption collections in show collections.

  • MONGOSH-1207 - Adds Queryable Encryption helpers.

Full release notes available on JIRA.

Released May 12, 2022

Full release notes available on JIRA.

Released March 21, 2022

Released March 17, 2022

  • MONGOSH-856 - Kerberos feature parity with the legacy shell is done now, with the last command line option now also working as it did in the legacy shell.

  • MONGOSH-1013 - KMIP support for CSFLE. More specifically, you can provide per-KMS-provider TLS options when creating your CSFLE-enabled connections now.

  • MONGOSH-1151 - Support for snapshot reads, now also in mongosh.

Full release notes available on JIRA.

Released March 10, 2022

Full release notes available on JIRA.

Released February 25, 2022

  • MONGOSH-1134 - Internal bug fix required to re-enable Homebrew installation.

Full release notes available on JIRA.

Released February 24, 2022

Full release notes available on JIRA.

Released January 18, 2022

New features in this release:

  • MONGOSH-1015mongosh no longer overrides appName if it was present in the connection string.

  • MONGOSH-1073 – You can now pass BSON number objects to the legacy BSON number constructors. For example, NumberInt(NumberInt(n)) now works like it did in the legacy shell.

Full release notes available on JIRA.

Released January 11, 2022

New features in this release:

Full release notes available on JIRA.

Released December 14, 2021

Full release notes available on JIRA.

Released December 2, 2021

New features in this release:

Bug fixes in this release:

  • Fixes the way try, catch, finally works if no exception was thrown in the try block.

Full release notes available on JIRA.

Released December 1, 2021

Minor bug fixes.

Full release notes available on JIRA.

Released November 24, 2021

Minor bug fixes.

Full release notes available on JIRA.

Released November 5, 2021

New features in this release:

Full release notes available on JIRA.

Released October 28, 2021

  • Provides autocompletion for additional aggregation stages.

  • Minor bug fixes.

Full release notes available on JIRA.

Released October 7, 2021

New features in this release:

  • Adds support for the edit command and $EDITOR variable.

  • Auto-complete for databases and collections is now case-insensitive.

Full release notes available on JIRA.

Released September 22, 2021

New features in this release:

mongosh now uses the following driver versions:

Full release notes available on JIRA.

Released September 14, 2021

New features in this release:

  • You can now run sh.status() when not connected to a mongos, for example when connected to a config server.

  • db.setSecondaryOk(), mongo.setSecondaryOk(), and rs.secondaryOk() methods are reintroduced but deprecated. These methods alias to mongo.setReadPref().

  • When you enter multiline input into the shell, single-line // comments are now preserved as /* comments */ in the history entry.

  • The Aggregation Pipeline parameter is now optional for db.collection.watch(), db.watch(), and Mongo.watch().

Bug Fixes in this Release:

  • mongosh now runs aggregations with $out or $merge immediately, and not lazily once the result of the aggregation is accessed.

  • Using the legacy NumberLong() method no longer truncates numbers outside of the 32-bit range.

Full release notes available on JIRA.

Released August 12, 2021

New features in this release:

  • You can use config.set('maxTimeMS', <number>) to set a default maxTimeMS value for operations. maxTimeMS specifies a time limit in milliseconds within which the operation must complete.

    Note

    config settings persist across sessions.

  • On Windows, you can start mongosh by double-clicking on the .exe file. When you do, mongosh prompts you for a connection string to connect to your deployment.

  • The log files created by mongosh follow the format of the mongod, mongos, or mongocryptd. Meaning, the log files are newline-delimited JSON with the same set of fields used by the server.

Released August 4, 2021

New features in this release:

  • mongosh now uses version 4.1.0 of the Node.js driver, with full support for connections to load balancers and MongoDB Atlas serverless instances.

Bug fixes in this release:

  • The Timestamp() argument order is now reversed compared to previous mongosh versions.

Released July 29, 2021

Bug fixes in this release:

  • Passing the exit code to quit() works like it does in the legacy shell.

  • Instances of MaxListenersExceededWarning are no longer emitted when methods like console.log() are used in loops.

  • When an internal error in mongosh occurs, the error message points you to the log file for the current mongosh session.

  • When printing the name of a collection (such as in response to db.coll), the database name is included in the output.

Released July 21, 2021

New features in this release:

  • Adds full support for the --host flag.

  • Adds the --build-info flag which provides detailed information about the mongosh version.

  • When using Kerberos, mongosh will now make use of tokens if they are still valid. You no longer need to specify a password when using valid tokens.

Bug fixes in this release:

  • An issue that sporadically resulted in an AcquireCredentialsHandle error on Kerberos was fixed.

  • Miscellaneous other improvements.

Released July 9, 2021

New features in this release:

  • All the static methods of the Node.js driver BSON classes are now available. Specifically, you can use ObjectId.createFromTime(unixTimestampSeconds) instead of the legacy shell’s ObjectId.fromDate(dateObj).

  • When connected to an Atlas deployment, the default mongosh prompt displays Atlas instead of Enterprise.

  • The cursor referred to when using it is cleared when either db is reassigned or db.auth() / db.logout() is called.

  • Minor bug fixes and improvements.

Released July 1, 2021

New features in this release:

  • mongosh now color coordinates matching brackets.

Released June 25, 2021

New features in this release:

  • mongosh now shows the current database name in prompt by default.

Released June 22, 2021

New features in this release:

  • .tar and .zip mongosh download archives now include a parent directory.

  • Autocomplete is now aware of the --apiStrict flag. When --apiStrict is true, autocomplete only completes methods that work with your defined API version. For more information, see Stable API.

  • Snippets. An experimental feature that allows users to create custom shell extensions.

Bug fixes in this release:

  • mongosh can now connect to a replica set containing unhealthy nodes.

Released May 28, 2021

New features in this release:

  • When you run show collections, the type of collection is shown in the output.

  • Adds sh.reshardCollection() for resharding support.

  • Adds inspectCompact option to the configuration API to print each document field on its own line.

Released May 18, 2021

New features in this release:

  • When you use Ctrl+C to interrupt an operation, you interrupt operations that are running on the server, and not just local JavaScript execution.

  • .editor sessions are aggregated into one item in shell history.

  • Build and publish packages for all platforms in the current MongoDB 5.0 server support matrix.

  • Publish Windows MSI to the download center.

  • Adds a customizable REPL prompt using prompt (or your .mongoshrc.js file).

  • When running against a MongoDB 5.0 deployment, shows reasons for document validation failures.

  • Adds basic support for the --apiStrict flag.

  • New connection methods:

Released April 30, 2021

New features in this release:

  • Adds support for the db.hello() shell method and hello database command. Use these commands in place of isMaster.

  • Extends the shell customization API to allow controlling log verbosity.

  • Adds autocomplete for show and use commands. For example, show collections and use test.

Bug fixes in this release:

  • collStats now works properly on sharded collections.

Released April 23, 2021

  • New async rewriter, allowing for a much wider range of JavaScript features in the shell.

  • Connection failure response is now more prompt if a connection is deemed unlikely to succeed.

  • Adds new API for shell customization.

Released April 8, 2021

Internal improvements and various bug fixes.

Released April 1, 2021

Internal improvements.

Released March 31, 2021

New features in this release:

  • Support for loading a .mongoshrc.js file at startup. Use this file to bootstrap the shell with customizations and extended functionality.

  • Ability to load scripts from the command line.

  • Support for --eval option.

  • Support for --tlsCertificateSelector on Windows and macOS.

Bug fixes in this release:

Released March 10, 2021

New features in this release:

  • Support for the load() method.

  • Support for AWS IAM authentication.

Bug fixes in this release:

  • Autocomplete works properly when connected to secondary node.

  • db.createUser() on $external database now handles password properly.

  • Miscellaneous other improvements.

Released February 24, 2021

Minor internal improvements and bug fixes.

Released February 22, 2021

Minor internal improvements and bug fixes.

Released February 17, 2021

New features in this release:

Bug fixes in this release:

  • Running setReadConcern no longer reverses db.auth() authentication operations.

  • Pressing the backspace key in the password prompt no longer adds an asterisk, and now behaves as expected.

  • Running UUID() without a value now generates a random UUID.

Released February 3, 2021

New features in this release:

Bug fixes in this release:

  • mongosh no longer fails when connecting to a node in the STARTUP2 state.

  • mongosh now properly displays startup warnings.

  • explain() on aggregations now return accurate and complete results.

Released November 30, 2020

New features in this release:

Bug fixes and miscellaneous updates in this release:

  • Remove support for deprecated 3.6 CRUD methods (insert(), remove(), save(), and update()).

  • Fix an issue with loading JavaScript files into mongosh.

  • Fix an issue where when inserting many documents via a for loop, the loop would abort before all documents were inserted.

  • Fix issue with output when printing result of a cursor.

  • Update the Node REPL to use Node version 14.

Released November 11, 2020

  • Autocomplete now works properly when connected to a MongoDB 4.4.1 deployment.

  • The sh.status() method now outputs correctly in the browser shell.

Released October 12, 2020

  • Adds support for replica set management methods.

  • Adds support for sharded cluster management methods.

Released October 1, 2020

  • Adds support for collection names with a dot. For example, to query a collection named my.collection, you can run:

    db.my.collection.findOne()

Released September 15, 2020

Released September 14, 2020

This release adds support for:

  • New cursor methods

  • Query planCache methods

  • Error helper methods

  • The following helper commands:

    • show users

    • show profile

    • show logs

    • show log[<name>]

This release includes an .rpm artifact which can be downloaded from the MongoDB Download Center.

Whenever a command's output includes { ok: 0 }, mongosh throws an exception and does not return the raw output from the server.

The legacy mongo shell error handling is not consistent between commands. mongosh standardizes the user-facing behavior for a more consistent experience.

  • MONGOSH-323: getUser() userId field is outputted as binary.

  • MONGOSH-337: Linux tarball is not gzipped.

  • MONGOSH-341: Wrong values with NumberLong for numbers > Number.MAX_SAFE_INTEGER. As a result of this fix, values passed to NumberLong and NumberDecimal must be strings.

    Important

    The fix for MONGOSH-341 is a breaking change when compared to behavior in the legacy mongo shell.

  • MONGOSH-346: Ctrl+C does not terminate the currently running command in the shell.

    Note

    Ctrl+C terminates the process in the shell, but does not terminate the process on the MongoDB server.

Released August 31, 2020

This release adds support for the following APIs:

  • Credentials are now properly redacted in logging and history.

For information on past releases, refer to mongosh Releases on GitHub.

←  Retrieve Shell Logsmongosh Help →