新機能
次の新機能をご覧ください。
今後の重大な変更
MongoDBソフトウェア ライフサイクル スケジュール に従って、 PyMongoの次のマイナー バージョンでは、 MongoDB Server の最小バージョンが4.0 から4.2 に引き上げられます。PyMongo はMongoDB Server 4.0 のサポートを終了しました。 ドライバーのバージョンをアップグレードする方法については、「 PyMongoバージョンのアップグレードガイド 」を参照してください。
4.11 の新機能
PyMongo v 4.11リリースには、次の新機能が含まれています。
Python v3.13+を実行中際にフリースレッド CPython のサポートを追加します。 無料スレッドの詳細については、 Pythonドキュメントを参照してください。
使用中の暗号化には、
pymongocrypt
v1.12 以降が必要です。MongoClient.address()
メソッドとAsyncMongoClient.address()
メソッドは、接続されていないクライアントで呼び出されると正しくブロックされます。IndexModel
クラスとSearchIndexModel
クラスの__repr__
サポートを追加します。次のメソッドに
sort
パラメータを追加します。Collection.update_one()
Collection.replace_one()
operations.UpdateOne()
operations.UpdateMany()
MongoClient.bulkWrite()
メソッドとAsyncMongoClient.bulk_write()
メソッドでは、ordered
またはverboseResults
オプションがTrue
に設定されている場合に未確認の書込みで使用すると、エラーがスローされます。レガシーMongoDB拡張JSON日時表現の使用時に、
DatetimeMS
が'{"$date": X}'
ではなく'{"$date": "X"}'
として誤ってエンコードされるバグを修正します。bson.json_util.loads()
メソッドが無効な$date
値を解析するときにValueError
ではなくIndexError
を発生させるバグを修正します。
4.10 の新機能
PyMongo v 4.10リリースには、次の新機能が含まれています。
新しいバイナリBSONサブタイプ(9 )の一時的なサポートを追加します。これは メソッドと メソッドを使用して ベクトル
bson.binary.Binary.from_vector()
bson.binary.Binary.as_vector()
の効率的なストレージと取得に使用できます。BSONサブタイプ 9 のサポートはbeta段階であり、一般提供リリースより前に変更される可能性があります。アプリケーションでC拡張機能が使用されている場合、
driver.name
クライアントメタデータフィールドに"c"
を追加します。AsyncMongoClient
がデッドロックを発生させる可能性があるバグを修正します。
4.9 の新機能
PyMongo v 4.9リリースには、次の新機能が含まれています。
MongoDB Server 8.0およびPython 3.13のサポートを追加します。
Queryable Encryption範囲クエリのサポートを追加します。 この機能を使用するには、アプリをMongoDB Server 8.0以降に接続する必要があります。 Queryable Encryptionの詳細については、 MongoDB Serverマニュアルの「 Queryable Encryption 」を参照してください。
Motorの代わりに新しい実験的な非同期APIを追加します。 このAPIはbetaであり、一般利用可能なリリースより前に変更される可能性があります。
4.8 の新機能
PyMongo v 4.8リリースには、次の新機能が含まれています。
リリース プロセスに安全なソフトウェア開発ライフ サイクル(SSDC)のオートメーションを実装しました。 Githubリリースには、PyPI でリリースされたディストリビューション ファイルに対応するソフトウェア アイテムの請求書(MBOM)と署名ファイルが含まれます。
bson.binary.Binary
タイプのオブジェクトでは、バイナリ サブタイプがSENSITIVE_SUBTYPE
(8
)の場合、repr()
メソッドは編集されます。変更ストリームで、 フィールドと フィールドの両方が再試行に追加でき、再試行が失敗するバグを修正しました。
startAtOperationTime
resumeToken
Windows では、インポート時間を改善するために、
os.name
のハンドシェイク メタデータをWindows
に変更しました。特にドライバーが多くの操作を同時に実行している場合の
MongoClient
操作のパフォーマンスが向上しました。pyopenssl
モジュールのインポートがAttributeError
とともに失敗する場合に、stdlibssl
モジュールへのフォールバックを追加しました。
4.7 の新機能
PyMongo v 4.7リリースには、次の新機能が含まれています。
、 CommandStartedEvent.server_ connection_id を追加しました
Hello.connection_id
、 コマンドSucceedEvent.server_ connection_id 、および コマンドFailedEvent.server_ connection_idプロパティ。KMSクライアント側フィールドレベル暗号化(KMS )用の ( )プロバイダーの名前サフィックスのサポートを追加しました。CSFLEこの機能には
pymongocrypt
v 1.9 + およびlibmongocrypt
v 1.9 + が必要です。 詳細については、 AutoEncryptionOpts の API ドキュメントを参照してください クラス。BSON ドキュメントを JSON にエンコードする際のパフォーマンスが向上しました。
ClientEncryption.encrypt()
メソッドとClientEncryption.encrypt_expression()
メソッドで、key_id
引数をUUID
オブジェクトとして渡すことができるようになりました。Code
値を含むRawBSONDocument
オブジェクトをインスタンス化しても、エラーが発生しなくなりました。Python 3.12のバグを修正しました Python インタープリタがシャットダウンして
MongoClient
スレッドが起動するときに、エラー メッセージRuntimeError: can't create new thread at interpreter shutdown
がstderr
に書き込まれる可能性があります。Int64
インスタンスが orjson によってエンコードされない場合があるバグを修正しました 。次の例のようなコードが正しく実行されるようになりました。
import orjson from bson import json_util 'a': Int64(1)}, default=json_util.default, option=orjson.OPT_PASSTHROUGH_SUBCLASS) orjson.dumps({