Releases: mongodb/mongo-cxx-driver
Release list
MongoDB C++11 Driver r4.5.3
Fixed
- Use exact match for file ID in GridFS methods CVE-2026-88034
See the full list of changes in Jira.
Feedback
To report a bug or request a feature, please open a ticket in the MongoDB issue management tool Jira:
- Create an account and login.
- Navigate to the CXX project
- Click
Create.
Signature Verification
Release artifacts may be verified by using the accompanying detached signature (.asc) and the cpp-driver public key obtained from https://pgp.mongodb.com.
MongoDB C++11 Driver r4.5.2
Fixed
- Validate key lengths. CVE-2026-84970
- Validate before casting length in
from_json. CVE-2026-84966
See the full list of changes in Jira.
Feedback
To report a bug or request a feature, please open a ticket in the MongoDB issue management tool Jira:
- Create an account and login.
- Navigate to the CXX project
- Click
Create.
Signature Verification
Release artifacts may be verified by using the accompanying detached signature (.asc) and the cpp-driver public key obtained from https://pgp.mongodb.com.
MongoDB C++11 Driver r4.5.1
Fixed
- Validate database and collection name arguments against "." and NUL bytes. (CVE-2026-81522)
See the full list of changes in Jira.
Feedback
To report a bug or request a feature, please open a ticket in the MongoDB issue management tool Jira:
- Create an account and login.
- Navigate to the CXX project
- Click
Create.
Signature Verification
Release artifacts may be verified by using the accompanying detached signature (.asc) and the cpp-driver public key obtained from https://pgp.mongodb.com.
MongoDB C++11 Driver r4.5.0
Removed
- Support for Visual Studio 2015 (EOL since Oct 2025). Use Visual Studio 2017 15.9 (MSVC 19.16.27023) or newer.
Added
- Support appending client handshake metadata after initialization and per-client/pool. This is useful for projects wrapping the C++ driver to self-identify.
See the full list of changes in Jira.
Feedback
To report a bug or request a feature, please open a ticket in the MongoDB issue management tool Jira:
- Create an account and login.
- Navigate to the CXX project
- Click
Create.
Signature Verification
Release artifacts may be verified by using the accompanying detached signature (.asc) and the cpp-driver public key obtained from https://pgp.mongodb.com.
Note
2026-08-26: the attached release tarballs were updated to remove dotfiles produced by macOS reported in CXX-3563.
MongoDB C++11 Driver r4.4.1
Changed
- Bump the minimum required C Driver version to 2.3.3.
See the full list of changes in Jira.
Feedback
To report a bug or request a feature, please open a ticket in the MongoDB issue management tool Jira:
- Create an account and login.
- Navigate to the CXX project
- Click
Create.
Signature Verification
Release artifacts may be verified by using the accompanying detached signature (.asc) and the cpp-driver public key obtained from https://pgp.mongodb.com.
MongoDB C++11 Driver r4.4.0
Important
This is the first release supporting a stable ABI for the bsoncxx and mongocxx libraries.
- The stable ABI is declared under the
v1namespace of the bsoncxx and mongocxx libraries. - The unstable ABI declared under the
v_noabinamespace is still supported. - Root namespace redeclarations (e.g.
bsoncxx::document::value) are recommended when ABI stability is not a requirement. These redeclarations will be updated to the latest ABI version equivalents in an upcoming API major release.
See ABI Versioning for more information.
Fixed
- Include of
v1/text_options.hpp(normal header) byoptions/text-fwd.hpp(forward header). - Include of v_noabi macro guard headers by
text_options.hpp(v1).
Deprecated
- Support for MongoDB Server 4.2.
Changed
- Stable ABI (v1) is now officially supported for both bsoncxx and mongocxx libraries.
- The soversion for both bsoncxx and mongocxx libraries is now set to
1. - Library filenames now include the ABI version number, e.g.
libbsoncxx1.so.4.4.0. - pkg-config config filenames now include the ABI version number, e.g.
libbsoncxx1.pc. - CMake package config filenames now use
camelCase, e.g.bsoncxxConfig.cmake. - Bump the minimum required C Driver version to 2.3.1.
Added
- Support for the "readConcern" option field to "delete", "insert", "replace", "bulkWrite", "findOneAnd*", "count", and "distinct" operations.
- Support for
MONGODB-OIDCauthMechanism. - Support for client bulk write API (
mongocxx::client_bulk_write).- Unlike collection bulk write (
mongocxx::bulk_write), client bulk write supports writes across more than one collection and can group inserts, updates, and deletes in the same network payload. - Requires MongoDB Server 8.0 or newer.
- See:
- Unlike collection bulk write (
See the full list of changes in Jira.
Feedback
To report a bug or request a feature, please open a ticket in the MongoDB issue management tool Jira:
- Create an account and login.
- Navigate to the CXX project
- Click
Create.
Signature Verification
Release artifacts may be verified by using the accompanying detached signature (.asc) and the cpp-driver public key obtained from https://pgp.mongodb.com.
MongoDB C++11 Driver r4.3.1
Fixed
- Do not set
upsert: truein "findOneAnd*" operations when the option is explicitly set tofalse(regression in 4.2.0).
See the full list of changes in Jira.
Feedback
To report a bug or request a feature, please open a ticket in the MongoDB issue management tool Jira:
- Create an account and login.
- Navigate to the CXX project
- Click
Create.
Signature Verification
Release artifacts may be verified by using the accompanying detached signature (.asc) and the cpp-driver public key obtained from https://pgp.mongodb.com.
MongoDB C++11 Driver r4.3.0
Fixed
- Added missing subscript operators for class types declared in
bsoncxx::vector::iterators.
Deprecated
- Support for Visual Studio 2015 (EOL since Oct 2025). Use Visual Studio 2017 or newer.
Changed
- Bump the minimum required C Driver version to 2.3.0.
Added
- Added support for MongoDB's Intelligent Workload Management (IWM) and ingress connection rate limiting features. The driver now gracefully handles write-blocking scenarios and optimizes connection establishment during high-load conditions to maintain application availability.
- Supported on all commands.
- Custom application retry logic may need to be adjusted to avoid retrying too long.
- Upgrade is recommended to avoid impacts of server changes related to overload errors.
- If not upgrading, custom application retry logic may need to be adjusted to handle higher rates of overload errors.
- Add URI option
maxAdaptiveRetriesto configure the maximum number of retries for operations that fail with aSystemOverloadedError(default:2). - Add URI option
enableOverloadRetargetingto control whether retries ofSystemOverloadedErrorwill attempt to use a different server (default:false). - These features will be functional with MongoDB Atlas Server Version 9.0 and above.
- Added support for the "readConcern" option field to "find" and "update" operations.
See the full list of changes in Jira.
Feedback
To report a bug or request a feature, please open a ticket in the MongoDB issue management tool Jira:
- Create an account and login.
- Navigate to the CXX project
- Click
Create.
Signature Verification
Release artifacts may be verified by using the accompanying detached signature (.asc) and the cpp-driver public key obtained from https://pgp.mongodb.com.
MongoDB C++11 Driver r4.2.0
Important
This release removes and changes the exports of many unstable ABI symbols.
As a reminder, recompilation is required to link with a new release of the unstable ABI for mongo-cxx-driver libraries.
Added
- Experimental support for stable ABI interfaces under the
v1namespace for both bsoncxx and mongocxx libraries. - To support incremental migration, the following entities are defined as equivalent to their renamed counterparts.
bsoncxx::types::id: equivalent tobsoncxx::type.bsoncxx::types::binary_subtype: equivalent tobsoncxx::binary_sub_type.bsoncxx::types::view: equivalent tobsoncxx::types::bson_value::view.bsoncxx::types::value: equivalent tobsoncxx::types::bson_value::value.type_view()inbsoncxx::document::elementandbsoncxx::array::element: equivalent toget_value().type_value()inbsoncxx::document::elementandbsoncxx::array::element: equivalent toget_owning_value().
- Experimental support for In-Use Encryption Text Indexes (
mongocxx::v1::text_options). - Change stream helpers for convenient iteration (
mongocxx::v1::change_stream::nextandmongocxx::v1::change_stream::try_next).
Changed
Important
This release provides an experimental stable ABI for bsoncxx and mongocxx.
- For consistency with the library and package filenames of MongoDB C Driver 2.0.0 and newer:
- CMake package config files now use the
<name>Config.cmakeand<name>ConfigVersion.cmakepattern. (Old:<name>-config.cmakeand<name>-config-version.cmake)
- CMake package config files now use the
- CMake 3.16.0 or newer is required when
ENABLE_TESTS=ONfor compatibility with the updated Catch2 library version (3.7.0 -> 3.8.1). - Minimum supported compiler versions to build from source are updated to the following:
- GCC 8.1 (from GCC 4.8.2).
- Users on RHEL 7 may consult Red Hat's "Hello World - installing GCC on RHEL 7" or "How to install GCC 8 and Clang/LLVM 6 on Red Hat Enterprise Linux 7" for instructions on how to obtain GCC 8 or newer.
- Clang 3.8 (from Clang 3.5).
- Apple Clang 13.1 with Xcode 13.4.1 (from Apple Clang 5.1 with Xcode 5.1).
- MSVC 19.0.24210 with Visual Studio 2015 Update 3 (from MSVC 19.0.23506 with Visual Studio 2015 Update 1).
- GCC 8.1 (from GCC 4.8.2).
mongocxx::v_noabi::instance::~instance()no longer skips callingmongoc_cleanup()when compiled with ASAN enabled.- See google/sanitizers#89 for context.
- Bump the minimum required C Driver version to 2.2.3.
Deprecated
mongocxx::v_noabi::instance::current()is "for internal use only". Theinstanceconstructor(s) should be used instead.- Creating the
instanceobject in the scope ofmain(), or in an appropriate (non-global) scope such that its (non-static) lifetime is valid for the duration of all other mongocxx library operations, is recommended over the following workarounds. - If there is only one call to
current()present within an application, it may be replaced with a static local variable:// Before: mongocxx::instance::current(); // After: static mongocxx::instance instance; // Only ONE instance object!
- If there are multiple calls to
current()present within an application, they may be replaced with a call to a user-defined function containing the static local variable:mongocxx::instance& mongocxx_instance() { static mongocxx::instance instance; // Only ONE instance object! return instance; }
- Creating the
- These following entities will be renamed (and removed) in an upcoming major release. To support incremental migration, both old and new names are still provided.
bsoncxx::type->bsoncxx::types::id.bsoncxx::binary_sub_type->bsoncxx::types::binary_subtype.bsoncxx::types::bson_value::view->bsoncxx::types::viewbsoncxx::types::bson_value::value->bsoncxx::types::valueget_value()->type_view()inbsoncxx::document::elementandbsoncxx::array::element.get_owning_value()->type_value()inbsoncxx::document::elementandbsoncxx::array::element.
Removed
- Support for MongoDB Server 4.2.
- Support for macOS 11 and macOS 12 (deprecated in 4.1.0).
Fixed
- Do not throw when comparing
mongocxx::result::insert_manywith non-ObjectID IDs.
See the full list of changes in Jira.
Feedback
To report a bug or request a feature, please open a ticket in the MongoDB issue management tool Jira:
- Create an account and login.
- Navigate to the CXX project
- Click
Create.
Signature Verification
Release artifacts may be verified by using the accompanying detached signature (.asc) and the cpp-driver public key obtained from https://pgp.mongodb.com.
MongoDB C++11 Driver r4.1.4
Changed
- Bump the auto-downloaded C Driver version to 2.1.2.
See the full list of changes in Jira.
Feedback
To report a bug or request a feature, please open a ticket in the MongoDB issue management tool Jira:
- Create an account and login.
- Navigate to the CXX project
- Click
Create.
Signature Verification
Release artifacts may be verified by using the accompanying detached signature (.asc) and the cpp-driver public key obtained from https://pgp.mongodb.com.