Bug
- [CDRIVER-1458] - Test failure in mongoc_socket check_closed
- [CDRIVER-1929] - mongoc_uri_parse_database() may overlap with URI host component
- [CDRIVER-1981] - Threads are not closed correctly on windows
- [CDRIVER-1987] - mongoc_uri_unescape() silently fails on invalid percent-encoding
- [CDRIVER-1992] - Intermittent "TLS handshake failed" error in test_ismaster_ssl on Windows
- [CDRIVER-2002] - Given mongoc_gridfs_file_readv() returning -1 (failure), mongoc_gridfs_file_error() doesn't indicate error condition
- [CDRIVER-2005] - release-compile task on Evergreen Windows variants builds debug version of driver
- [CDRIVER-2006] - mongoc_gridfs_find_one_with_opts(): the error parameter is not initialized on failure
- [CDRIVER-2010] - ISO8601 test fails with GCC 7
- [CDRIVER-2011] - libbson fuzztest failure
- [CDRIVER-2028] - mongoc_gridfs_file_get_upload_date() returns arbitrary values on 32-bit system
- [CDRIVER-2034] - test_create_index_fail error on zSeries Ubuntu without OpenSSL
- [CDRIVER-2035] - bson_api.3 and bson_index.3 man pages include all other pages
- [CDRIVER-2036] - extjson parsing bug in 1.6.0
- [CDRIVER-2046] - Invalid read in libbson-release
- [CDRIVER-2054] - Windows static build is broken in 1.5.0
- [CDRIVER-2073] - assert in test_hint_no_warmup_pooled
- [CDRIVER-2079] - Link error due to undefined reference to `assert'
- [CDRIVER-2090] - Don't call getpid if we plan to overwrite result with taskid during ObjectId generation
- [CDRIVER-2093] - mongoc_cursor_is_alive and mongoc_cursor_more incorrect querying an empty collection
- [CDRIVER-2098] - mongoc_collection_aggregate fails against secondaries
- [CDRIVER-2101] - Build failure against LibreSSL OpenSSL
- [CDRIVER-2104] - Patch build failures: "llvm-cov not found"
- [CDRIVER-2115] - Rare mock server test failures on 32-bit
- [CDRIVER-2122] - Issues in documentation for read concern option "level"
- [CDRIVER-2127] - libbson FTBFS on mips/mipsel: undefined reference to `__sync_add_and_fetch_8'
- [CDRIVER-2132] - CMake unnecessarily requires C++ compiler
- [CDRIVER-2133] - Coverity analysis defect 100116: Out-of-bounds access
- [CDRIVER-2134] - Coverity analysis defect 49582: Operands don't affect result
- [CDRIVER-2135] - Coverity analysis defect 76459: Resource leak
- [CDRIVER-2136] - Coverity analysis defect 72309: Resource leak
- [CDRIVER-2138] - Libbson bson-decimal.c should not include stdint.h directly
- [CDRIVER-2139] - Please add generated files to .gitignore
- [CDRIVER-2142] - No URI error specified if authSource is not "$external" for GSSAPI and X509
- [CDRIVER-2146] - ".. warning:" sections not rendered in docs
- [CDRIVER-2147] - Token replacement issue in download link
- [CDRIVER-2153] - mongoc_client_pool_t cannot connect to MongoDB Atlas
- [CDRIVER-2154] - SNI not provided when allow_invalid_hostname is set
- [CDRIVER-2155] - Bug in unreleased code: Client pool cannot connect with IPv6 address like "[::1]"
- [CDRIVER-2157] - Linking to libmongoc with MinGW-64 fails to find crypt32.lib
- [CDRIVER-2158] - Preserve case in Unix domain socket paths
- [CDRIVER-2166] - Improve autotools/pkg-config detection
- [CDRIVER-2168] - Escape JSON strings for regex, symbol, and DBPointer types
- [CDRIVER-2171] - make uninstall leaves cmake & static symlink files behind
- [CDRIVER-2172] - Call "ping" on a socket that has been idle for socketCheckIntervalMS
- [CDRIVER-2174] - _mongoc_cluster_check_interval() should invalidate nodes after detecting a closed socket
- [CDRIVER-2175] - libbson cmake: pthreads not correctly compiled in
- [CDRIVER-2177] - Coverity analysis defect 101516: Resource leak
- [CDRIVER-2178] - Coverity analysis defect 72298: Time of check time of use
- [CDRIVER-2179] - Coverity analysis defect 100079: Redundant test
- [CDRIVER-2190] - Username and password must be URI-escaped
- [CDRIVER-2202] - OP_COMPRESSED fails on Big Endian
- [CDRIVER-2203] - libbson-1.7.0-rc0 break NEWS encoding
- [CDRIVER-2223] - JSON reader cannot parse integers for legacy $date syntax
- [CDRIVER-2225] - BSON corpus Decimal128 parse error tests are not properly executed
Epic
- [CDRIVER-784] - Bring mongoc_uri_t up to spec.
- [CDRIVER-797] - Stop depending on Cyrus for GSSAPI / Kerberos support on Mac and Windows.
- [CDRIVER-1497] - libbson: Document all exported symbols
- [CDRIVER-1947] - Improve libbson compatibility with the BSON Corpus tests
- [CDRIVER-2074] - Convenient usage as a static library
- [CDRIVER-2116] - Add support for OP_COMPRESSED
New Feature
- [CDRIVER-670] - Check links in docs
- [CDRIVER-1110] - Add mongoc_cursor_get_error_document ()
- [CDRIVER-1388] - Warn on unsupported URI options
- [CDRIVER-1404] - Use S_ISDIR() instead of & S_IFDIR
- [CDRIVER-1472] - NaN handling difference between C and C++ driver
- [CDRIVER-1509] - Add OpenSSL 1.1 build into evergreen
- [CDRIVER-1542] - Add BSON_ITER_HOLDS_NUMBER() & BSON_ITER_HOLDS_INT()
- [CDRIVER-1879] - libbson truncates code_with_scope with embedded nulls in javascript
- [CDRIVER-1889] - Implement BSON Corpus tests runner
- [CDRIVER-1949] - Implement Connection URI Spec tests
- [CDRIVER-1990] - Travis integration
- [CDRIVER-2004] - Add SSL Configuration options to the URI / Enable X.509 auth through URI
- [CDRIVER-2018] - Introduce bulk write options to disable BSON validation
- [CDRIVER-2037] - Distribute pkg-config files for dynamic and static linking
- [CDRIVER-2055] - Compile libbson examples on windows
- [CDRIVER-2062] - Compile and test Windows Native SSL & SASL under mingw
- [CDRIVER-2064] - Add bson_iter_init_from_data function
- [CDRIVER-2067] - Server selection is not random on Windows
- [CDRIVER-2069] - Document how to produce release binaries for libbson & mongoc
- [CDRIVER-2083] - Distribute CMake config packages for statically linking to libbson and libmongoc
- [CDRIVER-2084] - Create setter for authMechanism URI option
- [CDRIVER-2108] - Add Support for reading OP_COMPRESSED
- [CDRIVER-2109] - Add support for writing OP_COMPRESSED
- [CDRIVER-2110] - Add support for compiling against snappy
- [CDRIVER-2117] - Support `compressors` URI option
- [CDRIVER-2137] - Add support for zlib OP_COMPRESSED
- [CDRIVER-2143] - Add iter_as_double function
- [CDRIVER-2170] - Add support for RFC 2744 GSS-API
- [CDRIVER-2206] - Expose is_default() in public API for read and write concerns
- [CDRIVER-2208] - Introduce new API for Extended JSON spec 2.0 output
Task
- [CDRIVER-589] - Driver should sanity check the size of the request document and fail fast
- [CDRIVER-792] - Investigate replacing cyrus-sasl with libkrb5/heimdal for GSSAPI
- [CDRIVER-857] - C - Test the support of MONGODB-X509 authentication mechanism
- [CDRIVER-1498] - Document bson_array_as_json
- [CDRIVER-1499] - Document bson_ascii_strtoll
- [CDRIVER-1500] - Document bson_copy_to_excluding_noinit
- [CDRIVER-1920] - Document how connection pooling works for C driver
- [CDRIVER-1938] - bson_as_json converts int64 to scientific notation
- [CDRIVER-1980] - Incorrect lifecycle documentation needs review
- [CDRIVER-2019] - Missing delimiting slash between hosts and options should fail
- [CDRIVER-2020] - Escaped null bytes in URI (%00) should be allowed
- [CDRIVER-2021] - UTF-8 Hostnames in connection URI should be allowed
- [CDRIVER-2022] - Missing support for fsync in connection uri
- [CDRIVER-2023] - Unescaped percent sign in connection uri should fail
- [CDRIVER-2024] - Escaped username maybe not properly parsed
- [CDRIVER-2025] - Repeated options should issue a warning
- [CDRIVER-2029] - 3 colons should fail URI parsing
- [CDRIVER-2030] - Deprecated options should be ignored if replacement exists
- [CDRIVER-2031] - Multiple unescaped @ should fail uri parsing
- [CDRIVER-2032] - Unix Domain Sockets must be escaped in URI
- [CDRIVER-2058] - heartbeatFrequencyMS is not validated as being less than minHeartbeatFrequencyMS
- [CDRIVER-2065] - Document that bson_init_static structures must not be copied
- [CDRIVER-2082] - Create examples for sample shell commands
- [CDRIVER-2088] - Can't build libbson on tvOS / watchOS
- [CDRIVER-2106] - Refactor code to not assume OP_REPLY is the only reply opcode
- [CDRIVER-2114] - Add evergreen Matrix for inflight 3.6 implementations
- [CDRIVER-2120] - Add MONGOC_TEST_COMPRESSORS to test suite
- [CDRIVER-2169] - Return value for bson_decimal128_from_string is undocumented
- [CDRIVER-2239] - Rename bson_as_[canonical|relaxed]_json() to bson_as_[canonical|relaxed]_extended_json()
Improvement
- [CDRIVER-782] - Allow more detailed error reporting for failed URI parsing
- [CDRIVER-963] - Document object-destruction order
- [CDRIVER-1058] - Install CMake 'config' style files for find_package
- [CDRIVER-1138] - Test with undefined behavior sanitizer
- [CDRIVER-1386] - Create bson_ascii_str[n]casecmp()
- [CDRIVER-1478] - Implement Connection String Spec Tests
- [CDRIVER-1531] - Document libbson helper macros at the same page as the underlying function
- [CDRIVER-1543] - Note mongoc_client_command's unused params
- [CDRIVER-1549] - Connection string documentation incomplete
- [CDRIVER-1559] - syscall deprecated in macOS
- [CDRIVER-1883] - libbson should ensure regex options are sorted
- [CDRIVER-1917] - Document use of server_id in mongoc_cursor_new_from_command_reply
- [CDRIVER-1966] - Extended JSON date expects milliseconds wrapped in $numberLong
- [CDRIVER-1967] - Extended JSON int64 expects wrapping in $numberLong
- [CDRIVER-1978] - NaN and Infinity differently JSON-encoded depending on platform
- [CDRIVER-1993] - cmake doesn't check libbson minimum version
- [CDRIVER-2016] - Report offending field name in BSON validation errors
- [CDRIVER-2026] - mongoc_gridfs_find_one_with_opts() is not internally optimized for fetching one result
- [CDRIVER-2038] - Document all supported connection URI options
- [CDRIVER-2039] - Document readPreferenceTags
- [CDRIVER-2043] - Raise BSON_MAX_RECURSION from 100 to 200
- [CDRIVER-2044] - Max URI set to only 64 chars
- [CDRIVER-2049] - Do not shutdown() sockets created by other processes
- [CDRIVER-2052] - Correct connectTImeoutMS
- [CDRIVER-2061] - Compiler warning for openssl 1.1.0
- [CDRIVER-2075] - Retry ismaster calls once
- [CDRIVER-2076] - Test building from tarballs with MSVC
- [CDRIVER-2077] - Undeprecate bson_as_json
- [CDRIVER-2087] - size_t redeclaration in VS2013
- [CDRIVER-2091] - Compiler warnings in clang on OS X
- [CDRIVER-2095] - Document what false means as return value
- [CDRIVER-2124] - Environment flag to skip mockserver tests
- [CDRIVER-2126] - DatetimePositive, DatetimeNegative, DatetimeEpoch not implemented
- [CDRIVER-2128] - Support revised Extended JSON spec
- [CDRIVER-2130] - Any "ssl" config option in URI should turn on SSL/TLS
- [CDRIVER-2140] - Add support for zlibCompressionLevel
- [CDRIVER-2148] - Combine bson_uint32_to_string.rst with performance.rst
- [CDRIVER-2150] - Cache SCRAM-SHA-1 ClientKey
- [CDRIVER-2156] - Generate correctly-formatted mock server code
- [CDRIVER-2161] - Sphinx 1.6 compatibility
- [CDRIVER-2162] - Automate Atlas connectivity tests
- [CDRIVER-2163] - Update "Supported Platforms" in docs
- [CDRIVER-2165] - Compile with Windows SSPI support by default
- [CDRIVER-2173] - _mongoc_buffer_try_append_from_stream() never sets bson_error_t output var
- [CDRIVER-2186] - More Connection String Spec updates
- [CDRIVER-2187] - Key file path, key file password, and certificate authority file path must be escaped in MongoDB URI
- [CDRIVER-2195] - Clarify write concern usage documentation for mongoc_database_create_collection
- [CDRIVER-2204] - Rename --enable-snappy and --enable-zlib to --with-snappy and --with-zlib
- [CDRIVER-2211] - cmake requires shared and static versions of libbson
Edit/Copy Release Notes
The text area below allows the project release notes to be edited and copied to another document.