Skip to content

Releases: mongodb/mongo-c-driver

mongo-c-driver 1.5.4

30 Jan 14:58
1.5.4
88db71c
Compare
Choose a tag to compare

It is my pleasure to announce mongo-c-driver 1.5.4. This release fixes an error
in cursor iteration when a readConcern is set. Thanks to Jeremy Mikola and
Hannes Magnusson.

Peace,
-- A. Jesse Jiryu Davis

mongo-c-driver 1.5.3

11 Jan 21:37
1.5.3
60126ee
Compare
Choose a tag to compare

This release fixes a bug that prevented connecting to IPv4-only MongoDB servers
by hostname.

https://jira.mongodb.org/browse/CDRIVER-1988

The driver has reverted to its 1.5.1 behavior: it connects to MongoDB over IPv6
if given an IPv6 connection string like "mongodb://[::1]", and requires an IPv4
connection when given a hostname like "mongodb://localhost".

Peace,

A. Jesse Jiryu Davis

mongo-c-driver 1.5.2

10 Jan 19:32
Compare
Choose a tag to compare

Update: this release has been removed due to a blocker bug, CDRIVER-1988.

It is my pleasure to announce mongo-c-driver 1.5.2.

Thanks to everyone who contributed to the development of this release.

New bug fixes:

Thanks to everyone who contributed to the development of this release.

  • Hannes Magnusson
  • A. Jesse Jiryu Davis
  • Alexey Ponomarev
  • Peter Beckman
  • Rockford Wei

Peace,

--Hannes Magnusson

mongo-c-driver 1.5.1

17 Dec 18:33
1.5.1
34be381
Compare
Choose a tag to compare

It is my pleasure to announce mongo-c-driver 1.5.1. This is a bugfix release:

  • Fix SEGFAULT with performance counters on NUMA (thanks to Jonathan Wang).
  • Prevent rare assertion error in mongoc_cluster_stream_for_server.
  • Improve error messages from auth failure.
  • Escape quotes when appending CFLAGS to handshake metadata.
  • Fix OpenSSL header lookups in non-default paths.
  • Fix build failure with LibreSSL.

Thanks to everyone who contributed to the development of this release.

  • A. Jesse Jiryu Davis
  • Hannes Magnusson
  • Jeroen Ooms
  • Jonathan Wang

Peace,
-- A. Jesse Jiryu Davis

mongo-c-driver 1.5.0

27 Nov 21:47
1.5.0
8bee745
Compare
Choose a tag to compare

It is my pleasure to announce the release of mongo-c-driver 1.5.0.

