Releases: mongodb/mongo-c-driver
mongo-c-driver 2.2.0
Announcing 2.2.0 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
Improvements
- Increase resolution of
bson_get_monotonic_timeon Windows.
Deprecated
- Support for macOS 11 (EOL since September 2023) and macOS 12 (EOL since September 2024).
Removed
- Support for Visual Studio 2015 (EOL since October 2025). Use Visual Studio 2017 or newer.
libmongoc
New Features
MONGODB-OIDCauthentication mechanism.- Support a custom callback with
mongoc_client_set_oidc_callbackandmongoc_client_pool_set_oidc_callback. - Support Azure environment with property
environment:azure. - Support GCP environment with property
environment:gcp. - Kubernetes environment is not-yet supported.
- Support a custom callback with
- Add features to
mongoc_bulkwrite_t:- Add
mongoc_bulkwrite_is_acknowledged. - Add
mongoc_bulkwriteresult_serverid. - Support Queryable Encryption.
- Add
- Support text indexes for Queryable Encryption:
- Add
mongoc_client_encryption_encrypt_text_opts_t. - Substring, prefix and suffix search are in preview and should be used for experimental workloads only. These features are unstable and their security is not guaranteed until released as Generally Available (GA). The GA version of these features may not be backwards compatible with the preview version
- Add
- Support TLS v1.3 with Windows Secure Channel.
Fixed
- Do not try to resume when iterating a closed change stream.
Notes
- Raise required version of libmongocrypt from 1.13.0 to 1.15.0 to support In-Use Encryption (corresponds to the CMake option:
ENABLE_CLIENT_SIDE_ENCRYPTION).
Deprecated
- Support for macOS 11 (EOL since September 2023) and macOS 12 (EOL since September 2024).
Removed
- Support for Visual Studio 2015 (EOL since October 2025). Use Visual Studio 2017 or newer.
Links:
Thanks to everyone who contributed to this release.
- Kevin Albertson
- Connor MacDonald
- Julia Garland
- Ezra Chung
- Adrian Dole
- Colby Pike
- Roberto C. Sánchez
- shubhamhii
mongo-c-driver 2.1.2
Announcing 2.1.2 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
No changes since 2.1.1. Version incremented to match the libmongoc version.
libmongoc
Fixes
- Fix write command options handling.
Links:
Thanks to everyone who contributed to this release.
- Ezra Chung
- Kevin Albertson
mongo-c-driver 1.30.6
Announcing 1.30.6 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
No changes since 1.30.5. Version incremented to match the libmongoc version.
libmongoc
Fixes:
- Fix write command options handling.
Links:
Thanks to everyone who contributed to this release.
- Ezra Chung
- Kevin Albertson
mongo-c-driver 2.1.1
Announcing 2.1.1 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
No changes since 2.1.0. Version incremented to match the libmongoc version.
libmongoc
Fixes
- Do not propagate
-fPICin CMake targets. - Apply write command behavior to
mongoc_collection_create_indexes_with_opts. - Omit
saslSupportedMechsin single-threaded monitoring commands.
Links:
Thanks to everyone who contributed to this release.
- Julia Garland
- Roberto C. Sánchez
mongo-c-driver 2.1.0
Announcing 2.1.0 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
Fixes
- The uninstall script for Windows is fixed so it no longer "succeeds" with a non-zero
%ERRORLABEL%value. - The uninstall script for non-Windows environments now calls
find "$dir" -maxdepth 1instead ofls --almost-all "$dir"when detecting non-empty directories to fix macOS compatibility.
Changed
- The CMake project now sets a CMake policy max version of
4.0(previously unset).
Removed
- Support for Debian 9 and Debian 10.
libmongoc
Fixes
- Windows Secure Channel is fixed to support newer signatures to verify client certificates.
- Replace use of
rand()with thread-safe alternatives. - The uninstall script for Windows is fixed so it no longer "succeeds" with a non-zero
%ERRORLABEL%value. - The uninstall script for non-Windows environments now calls
find "$dir" -maxdepth 1instead ofls --almost-all "$dir"when detecting non-empty directories to fix macOS compatibility.
Improvements
- Remove unhelpful long-lived buffers to reduce memory usage.
- Improve error messages produced by Windows APIs.
Notes
- The minimum supported MongoDB Server version is raised from 4.0 to 4.2. This is in accordance with MongoDB Software Lifecycle Schedules.
Changes
- The CMake project now sets a CMake policy max version of
4.0(previously unset).
Removed
- Support for Debian 9 and Debian 10.
Links:
Thanks to everyone who contributed to this release.
- Kevin Albertson
- Ezra Chung
- Colby Pike
- Adrian Dole
- Azat Khuzhin
- Jeroen Ooms
- Roberto C. Sánchez
- Micah Scott
mongo-c-driver 2.0.2
Announcing 2.0.2 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
Fixes:
- Various fixes have been applied to the
bson_validatefamily of functions,
with some minor behavioral changes.- Previously accepted invalid UTF-8 will be rejected when
BSON_VALIDATE_UTF8
is specified. - The scope document in a deprecated "code with scope" element is now
validated with a fixed set of rules and is treated as an opaque JavaScript
object. - A document nesting limit is now enforced during validation.
- Previously accepted invalid UTF-8 will be rejected when
libmongoc
Fixes:
- Fix message of
bson_strerror_ron Windows. - Fix memory leaks with Windows Secure Channel.
- Fix loading PKCS#8 RSA keys with Windows Secure Channel.
Links:
Thanks to everyone who contributed to this release.
- Kevin Albertson
- Colby Pike
mongo-c-driver 1.30.5
Announcing 1.30.5 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
Fixes:
- Various fixes have been applied to the
bson_validatefamily of functions,
with some minor behavioral changes.- Previously accepted invalid UTF-8 will be rejected when
BSON_VALIDATE_UTF8
is specified. - The scope document in a deprecated "code with scope" element is now
validated with a fixed set of rules and is treated as an opaque JavaScript
object. - A document nesting limit is now enforced during validation.
- Previously accepted invalid UTF-8 will be rejected when
libmongoc
Fixes:
- Fix message of
bson_strerror_ron Windows. - Fix memory leaks with Windows Secure Channel.
- Fix loading PKCS#8 RSA keys with Windows Secure Channel.
Links:
Thanks to everyone who contributed to this release.
- Kevin Albertson
- Colby Pike
mongo-c-driver 2.0.1
Announcing 2.0.1 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
Fixes:
- Fix CMake configure error on macOS with CMake 4.
libmongoc
Fixes:
- Fix username handling for MONGODB-X509 authentication when C driver is configured to use Secure Transport (CMake option
ENABLE_SSL=DARWIN) or Secure Channel (CMake optionENABLE_SSL=WINDOWS). - Do not set empty partial result on client error for
mongoc_bulkwrite_execute.
Links:
Thanks to everyone who contributed to this release.
- Kevin Albertson
mongo-c-driver 1.30.4
Announcing 1.30.4 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
No changes since 1.30.3. Version incremented to match the libmongoc version.
libmongoc
Fixes:
- Fix username handling for MONGODB-X509 authentication when C driver is configured to use Secure Transport (CMake option
ENABLE_SSL=DARWIN) or Secure Channel (CMake optionENABLE_SSL=WINDOWS). - Do not set empty partial result on client error for
mongoc_bulkwrite_execute.
Links:
Thanks to everyone who contributed to this release.
- Kevin Albertson
mongo-c-driver 1.30.3
Announcing 1.30.3 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
Fixes:
- Fix CMake configure error on macOS with CMake 4.
New Features:
-
In anticipation of the 2.0 release of mongo-c-driver, new CMake packages and
imported targets have been defined (for bothbsonandmongoc). To import
bsonwith the new names, callfind_packagefor thebsonpackage. The new
imported targets are namedbson::static,bson::shared, andbson::bson
(which points to either the static or the shared library, depending on an
import-time configuration option).The new package and target names will remain unchanged when upgrading to the
2.0 release, allowing consumers to support both major versions without
modifying their CMake project. The current imported target names will be
removed from the 2.0 release, and should not be used for
forward-compatibility.
libmongoc
New Features:
-
In anticipation of the 2.0 release of mongo-c-driver, new CMake packages and
imported targets have been defined (for bothbsonandmongoc). To import
mongocwith the new names, callfind_packagefor themongocpackage. The
new imported targets are namedmongoc::static,mongoc::shared, and
mongoc::mongoc(which points to either the static or the shared library,
depending on an import-time configuration option).The new package and target names will remain unchanged when upgrading to the
2.0 release, allowing consumers to support both major versions without
modifying their CMake project. The current imported target names will be
removed from the 2.0 release, and should not be used for
forward-compatibility.Programs that link to BSON libraries directly should also use the new target
namesbson::static,bson::shared, orbson::bson.
Links:
Thanks to everyone who contributed to this release.
- Kevin Albertson
- Ezra Chung
- Colby Pike