Skip to content

Releases: mongodb/mongo-c-driver

mongo-c-driver 1.29.0

06 Nov 19:45
1.29.0
fc82e03
Compare
Choose a tag to compare

Announcing 1.29.0 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.

libbson

Deprecated:

  • bson_string_t and associated functions are deprecated and planned for removal in a future major release.
  • Compiling with BSON_MEMCHECK defined is deprecated.
  • bson_in_range_* and bson_cmp_* functions.
  • bson_atomic_* and bson_thrd_yield functions.
  • bson_as_json and bson_array_as_json are deprecated due to producing non-portable Legacy Extended JSON. Prefer Canonical Extended JSON or Relaxed Extended JSON for portability. To continue using Legacy Extended JSON, use bson_as_legacy_extended_json and bson_array_as_legacy_extended_json.

Fixes:

  • Fix Relaxed Extended JSON encoding of dates after year 9999.

Improvements:

  • Improve performance of bson_utf8_escape_for_json

libmongoc

Improvements:

  • Retry KMS requests on transient errors.

Platform Support:

  • Support for Visual Studio 2013 is dropped.

Deprecated:

  • mongoc_client_command is deprecated and planned for removal in a future release. Use mongoc_client_command_simple instead.
  • mongoc_database_command is deprecated and planned for removal in a future release. Use mongoc_database_command_simple instead.
  • mongoc_collection_command is deprecated and planned for removal in a future release. Use mongoc_collection_command_simple instead.

Notes:

  • Raise required version of libmongocrypt to 1.12.0 to support In-Use Encryption (corresponds to the CMake option: ENABLE_CLIENT_SIDE_ENCRYPTION).
  • A future minor release will raise the minimum supported MongoDB Server version from 4.0 to 4.2. This is in accordance with MongoDB Software Lifecycle Schedules. Support for MongoDB Server 4.0 will be dropped in a future release!

Links:

Thanks to everyone who contributed to this release.

  • Kevin Albertson
  • Ezra Chung
  • Micah Scott
  • Adrian Dole
  • Andreas Braun
  • Joshua Siegel

mongo-c-driver 1.28.1

09 Oct 15:48
1.28.1
97f166d
Compare
Choose a tag to compare

Announcing 1.28.1 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.

libbson

Fixes:

  • Fix large string handling in bson_string_truncate.
  • Fix possible crash in bson_value_copy.

libmongoc

Fixes:

  • Do not return result in mongoc_bulkwritereturn_t if there are no known successful writes.
  • Validate lengths in ill-formed server responses.
  • Do not override read preference when using aggregate with $out/$merge with unscanned servers.
  • Remove unexpected warning if authSource in TXT record is overriden by URI option.
  • Fix crash when non-existent CA file configured with OpenSSL.

Links:

Thanks to everyone who contributed to this release.

  • Ezra Chung
  • Joshua Siegel
  • Kevin Albertson

mongo-c-driver 1.28.0

18 Sep 15:27
1.28.0
a463a46
Compare
Choose a tag to compare

Announcing 1.28.0 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.

libbson

New features:

  • Add bson_validate_with_error_and_offset.

Build Configuration:

  • Remove automatic ccache detection and usage (CCache.cmake).
  • Remove MONGO_USE_CCACHE (no longer applicable; see above).

libmongoc

New features:

  • Support In-Use Encryption range queries.
  • Include insert ID on result of mongoc_collection_insert_one.
  • Add new bulk write API mongoc_bulkwrite_t. Requires MongoDB 8.0. Reduces round-trips for mixed writes.
  • Add serverMonitoringMode URI option.