New features and bug fixes:

  • MongoDB 3.4 Support
    • New URI and read preference option, "maxStalenessSeconds"
    • Set MongoDB client handshake data with mongoc_client_set_appname or
      mongoc_client_pool_set_appname.
    • writeConcern and readConcern enhancements.
    • Collation allows users to specify language-specific rules for string
      comparison when sorting documents. See the code examples for
      mongoc_client_read_command_with_opts, mongoc_collection_count_with_opts,
      mongoc_collection_find_with_opts, and mongoc_index_opt_t, as well as the
      "Setting Collation Order" section of the "Bulk Write Operations" guide.
  • mongoc_collection_count_with_opts uses the collection's read preference if
    none is passed in
  • Improved TLS support
    • Fixed LibreSSL (libssl) support
    • Added LibreSSL (libtls) support
    • Fixed Secure Channel build on VS 2010
    • OpenSSL now supports SNI (all others already do)
  • Additional features for Application Performance Monitoring:
    • mongoc_topology_description_has_writable_server
    • mongoc_topology_description_has_readable_server
    • Notifications when a server or topology description changes, and when a
      monitoring heartbeat begins and succeeds or fails.
    • mongoc_client_set_apm_callbacks can be used repeatedly to change or clear
      the list of monitoring callbacks.
  • New functions accept flexible options as a BSON document:
    • mongoc_collection_find_with_opts
    • mongoc_client_read_command_with_opts
    • mongoc_client_write_command_with_opts
    • mongoc_client_read_write_command_with_opts
    • mongoc_database_read_command_with_opts
    • mongoc_database_write_command_with_opts
    • mongoc_database_read_write_command_with_opts
    • mongoc_collection_read_command_with_opts
    • mongoc_collection_write_command_with_opts
    • mongoc_collection_read_write_command_with_opts
    • mongoc_gridfs_find_with_opts
    • mongoc_gridfs_find_one_with_opts
    • mongoc_bulk_operation_remove_one_with_opts
    • mongoc_bulk_operation_remove_many_with_opts
    • mongoc_bulk_operation_replace_one_with_opts
    • mongoc_bulk_operation_update_one_with_opts
    • mongoc_bulk_operation_update_many_with_opts
  • mongoc_collection_find is now deprecated in favor of
    mongoc_collection_find_with_opts.
  • New helper function to include read concern in one of the above function's
    options parameter: mongoc_read_concern_append.
  • mongoc_client_command no longer applies the client's read preference and
    read concern by default. Same change for mongoc_database_command and
    mongoc_collection_command.
  • mongoc_collection_count_with_opts now applies the collection's read
    preference if no read preference is provided
  • mongoc_collection_create_index and mongoc_collection_drop_index now apply
    the collection's write concern.
  • mongoc_collection_create_index_with_opts now applies the collection's
    write concern if none is specified in "opts"
  • connectTimeoutMS timer now begins after DNS resolution, and resets
    for each interface attempted (e.g., if the driver first tries IPv6,
    then IPv4).
  • New error code MONGOC_ERROR_DUPLICATE_KEY.
  • mongoc_collection_find no longer treats the "filter" key specially in
    queries - querying for a document with a key named "filter" is the same
    now as any other key.
  • The server description parameter to the following functions is "const":
    • mongoc_server_description_host
    • mongoc_server_description_id
    • mongoc_server_description_ismaster
    • mongoc_server_description_round_trip_time
    • mongoc_server_description_type
  • Exported symbols are no longer declared in seperate export files.
    This could break ABI with applications using clang, which previously
    exported symbols from the internal private ABI.
  • mongoc no longer crashes when multi roundtrip bulk operation fails.
  • Added support for the new readConcernLevel "linearizable".
  • Clients now check for misformatted "readPreferenceTags" in URI.
  • New CMake option ENABLE_TRACING allows debug output, which before had only
    been available with "configure --enable-tracing".
  • Bugfix: "PossiblePrimary"-type replicas could be selected for reads
  • Bugfixes: The random number generator used to select servers is now properly
    seeded, and secondary queries are now properly distributed according to
    localThresholdMS, not just to the lowest-latency secondary. The latency
    estimate is reset after a connection error.
  • Fix crashes in mongoc_topology_invalidate_server and
    mongoc_client_kill_cursor.
  • mongoc_collection_insert, mongoc_collection_update, mongoc_collection_remove
    consistently use domain MONGOC_ERROR_BSON, code MONGOC_ERROR_BSON_INVALID
    if passed oversized BSON, and MONGOC_ERROR_COLLECTION for other errors.
    mongoc_bulk_operation_execute continues to use MONGOC_ERROR_COMMAND for
    all errors.
  • If mongoc_client_pool_t fails to start its scanner thread in the background,
    it logs and aborts instead of silently continuing, then failing to connect.
  • The driver now updates its view of the whole topology with information from
    each new connection handshake.
  • Improved error reporting when the driver fails to reach the server, and
    correctly distinguish "connection error" and "connection timeout".

Deprecations:

  • mongoc_collection_find is deprecated for mongoc_collection_find_with_opts.

Removed configure flags:

  • --enable-experimental has been removed. All previously experimental
    features are now always on.
  • The configure option "--enable-hardening" had had no effect. It is removed
    in favor of system-wide compiler configuration.

Thanks to everyone who contributed to the development of this release.

  • A. Jesse Jiryu Davis
  • Hannes Magnusson
  • Fiona Rowan
  • Ian Boros
  • Remi Collet
  • Brian McCarthy
  • Jeroen Ooms
  • J. Rassi
  • Christoph Schwarz
  • Alexey Vorobeyev

Peace,
-- A. Jesse Jiryu Davis

mongo-c-driver 1.5.0-rc6

17 Nov 08:17
1.5.0-rc6
de43a70
Compare
Choose a tag to compare
Pre-release

It is my pleasure to announce the beta release of mongo-c-driver 1.5.0-rc6.

