Skip to content

Releases: mongodb/mongo-cxx-driver

MongoDB C++11 Driver r3.4.2

03 Jun 19:40
8bd81db
Compare
Choose a tag to compare

Release Notes - C++ Driver - Version 3.4.2

The MongoDB C++ Driver Team is pleased to announce the availability of mongocxx-3.4.2. This release provides bug fixes since r3.4.1.

Please note that this version of mongocxx requires the MongoDB C driver 1.13.0 or higher.

See the MongoDB C++ Driver Manual and the Driver Installation Instructions for more details on downloading, installing, and using this driver.

The mongocxx 3.4.x series does not promise API or ABI stability across patch releases.

Please feel free to post any questions to the MongoDB community forum in the Drivers, ODMs, and Connectors category with the cxx-driver tag. Bug reports should be filed against the CXX project in the MongoDB JIRA. Your feedback on the C++11 driver is greatly appreciated.

The following are user-visible issues that have been resolved in 3.4.2 since the prior release:

Bug

  • [CXX-2028] - Explicit write concern is incorrectly applied to collection::find_one_and_* methods.

MongoDB C++11 Driver r3.3.2

03 Jun 20:26
4195141
Compare
Choose a tag to compare

Release Notes - C++ Driver - Version 3.3.2

The MongoDB C++ Driver Team is pleased to announce the availability of mongocxx-3.3.2. This release provides bug fixes since r3.3.1.

Please note that this version of mongocxx requires the MongoDB C driver 1.10.1 or higher.

See the MongoDB C++ Driver Manual and the Driver Installation Instructions for more details on downloading, installing, and using this driver.

The mongocxx 3.3.x series does not promise API or ABI stability across patch releases.

Please feel free to post any questions to the MongoDB community forum in the Drivers, ODMs, and Connectors category with the cxx-driver tag. Bug reports should be filed against the CXX project in the MongoDB JIRA. Your feedback on the C++11 driver is greatly appreciated.

The following are user-visible issues that have been resolved in 3.3.2 since the prior release:

Bug

  • [CXX-2028] - Explicit write concern is incorrectly applied to collection::find_one_and_* methods.

MongoDB C++11 Driver r3.2.1

03 Jun 21:02
1498819
Compare
Choose a tag to compare

Release Notes - C++ Driver - Version 3.2.1

The MongoDB C++ Driver Team is pleased to announce the availability of mongocxx-3.2.1. This release provides bug fixes since r3.2.0.

Please note that this version of mongocxx requires the MongoDB C driver 1.9.2 or higher.

See the MongoDB C++ Driver Manual and the Driver Installation Instructions for more details on downloading, installing, and using this driver.

The mongocxx 3.2.x series does not promise API or ABI stability across patch releases.

Please feel free to post any questions to the MongoDB community forum in the Drivers, ODMs, and Connectors category with the cxx-driver tag. Bug reports should be filed against the CXX project in the MongoDB JIRA. Your feedback on the C++11 driver is greatly appreciated.

The following are user-visible issues that have been resolved in 3.2.1 since the prior release:

Bug

  • [CXX-2028] - Explicit write concern is incorrectly applied to collection::find_one_and_* methods.

MongoDB C++11 Driver r3.5.1

03 Jun 19:13
deb3e38
Compare
Choose a tag to compare

Release Notes - C++ Driver - Version 3.5.1

The MongoDB C++ Driver Team is pleased to announce the availability of mongocxx-3.5.1. This release provides bug fixes since r3.5.0.

Please note that this version of mongocxx requires the MongoDB C driver 1.15.0 or higher.

See the MongoDB C++ Driver Manual and the Driver Installation Instructions for more details on downloading, installing, and using this driver.

The mongocxx 3.5.x series does not promise API or ABI stability across patch releases.

Please feel free to post any questions to the MongoDB community forum in the Drivers, ODMs, and Connectors category with the cxx-driver tag. Bug reports should be filed against the CXX project in the MongoDB JIRA. Your feedback on the C++11 driver is greatly appreciated.

The following are user-visible issues that have been resolved in 3.5.1 since the prior release:

Bug

  • [CXX-2028] - Explicit write concern is incorrectly applied to collection::find_one_and_* methods.

MongoDB C++11 Driver r3.5.0

31 Mar 16:45
ebec4e4
Compare
Choose a tag to compare

Release Notes - C++ Driver - Version 3.5.0

The MongoDB C++ Driver Team is pleased to announce the availability of mongocxx-3.5.0. This release provides support for new features in MongoDB 4.2.

Please note that this version of mongocxx requires the MongoDB C driver 1.15.0 or higher.

See the MongoDB C++ Driver Manual and the Driver Installation Instructions for more details on downloading, installing, and using this driver.

