Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Notas de versión

Descubra qué hay de nuevo en:

Advertencia

cambio disruptivo

Controlador C++ v4.6 contiene cambios disruptivos. Para obtener más información, consulte Versión 4.6 en la guía Actualizar versiones de controladores.

La 4.6 versión de driver incluye las siguientes funcionalidades:

  • Agrega la API de cadena de cifrado en uso, que reemplaza la API de texto experimental e incluye los siguientes cambios:

    • Agrega la clase mongocxx::v1::string_options y su alias mongocxx::string_options.

    • Agrega el método string_opts() a las clases mongocxx::v1::encrypt_options y mongocxx::options::encrypt, que establece el campo string_opts. Si se establecen los campos text_opts y string_opts, el controlador solo utiliza el campo string_opts.

    • Agrega el enumerador k_string a la enumeración mongocxx::v1::encrypt_options::encryption_algorithm.

    • Agrega los enumeradores k_prefix, k_suffix y k_substring a la enumeración mongocxx::v1::encrypt_options::encryption_query_type.

  • Expone el parámetro atClusterTime en las sesiones de instantáneas.

La versión incluye la siguiente obsolescencia:

  • Se desaconseja el uso de la API de cifrado de texto en favor de la API de cadenas descrita en la lista anterior. Las siguientes clases, métodos y enumeradores siguen documentados como experimentales y podrían eliminarse en una versión futura:

    • La clase mongocxx::v1::text_options y sus alias mongocxx::text_options y mongocxx::options::text.

    • El método text_opts() en las clases mongocxx::v1::encrypt_options y mongocxx::options::encrypt.

    • El enumerador k_textPreview en la enumeración mongocxx::v1::encrypt_options::encryption_algorithm.

    • Los enumeradores k_prefixPreview, k_suffixPreview y k_substringPreview en la enumeración mongocxx::v1::encrypt_options::encryption_query_type.

Para obtener más información sobre esta versión, consulte las notas de la versión46v..0 en GitHub.

El 4.5.3 La versión de driver incluye el siguiente cambio:

Importante

El controlador C++ v4.5.3 incluye una corrección para CVE-202688034-.

Para obtener la información más reciente sobre las actualizaciones de seguridad de MongoDB, consulte los boletines de seguridad de MongoDB.

Para obtener más información sobre esta versión, consulte las notas de la versión45v..3 en GitHub.

El 4.5.2 La versión de driver incluye los siguientes cambios:

Importante

C++ driver v4.5.2 incluye correcciones para los siguientes problemas de seguridad:

Para obtener la información más reciente sobre las actualizaciones de seguridad de MongoDB, consulte los boletines de seguridad de MongoDB.

Para obtener más información sobre esta versión, consulte las notas de la versión45v..2 en GitHub.

El 4.5.1 La versión de driver incluye el siguiente cambio:

Importante

El controlador C++ v4.5.1 incluye una corrección para CVE-202681522-.

Para obtener la información más reciente sobre las actualizaciones de seguridad de MongoDB, consulte los boletines de seguridad de MongoDB.

Para obtener más información sobre esta versión, consulte las notas de la versión45v..1 en GitHub.

La versión de driver 4.5 incluye la siguiente funcionalidad:

  • Añade el método append_metadata() a las clases mongocxx::v1::client y mongocxx::v1::pool. Utilice este método para añadir metadatos de protocolo de enlace a un cliente o grupo después de inicializarlo. Esto es útil si su proyecto envuelve el driver de C++ y debe identificarse con MongoDB Server.

La versión incluye la siguiente eliminación:

  • Remueve la compatibilidad con Visual Studio 2015, que llegó al final de su vida útil en octubre de 2025. Para compilar el driver de C++ en Windows, utilice Visual Studio 2017 versión 15.9 o posterior.

Para obtener más información sobre esta versión, consulte las notas de la versión45v..0 en GitHub.

Advertencia

cambio disruptivo

Controlador C++ v4.4 contiene cambios disruptivos. Para obtener más información, consulte Versión 4.4 en la guía Actualizar versiones de controladores.