New features and bug fixes:

  • MongoDB 3.4 Support
    • New URI and read preference option, "maxStalenessSeconds"
    • MongoDB Handshake
    • writeConcern and readConcern enhancements
    • Collation allows users to specify language-specific rules for string
      comparison when sorting documents. See the code examples for
      mongoc_client_read_command_with_opts, mongoc_collection_count_with_opts,
      mongoc_collection_find_with_opts, and mongoc_index_opt_t, as well as the
      "Setting Collation Order" section of the "Bulk Write Operations" guide.
  • mongoc_collection_count_with_opts uses the collection's read preference if
    none is passed in
  • Improved TLS support
    • Fixed LibreSSL (libssl) support
    • Added LibreSSL (libtls) support
    • Fixed Secure Channel build on VS 2010
    • OpenSSL now supports SNI (all others already do)
  • Additional features for Application Performance Monitoring:
    • mongoc_topology_description_has_writable_server
    • mongoc_topology_description_has_readable_server
  • New functions accept flexible options as a BSON document:
    • mongoc_collection_find_with_opts
    • mongoc_client_read_command_with_opts
    • mongoc_client_write_command_with_opts
    • mongoc_client_read_write_command_with_opts
    • mongoc_database_read_command_with_opts
    • mongoc_database_write_command_with_opts
    • mongoc_database_read_write_command_with_opts
    • mongoc_collection_read_command_with_opts
    • mongoc_collection_write_command_with_opts
    • mongoc_collection_read_write_command_with_opts
    • mongoc_gridfs_find_with_opts
    • mongoc_gridfs_find_one_with_opts
  • mongoc_collection_find is now deprecated in favor of
    mongoc_collection_find_with_opts.
  • New helper function to include read concern in one of the above function's
    options parameter: mongoc_read_concern_append.
  • mongoc_client_command no longer applies the client's read preference and
    read concern by default. Same change for mongoc_database_command and
    mongoc_collection_command.
  • mongoc_collection_count_with_opts now applies the collection's read
    preference if no read preference is provided
  • mongoc_collection_create_index and mongoc_collection_drop_index now apply
    the collection's write concern.
  • mongoc_collection_create_index_with_opts now applies the collection's
    write concern if none is specified in "opts"
  • connectTimeoutMS timer now begins after DNS resolution, and resets
    for each interface attempted (e.g., if the driver first tries IPv6,
    then IPv4).
  • New error code MONGOC_ERROR_DUPLICATE_KEY.
  • mongoc_collection_find no longer treats the "filter" key specially in
    queries - querying for a document with a key named "filter" is the same
    now as any other key.
  • The server description parameter to the following functions is "const":
    • mongoc_server_description_host
    • mongoc_server_description_id
    • mongoc_server_description_ismaster
    • mongoc_server_description_round_trip_time
    • mongoc_server_description_type
  • Exported symbols are no longer declared in seperate export files.
    This could break ABI with applications using clang, which previously
    exported symbols from the internal private ABI.
  • mongoc no longer crashes when multi roundtrip bulk operation fails.
  • Added support for the new readConcernLevel "linearizable".
  • Clients now check for misformatted "readPreferenceTags" in URI.
  • New CMake option ENABLE_TRACING allows debug output, which before had only
    been available with "configure --enable-tracing".
  • Bugfix: "PossiblePrimary"-type replicas could be selected for reads
  • Bugfixes: The random number generator used to select servers is now properly
    seeded, and secondary queries are now properly distributed according to
    localThresholdMS, not just to the lowest-latency secondary.
  • mongoc_collection_insert, mongoc_collection_update, mongoc_collection_remove
    consistently use domain MONGOC_ERROR_BSON, code MONGOC_ERROR_BSON_INVALID
    if passed oversized BSON, and MONGOC_ERROR_COLLECTION for other errors.
    mongoc_bulk_operation_execute continues to use MONGOC_ERROR_COMMAND for
    all errors.
  • If mongoc_client_pool_t fails to start its scanner thread in the background,
    it logs and aborts instead of silently continuing, then failing to connect.
  • The driver now updates its view of the whole topology with information from
    each new connection handshake.
  • mongoc_client_set_apm_callbacks can be used repeatedly to change or clear
    the list of monitoring callbacks.
  • Improved error reporting when the driver fails to reach the server.

