Docs 菜单
Docs 主页
/ / /
Rust 驱动程序

新增功能

在此页面上

  • 3.1 中的新功能
  • 3.0.1 中的新功能
  • 3.0 中的新功能
  • 2.8 中的新增功能
  • 2.7 中的新增功能
  • 2.6 中的新增功能

了解以下版本的 MongoDB Rust 驱动程序中引入的新功能、改进和修复:

  • 版本 3.1

  • 版本 3.0.1

  • 版本 3.0

  • 版本 2.8

  • 版本 2.7

  • 版本 2.6

Rust驾驶员3.1发布包含以下功能、改进和修复:

  • 添加支持多个相同类型的KMS ( KMS )提供商的支持。 要学习;了解有关KMS提供程序的更多信息,请参阅MongoDB Server手册中的可查询Queryable Encryption

  • 新增支持v 2的Queryable Encryption范围协议的支持。 可查询Queryable Encryption的范围索引现已正式发布。

  • 添加创建索引时对 type字段的支持。 要学习;了解有关创建索引的更多信息,请参阅MongoDB Server手册中的索引

  • 实现用于管理 TCP 连接的“Happy Eyeballs”算法。 要学习;了解有关此算法的更多信息,请参阅 happy_eyeballs crate 的Rust文档。

  • 当拓扑结构关闭时,驾驶员会发布TopologyDescriptionChangedEvent事件。

要学习;了解有关此发布的更多信息,请参阅 v3.1 发布说明 在Github 上。

Rust驾驶员3.0.1发布包含以下功能、改进和修复:

  • 修复了在显式会话中运行并实现了自定义类型时无法编译聚合的问题。

  • 修复了以下问题: Collection::watch()方法未使用其运行所在的Collection实例的类型参数。

要了解有关此版本的更多信息,请参阅 v3.0.1 版本说明

Rust驾驶员3.0发布包含以下功能、改进和修复:

  • 实现了 Fluent API,它引入了以下用于传递选项和启动会话的语法更改:

    • 要设立异步方法选项,请将选项构建器方法直接链接到方法调用,而不是传递选项结构体参数。

    • 要设立同步方法选项,请将选项构建器方法链接到方法调用,然后调用run()方法。

    • 如果必须构造单独的选项结构体,请将with_options()方法链接到方法调用,并将选项结构体作为参数传递。

    • 要启动会话,请将session()方法链接到方法调用,而不是使用具有_with_session后缀的单独方法。

  • 添加对批量写入操作的支持。 要学习;了解有关这些操作的详情,请参阅批量操作指南。

  • 引入EventHandler类型以减少事件监控所需的样板代码量。 有关使用EventHandler类型的示例,请参阅监控指南。

  • 删除了对async-std异步运行时的支持。 要学习;了解有关此更改的更多信息,请参阅 异步和同步 API指南的配置异步运行时部分。

  • 如果Rust驾驶员应用程序是使用no-default-features命令行标志编译的,则需要使用compat功能。 rustlsdns-resolution特征现在是可选的。

  • 删除了对bson-*驾驶员功能的支持。 您可以通过将bson作为直接依赖项包含在应用程序中来选择这些功能。

  • 删除支持读关注和写关注(write concern)常量的支持。 相反,请使用辅助方法来设立ReadConcernWriteConcern值。

  • Send + Sync约束添加到Collection<T>类型。

  • 如果未启用任何压缩器功能,则删除ClientOptions::compressor字段。

  • 更改ReadPreferenceOptions字段的类型。 这些字段现在具有Option<ReadPreferenceOptions>类型。

  • 删除CollectionOptions::human_readable_serialization选项。 相反,请使用bson::HumanReadable包装器类型将用户数据序列化为人类可读的形式。

  • 通过Into特征为所有选项结构体构建者添加对值转换的支持。

  • AggregateOptionsFindOptionsFindOneOptions结构体的comment_bson字段重命名为comment

要学习;了解有关此发布的更多信息,请参阅 v3.0 迁移指南 在Github 上。

Rust 驱动程序 v2.8 版本包括以下功能、改进和修复:

  • 添加 MongoDB Atlas Search 搜索索引管理方法。要了解有关这些方法的更多信息,请参阅Atlas Search 搜索索引指南。

  • 通过实施以下行为来提高网络连接和操作可靠性:

    • 对驱动程序遇到的更大范围的错误类型执行重试。

    • 避免对遇到网络连接问题的mongos实例进行重试。

要了解有关此版本的更多信息,请参阅 GitHub 上的 v2.8.0 版本亮点

Rust 驱动程序 v2.7 版本包括以下功能、改进和修复:

  • human_readable_serialization选项添加到CollectionOptions结构。 此选项指示驱动程序将传递给 CRUD 方法的值序列化为人类可读的格式。 此选项的默认值为false

    警告

    如果将human_readable_serialization的值设置为true ,则插入操作的运行速度可能会更慢。

  • 添加run_cursor_command()方法以运行数据库命令并检索Cursor类型的响应。 要了解更多信息,请参阅运行命令指南。

  • 当您使用 tracing-unstable 功能标志时,添加 SDAM 事件日志记录。

  • Client和连接管理添加以下配置:

    • max_connecting:您可以在ClientOptions结构中设置的选项,以指定可以并行建立的连接数。 要了解有关此选项的更多信息,请参阅性能注意事项指南中的连接池

    • Client::warm_connection_pool():可用于在连接池中创建新连接的方法,以提供更可预测的性能。 使用此方法时,驱动程序会尝试创建连接,数量不得超过min_pool_size设置中指定的数量。

    • Client::shutdown():可用于停止背景任务并等待处理程序删除的方法。如果您使用事件处理程序引用外部资源,此方法会很有帮助,因为即使在关闭Client之后,这些处理程序也可能在任务中使用。

要了解有关此版本的更多信息,请参阅 GitHub 上的 v2.7.0 版本亮点

Rust 驱动程序 v2.6 版本包括以下功能、改进和修复:

  • 支持 Amazon Web Services Identity and Access Management (IAM) 角色,例如 Elastic Kubernetes Service (EKS) 帐户。

  • 使用 Cloud Key Management System (KMS) 时支持 GCP 连接的服务帐号。

  • 支持从 Azure KMS 获取按需 CSFLE 档案。

  • 实现Namespace结构的FromStr特征。 此更改允许您将包含数据库和collection名称的字符串(例如"testdb.testcollection" Namespace解析为实例。

  • server_id作为i64类型包含在ConnectionInfo结构中。

  • 删除对Cursor引用的值的大多数类型限制。

  • 更新驱动程序依赖项中的 libmongocrypt 版本,以便将 Queryable Encryption 功能与相等查询结合使用。

要了解有关此版本的更多信息,请参阅 GitHub 上的 v2.6.0 版本亮点

后退

快速参考