Releases: mongodb/mongo-c-driver
mongo-c-driver 1.2.4
It is my pleasure to announce the MongoDB C Driver 1.2.4. This release fixes a
security vulnerability: when a mongoc_client_t uses SSL and is disconnected, it
failed to re-verify the server certificate after reconnecting. This flaw affects
single clients, not pooled ones.
Thanks to everyone who contributed to the development of this release.
- A. Jesse Jiryu Davis
- Hannes Magnusson
Peace,
-- A. Jesse Jiryu Davis
mongo-c-driver 1.3.3
It is my pleasure to announce MongoDB C Driver 1.3.3. This fixes a bug where
a slightly-oversized bulk write operation was not split into batches; instead,
it was sent whole to the server, which rejected it.
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.2
It is my pleasure to announce MongoDB C Driver 1.3.2. This is a bugfix release:
- A socket is properly discarded after a network error from a command.
- mongoc_database_get_collection now copies the database's read preferences,
read concern, and write concern, instead of copying the client's. - mongoc_cursor_t's private struct now allows a negative limit.
Thanks to everyone who contributed to this release.
- A. Jesse Jiryu Davis
- Jeremy Mikola
- Hannes Magnusson
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.1
It is my pleasure to announce MongoDB C Driver 1.3.1. This is a bugfix release:
- mongoc_client_get_gridfs now copies the client's read preferences, read
concern, and write concern to the newly created mongoc_gridfs_t. Before
this fix, GridFS operations were always executed with the default config:
data was read from the primary, with the read concern level "local", and
written with write concern "acknowledged". Now, if you have configured any
of these options on the mongoc_client_t, they are respected by the
mongoc_gridfs_t. - CMakeLists.txt now includes and installs the pkg-config files.
Thanks to everyone who contributed to this release.
- A. Jesse Jiryu Davis
- Hannes Magnusson
- Christopher Wang
- Jean-Bernard Jansen
- Jeremy Mikola
- Jeroen Ooms
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.0
It is my pleasure to announce to you the release of the MongoDB C Driver 1.3.0.
Changes since the the release candidate 1.3.0-rc0:
- Fix a cursor bug introduced on big-endian platforms in 1.3.0-beta0.
- Improve documentation for mongoc_host_list_t.
- Move private mongoc_host_list_t functions from public header.
- Refactor the build system to declare library version in one place.
All new features and changes since the previous stable release, 1.2.1:
- If the driver is compiled without SSL support but a URI with "ssl=true"
is passed to mongoc_client_new, mongoc_client_new_from_uri, or
mongoc_client_pool_new, the function logs an error and returns NULL. Before,
the driver would attempt a non-SSL connection. - 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
- 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
- New functions to copy database and collection handles:
- mongoc_collection_copy
- mongoc_database_copy
- 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. - Configurable wait time on tailable cursors with MongoDB 3.2:
- mongoc_cursor_get_max_await_time_ms
- mongoc_cursor_set_max_await_time_ms
- Use electionId to detect a stale replica set primary during a network split.
- Disconnect from replica set members whose "me" field does not match the
connection address. - The client side matching feature, mongoc_matcher_t and related functions,
are deprecated and scheduled for removal in version 2.0. - New CMake options ENABLE_SSL, ENABLE_SASL, ENABLE_TESTS, and ENABLE_EXAMPLES.
- Use constant-time comparison when verifying credentials.
- Combine environment's CFLAGS with configure options when building.
- Improved man page output and "whatis" entries.
There are extensive bugfixes and improvements in GridFS since 1.2.1, including:
- Handle seeking, reading, and writing past the end of a GridFS file.
- If a GridFS chunk is missing, mongoc_gridfs_file_readv sets file->error to
domain MONGOC_ERROR_GRIDFS and a new code MONGOC_ERROR_GRIDFS_CHUNK_MISSING. - Optimization for long seeks forward with mongoc_gridfs_file_seek.
Other fixes since 1.2.1:
- Memory leaks in mongoc_database_has_collection and mongoc_cursor_next.
- Report writeConcern failures from findAndModify and from legacy writes.
- 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. - Bugs and typos in tutorial examples.
Thanks to everyone who contributed to this release candidate.
- A. Jesse Jiryu Davis
- Hannes Magnusson
- Kyle Suarez
- Jose Sebastian Battig
- Matt Cotter
- Claudio Canella
- alexeyvo
- Christopher Wang
- Flavio Medeiros
- Iago Rubio
- Jeremy Mikola
- Victor Leschuk
- Jason Carey
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.2.3
This release fixes the CMake build, which I broke in the 1.2.2 release.
-- A. Jesse Jiryu Davis
mongo-c-driver 1.3.0-rc0
It is my pleasure to announce to you the first release candidate of MongoDB C
driver 1.3.0. It 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 since 1.3.0-beta0:
- If the driver is compiled without SSL support but a URI with "ssl=true"
is passed to mongoc_client_new, mongoc_client_new_from_uri, or
mongoc_client_pool_new, the function logs an error and returns NULL. Before,
the driver would attempt a non-SSL connection. - New functions to copy database and collection handles:
- mongoc_collection_copy
- mongoc_database_copy
- If a GridFS chunk is missing, mongoc_gridfs_file_readv sets file->error to
domain MONGOC_ERROR_GRIDFS and a new code MONGOC_ERROR_GRIDFS_CHUNK_MISSING. - Use electionId to detect a stale replica set primary during a network split.
- Disconnect from replica set members whose "me" field does not match the
connection address. - The client side matching feature, mongoc_matcher_t and related functions,
are deprecated and scheduled for removal in version 2.0. - New CMake options ENABLE_SSL, ENABLE_SASL, ENABLE_TESTS, and ENABLE_EXAMPLES.
- The build system is refactored to declare the current version and latest
release in one place.
Other fixes:
- Memory leaks in mongoc_database_has_collection and mongoc_cursor_next.
- Report writeConcern failures from findAndModify and from legacy writes.
Thanks to everyone who contributed to this release candidate.
- A. Jesse Jiryu Davis
- Hannes Magnusson
- Matt Cotter
- Claudio Canella
- Victor Leschuk
- Flavio Medeiros
- Christopher Wang
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.2.2
It is my pleasure to announce to you the MongoDB C driver 1.2.2.
This release fixes a rare bug where the driver can direct reads to hidden
secondaries unintentionally. It also includes fixes and improvements to the
build system.
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.0-beta0
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
mongo-c-driver 1.2.1
It is my pleasure to announce to you the MongoDB C driver 1.2.1.
This release includes critical bugfixes for SSL connections with
mongoc_client_pool_t, and for Unix domain socket connections.
The documentation is updated for a change introduced in version 1.2.0:
mongoc_client_set_ssl_opts and mongoc_client_pool_set_ssl_opts now configure
the driver to require an SSL connection to the server, even if "ssl=true" is
omitted from the MongoDB URI. Before, SSL options were ignored unless
"ssl=true" was included in the URI.
The build instructions are improved, including the steps to build with OpenSSL
on OS X El Capitan. Build errors and warnings are fixed for clang in gnu99
mode and MinGW.
Thanks to everyone who contributed to this version of libmongoc.
- A. Jesse Jiryu Davis
- Hannes Magnusson
- Tamas Nagy
Peace,
A. Jesse Jiryu Davis