La 4.4 versión de driver incluye las siguientes funcionalidades:

  • La ABI estable (v1) para las librerías bsoncxx y mongocxx ya está lista para la producción. La soversion de ambas librerías ahora está establecida en 1.

  • Agrega soporte para operaciones de guardar masiva de clientes a través de la clase mongocxx::client_bulk_write. A diferencia de la escritura masiva a nivel de colección (mongocxx::bulk_write), la escritura masiva de clientes admite escrituras en varias colecciones y puede agrupar inserciones, actualizaciones y eliminaciones en la misma carga de red. Esta funcionalidad requiere MongoDB Server 8.0 o posterior.

  • Agrega soporte para la opción readConcern a las operaciones delete, insert, replace, bulkWrite, findOneAnd*, count y distinct.

  • Agrega soporte para el mecanismo de autenticación MONGODB-OIDC con Azure IMDS y Azure Functions/App Service Environment. Para obtener más información, consulte Autenticación de OpenID Connect (OIDC).

La versión incluye la siguiente obsolescencia:

Para obtener más información sobre esta versión, consulte las notas de la versión44v..0 en GitHub.

El 4.3.1 el lanzamiento del controlador corrige el siguiente error:

  • Corrige una regresión introducida en 4.2.0 donde findOneAnd* operaciones configuraron incorrectamente upsert a true cuando la opción se configuró explícitamente en false.

Para obtener más información sobre esta versión, consulte las notas de la versión43v..1 en GitHub.

Advertencia

cambio disruptivo

Controlador C++ v4.3 contiene cambios disruptivos. Para obtener más información, consulte Versión 4.3 en la guía Actualizar versiones de controladores.

La 4.3 versión de driver incluye las siguientes funcionalidades:

  • Agrega compatibilidad con las funcionalidades de limitación de la tasa de conexión de entrada. Puedes usar las opciones enableOverloadRetargeting y maxAdaptiveRetries para mejorar el comportamiento cuando te conectas a servidores sobrecargados. Estas funcionalidades estarán disponibles en los clústeres de Atlas que ejecuten MongoDB 9.0 y versiones posteriores. Para aprender más sobre estas opciones, consulta la guía Especificar opciones de conexión.

La versión incluye la siguiente corrección de errores:

  • Agrega operadores subíndices que faltan para los tipos de clase declarados en bsoncxx::vector::iterators.

La versión incluye la siguiente obsolescencia:

  • Se suspende la compatibilidad con Visual Studio 2015, que quedó obsoleto en octubre de 2025. Usa Visual Studio 2017 o posterior.

Para obtener más información sobre esta versión, consulte las 43 notas de la versión v. en GitHub.

Advertencia

cambio disruptivo

Controlador C++ v4.2 contiene cambios disruptivos. Para obtener más información, consulte Versión 4.2 en la guía Actualizar versiones de controladores.

La 4.2 versión de driver incluye las siguientes funcionalidades:

  • Introduce el ABI estable del controlador de C++ (v1.0) para uso experimental. Como parte de este cambio, se realizaron importantes cambios disruptivos en la ABI inestable. Cuando actualices a la v4.2 del controlador, te recomendamos migrar al uso del ABI Estable en tu aplicación.

  • Exporta correctamente el storage_engine() const en mongocxx::v_noabi::options::index utilizando macros de exportación de mongocxx en lugar de macros de exportación de bsoncxx.

  • Se añaden los asistentes para flujos de cambios mongocxx::v1::change_stream::next() y mongocxx::v1::change_stream::try_next() para facilitar la iteración de flujos de cambios.

  • Añade compatibilidad experimental para índices de texto de encriptación en uso mediante mongocxx::v1::text_options.

  • Se elimina el soporte para MongoDB Server 4.2. Para obtener más información, consulta los cronogramas de ciclo de vida del software de MongoDB.

  • Remueve la compatibilidad con macOS 11 y macOS 12 (en desuso desde la versión4.1).

  • Renombra los archivos de configuración de paquetes CMake para usar el patrón <name>Config.cmake y <name>ConfigVersion.cmake, para mantener la coherencia con MongoDB C Driver 2.0.0 y versiones más nuevas.

  • Obsoleta mongocxx::v_noabi::instance::current(). Recomendamos instanciar una variable no global instance que sea válida para todas las operaciones mongocxx, como se muestra en el siguiente código:

    int main() {
    mongocxx::instance instance;
    ...
    }

    Para implementaciones alternativas, consulte el registro de cambios del controlador.42 en el mongo-cxx-driver repositorio de GitHub.

