다음 버전의 새로운 기능에 대해 알아보세요:
4.15의 새로운 기능
PyMongo v4.15 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
Queryable Encryption 접두사, 접미사 및 하위 문자열 쿼리에 대한 실험적 지원 추가합니다. 이러한 기능을 사용하려면
pymongocrypt
1.16 이상이 필요합니다. QE에 대해 자세히 학습 사용 중 암호화 참조하세요.참고
실험적 기능
Queryable Encryption 접두사, 접미사 및 하위 문자열 쿼리는 불안정하며 정식 버전(GA)이 될 때까지 보안이 보장되지 않습니다. 실험적 워크로드에서만 사용하세요.
bson.codec_options.TypeRegistry
클래스를 사용하여 BSONDecimal128
값을 Pythondecimal.Decimal
값으로 인코딩 및 디코딩하기 위한 지원 추가합니다. 다음 예시bson.decimal128.DecimalEncoder
클래스를 사용하여Decimal128
값을decimal.Decimal
값으로 인코딩하는 방법을 보여 줍니다.opts = CodecOptions(type_registry=TypeRegistry([DecimalEncoder()])) bson.encode({"d": decimal.Decimal('1.0')}, codec_options=opts) Windows ARM64 휠에 대한 지원 추가합니다.
4.14 버전의 새로운 기능
PyMongo v4.14 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
무료 스레딩 기능을 포함하여 Python 3.14에 대한 예비 지원 추가합니다. 운전자 아직 Python 3.14에서 다음 기능을 지원 하지 않습니다.
하위 인터프리터(
concurrent.interpreters
)암호화 사용한 프리 스레딩
mod_wsgi
Python 3.13의 프리 스레딩에 대한 실험적 지원 제거합니다.
bson.codec_options.TypeRegistry
클래스에 다음 속성을 추가합니다..codecs
:TypeRegistry
객체의 유형별 코덱에 대한 액세스 제공합니다..fallback_encoder
:TypeRegistry
객체의 폴백 인코더에 대한 액세스 제공합니다.
MongoClient
및AsyncMongoClient
클래스에append_metadata()
메서드를 추가합니다. 이 메서드를 사용하여 온디맨드 방식으로 클라이언트 메타데이터 서버 로 보낼 수 있습니다.프라이머리 읽기 참조를 사용할 때 서버 선택 성능을 개선합니다.
4.13의 새로운 기능
PyMongo v4.13 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
PyMongo 비동기 API 일반적으로 사용할 수 있습니다. PyMongo 운전자 또는 모터 라이브러리에서 PyMongo 비동기 API 로 마이그레이션 방법을 학습하려면 PyMongo 비동기로 마이그레이션 가이드를 참조하세요.
w="majority"
을 사용할 때WriteConcern()
를 평가할 수 없는 버그를 수정합니다.
이 출시하다 에서 해결된 문제의 전체 목록을 보려면 Jira 출시하다 노트를 참조하세요.
4.12의 새로운 기능
PyMongo v4.12 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
AutoEncryptionOpts
에key_expiration_ms
인수를 사용하여 DEK 캐시 수명 구성에 대한 지원 추가합니다.MongoDB Server 8.1 이상의 CSFLE 및 QE에서
$lookup
에 대한 지원 추가합니다.gridfs.asynchronous.grid_file.AsyncGridFSBucket.rename_by_name()
및gridfs.grid_file.GridFSBucket.rename_by_name()
메서드를 추가합니다. 이러한 메서드를 사용하면 수정본이 여러 개 있는 파일의 이름을 더 효과적으로 변경할 수 있습니다.gridfs.asynchronous.grid_file.AsyncGridFSBucket.delete_by_name()
및gridfs.grid_file.GridFSBucket.delete_by_name()
메서드를 추가합니다. 이러한 방법을 사용하면 수정본이 여러 개 있는 파일을 더 효과적으로 삭제할 수 있습니다.AsyncMongoClient
객체가 생성 시mongodb+srv://
연결 문자열에 대해 더 이상 DNS 확인을 수행하지 않습니다.asyncio
루프 차단을 방지하기 위해 PyMongo 이제 클라이언트 처음 연결될 때까지 해결을 연기합니다.pymongo.asynchronous.collection.AsyncCollection.distinct()
및pymongo.collection.Collection.distinct()
메서드에 인덱스 힌팅 지원 추가합니다.PrimaryPreferred
,Secondary
,SecondaryPreferred
및Nearest
읽기 설정에 대한hedge
매개변수를 더 이상 사용하지 않습니다.hedge
에 대한 지원은 PyMongo v5.0에서 제거됩니다.PyMongo 비동기 운전자 에서 PyOpenSSL 지원 제거합니다.
3 개 미만의 부분으로 구성된 유효한 SRV 호스트 이름을 허용합니다.
4.11의 새로운 기능
PyMongo v4.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()
ordered
또는verboseResults
옵션이True
로 설정하다 상태에서 승인되지 않은 쓰기와 함께MongoClient.bulkWrite()
및AsyncMongoClient.bulk_write()
메서드를 사용하면 오류 오류가 발생합니다.레거시 MongoDB 확장 JSON 날짜/시간 표현을 사용할 때
DatetimeMS
가'{"$date": X}'
대신'{"$date": "X"}'
로 잘못 인코딩되는 버그를 수정합니다.잘못된
$date
값을 구문 분석할 때bson.json_util.loads()
메서드가ValueError
대신IndexError
를 발생시키는 버그를 수정합니다.
4.10 버전의 새로운 기능
PyMongo v4.10 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
bson.binary.Binary.from_vector()
및bson.binary.Binary.as_vector()
메서드를 사용하여 벡터 의 효율적인 저장 및 검색에 사용할 수 있는 새로운 바이너리 BSON 하위 유형(9)에 대한 잠정 지원 을 추가합니다. BSON 하위 유형 9 에 대한 지원은 beta 이며 일반적으로 사용 가능한 출시하다 전에 변경될 수 있습니다.애플리케이션 이 C 확장을 사용할 때
driver.name
클라이언트 메타데이터 필드 에"c"
를 추가합니다.AsyncMongoClient
의 교착 상태를 유발할 수 있는 버그를 수정합니다.
4.9의 새로운 기능
PyMongo v4.9 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
MongoDB Server 8.0 및 Python 3.13 에 대한 지원 을 추가합니다.
Queryable Encryption 범위 쿼리에 대한 지원 을 추가합니다. 이 기능 을 사용하려면 앱 이 MongoDB Server 8.0 이상에 연결되어야 합니다. Queryable Encryption 에 대한 자세한 내용은 MongoDB Server 매뉴얼의 Queryable Encryption 을 참조하세요.
를 대체할 새로운 실험적 비동기 API Motor 를 추가합니다. 이 API 는 beta 이며 정식 버전이 출시하다 되기 전에 변경될 수 있습니다.
4.8의 새로운 기능
PyMongo v4.8 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
출시하다 프로세스 에서 보안 소프트웨어 개발 라이프사이클(SSDLC) 자동화 를 구현했습니다. Github 릴리스에는 PyPI에서 릴리스된 배포 파일에 해당하는 소프트웨어 BOM(Bill of Material)과 서명 파일이 포함됩니다.
bson.binary.Binary
유형의 객체에서 이진 하위 유형이SENSITIVE_SUBTYPE
(8
)인 경우repr()
메서드가 수정됩니다.변경 스트림에서
startAtOperationTime
및resumeToken
필드가 모두 재시도 시도에 추가되어 재시도가 실패하는 버그가 수정되었습니다.Windows 에서 가져오기 시간을 개선하기 위해
os.name
에 대한 핸드셰이크 메타데이터 를Windows
로 변경했습니다.특히 운전자 가 많은 작업을 동시에 실행 때
MongoClient
작업의 성능이 향상되었습니다.pyopenssl
모듈 가져오기가AttributeError
와 함께 실패할 경우 stdlibssl
모듈에 폴백을 추가했습니다.
4.7의 새로운 기능
PyMongo v4.7 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
Hello.connection_id
, CommandStartedEvent.server_connection_id, CommandSucceededEvent.server_connection_id 및 CommandFailedEvent.server_connection_id 를 추가했습니다. 속성.클라이언트 측 필드 레벨 암호화 (CSFLE)를 위한 KMS (KMS ) 제공자의 이름 접미사에 대한 지원 추가되었습니다. 이 기능 사용하려면
pymongocrypt
v1.9+ 및libmongocrypt
v1.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({