The mongocxx 3.5.x series does not promise API or ABI stability across patch releases.

Please feel free to post any questions to the MongoDB community forum in the Drivers, ODMs, and Connectors category with the cxx-driver tag. Bug reports should be filed against the CXX project in the MongoDB JIRA. Your feedback on the C++11 driver is greatly appreciated.

The following are user-visible issues that have been resolved in 3.5.0 since the prior release:

Bug

  • [CXX-1688] - MongoDB CXX driver does not compile with standard polyfill.
  • [CXX-1689] - database::_create_collection is not using C++17-compatible string conversion.
  • [CXX-1693] - Test with latest gcc
  • [CXX-1720] - clang 7.0.1, Linux, c++14, libc++, ambiguous overload in change_stream.cpp
  • [CXX-1769] - ChangeStream spec's Resumable Error definition is too broad
  • [CXX-1901] - Building C++ driver from master fails to find cmake packages of C driver
  • [CXX-1922] - scoped_bson_t::steal() doesn't clear _is_initialized flag
  • [CXX-1938] - Catch does not guarantee running at least one test SECTION per TEST_CASE run

New Feature

  • [CXX-1669] - Add an uninstall target
  • [CXX-1678] - std::aligned_storage build failure with extra alignment
  • [CXX-1681] - Implement Unified URI Options
  • [CXX-1682] - Implement Convenient API for Transactions
  • [CXX-1684] - Support mongos pinning for sharded transactions
  • [CXX-1685] - Retryable Reads
  • [CXX-1691] - Connections survive primary stepdown
  • [CXX-1695] - Support sharded transactions recovery token
  • [CXX-1696] - Aggregate command must be sent to a primary if it uses $out
  • [CXX-1701] - Resync transactions tests to include test with session1 in APM expectations
  • [CXX-1702] - Add database aggregate helper
  • [CXX-1711] - Add CMake flags to build both shared and static libraries
  • [CXX-1715] - Support 'startAfter' option to the $changeStream stage
  • [CXX-1719] - Drivers should use majority write concern when retrying commitTransaction
  • [CXX-1721] - Drivers should ignore batchSize=0 for aggregate with $out
  • [CXX-1732] - Support Retryable Writes on by Default
  • [CXX-1734] - Support postBatchResumeToken in change streams
  • [CXX-1742] - Resync transaction spec tests for bulk write error reporting change
  • [CXX-1743] - Add support for majority read concern level to Aggregation $out
  • [CXX-1755] - Require retryable writes network error tests to run on mongos 4.2+
  • [CXX-1756] - Add the ability to specify a pipeline to an update command
  • [CXX-1759] - Document connection string and URI option precedence rules
  • [CXX-1761] - Use runOn syntax to specify transaction test requirements
  • [CXX-1771] - Allow applications to set maxTimeMS for commitTransaction
  • [CXX-1805] - Operating System Removals/Updates for 4.2
  • [CXX-1806] - Raise an actionable error message when retryWrites fails due to using an unsupported storage engine

Improvement

  • [CXX-1532] - Demonstrate "pool" in thread-safety.md
  • [CXX-1572] - Retryable writes should consider more errors retryable
  • [CXX-1637] - Delete deprecated collection::replace_one overloads
  • [CXX-1670] - Add test that reads ignore db/collection readConcern in transaction
  • [CXX-1680] - COPYING and THIRD_PARTY_NOTICES should be installed to $PREFIX/share/doc/mongo-cxx-driver
  • [CXX-1707] - Export targets for CMake project
  • [CXX-1752] - Remove GitPython from calc_release_version.py
  • [CXX-1783] - Don't send $readPreference to standalone servers
  • [CXX-1790] - Test MongoDB 4.2 in Evergreen
  • [CXX-1795] - Use runOn syntax to specify CRUD test requirements
  • [CXX-1820] - Deprecation warning on mongoc_uri_get_ssl
  • [CXX-1834] - Make pipeline extensible
  • [CXX-1899] - Typos in install guide

MongoDB C++11 Driver 3.4.1

03 Mar 21:58
26faf47
Compare
Choose a tag to compare

This patch release addresses compilation issues when compiling without a polyfill on C++17 supporting compilers.

Please note that this version of mongocxx requires the MongoDB C driver 1.13.0.

See the MongoDB C++ Driver Manual and the Driver Installation Instructions for more details on downloading, installing, and using this driver.

NOTE: The mongocxx 3.4.x series does not promise API or ABI stability across patch releases.

Here is the full list of user-visible issues that have been resolved in 3.4.1 since the prior 3.4.0 release:

Bug

  • [CXX-1688] - MongoDB CXX driver does not compile with standard polyfill.
  • [CXX-1689] - database::_create_collection is not using C++17-compatible string conversion.

MongoDB C++11 Driver 3.4.0