La versión incluye la siguiente corrección de errores:

  • Corrige un problema en el que el controlador arrojaba incorrectamente una excepción al comparar un resultado mongocxx::result::insert_many con identificadores que no son ObjectId.

Para obtener más información sobre esta versión, consulte las 42 notas de la versión v. en GitHub.

Advertencia

cambio disruptivo

Controlador C++ v4.1 contiene cambios disruptivos. Para obtener más información, consulte Versión 4.1 en la guía Actualizar versiones de controladores.

La versión v4.1 del controlador incluye las siguientes funcionalidades:

  • Obsoleta el método storage_options() por el nuevo método storage_engine() en mongocxx::v_noabi::options::index

  • Agrega soporte para el tipo de vector binario BSON.

    Para obtener más información, consulta los siguientes recursos:

  • Corrige el bug de la versión de la API del driver C observado en la versión v4.0

  • Agrega un cambio a la opción de configuración por defecto ENABLE_TESTS que se anunció originalmente para la v4.0. Para obtener más información, consulta la descripción del cambio disruptivo en la página de actualización.

Para obtener más información sobre esta versión, consulte las 41 notas de la versión v. en GitHub.

Advertencia

cambio disruptivo

Controlador C++ v4.0 contiene cambios disruptivos. Para obtener más información, consulte Versión 4.0 en la guía Actualizar versiones de controladores.

La versión v4.0 del controlador incluye las siguientes funcionalidades:

  • Agrega un método getter para el campo start_at_operation_time de una instancia mongocxx::options::change_stream.

La versión incluye el siguiente error:

  • CMake podría configurar incorrectamente la versión de la API para un driver de C de descarga automática a 0.0.0 cuando el proyecto de CMake se configura más de una vez o al mismo valor que la versión de la API del driver de C++ cuando BUILD_VERSION se configura explícitamente durante la configuración inicial. CMake solo descargará automáticamente el driver C junto con el driver C++ si no puede encontrar una instalación existente de driver C utilizando find_package(). Este error se corregirá en una próxima actualización de parche.

Para obtener más información sobre esta versión, consulte las 40 notas de la versión v. en GitHub.

Advertencia

cambio disruptivo

Controlador C++ v3.11 contiene cambios disruptivos. Para obtener más información, consulte Versión 3.11 en la guía Actualizar versiones de controladores.

La versión v3.11 del controlador incluye las siguientes funcionalidades:

  • Agrega soporte para MongoDB Server v8.0.

  • Agrega soporte para consultas de rango de Queryable Encryption. Para utilizar esta funcionalidad, tu aplicación debe conectarse a MongoDB Server 8.0 o posterior. Para obtener más información sobre Queryable Encryption, consulta Queryable Encryption en el manual de MongoDB Server.

  • Agrega la función nodo empty() para mongocxx::v_noabi::bulk_write.

La versión incluye el siguiente error:

  • CMake podría configurar incorrectamente la versión de la API para un driver de C de descarga automática a 0.0.0 cuando el proyecto de CMake se configura más de una vez o al mismo valor que la versión de la API del driver de C++ cuando BUILD_VERSION se configura explícitamente durante la configuración inicial. CMake solo descargará automáticamente el driver C junto con el driver C++ si no puede encontrar una instalación existente de driver C utilizando find_package(). Este error se corregirá en una próxima actualización de parche.

Para obtener más información sobre esta versión, consulte las 311 notas de la versión v. en GitHub.

Advertencia

cambio disruptivo

Controlador C++ v3.10 contiene cambios disruptivos. Para obtener más información, consulte Versión 3.10 en la guía Actualizar versiones de controladores.

