개요
다음 버전의 새로운 기능에 대해 알아보세요:
4.6.2의 새로운 기능
4.6.2 드라이버 릴리스에는 다음과 같은 수정 사항이 포함되어 있습니다.
bsoncxx::v_noabi::types::bson_value::value에 대한get_<type>()접근자가 반환하는 무조건적인 댕글링 참조를 수정합니다. 사용할 수 없는T const&참조 반환 유형이 API의 문서화된 동작을 충족하기 위해T값 반환 유형으로 대체되었습니다.v_noabiAPI에서types::view또는types::value인스턴스로 액세스할 때(예:element::get_*()메서드를 통해) 빈 string 유사 BSON type 값이 null string으로 잘못 변환되는 문제를 수정했습니다. 이는string,symbol,code,regex,dbpointer및codewscopeBSON types에 영향을 미쳤습니다.v1API는 영향을 받지 않았습니다. 여기서는 빈 string이 항상 기본값으로 초기화된 string view로 표시되기 때문입니다.null 문자열과 유사한 BSON 유형 값을 래핑하는
v1::types::value인스턴스를 복사하거나 할당할 때 발생하는v1API의 정의되지 않은 동작을 수정했습니다. 이는string,symbol,code,dbpointer및codewscopeBSON types에 영향을 미쳤습니다. 비어 있지 않은 문자열과 유사한 값은 영향을 받지 않았습니다.
4.6.2 드라이버 릴리스에는 다음 변경 사항도 포함되어 있습니다.
- 최소 필수 C 드라이버 버전을 2.5.8으로 상향 조정합니다.
이 릴리스에 대해 자세히 알아보려면 Github에서 v4.6.2 릴리스 노트를 참조하세요.
4.6.1의 새로운 기능
중요
C++ 드라이버 v4.6.1 CVE-2026-106430.에 대한 수정 사항이 포함되어 있습니다.
MongoDB 보안 업데이트에 대한 최신 정보는 MongoDB 보안 게시판을 참조하세요.
이 릴리스에 대해 자세히 알아보려면 Github에서 v4.6.1 릴리스 노트를 참조하세요.
4.6의 새로운 기능
4.6 드라이버 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
실험적 텍스트 API를 대체하고 다음 변경 사항을 포함하는 사용 중 암호화 string API를 추가합니다.
mongocxx::v1::string_options클래스와 해당mongocxx::string_options별칭을 추가합니다.mongocxx::v1::encrypt_options및mongocxx::options::encrypt클래스에string_opts()메서드를 추가하여string_opts필드를 설정합니다.text_opts및string_opts필드를 모두 설정하면 드라이버는string_opts필드만 사용합니다.k_string열거자를mongocxx::v1::encrypt_options::encryption_algorithm열거형에 추가합니다.k_prefix,k_suffix,k_substring열거형을mongocxx::v1::encrypt_options::encryption_query_type열거형에 추가합니다.
스냅샷 세션에서
atClusterTime매개변수를 노출합니다.
이 출시하다 다음과 같은 사용 중단이 포함됩니다.
이전 목록에 설명된 string API를 사용하기 위해 사용 중 암호화 텍스트 API를 더 이상 사용하지 않습니다. 다음 클래스, 메서드 및 열거자는 실험용으로 문서화되어 있으며 향후 릴리스에서 제거될 수 있습니다.
mongocxx::v1::text_options클래스 및mongocxx::text_options및mongocxx::options::text별칭.mongocxx::v1::encrypt_options및mongocxx::options::encrypt클래스의text_opts()메서드입니다.mongocxx::v1::encrypt_options::encryption_algorithm열거형의k_textPreview열거자입니다.mongocxx::v1::encrypt_options::encryption_query_type열거형의k_prefixPreview,k_suffixPreview,k_substringPreview열거자
이 릴리스에 대해 자세히 알아보려면 Github에서 v4.6.0 릴리스 노트를 참조하세요.
4.5.3의 새로운 기능
4.5.3 드라이버 릴리스에는 다음과 같은 변경 사항이 포함됩니다.
중요
C++ 드라이버 v4.5.3 CVE-2026-88034.에 대한 수정 사항이 포함되어 있습니다.
MongoDB 보안 업데이트에 대한 최신 정보는 MongoDB 보안 게시판을 참조하세요.
이 릴리스에 대해 자세히 알아보려면 Github에서 v4.5.3 릴리스 노트를 참조하세요.
4.5.2의 새로운 기능
4.5.2 드라이버 릴리스에는 다음 같은 변경 사항이 포함됩니다.
이 릴리스에 대해 자세히 알아보려면 Github에서 v4.5.2 릴리스 노트를 참조하세요.
4.5.1의 새로운 기능
4.5.1 드라이버 릴리스에는 다음과 같은 변경 사항이 포함됩니다.
중요
C++ 드라이버 v4.5.1 CVE-2026-81522.에 대한 수정 사항이 포함되어 있습니다.
MongoDB 보안 업데이트에 대한 최신 정보는 MongoDB 보안 게시판을 참조하세요.
이 릴리스에 대해 자세히 알아보려면 Github에서 v4.5.1 릴리스 노트를 참조하세요.
4.5의 새로운 기능
4.5 드라이버 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
mongocxx::v1::client및mongocxx::v1::pool클래스에append_metadata()메서드를 추가합니다. 이 메서드를 사용하여 클라이언트 또는 푸를 초기화한 후 악수 메타데이터를 추가합니다. 이는 프로젝트가 C++ 드라이버를 랩하고 MongoDB Server에 자신을 식별해야 할 때 유용합니다.
이 릴리즈에는 다음과 같은 제거 사항이 포함되어 있습니다.
- 2025년 10월에 지원이 종료된 Visual Studio 2015에 대한 지원을 제거합니다. Windows에서 C++ 드라이버를 빌드하려면 Visual Studio 2017 버전 15.9 이상을 사용하세요.
이 릴리스에 대해 자세히 알아보려면 Github에서 v4.5.0 릴리스 노트를 참조하세요.
4.4의 새로운 기능
4.4 드라이버 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
bsoncxx및mongocxx라이브러리의 안정적 ABI(v1)가 이제 생산 준비되었습니다. 두 라이브러리의 soversion이 이제1으로 설정되었습니다.mongocxx::client_bulk_write클래스를 통한 클라이언트 대량 쓰기 (write) 작업에 대한 지원을 추가합니다. 컬렉션 수준 대량 쓰기(mongocxx::bulk_write)와 다르게 클라이언트 대량 쓰기 (write)는 여러 컬렉션에 걸쳐 쓰기 (write)를 지원하며 동일한 네트워크 페이로드에 삽입, 업데이트 및 삭제를 그룹화할 수 있습니다. 이 기능을 사용하려면 MongoDB Server 8.0 이상이 필요합니다.delete,insert,replace,bulkWrite,findOneAnd*,count,distinct작업에readConcern옵션 지원을 추가합니다.Azure IMDS 및 Azure Functions/App Service Environment에 대한
MONGODB-OIDC인증 메커니즘 지원을 추가합니다. 자세한 내용은 OpenID Connect(OIDC) 인증을 참조하세요.
이 출시하다 다음과 같은 사용 중단이 포함됩니다.
- MongoDB Server 4.2에 대한 지원이 중단됩니다. 자세한 내용은 MongoDB 소프트웨어 수명 주기 일정을 참조하세요.
이 릴리스에 대해 자세히 알아보려면 Github에서 v4.4.0 릴리스 노트를 참조하세요.
4.3.1의 새로운 기능
4.3.1 드라이버 릴리스에서 다음 버그를 수정합니다:
- 4.2.0 에 도입된 회귀를 수정합니다. 여기서
findOneAnd*작업은 옵션이 명시적으로false로 설정하다 되었을 때upsert를true로 잘못 설정하다 .
이 릴리스에 대해 자세히 알아보려면 Github에서 v4.3.1 릴리스 노트를 참조하세요.
4.3의 새로운 기능
4.3 드라이버 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
- 입력 연결 속도 제한 기능에 대한 지원을 추가합니다.
enableOverloadRetargeting및maxAdaptiveRetries옵션을 사용하여 과부하된 서버에 연결할 때 더 나은 동작을 제공할 수 있습니다. 이 기능은 MongoDB 9.0 이상을 실행하는 Atlas 클러스터에서 사용할 수 있습니다. 이러한 옵션에 대해 자세히 학습하려면 연결 옵션 지정 가이드를 참조하세요.
이 출시하다 에는 다음과 같은 버그 수정이 포함되어 있습니다.
bsoncxx::vector::iterators에 선언된 클래스 유형에 대해 누락된 첨자 연산자를 추가합니다.
이 출시하다 다음과 같은 사용 중단이 포함됩니다.
- 10월 2025에 수명이 종료된 Visual Studio 2015에 대한 지원 중단합니다. Visual Studio 2017 이상을 사용하세요.
이 출시하다 에 대해 자세히 학습 Github 의 v4.3 릴리스 노트 참조하세요.
4.2의 새로운 기능
4.2 드라이버 릴리스에는 다음과 같은 새로운 기능이 포함되어 있습니다.
C++ 드라이버 Stable ABI(v1.0)를 소개합니다. 실험용입니다. 이 변경의 일환으로 불안정한 ABI에 주요 호환성이 손상되는 변경 사항이 적용되었습니다. 드라이버 의 v4.2 로 업그레이드 때는 애플리케이션 에서 Stable ABI를 사용하도록 마이그레이션하는 것이 좋습니다.
bsoncxx 내보내기 매크로 대신 mongocxx 내보내기 매크로를 사용하여
mongocxx::v_noabi::options::index의storage_engine() const를 올바르게 내보냅니다.변경 스트림 헬퍼
mongocxx::v1::change_stream::next()및mongocxx::v1::change_stream::try_next()를 추가하여 변경 스트림 반복을 간소화합니다.mongocxx::v1::text_options를 통해 사용 중인 암호화 텍스트 인덱스에 대한 실험적 지원 추가합니다.MongoDB Server 4.2에 대한 지원 제거합니다. 자세한 내용은 MongoDB 소프트웨어 수명 주기 일정을 참조하세요.
macOS 11 및 macOS 12 (v4.1에서 더 이상 사용되지 않음)에 대한 지원 제거.
MongoDB C 드라이버 2.0.0 이상과의 일관성 위해
<name>Config.cmake및<name>ConfigVersion.cmake패턴 사용하도록 CMake 패키지 구성 파일의 이름을 변경합니다.mongocxx::v_noabi::instance::current()을(를) 더 이상 사용하지 않습니다. 다음 코드와 같이 모든mongocxx작업에 유효한 비전역instance변수를 인스턴스화하는 것이 좋습니다.int main() { mongocxx::instance instance; ...}대체 구현은
mongo-cxx-driverGitHub 리포지토리의 드라이버 4.2 변경 로그 를 참조하세요.
이 출시하다 에는 다음과 같은 버그 수정이 포함되어 있습니다.
mongocxx::result::insert_many결과를 ObjectId가 아닌 ID와 비교할 때 드라이버 잘못 예외를 발생시키는 문제를 수정합니다.
이 출시하다 에 대해 자세히 학습 Github 의 v4.2 릴리스 노트 참조하세요.
4.1의 새로운 기능
v4.1 운전자 출시하다 에는 다음과 같은 새로운 기능이 포함되어 있습니다.
mongocxx::v_noabi::options::index에 새로 추가된storage_engine()메서드에 대한storage_options()메서드를 더 이상 사용하지 않습니다.v4.0 출시하다 에 명시된 C 운전자 API 버전 버그 를 수정합니다.
원래 v4.0에 대해 발표된
ENABLE_TESTS구성 기본값 옵션에 변경 사항을 추가합니다. 자세한 내용은 업그레이드 페이지의 호환성 호환성이 손상되는 변경 설명 을 참조하세요.
이 출시하다 에 대해 자세히 학습 Github 의 v4.1 릴리스 노트 참조하세요.
4.0의 새로운 기능
v4.0 운전자 출시하다 에는 다음과 같은 새로운 기능이 포함되어 있습니다.
mongocxx::options::change_stream인스턴스 의start_at_operation_time필드 에 대한 getter 메서드를 추가합니다.
출시하다 에는 다음 버그가 포함되어 있습니다.
- CMake 프로젝트 두 번 이상 구성된 경우 CMake가 자동으로 다운로드된 C 운전자 의 API 버전을
0.0.0로 잘못 설정하다 , 초기 구성 중에BUILD_VERSION이 명시적으로 설정하다 경우 C++ 드라이버의 API 버전과 동일한 값으로 잘못 설정할 수 있습니다. CMake는find_package()를 사용하여 기존 C 운전자 설치를 찾을 수 없는 경우에만 C++ 운전자 로 C 운전자 자동으로 다운로드합니다. 이 버그는 향후 패치 출시하다 에서 수정될 예정입니다.
이 출시하다 에 대해 자세히 학습 Github 의 v4.0 릴리스 노트 참조하세요.
3.11의 새로운 기능
경고
호환성이 손상되는 변경
C++ 운전자 v3.11 호환성이 손상되는 변경이 포함되어 있습니다. 자세한 내용은 드라이버 버전 업그레이드 가이드 에서 버전 을(를) 참조하세요.3.11
v3.11 운전자 출시하다 에는 다음과 같은 새로운 기능이 포함되어 있습니다.
MongoDB Server v8.0 에 대한 지원 을 추가합니다.
Queryable Encryption 범위 쿼리에 대한 지원 을 추가합니다. 이 기능 을 사용하려면 앱 이 MongoDB Server 8.0 이상에 연결되어야 합니다. Queryable Encryption 에 대한 자세한 내용은 MongoDB Server 매뉴얼의 Queryable Encryption 을 참조하세요.
mongocxx::v_noabi::bulk_write에 대한empty()멤버 함수를 추가합니다.
출시하다 에는 다음 버그가 포함되어 있습니다.
- CMake 프로젝트 두 번 이상 구성된 경우 CMake가 자동으로 다운로드된 C 운전자 의 API 버전을
0.0.0로 잘못 설정하다 , 초기 구성 중에BUILD_VERSION이 명시적으로 설정하다 경우 C++ 드라이버의 API 버전과 동일한 값으로 잘못 설정할 수 있습니다. CMake는find_package()를 사용하여 기존 C 운전자 설치를 찾을 수 없는 경우에만 C++ 운전자 로 C 운전자 자동으로 다운로드합니다. 이 버그는 향후 패치 출시하다 에서 수정될 예정입니다.
이 출시하다 에 대해 자세히 학습 Github 의 v3.11 릴리스 노트 참조하세요.
3.10의 새로운 기능
경고
호환성이 손상되는 변경
C++ 운전자 v3.10 호환성이 손상되는 변경이 포함되어 있습니다. 자세한 내용은 드라이버 버전 업그레이드 가이드 에서 버전 을(를) 참조하세요.3.10
v3.10.0 운전자 출시하다 에는 다음과 같은 새로운 기능이 포함되어 있습니다.
bsoncxx및mongocxx클래스 유형의 비정의 선언을 제공하는 정방향 헤더를 추가합니다. 운전자 는 라이브러리 엔터티의 사용자 정의 정방향 선언을 지원 하지 않습니다. 라이브러리 엔터티의 선언 또는 정의를 얻으려면 항상 해당 헤더를 포함하세요.CMake 옵션
ENABLE_BSONCXX_USE_POLY_IMPLS을 사용하면 폴리필 라이브러리가 요청되지 않은 경우 기본값 으로 C++17 폴리필의bsoncxx구현을 선택할 수 있습니다. 이 옵션은 기본값OFF입니다.CMake 옵션
BSONCXX_POLY_USE_IMPLS을 사용하면 외부 라이브러리 또는 C++ 표준 라이브러리 대신 C++17 폴리필의bsoncxx구현을 선택할 수 있습니다. 이 옵션은 기본값OFF입니다.bsoncxx::v_noabi및mongocxx::v_noabi네임스페이스는 더 이상 인라인으로 선언되지 않습니다. 루트 네임스페이스 선언은 계속 지원되며 이전 정의와 동일하게 유지될 것으로 예상됩니다. 예를 예시bsoncxx::document는 여전히bsoncxx::v_noabi::document과 동일하고mongocxx::client는 여전히mongocxx::v_noabi::client와 동일합니다.기본값 라이브러리 파일 이름이 MSVC(CMake의
MSVC변수에 의해 감지됨)로 컴파일되면 ABI 태그를 지정하다 string 과 함께 포함됩니다. 이러한 문자열은 다음과 유사합니다.bsoncxx-v_noabi-rhs-x64-v142-md.lib이 동작을 비활성화하려면 CMake 구성의 일부로
ENABLE_ABI_TAG_IN_LIBRARY_FILENAMES=OFF을(를) 설정하다 합니다.다음과 같이 ABI 태그를 지정하다 string 을 pkg-config 메타데이터 파일 이름에 포함할 수도 있습니다.
libbsoncxx-v_noabi-rhs-x64-v142-md.pc이 동작을 활성화 하려면
ENABLE_ABI_TAG_IN_LIBRARY_FILENAMES=ON및ENABLE_ABI_TAG_IN_PKGCONFIG_FILENAMES=ON를 CMake 구성의 일부로 설정하다 합니다.
이 출시하다 에 대해 자세히 학습 Github 의 v3.10 릴리스 노트 참조하세요.
3.9의 새로운 기능
v3.9 운전자 출시하다 에는 다음과 같은 새로운 기능이 포함되어 있습니다.
이제 Docker 허브에서 C++ 운전자 컨테이너 이미지를 사용할 수 있습니다.
사용자가 제공하지 않는 경우 운전자 는 MongoDB C 드라이버 종속성을 자동으로 다운로드합니다.
운전자 는 더 이상
all대상의 일부로 테스트를 빌드하지 않습니다. 테스트를 빌드 하려면 CMake 구성의 일부로BUILD_TESTING=ON을(를) 설정하다 합니다.CMake 옵션
MONGOCXX_OVERRIDE_DEFAULT_INSTALL_PREFIX을 추가합니다. 이 옵션을TRUE로 설정하다 하면CMAKE_INSTALL_PREFIX옵션의 기본값은 빌드 디렉토리 입니다. 이 옵션의 기본값 은TRUE입니다.MongoDB Search 인덱스관리를 위한 API 추가합니다.
VERSIONINFO리소스 를bsoncxx.dll및mongocxx.dll에 추가합니다.APM 콜백 에서 예외를 발생시키는 것이 정의되지 않은 동작임을 명시적으로 문서화합니다.
CMake 빌드 단계에서 MNMLSTC 코어 헤더를 조기에 설치하지 않습니다.
설치된 모든 C++ 운전자 패키지 구성에 대해
find_dependency()를 통해 MongoDB C 드라이버 CMake 패키지 를 찾아야 합니다.
이 출시하다 에 대해 자세히 학습 Github 의 v3.9 릴리스 노트 참조하세요.