15 Oct 20:09
Compare
Choose a tag to compare

This is the first stable release in the mongocxx 3.4 series.

This release provides support for new features MongoDB 4.0 (most notably transactions) as well as command monitoring and SDAM monitoring.

Please note that this version of mongocxx requires the MongoDB C driver 1.13.0.

See the MongoDB C++ Driver Manual and the Driver Installation Instructions for more details on downloading, installing, and using this driver.

NOTE: The mongocxx 3.4.x series does not promise API or ABI stability across patch releases.

Here is the full list of user-visible issues that have been resolved in 3.4.0 since the prior 3.3 series:

New Feature

  • [CXX-1385] - Add API for subscribing to SDAM events
  • [CXX-1386] - Implement command monitoring API
  • [CXX-1433] - Implement Database Enumeration spec
  • [CXX-1478] - Support ReplaceOptions in CRUD API
  • [CXX-1505] - Implement SASLPrep
  • [CXX-1509] - SCRAM-SHA-256 Support
  • [CXX-1531] - Implement Transactions spec
  • [CXX-1538] - Delete public bulk_write constructor
  • [CXX-1541] - Handshake changes for SDAM and Auth
  • [CXX-1558] - Remove collection::bulk_write(bulk_write&)
  • [CXX-1559] - Update SCRAM-SHA-256 implementation and tests for spec change
  • [CXX-1582] - Support nameOnly option in listCollections command
  • [CXX-1584] - Add helpers and options for Change Streams Follow-on Work
  • [CXX-1585] - Remove MD5 from ObjectID generation
  • [CXX-1592] - Add MongoDB 4.0 to the Evergreen matrix
  • [CXX-1594] - Implement new count API
  • [CXX-1616] - Remove equality/inequality operators from options classes
  • [CXX-1622] - Test only the initial command in a transaction includes readConcern
  • [CXX-1639] - Support new readConcern level "available"
  • [CXX-1658] - Generate C Driver version number when installing

Bug

  • [CXX-1595] - GNU 4.9.3: 'max_align_t' was not declared
  • [CXX-1625] - Android NDK r17 compiler error
  • [CXX-1626] - CRUD operations set ordered to false by default
  • [CXX-1638] - Don't call string_view::to_string

Improvement

  • [CXX-1499] - Don't access bson_iter_t internals
  • [CXX-1500] - document::view::find should use bson_iter...w_len functions
  • [CXX-1528] - Deprecate snapshot option
  • [CXX-1562] - Port session tests to mongocxx command monitoring API
  • [CXX-1573] - Spec tests should use the same format for bulk writes
  • [CXX-1577] - Flexible collection creation
  • [CXX-1578] - Remove options::aggregate::use_cursor
  • [CXX-1580] - Log backtraces in test failures on Evergreen
  • [CXX-1586] - Add user commands to list of commands that write
  • [CXX-1591] - Only send bypassDocumentValidation if it's true
  • [CXX-1596] - Use mongoc_cursor_new_from_command_reply_with_opts
  • [CXX-1601] - Update ChangeStream spec to detail usage of startAtOperationTime
  • [CXX-1620] - Migrate from functions deprecated in libmongoc 1.12
  • [CXX-1651] - Rewrite "Contributing" page
  • [CXX-1653] - Remove database::modify_collection
  • [CXX-1657] - Require libbson and libmongoc 1.13.0
  • [CXX-1660] - Fix doxygen warnings
  • [CXX-1666] - improve documentation of element::bool()

r3.3.1

27 Jul 16:50
Compare
Choose a tag to compare

This release provides bug fixes since r3.3.0.

Please note that this version of mongocxx requires the MongoDB C driver 1.10.1.

See the MongoDB C++ Driver Manual and the Driver Installation Instructions for more details on downloading, installing, and using this driver.

NOTE: The mongocxx 3.3.x series does not promise API or ABI stability across patch releases.

Bug

  • [CXX-1614] - Client constructed with independently defined SSL options always crashes

MongoDB C++11 Driver 3.3.0

12 Jun 18:56
Compare
Choose a tag to compare

This is the first stable release in the mongocxx 3.3 series.

This release provides additional support for new features in MongoDB 3.6, introduces support for client sessions and change streams, and includes a large number of fixes and improvements since the 3.2 release series.

Please note that this version of mongocxx requires the MongoDB C driver 1.10.1.

See the MongoDB C++ Driver Manual and the Driver Installation Instructions for more details on downloading, installing, and using this driver.

NOTE: The mongocxx 3.3.x series does not promise API or ABI stability across patch releases.

The only change since 3.3.0-rc0 is a test that verifies client sessions are prohibited with unacknowledged writes. Here is the full list of user-visible issues that have been resolved in 3.3.0 since the prior 3.2 series:

