新機能
MongoDB Rust ドライバーの次のバージョンで導入されている新機能、改善点、修正について説明します。
3.1の新機能
Rust ドライバー v 3.1リリースには、次の機能、改善点、修正が含まれています。
同じタイプの複数のKMS ( KMS )プロバイダーのサポートを追加します。 KMSQueryable Encryptionプロバイダーの詳細については、MongoDB Server マニュアルの「 」を参照してください。
Queryable Encryption 範囲プロトコルの v 2のサポートを追加します。 Queryable Encryption の範囲インデックスは GA 版が提供されています。
インデックスの作成時における
type
フィールドのサポートを追加しました。 インデックスの作成の詳細については、 マニュアルの「 インデックス MongoDB Server」を参照してください。TCP 接続を管理アルゴリズムための式を実装します。 このアルゴリズムの詳細については、 Rustドキュメントの findRead_eyeballs crateのドキュメントを参照してください。
ドライバーは、トポロジーが閉じられたときに
TopologyDescriptionChangedEvent
イベントを公開します。
このリリースの詳細については、 v3.1 リリースノート を参照してくださいGithub .
3.0.1の新機能
Rust ドライバー v 3.0.1リリースには、次の機能、改善点、修正が含まれています。
明示的なセッション内で実行され、カスタム型も実装された場合に集計がコンパイルされない問題を修正します。
Collection::watch()
メソッドが実行されるCollection
インスタンスの型パラメータを使用しなかった問題を修正しました。
このリリースの詳細については、 v3.0.1 リリースノート を参照してくださいGithub .
3.0の新機能
Rust ドライバー v 3.0リリースには、次の機能、改善点、修正が含まれています。
オプションを渡し、セッションを開始するために次のAPIの変更を導入します。
非同期メソッド オプションを渡すには、オプション 構造パラメーターを渡す代わりに、オプション ビルダ メソッドをメソッド呼び出しに直接連鎖させます。
同期メソッド オプションを設定するには、オプション ビルダ メソッドをメソッド呼び出しに連結し、
run()
メソッドを呼び出します。別のオプション構造体を作成する必要がある場合は、
with_options()
メソッドを メソッド呼び出しにチェーンし、オプション構造体をパラメーターとして渡します。セッションを開始するには、
_with_session
サフィックスを持つ別のメソッドを使用する代わりに、session()
メソッドを メソッド呼び出しに連鎖させます。
一括書き込み操作のサポートを追加しました。 これらの操作の詳細については、 一括操作のガイドを参照してください。
イベント モニタリングに必要なディレクティブ コードの量を減らすために、
EventHandler
タイプを導入します。EventHandler
型を使用する例については、モニタリングガイドを参照してください。async-std
非同期ランタイムのサポートを廃止します。 この変更の詳細については、「 非同期 API と同期 API ガイドの「 非同期ランタイムの構成」セクションを参照してください。Rust ドライバー アプリケーションが
no-default-features
コマンドライン フラグを使用してコンパイルされている場合は、compat
機能を使用する必要があります。rustls
とdns-resolution
の機能は任意になりました。bson-*
ドライバー機能のサポートを廃止します。 これらの機能を選択するには、アプリケーションにbson
を直接依存関係として含めます。読み取り保証 (read concern) 定数と書込み保証 (write concern) 定数のサポートを廃止します。 代わりに、ヘルパー メソッドを使用して
ReadConcern
とWriteConcern
の値を設定します。Collection<T>
タイプにSend + Sync
の制約を追加します。コンプレッサー機能が有効になっていない場合は、
ClientOptions::compressor
フィールドを削除します。ReadPreferenceOptions
フィールドのタイプを変更します。 これらのフィールドのタイプはOption<ReadPreferenceOptions>
になりました。CollectionOptions::human_readable_serialization
オプションを削除します。 代わりに、bson::HumanReadable
ラッパー型を使用してユーザーデータを人間が判読できる形式に直列化します。すべてのオプション構造体ビルダに
Into
特権を介した値変換のサポートを追加します。AggregateOptions
、FindOptions
、FindOneOptions
構造体のcomment_bson
フィールドの名前をcomment
に変更します。
このリリースの詳細については、 v3.0 移行ガイド Githubを参照してください。 .
2.8 の新機能
Rust ドライバー v2.8 のリリースには、次の機能、改善点、修正が含まれています。
MongoDB Atlas Search インデックスマネジメントメソッドを追加します。 これらの方法について詳しくは、「 Atlas Search インデックス 」のガイドを参照してください。
次の動作を実装することで、ネットワーク接続と操作の信頼性を向上させます。
ドライバーが発生したエラーの種類の範囲が再試行されます。
ネットワーク接続の問題が発生している
mongos
インスタンスの再試行を回避します。
このリリースの詳細については、 v2.8.0 リリースのハイライト Githubを参照してください。 .
2.7 の新機能
Rust ドライバー v2.7 のリリースには、次の機能、改善点、修正が含まれています。
CollectionOptions
構造体にhuman_readable_serialization
オプションを追加します。 このオプションは、CRUD メソッドに渡される値を人間が判読できる形式として直列化するようにドライバーに指示します。 このオプションのデフォルト値はfalse
です。警告
human_readable_serialization
の値をtrue
に設定すると、挿入操作の実行が遅くなる可能性があります。データベースコマンドを実行し、応答を
Cursor
タイプとして取得するためのrun_cursor_command()
メソッドを追加します。 詳細については、「コマンドの実行」ガイドを参照してください。tracing-unstable
機能フラグを使用すると、SDAM イベント ログを追加します。Client
と接続管理に次の構成を追加します。max_connecting
:ClientOptions
構造体に設定して、並行して確立できる接続数を指定できるオプション。 このオプションの詳細については、パフォーマンスに関する考慮事項ガイドの「接続プール」を参照してください。Client::warm_connection_pool()
: 接続プールに新しい接続を作成し、より予測可能なパフォーマンスを提供するために使用できるメソッド。 このメソッドを使用すると、ドライバーはmin_pool_size
設定で指定された数まで接続の作成を試みます。Client::shutdown()
: バックグラウンドのタスクを停止し、ハンドラーが削除されるのを待機するために使用できるメソッド。 このメソッドは、イベント ハンドラーを使用して外部リソースを参照する場合に役立ちます。これらのハンドラーは、Client
が閉じられた後でもタスクで使用される可能性があるためです。
このリリースの詳細については、 v2.7.0 リリースのハイライト Githubを参照してください。 .
2.6 の新機能
Rust ドライバー v2.6 のリリースには、次の機能、改善点、修正が含まれています。
Amazon Web ServicesElasticKubernetes Service(EKS)アカウントなどのサービスアカウントに対して Identity and Access Management(IAM)ロールをサポートします。
Cloud KMS(Cloud Key Management System)を使用する場合、GCP 接続サービス アカウントをサポートします。
Azure KMS からのオンデマンド CSFLE 認証情報の取得をサポートします。
Namespace
構造体にFromStr
特性を実装します。 この変更により、"testdb.testcollection"
などのデータベース名とコレクション名を含む string をNamespace
インスタンスに解析できます。ConnectionInfo
構造体にserver_id
をi64
タイプとして含めます。Cursor
によって参照される値のほとんどの型制約を削除します。等価クエリで Queryable Encryption 機能を使用するために、ドライバーの依存関係内の
libmongocrypt
バージョンを更新します。
このリリースの詳細については、 v2.6.0 リリースのハイライト Githubを参照してください。 .