Announcing libbson and libmongoc 1.3.0-beta0
I've just released a beta of the MongoDB C driver 1.3.0, with support for new features in the upcoming MongoDB 3.2. The driver is compatible with MongoDB 2.4 and later. Please try it out and file a ticket in Jira if you see any issues.
Links:
- libbson-1.3.0-beta0.tar.gz
- mongo-c-driver-1.3.0-beta0.tar.gz
- Issues resolved in 1.3.0-beta0
- MongoDB C Driver Documentation
New features and changes:
mongoc_collection_find_and_modify
will now apply themongoc_collection_t
'swrite_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 comparison 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:
- Potential crash in
bson_strncpy
on Windows. - 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 release.
- A. Jesse Jiryu Davis
- Hannes Magnusson
- Kyle Suarez
- Matt Cotter
- Jose Sebastian Battig
- Jeremy Mikola
- Iago Rubio
- alexeyvo
- Jeroen Ooms
- Petr Písař
- xpol