Improvements:

  • Improve performance of OpenSSL connection creation.
  • Improve performance when trace logging is configured (ENABLE_TRACING=ON) but disabled at runtime.
  • Prefer FIPS compliant functions for SCRAM-SHA-256 key derivation.
  • Remove required slash to delimit options in MongoDB URI (e.g. mongodb://example.com?w=1 parses the same as mongodb://example.com/?w=1).
  • Include topology description in server selection timeout errors.

Notes:

  • Bump minimum wire protocol version from 6 (MongoDB 3.6) to 7 (MongoDB 4.0).
  • Raise required version of libmongocrypt to 1.11.0 to support In-Use Encryption (corresponds to the CMake option: ENABLE_CLIENT_SIDE_ENCRYPTION).

Build Configuration:

  • Remove automatic ccache detection and usage (CCache.cmake).
  • Remove MONGO_USE_CCACHE (no longer applicable; see above).

Changed:

  • Test and example targets are excluded from the ALL target.
    • All test targets can be built using the mongo_c_driver_tests target.
    • All example targets can be built using the mongo_c_driver_examples target.
  • Use #!/usr/bin/env bash instead of #!/bin/sh in uninstall script generated by ENABLE_UNINSTALL=ON.

Deprecated:

  • Use of *_hint functions is deprecated in favor of more aptly named *_server_id functions:

    • mongoc_bulk_operation_set_hint is deprecated for mongoc_bulk_operation_set_server_id
    • mongoc_bulk_operation_get_hint is deprecated for mongoc_bulk_operation_get_server_id
    • mongoc_cursor_set_hint is deprecated for mongoc_cursor_set_server_id
    • mongoc_cursor_get_hint is deprecated for mongoc_cursor_get_server_id
  • A future minor release plans to drop support for Visual Studio 2013.

  • ENABLE_SSL=LIBRESSL is deprecated along with mongoc_stream_tls_libressl_new. Support for LibreSSL may be dropped in a future major release.

  • ENABLE_SASL=CYRUS on Windows platforms is deprecated. Support for ENABLE_SASL=CYRUS on Windows may be dropped in a future major release.

    • The associated Windows-only option CYRUS_PLUGIN_PATH_PREFIX is deprecated.

Links:

mongo-c-driver 1.27.6

03 Sep 13:54
1.27.6
32898b1
Compare
Choose a tag to compare

Announcing 1.27.6 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.

libbson

Fixes:

  • Fix handling of malformed extended JSON for special BSON types.
  • Fix large string handling in bson_string_new and bson_string_append.

libmongoc

Fixes:

  • Fix TSan warning.
  • Fix C23 compile.

Improvements:

  • Document expected behavior of command errors in a transaction.

Links:

Thanks to everyone who contributed to this release.

  • Adrian Dole
  • Ezra Chung
  • Joshua Siegel
  • Kevin Albertson

mongo-c-driver 1.27.5

06 Aug 14:55
1.27.5
01decf2
Compare
Choose a tag to compare

Announcing 1.27.5 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.

libbson

  • Fix large string handling in bson_append_utf8.

libmongoc

Fixes:

  • Fix possible build error in environments where bool or _Bool is a macro.

Links:

Thanks to everyone who contributed to this release.

  • Kevin Albertson
  • Roberto C. Sánchez

mongo-c-driver 1.27.4

02 Jul 19:39
1.27.4
3d1308b
Compare
Choose a tag to compare

Announcing 1.27.4 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.

libbson

Fixes:

  • Fix build with Visual Studio 2013.

libmongoc

Fixes:

  • Fix possible crash reading malformed wire protocol message.
  • Fix build with Visual Studio 2013.

Links:

Thanks to everyone who contributed to this release.

  • Ezra Chung
  • Kevin Albertson

mongo-c-driver 1.27.3

26 Jun 22:42
Compare
Choose a tag to compare

Announcing 1.27.3 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.

libbson

Notes:

  • This patch release introduces changes surrounding the development processes,
    including new code signing and dependency tracking. There are no behavioral
    or API changes.

libmongoc

Notes:

  • This patch release introduces changes surrounding the development processes,
    including new code signing and dependency tracking. There are no behavioral
    or API changes.

Fixes:

  • Upgraded bundled Zlib from 1.2.3 to 1.3.1

Links:

Thanks to everyone who contributed to this release.

  • Colby Pike

mongo-c-driver 1.27.2

04 Jun 16:57
1.27.2
a08d59d
Compare
Choose a tag to compare

Announcing 1.27.2 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.

libbson

Fixes:

  • Fix parsing of colon in timezone.
  • Error on failure to init subdocument in bson_iter_visit_all.

libmongoc

Fixes:

  • Close leftover connections to removed servers.

New features:

  • Check environment variable MONGOC_EXPERIMENTAL_SRV_PREFER_TCP to prefer TCP for SRV lookup.

Links:

Thanks to everyone who contributed to this release.

  • Kevin Albertson
  • Roman-Koshelev

mongo-c-driver 1.27.1

07 May 12:14
1.27.1
d6f093c
Compare
Choose a tag to compare

Announcing 1.27.1 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.

libbson

Fixes:

  • Fix string handling in bson_string_new and bson_string_append.

libmongoc

No changes since 1.27.0. Version incremented to match the libbson version.

Links:

Thanks to everyone who contributed to this release.

  • Roberto C. Sánchez

mongo-c-driver 1.27.0

01 May 13:30
1.27.0
dfd3aec
Compare
Choose a tag to compare

Announcing 1.27.0 of libbson and libmongoc, the libraries constituting the MongoDB C Driver.

libbson

No changes since 1.26.2. Version incremented to match the libmongoc version.

libmongoc

Notes:

  • Raise required version of libmongocrypt to 1.10.0 to support In-Use Encryption (corresponds to the CMake option: ENABLE_CLIENT_SIDE_ENCRYPTION).
  • A future minor release plans to raise the minimum supported MongoDB Server version from 3.6 to 4.0. This is in accordance with MongoDB Software Lifecycle Schedules.

Fixes:

  • Fix possible crash when client is configured with empty password.

New Features:

  • Add database name to command events: mongoc_apm_command_failed_get_database_name and mongoc_apm_command_succeeded_get_database_name.
  • Support delegated KMIP protocol for In-Use Encryption.
  • Enable setting socket timeout per client.

Links:

Thanks to everyone who contributed to this release.

  • Kevin Albertson
  • Adrian Dole
  • Ezra Chung
  • Roberto C. Sánchez
  • Scott Hunt