新增功能
Overview
了解以下版本中的新功能:
4.0 中的新增功能
v 4.0驾驶员发布包括以下新功能:
为
mongocxx::options::change_stream
实例的start_at_operation_time
字段添加 getter 方法。
3.11 中的新功能
v 3.11驾驶员发布包括以下新功能:
新增支持MongoDB Server v 8.0的支持。
添加支持Queryable Encryption范围查询的支持。 要使用此功能,您的应用必须连接到MongoDB Server 8.0或更高版本。 有关Queryable Encryption的更多信息,请参阅MongoDB Server手册中的Queryable Encryption 。
为
mongocxx::v_noabi::bulk_write
添加empty()
成员函数。
要学习;了解有关此发布的更多信息,请参阅 3.11GithubGitHub 上的 v 发布说明 。
3.10 中的新功能
v 3.10.0 驾驶员发布包括以下新功能:
添加提供
bsoncxx
和mongocxx
类类型的非定义声明的正向标头。 驾驶员不支持用户定义的任何库实体的前向声明。 要获取库实体的声明或定义,请始终包含相应的标头。当未请求 polyfill 库时,CMake 选项
ENABLE_BSONCXX_USE_POLY_IMPLS
允许默认选择C++ 17 polyfill 的bsoncxx
实现。 此选项默认为OFF
。CMake 选项
BSONCXX_POLY_USE_IMPLS
允许选择C++17 polyfill 的bsoncxx
实现,而不是外部库或C++标准库。 此选项默认为OFF
。bsoncxx::v_noabi
和mongocxx::v_noabi
命名空间不再声明为内联命名空间。 根命名空间声明仍受支持,且应与其之前的定义保持等效。 示例,bsoncxx::document
仍然相当于bsoncxx::v_noabi::document
,mongocxx::client
仍然相当于mongocxx::v_noabi::client
。默认,当使用 MSVC 编译库文件名时(由 CMake 的
MSVC
变量检测),它们会嵌入 ABI标签string 。 这些字符串类似于以下内容:bsoncxx-v_noabi-rhs-x64-v142-md.lib 要禁用此行为,请将
ENABLE_ABI_TAG_IN_LIBRARY_FILENAMES=OFF
设立为 CMake 配置的一部分。ABI标签string也可以嵌入到 pkg-config元数据文件名中,如下所示:
libbsoncxx-v_noabi-rhs-x64-v142-md.pc 要启用此行为,设立
ENABLE_ABI_TAG_IN_LIBRARY_FILENAMES=ON
和ENABLE_ABI_TAG_IN_PKGCONFIG_FILENAMES=ON
设置为 CMake 配置的一部分。
要学习;了解有关此发布的更多信息,请参阅 v3.10 发布说明 在Github 上。
3.9 中的新功能
v 3.9驾驶员发布包括以下新功能:
C++驾驶员容器映像现已在 Docker Hub 上提供。
如果您未提供,驾驶员会自动下载MongoDB C驱动程序依赖项。
驾驶员不再将测试构建为
all
目标的一部分。 要构建测试,请将BUILD_TESTING=ON
设立为 CMake 配置的一部分。驾驶员使用
FetchContent
模块下载并构建 MNMLSTC 核心 polyfill 库(如果系统未提供),而不是ExternalProject
模块。它也不会修补 MNMLSTC Core 标头中的include
指令。添加 CMake 选项
MONGOCXX_OVERRIDE_DEFAULT_INSTALL_PREFIX
。 如果此选项设立为TRUE
,则CMAKE_INSTALL_PREFIX
选项默认为构建目录。 此选项的默认值为TRUE
。添加用于管理Atlas Search索引的API 。
将
VERSIONINFO
资源添加到bsoncxx.dll
和mongocxx.dll
。明确记录从 APM回调中引发异常是未定义行为。
在 CMake构建步骤中,不会过早安装 MNMLSTC Core 标头。
要求所有已安装的C++驾驶员包配置通过
find_dependency()
找到MongoDB C驱动程序CMake包。
要学习;了解有关此发布的更多信息,请参阅 v3.9 发布说明 在Github 上。