El v3.10.0 la versión de driver incluye las siguientes nuevas funcionalidades:

  • Agrega encabezados reenvío que proporcionan declaraciones no definitorias de bsoncxx y mongocxx tipos de clase. El driver no admite declaraciones adelantadas definidas por el usuario de ninguna entidad de la librería. Para obtener la declaración o definición de una entidad de la librería, incluye siempre el encabezado correspondiente.

  • La opción CMake ENABLE_BSONCXX_USE_POLY_IMPLS permite seleccionar implementaciones bsoncxx de polyfills de C++17 por defecto cuando no se solicita ninguna librería polyfill. Esta opción es OFF por defecto.

  • La opción CMake BSONCXX_POLY_USE_IMPLS permite seleccionar bsoncxx implementaciones de polirrellenos C++17 en lugar de librerías externas o la librería estándar de C++. Esta opción está OFF por defecto.

  • Los espacios de nombres bsoncxx::v_noabi y mongocxx::v_noabi ya no se declaran en línea. Las declaraciones del espacio de nombres raíz siguen siendo compatibles y se espera que sigan siendo equivalentes a sus definiciones anteriores. Por ejemplo, bsoncxx::document sigue siendo equivalente a bsoncxx::v_noabi::document, y mongocxx::client sigue siendo equivalente a mongocxx::v_noabi::client.

  • Por defecto, cuando los nombres de archivo de las librerías se compilan con MSVC (como lo detecta la variable MSVC de CMake), se incrustan con una string de etiqueta ABI. Estas cadenas son similares a las siguientes:

    bsoncxx-v_noabi-rhs-x64-v142-md.lib

    Para deshabilitar este comportamiento, configurá ENABLE_ABI_TAG_IN_LIBRARY_FILENAMES=OFF como parte de tu configuración de CMake.

    La string de la etiqueta ABI también se puede embutir en los nombres de archivos de metadatos de pkg-config, de manera similar a lo siguiente:

    libbsoncxx-v_noabi-rhs-x64-v142-md.pc

    Para activar este comportamiento, establece ENABLE_ABI_TAG_IN_LIBRARY_FILENAMES=ON y ENABLE_ABI_TAG_IN_PKGCONFIG_FILENAMES=ON como parte de tu configuración de CMake.

Para obtener más información sobre esta versión, consulte las 310 notas de la versión v. en GitHub.

Advertencia

cambio disruptivo

Controlador C++ v3.9 contiene cambios disruptivos. Para obtener más información, consulte Versión 3.9 en la guía Actualizar versiones de controladores.

La versión v3.9 del controlador incluye las siguientes funcionalidades:

  • La imagen del contenedor del driver C++ ya está disponible en Docker hub.

  • El driver descarga automáticamente la dependencia del driver C de MongoDB si no la proporcionas.

  • El driver ya no compila pruebas como parte del objetivo all. Para compilar pruebas, configure BUILD_TESTING=ON como parte de su configuración de CMake.

  • El controlador utiliza el FetchContent módulo para descargar y compilar la biblioteca polyfill de MNMLSTC Core, si el sistema no la proporciona, en lugar del ExternalProject módulo. Tampoco modifica las include directivas en los encabezados de MNMLSTC Core.

  • Agrega la opción CMake MONGOCXX_OVERRIDE_DEFAULT_INSTALL_PREFIX. Si esta opción está configurada en TRUE, la opción CMAKE_INSTALL_PREFIX está configurada por defecto en el directorio de compilación. El valor por defecto de esta opción es TRUE.

  • Agrega una API para gestionar los índices de MongoDB Search.

  • Añade el recurso VERSIONINFO a bsoncxx.dll y mongocxx.dll.

  • Documenta explícitamente que lanzar una excepción desde una función de retorno de la APM es un comportamiento no definido.

  • No instala de forma prematura los headers de MNMLSTC Core durante el paso de compilación con CMake.

  • Requiere que se encuentre un paquete CMake del controlador C de MongoDB mediante find_dependency() para todas las configuraciones de paquetes del controlador C++ instaladas.

Para obtener más información sobre esta versión, consulte las 39 notas de la versión v. en GitHub.