New Feature

  • [CXX-1184] - Prevent misuse of client temporaries
  • [CXX-1390] - Array Update Improvements
  • [CXX-1398] - Implement session and session options API
  • [CXX-1399] - Implement session
  • [CXX-1400] - PIMPL session
  • [CXX-1401] - Make collection and database modifications for sessions
  • [CXX-1402] - Update thread/fork safety for sessions
  • [CXX-1403] - Add page on sessions
  • [CXX-1404] - Add a session example
  • [CXX-1408] - Add Change Stream API
  • [CXX-1414] - Change stream support
  • [CXX-1416] - Causally Consistent Reads support
  • [CXX-1519] - Document how to use the latest TLS protocols
  • [CXX-1549] - Deprecate public bulk_write constructors
  • [CXX-1552] - Drop MongoDB 2.6
  • [CXX-1557] - Deprecate collection::bulk_write(bulk_write&), add bulk_write::execute()
  • [CXX-1560] - Add clusterTime property to static type for change stream documents
  • [CXX-1567] - Deprecate autoIndexId for collection creation

Bug

  • [CXX-1511] - Client constructor should throw if mongoc_uri_new_with_error fails
  • [CXX-1553] - Wrong ctor call to b_timestamp
  • [CXX-1564] - Cannot set use_cursor or batch_size with aggregation cursor

Improvement

  • [CXX-1498] - Upgrade to C driver 1.10
  • [CXX-1516] - Decrease likelihood of implicit session leaks
  • [CXX-1525] - Migrate from APIs deprecated in libmongoc 1.9.0 and older
  • [CXX-1529] - Update algorithm for Kerberos hostname canonicalization
  • [CXX-1536] - Use libmongoc "with_opts" bulk operation functions
  • [CXX-1550] - Build C Driver with CMake on Evergreen
  • [CXX-1565] - Use mongoc_collection_find_and_modify_with_opts
  • [CXX-1568] - Initial aggregate command for a change stream should not be retried

Task

  • [CXX-1518] - Prohibit using unacknowledged writes with explicit sessions

MongoDB C++11 Driver 3.3.0-rc0

31 May 19:09
Compare
Choose a tag to compare
Pre-release

This is the first release candidate for mongocxx 3.3.0, the MongoDB C++11 driver.

This release provides additional support for new features in MongoDB 3.6, introduces support for client sessions and change streams, and includes a large number of fixes and improvements since the 3.2 release series.

Please note that this version of mongocxx requires the MongoDB C driver 1.10.1.

See the MongoDB C++ Driver Manual and the Driver Installation Instructions for more details on downloading, installing, and using this driver.

NOTE: The mongocxx 3.3.x series does not promise API or ABI stability across patch releases.

The full list of user-visible issues that have been resolved in 3.3.0-rc0 since the prior 3.2 series are as follows:

New Feature

  • [CXX-1184] - Prevent misuse of client temporaries
  • [CXX-1390] - Array Update Improvements
  • [CXX-1398] - Implement session and session options API
  • [CXX-1399] - Implement session
  • [CXX-1400] - PIMPL session
  • [CXX-1401] - Make collection and database modifications for sessions
  • [CXX-1402] - Update thread/fork safety for sessions
  • [CXX-1403] - Add page on sessions
  • [CXX-1404] - Add a session example
  • [CXX-1408] - Add Change Stream API
  • [CXX-1414] - Change stream support
  • [CXX-1416] - Causally Consistent Reads support
  • [CXX-1519] - Document how to use the latest TLS protocols
  • [CXX-1549] - Deprecate public bulk_write constructors
  • [CXX-1552] - Drop MongoDB 2.6
  • [CXX-1557] - Deprecate collection::bulk_write(bulk_write&), add bulk_write::execute()
  • [CXX-1560] - Add clusterTime property to static type for change stream documents
  • [CXX-1567] - Deprecate autoIndexId for collection creation

Bug

  • [CXX-1511] - Client constructor should throw if mongoc_uri_new_with_error fails
  • [CXX-1553] - Wrong ctor call to b_timestamp
  • [CXX-1564] - Cannot set use_cursor or batch_size with aggregation cursor

Improvement

  • [CXX-1498] - Upgrade to C driver 1.10
  • [CXX-1516] - Decrease likelihood of implicit session leaks
  • [CXX-1525] - Migrate from APIs deprecated in libmongoc 1.9.0 and older
  • [CXX-1529] - Update algorithm for Kerberos hostname canonicalization
  • [CXX-1536] - Use libmongoc "with_opts" bulk operation functions
  • [CXX-1550] - Build C Driver with CMake on Evergreen
  • [CXX-1565] - Use mongoc_collection_find_and_modify_with_opts
  • [CXX-1568] - Initial aggregate command for a change stream should not be retried