Deprecations:

  • mongoc_collection_find is deprecated for mongoc_collection_find_with_opts.

Removed configure flags:

  • --enable-experimental has been removed. All previously experimental
    features are now always on.
  • The configure option "--enable-hardening" had had no effect. It is removed
    in favor of system-wide compiler configuration.

Thanks to everyone who contributed to the development of this release.

  • A. Jesse Jiryu Davis
  • Hannes Magnusson
  • Fiona Rowan
  • Ian Boros
  • Remi Collet
  • Brian McCarthy
  • Jeroen Ooms
  • J. Rassi
  • Christoph Schwarz
  • Alexey Vorobeyev

Peace,
-- A. Jesse Jiryu Davis

mongo-c-driver 1.5.0-rc4

03 Nov 15:27
1.5.0-rc4
dcaaeeb
Compare
Choose a tag to compare
Pre-release

It is my pleasure to announce the beta release of mongo-c-driver 1.5.0.

New features and bug fixes:

  • MongoDB 3.4 Support
    • New URI and read preference option, "maxStalenessSeconds"
    • MongoDB Handshake
    • writeConcern and readConcern enhancements
    • Collation allows users to specify language-specific rules for string
      comparison when sorting documents. See the code examples for
      mongoc_client_read_command_with_opts, mongoc_collection_count_with_opts,
      mongoc_collection_find_with_opts, and mongoc_index_opt_t, as well as the
      "Setting Collation Order" section of the "Bulk Write Operations" guide.
  • mongoc_collection_count_with_opts uses the collection's read preference if
    none is passed in
  • Improved TLS support
    • Fixed LibreSSL (libssl) support
    • Added LibreSSL (libtls) support
    • Fixed Secure Channel build on VS 2010
    • OpenSSL now supports SNI (all others already do)
  • Additional features for Application Performance Monitoring:
    • mongoc_topology_description_has_writable_server
    • mongoc_topology_description_has_readable_server
  • New functions accept flexible options as a BSON document:
    • mongoc_collection_find_with_opts
    • mongoc_client_read_command_with_opts
    • mongoc_client_write_command_with_opts
    • mongoc_client_read_write_command_with_opts
    • mongoc_database_read_command_with_opts
    • mongoc_database_write_command_with_opts
    • mongoc_database_read_write_command_with_opts
    • mongoc_collection_read_command_with_opts
    • mongoc_collection_write_command_with_opts
    • mongoc_collection_read_write_command_with_opts
    • mongoc_gridfs_find_with_opts
    • mongoc_gridfs_find_one_with_opts
  • New helper function to include read concern in one of the above function's
    options parameter: mongoc_read_concern_append.
  • mongoc_client_command no longer applies the client's read preference and
    read concern by default. Same change for mongoc_database_command and
    mongoc_collection_command.
  • mongoc_collection_count_with_opts now applies the collection's read
    preference if no read preference is provided
  • mongoc_collection_create_index and mongoc_collection_drop_index now apply
    the collection's write concern.
  • mongoc_collection_create_index_with_opts now applies the collection's
    write concern if none is specified in "opts"
  • connectTimeoutMS timer now begins after DNS resolution, and resets
    for each interface attempted (e.g., if the driver first tries IPv6,
    then IPv4).
  • New error code MONGOC_ERROR_DUPLICATE_KEY.
  • mongoc_collection_find no longer treats the "filter" key specially in
    queries - querying for a document with a key named "filter" is the same
    now as any other key.
  • The server description parameter to the following functions is "const":
    • mongoc_server_description_host
    • mongoc_server_description_id
    • mongoc_server_description_ismaster
    • mongoc_server_description_round_trip_time
    • mongoc_server_description_type
  • Exported symbols are no longer declared in seperate export files.
    This could break ABI with applications using clang, which previously
    exported symbols from the internal private ABI.
  • mongoc no longer crashes when multi roundtrip bulk operation fails.
  • Added support for the new readConcernLevel "linearizable".
  • Clients now check for misformatted "readPreferenceTags" in URI.
  • New CMake option ENABLE_TRACING allows debug output, which before had only
    been available with "configure --enable-tracing".
  • Bugfix: "PossiblePrimary"-type replicas could be selected for reads
  • Bugfixes: The random number generator used to select servers is now properly
    seeded, and secondary queries are now properly distributed according to
    localThresholdMS, not just to the lowest-latency secondary.
  • mongoc_collection_insert, mongoc_collection_update, mongoc_collection_remove
    consistently use domain MONGOC_ERROR_BSON, code MONGOC_ERROR_BSON_INVALID
    if passed oversized BSON, and MONGOC_ERROR_COLLECTION for other errors.
    mongoc_bulk_operation_execute continues to use MONGOC_ERROR_COMMAND for
    all errors.
  • If mongoc_client_pool_t fails to start its scanner thread in the background,
    it logs and aborts instead of silently continuing, then failing to connect.
  • The driver now updates its view of the whole topology with information from
    each new connection handshake.
  • mongoc_client_set_apm_callbacks can be used repeatedly to change or clear
    the list of monitoring callbacks.
  • Improved error reporting when the driver fails to reach the server.

