It is my pleasure to announce to you the beta of MongoDB C driver 1.3.0.
This beta includes additive ABI changes and bugfixes, and support for
the upcoming MongoDB 3.2. It is compatible with MongoDB 2.4 and later.
New features and changes:
- mongoc_collection_find_and_modify will now apply the mongoc_collection_t's
write_concern_t when talking to MongoDB 3.2. - Support for MongoDB 3.2's "readConcern" feature for queries, counts, and
aggregations. The option "readConcernLevel" is now accepted in the MongoDB
URI. New struct mongoc_read_concern_t, and functions operating on it:- mongoc_client_get_read_concern
- mongoc_client_set_read_concern
- mongoc_database_get_read_concern
- mongoc_database_set_read_concern
- mongoc_collection_get_read_concern
- mongoc_collection_set_read_concern
- mongoc_read_concern_copy
- mongoc_read_concern_destroy
- mongoc_read_concern_get_level
- mongoc_read_concern_new
- mongoc_read_concern_set_level
- mongoc_uri_get_read_concern
- Support for MongoDB 3.2's "bypassDocumentValidation" option for writes.
- New struct mongoc_bulk_write_flags_t and related functions:
- mongoc_bulk_operation_set_bypass_document_validation
- mongoc_bulk_operation_set_flags
- New struct mongoc_find_and_modify_opts_t and related functions:
- mongoc_find_and_modify_opts_new
- mongoc_find_and_modify_opts_destroy
- mongoc_find_and_modify_opts_set_sort
- mongoc_find_and_modify_opts_set_update
- mongoc_find_and_modify_opts_set_fields
- mongoc_find_and_modify_opts_set_flags
- mongoc_find_and_modify_opts_set_bypass_document_validation
- mongoc_collection_find_and_modify_with_opts
- Configurable wait time on tailable cursors with MongoDB 3.2:
- mongoc_cursor_get_max_await_time_ms
- mongoc_cursor_set_max_await_time_ms
- Support for MongoDB 3.2 wire protocol: use commands in place of OP_QUERY,
OP_GETMORE, and OP_KILLCURSORS messages. - To explain a query plan with MongoDB 3.2, you must now call the "explain"
command, instead of including the "$explain" key in a mongoc_collection_find
query. See the mongoc_collection_find documentation page for details. - Use constant-time comparision when verifying credentials
- Combine environment's CFLAGS with configure options when building.
- Improved man page output and "whatis" entries
Extensive bugfixes and improvements in GridFS, including:
- Handle seeking, reading, and writing past the end of a GridFS file.
- Better error reporting if a GridFS file has missing chunks.
- Optimization for long seeks forward with mongoc_gridfs_file_seek.
Other fixes:
- Memory leak in mongoc_database_find_collections.
- Set OP_QUERY's nToReturn from the provided limit.
- Fix compiler warnings and errors, especially with Visual Studio 2015,
GCC 4.8, and IBM XL C. - Include missing build script FindSASL2.cmake in distribution tarball
- Bugs and typos in tutorial examples
Thanks to everyone who contributed to this version of libmongoc.
- A. Jesse Jiryu Davis
- Hannes Magnusson
- Kyle Suarez
- Jose Sebastian Battig
- Jeremy Mikola
- Iago Rubio
- Matt Cotter
- alexeyvo
Peace,
A. Jesse Jiryu Davis