次の新機能をご覧ください。
2.23の新機能
重要
MongoDB Serverバージョン 3.6 および 4.0 のサポートはこのリリースでは非推奨となり、バージョン 2.24 で削除されます。 MongoDB Server 4.0 またはそれ以前のバージョンを使用している場合は、バージョン 4.2 以降にアップグレードしてください。
Rubyドライバー 2.23 リリースには、次の新機能、変更点、バグ修正が含まれています。
OpenTelemetry でドライバー操作を追跡するためのサポートを追加します。有効にすると、この機能はRubyドライバー操作と対応するサーバーコマンドを追跡します。
tracingオプションをtrueに設定することで、Mongo::Clientインスタンスでトレースを有効にするか、OTEL_RUBY_INSTRUMENTATION_MONGODB_ENABLED環境変数を介してグローバルに設定できます。クライアント側フィールドレベル暗号化(CSFLE) タイプをRubyタイプに変換するための
csfle_convert_to_ruby_types構成オプションを追加します。クライアントのメタデータログのプラットフォームフィールドにRubyエンジン(例、)を追加します。
ラベルが 3 つ未満の有効なホスト名を使用する SRV 接続文字列を許可します。
は
srv_max_hostsURI オプションを正しく実装します。Ruby4.0 のサポートを追加しました。
ゼロ(無限)と正のタイムアウト値を正しく処理することで、
with_transactionのクライアント側操作タイムアウト(CSO)処理を修正します。
このリリースの詳細については、 Githubの v2.23 リリースノート を参照してください。
2.22の新機能
Rubyドライバー 2.22 リリースには、次の新機能、変更、改善が含まれています。
update_oneメソッドとreplace_oneメソッドの並べ替えオプションを追加します。詳しくは、update_one および replace_one. のAPIドキュメントを参照してください。接続プールのチェックアウト中に
SocketErrorの処理に再試行ロジックを追加します。サーバーが
unknownとしてマークされている場合に発生するArgumentErrorを修正します。
このリリースの詳細については、 Githubの v2.22 リリースノート を参照してください。
2.21.1の新機能
Rubyドライバー 2.21.1 リリースには、次の新機能、変更点、改善点が含まれています。
Mongo::SearchIndex::View#create_oneとMongo::SearchIndex::View#create_many検索インデックス作成メソッドにtypeパラメータを追加します。これにより、 MongoDB ベクトル検索インデックスをプログラムで作成できます。詳細と例については、MongoDB 検索インデックスおよび MongoDB ベクトル検索インデックスのガイドを参照してください。Ruby 3.3 との互換性を追加します。詳細については、互換性を参照してください。
BSON v5.1
bson gem は、 RubyにおけるBSON仕様の実装です。bson v5.1Rubyドライバー v2.21.1 に付属リリース。
bson 5.1 リリースには、次の新機能、変更点、改善点が含まれています。
数値のベクトルを表す
BSON::Vector型を追加します。詳細については、BSONガイドのBSON::Vectorセクションを参照してください。BSON::Documentオブジェクトでは、#deep_symbolize_keys!メソッドと#symbolize_keys!メソッドの使用はサポートされていません。以前のバージョンでは、#symbolize_keys!メソッドはBSON::Documentで使用されるとArgumentErrorを発生させましたが、#deep_symbolize_keys!はそのように動作せず、BSON::DocumentではなくHashのみを返します。このリリースでは、
BSON::Documentインスタンスで#deep_symbolize_keys!を使用する際の警告が追加されました。bsonv6.0 では、このアクションはエラーになります。
このリリースの詳細については、 Githubの v2.21.1 リリースノート を参照してください。
2.21の新機能
Rubyドライバー 2.21 リリースには、次の新機能が含まれています。
クライアント側操作タイムアウト(CSO)機能をサポートし、タイムアウトに関連するオプションのほとんどを単一の
timeout_msオプションの下で統合します。MongoDB Serverバージョン 8.0 をサポートします。
Queryable Encryptionによる範囲 v2 クエリのサポート(新しい
trim_factorパラメータを含む)Queryable Encryptionの詳細については、 MongoDB ServerマニュアルのQueryable Encryptionを参照してください。
このリリースの詳細については、 Githubの v2.21 リリースノート を参照してください。
2.20の新機能
Rubyドライバー 2.20 リリースには、次の新機能が含まれています。
Ruby 2.5 および 2.6 のサポートを廃止します。Ruby 2.7 および JRuby 9.2 のサポートを廃止し、次のマイナー ドライバー バージョンで廃止します。JRuby 9.4 のサポートを追加します。
新しいリリースの Ruby- BSONバージョン 5.0 をサポートします。
ホストとオプションの間にスラッシュを入れない接続文字列を許可します。例、
mongodb://example.com?w=1とmongodb://example.com/?w=1は両方とも現在有効な接続文字列です。分析目的で、クライアント環境のコンテナランタイムとオーケストレーションメタデータをサーバーに送信します。
ホストを CosmosDB ( Azure)または DocumentDB(Amazon)のインスタンスとして検出すると、ログに警告メッセージを書込みます。
可能な場合は、 シャーディングされたトポロジー内の別の
mongosインスタンスで読み取りまたは書込み操作を再試行します。
このリリースの詳細については、 Githubの v2.20 リリースノート を参照してください。