Deprecations:

  • mongoc_collection_find is deprecated for mongoc_collection_find_with_opts.

Removed configure flags:

  • --enable-experimental has been removed. All previously experimental
    features are now always on.
  • The configure option "--enable-hardening" had had no effect. It is removed
    in favor of system-wide compiler configuration.

Thanks to everyone who contributed to the development of this release.

  • A. Jesse Jiryu Davis
  • Hannes Magnusson
  • Fiona Rowan
  • Ian Boros
  • Remi Collet
  • Brian McCarthy
  • Jeroen Ooms
  • J. Rassi
  • Christoph Schwarz
  • Alexey Vorobeyev

Peace,

A. Jesse Jiryu Davis

mongo-c-driver 1.5.0-rc3

20 Oct 03:03
1.5.0-rc3
c5d211e
Compare
Choose a tag to compare
Pre-release

It is my pleasure to announce the beta release of mongo-c-driver 1.5.0-rc3.

New features and bug fixes:

  • MongoDB 3.4 Support
    -- * MaxStalenessMS
    -- * MongoDB Handshake
  • mongoc_collection_count_with_opts uses the collection's read preference if
    -- none is passed in
  • Improved TLS support
    -- * Fixed LibreSSL (libssl) support
    -- * Added LibreSSL (libtls) support
    -- * Fixed Secure Channel build on VS 2010
    -- * OpenSSL now supports SNI (all others already do)
  • Additional features for Application Performance Monitoring:
    -- * mongoc_topology_description_has_writable_server
    -- * mongoc_topology_description_has_readable_server
  • New command functions accept flexible options as a BSON document:
    -- * mongoc_client_read_command_with_opts
    -- * mongoc_client_write_command_with_opts
    -- * mongoc_client_read_write_command_with_opts
    -- * mongoc_database_read_command_with_opts
    -- * mongoc_database_write_command_with_opts
    -- * mongoc_database_read_write_command_with_opts
    -- * mongoc_collection_read_command_with_opts
    -- * mongoc_collection_write_command_with_opts
    -- * mongoc_collection_read_write_command_with_opts
  • New helper function to include read concern in one of the above function's
    -- options parameter: mongoc_read_concern_append.
  • mongoc_client_command no longer applies the client's read preference and
    -- read concern by default. Same change for mongoc_database_command and
    -- mongoc_collection_command.
  • mongoc_collection_count_with_opts now applies the collection's read
    -- preference if no read preference is provided
  • mongoc_collection_create_index and mongoc_collection_drop_index now apply
    -- the collection's write concern.
  • mongoc_collection_create_index_with_opts now applies the collection's
    -- write concern if none is specified in "opts"
  • connectTimeoutMS timer now begins after DNS resolution, and resets
    -- for each interface attempted (e.g., if the driver first tries IPv6,
    -- then IPv4).
  • New error code MONGOC_ERROR_DUPLICATE_KEY.
  • mongoc_collection_find no longer treats the "filter" key specially in
    -- queries - querying for a document with a key named "filter" is the same
    -- now as any other key.
  • The server description parameter to the following functions is "const":
    -- * mongoc_server_description_host
    -- * mongoc_server_description_id
    -- * mongoc_server_description_ismaster
    -- * mongoc_server_description_round_trip_time
    -- * mongoc_server_description_type
  • Exported symbols are no longer declared in seperate export files.
    -- This could break ABI with applications using clang, which previously
    -- exported symbols from the internal private ABI.
  • mongoc no longer crashes when multi roundtrip bulk operation fails.
  • Added support for the new readConcernLevel "linearizable".
  • Clients now check for misformatted "readPreferenceTags" in URI.
  • New CMake option ENABLE_TRACING allows debug output, which before had only
    -- been available with "configure --enable-tracing".
  • Bugfix: "PossiblePrimary"-type replicas could be selected for reads
  • The random number generator used to select servers is now properly seeded.
  • mongoc_collection_insert, mongoc_collection_update, mongoc_collection_remove
    -- consistently use domain MONGOC_ERROR_BSON, code MONGOC_ERROR_BSON_INVALID
    -- if passed oversized BSON, and MONGOC_ERROR_COLLECTION for other errors.
    -- mongoc_bulk_operation_execute continues to use MONGOC_ERROR_COMMAND for
    -- all errors.

