Announcing 1.24.0 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.
libbson
New Features:
- Add extended JSON helpers for top-level BSON arrays
bson_array_as_canonical_extended_json
andbson_array_as_relaxed_extended_json
.
Language Standard Support:
- C89 support has been dropped. C99 is the default tested C standard.
Platform Support:
- Support for macOS 10.14 will be dropped in an upcoming release.
- Support for Ubuntu 14.04 will be dropped in an upcoming release.
- Support for Debian 8.1 will be dropped in an upcoming release.
libmongoc
New Features:
- Support MongoDB server version 7.0.
- Support updated Queryable Encryption protocol.
- Introduces backwards breaking changes to the Queryable Encryption protocol. Using Queryable Encryption now requires MongoDB server version 7.0+.
- Support new Queryable Encryption features.
- Add
mongoc_client_encryption_create_encrypted_collection
to automatically create data encryption keys when creating a new encrypted collection.
- Add
- Support new security features.
- Add ability to fetch KMS credentials automatically from Azure, GCP, and AWS environments.
- Support authentication with KMS AWS temporary credentials.
- Cache fetched AWS credentials.
- Support AWS IAM Roles for service accounts, EKS in particular.
- Retry operations if the connection handshake fails.
- Add index creation helper:
mongoc_collection_create_indexes_with_opts
.
Fixes:
- Fix default applied credentials for Kerberos with SSPI on Windows.
- Fix possible overcounting in Performance Counters used by
mongoc-stat
.
Language Standard Support:
- C89 support has been dropped. C99 is the default tested C standard.
Platform Support:
- Support for macOS 10.14 will be dropped in an upcoming release.
- Support for Ubuntu 14.04 will be dropped in an upcoming release.
- Support for Debian 8.1 will be dropped in an upcoming release.
Build Configuration:
- The
ENABLE_BSON
configure-time option has been removed. Build scripts that
usedENABLE_BSON=SYSTEM
should be updated to useUSE_SYSTEM_LIBBSON=TRUE
.
If the build script needs to support building arbitrary versions of the C
driver, add bothENABLE_BSON=SYSTEM
andUSE_SYSTEM_LIBBSON=TRUE
.
Links:
Thanks to everyone who contributed to this release.
- Kevin Albertson
- Ezra Chung
- Colby Pike
- Gil Alon
- Kyle Kloberdanz
- Jeremy Mikola
- Andreas Braun
- Kondaiah Valagonda
- Joshua Siegel
- Roberto C. Sánchez
- Romain Geissler @ Amadeus
- bisht2050
- Adrian Dole
- Jeroen Ooms
- Jean-Marc Le Roux
- gopukrishnasIBM
- Charles Pritchard