Removed configure flags:

  • --enable-experimental has been removed. All previously experimental
    -- features are now always on.
  • The configure option "--enable-hardening" had had no effect. It is removed
    -- in favor of system-wide compiler configuration.

Thanks to everyone who contributed to the development of this release.

  • A. Jesse Jiryu Davis
  • Hannes Magnusson
  • Fiona Rowan
  • Ian Boros
  • Remi Collet
  • Brian McCarthy
  • Jeroen Ooms
  • J. Rassi
  • Christoph Schwarz
  • Alexey Vorobeyev

Peace,
-- A. Jesse Jiryu Davis

mongo-c-driver 1.3.6

18 Oct 22:54
1.3.6
ff05439
Compare
Choose a tag to compare

It is my pleasure to announce mongo-c-driver 1.3.6. This is a bugfix release:

  • Connect timeout when libmongoc is used by the MongoDB PHP Driver to connect
    -- to a replica set with one or more unresponsive members.
  • "connection timeout" and "connection error" messages were swapped.
  • "make abicheck" failed.

Thanks to everyone who contributed to the development of this release.

  • A. Jesse Jiryu Davis
  • Hannes Magnusson
  • Remi Collet

Peace,
-- A. Jesse Jiryu Davis

mongo-c-driver 1.5.0-rc2

12 Oct 02:33
e4764d0
Compare
Choose a tag to compare
Pre-release

It is my pleasure to announce the beta release of mongo-c-driver 1.5.0-rc2

New features and bug fixes:

  • MongoDB 3.4 Support
    • MaxStalenessMS
    • MongoDB Handshake
  • mongoc_collection_count_with_opts uses the collection's read preference if
    none is passed in
  • Improved TLS support
    • Fixed LibreSSL (libssl) support
    • Added LibreSSL (libtls) support
    • Fixed Secure Channel build on VS 2010
    • OpenSSL now supports SNI (all others already do)
  • Additional features for Application Performance Monitoring:
    • mongoc_topology_description_has_writable_server
    • mongoc_topology_description_has_readable_server
  • connectTimeoutMS timer now begins after DNS resolution, and resets
    for each interface attempted (e.g., if the driver first tries IPv6,
    then IPv4).
  • New error code MONGOC_ERROR_DUPLICATE_KEY.
  • mongoc_collection_find no longer treats the "filter" key specially in
    queries - querying for a document with a key named "filter" is the same
    now as any other key.
  • The server description parameter to the following functions is "const":
    • mongoc_server_description_host
    • mongoc_server_description_id
    • mongoc_server_description_ismaster
    • mongoc_server_description_round_trip_time
    • mongoc_server_description_type
  • Exported symbols are no longer declared in seperate export files.
    This could break ABI with applications using clang, which previously
    exported symbols from the internal private ABI.
  • mongoc no longer crashes when multi roundtrip bulk operation fails.
  • Added support for the new readConcernLevel "linearizable".

Removed configure flags:

  • --enable-experimental has been removed and all of its features
    are always available now
  • --enable-hardening has been removed. The flag never actually enabled
    any hardening features and has therefore been removed

Thanks to everyone who contributed to the development of this release.

  • Everyone

Farewell,
-- A. Jesse Jiryu Davis