Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /

Notas de versión

El driver de MongoDB C consiste en dos librerías: libbson y libmongoc. En esta página, puedes aprender sobre los cambios y las funciones obsoletas que se han realizado en cada versión de las librerías de drivers.

Descubra qué hay de nuevo en:

La versión 2.2.3 del MongoDB C Driver incluye los siguientes cambios:

Importante

MongoDB C Driver v2.2.3 incluye una corrección para CVE-2026-4359.

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

La versión 2.2.1 del MongoDB C Driver incluye los siguientes cambios:

  • Corrige un error de timeout (tiempo de espera) en las solicitudes de KMS de Azure y GCP.

  • Gestiona las respuestas bulkWrite del servidor que omiten el parámetro nModified.

Advertencia

cambio disruptivo

Controlador C v2.2.0 contiene cambios disruptivos. Para más información, consulte Versión 2.2.0 en la guía Actualizar versiones del controlador.

Las siguientes secciones describen los cambios en la versión 2.2.0 del controlador C.

La versión 2.2.0 de libbson incluye los siguientes cambios:

  • Incrementa la resolución de bson_get_monotonic_time() en plataformas Windows.

  • Elimina el soporte para Visual Studio 2015. La versión mínima compatible es Visual Studio 2017.

  • Se deja de admitir el soporte para macOS 11 y macOS 12

La versión 2.2.0 de libmongoc incluye los siguientes cambios:

  • Presenta las siguientes funcionalidades del mecanismo de autenticación MONGODB-OIDC:

    • Agrega soporte para una función de retorno personalizada con mongoc_client_set_oidc_callback y mongoc_client_pool_set_oidc_callback.

    • Agrega soporte para el entorno de Azure con la propiedad environment:azure.

    • Añade compatibilidad para el entorno GCP con la propiedad environment:gcp.

    • No admite entornos de Kubernetes en esta versión.

  • Añade las siguientes funcionalidades a mongoc_bulkwrite_t: - Añade la función mongoc_bulkwrite_is_acknowledged. — Añade función mongoc_bulkwriteresult_serverid. - Añade soporte para operaciones de Queryable Encryption.

  • Agrega el siguiente soporte para índices de texto para Queryable Encryption:

    • Agrega el tipo mongoc_client_encryption_encrypt_text_opts_t.

    • Agrega soporte de vista previa para búsqueda de subcadenas, prefijos y sufijos solo para cargas de trabajo experimentales. Estas funciones no son estables y su seguridad no está garantizada hasta que se lancen como Generalmente Disponibles (GA). La versión GA de estas funcionalidades puede no ser retrocompatible con la versión preliminar.

  • Agrega soporte para TLS v1.3 en plataformas Windows con Windows Secure Channel.

  • No intenta reanudar al recorrer un flujo de cambios cerrado.

  • Elimina el soporte para Visual Studio 2015. La versión mínima compatible es Visual Studio 2017.

  • Eleva la versión requerida de libmongocrypt de 1.13.0 a 1.15.0. Esto admite cifrado en uso y corresponde a la opción ENABLE_CLIENT_SIDE_ENCRYPTION de CMake.

  • Se descontinúa el soporte para macOS 11 y macOS 12.

Para obtener más información sobre esta versión, consulta las notas de versión v2.2.0.

Las siguientes secciones describen los cambios en la versión 2.1.2 del controlador C.

Esta versión se incrementa para coincidir con la versión libmongoc, pero no hay cambios desde 2.1.1.

La versión 2.1.2 de libmongoc incluye los siguientes cambios:

  • Corrige el siguiente problema de vulnerabilidades y exposiciones comunes (CVE): el guardado masivo con opciones lee memoria no válida si se pasa con opciones grandes. Para obtener más información, consulta el problema CVE-2025-12119 relacionado.

Para obtener más información sobre esta versión, consulta las notas de versión v2.1.2.

Las siguientes secciones describen los cambios en la versión 2.1.1 del controlador C.

Esta versión se incrementa para coincidir con la versión libmongoc, pero no hay cambios desde 2.1.0.

La versión 2.1.1 de libmongoc incluye los siguientes cambios:

  • Ya no se propaga la bandera -fPIC en los destinos de CMake.

  • Aplica el comportamiento del comando de guardado a la función mongoc_collection_create_indexes_with_opts().

  • Omite el campo saslSupportedMechs en comandos de supervisión de un solo hilo.

Para obtener más información sobre esta versión, consulta las notas de versión v2.1.1.

Advertencia

cambio disruptivo

Controlador C v2.1.0 contiene cambios disruptivos. Para obtener más información, consulta Versión 2.1.0 en la guía Actualizar versiones de controladores.

Las siguientes secciones describen los cambios en la versión 2.1.0 del controlador C.

La versión 2.1.0 de libbson incluye los siguientes cambios:

  • Para entornos que no son Windows, el script de desinstalación ahora llama al comando find "$dir" -maxdepth 1 para detectar directorios que no están vacíos en lugar del comando ls --almost-all, que no era compatible con macOS.

  • Para los entornos de Windows, el script de desinstalación ya no "tiene éxito" con un valor %ERRORLABEL% incorrecto o distinto de cero.

  • Remueve el soporte para Debian 9 y Debian 10.

  • Establece la versión máxima de la política de CMake en 4.0. La versión máxima no estaba establecida anteriormente.

La versión 2.1.0 de libmongoc incluye los siguientes cambios:

  • Para entornos que no son Windows, el script de desinstalación ahora llama al comando find "$dir" -maxdepth 1 para detectar directorios que no están vacíos en lugar del comando ls --almost-all, que no era compatible con macOS.

  • Para los entornos de Windows, el script de desinstalación ya no "tiene éxito" con un valor %ERRORLABEL% incorrecto o distinto de cero.

  • Agrega compatibilidad con ventana Secure canal para verificar los certificados del cliente con firmas más nuevas.

  • Sustituye el uso de rand() por alternativas seguras para hilos.

  • Remueve el soporte para Debian 9 y Debian 10.

  • Actualiza la versión mínima compatible de MongoDB Server de 4.0 a 4.2.

  • Establece la versión máxima de la política de CMake en 4.0. La versión máxima no estaba establecida anteriormente.

  • Remueve los búferes duraderos no útiles para reducir el uso de memoria.

  • Mejora los mensajes de error generados por las APIs de Windows.

Las siguientes secciones describen los cambios en la versión 2.0.2 del controlador C.

Esta versión incluye varias correcciones a la familia de funciones bson_validate, con los siguientes cambios menores en el comportamiento:

  • Cuando se especifica la configuración BSON_VALIDATE_UTF8, el controlador rechaza las secuencias UTF-8 no válidas en lugar de aceptarlas como en versiones anteriores.

  • El controlador valida el documento de alcance en un elemento en desuso "código con alcance" con un conjunto fijo de reglas y lo trata como un objeto JavaScript opaco.

  • El controlador aplica un límite de anidación de documentos durante la validación.

La versión 2.0.2 de libmongoc incluye los siguientes cambios:

  • Corrige un mensaje de bson_strerror_r en Windows.

  • Soluciona fugas de memoria con Windows Secure Channel.

  • Corrige la carga de claves RSA PKCS#8 con Windows Secure Channel.

Para obtener más información sobre esta versión, consulta las notas de versión v2.0.2.

Las siguientes secciones describen los cambios en la versión 2.0.1 del controlador C.

La versión 2.0.1 de libbson incluye los siguientes cambios:

  • Corrige un error de configuración de CMake 4 en sistemas operativos macOS

La versión 2.0.1 de libmongoc incluye los siguientes cambios:

  • Corrige un problema de manejo de nombre de usuario para la autenticación de MONGODB-X509 que se producía cuando el driver C estaba configurado para utilizar la librería Secure Transport o Secure canal

  • Ya no rellena un mongoc_bulkwritereturn_t.res con un resultado parcial cuando la función mongoc_bulkwrite_execute() genera un error de cliente después de la primera operación de guardado

Para obtener más información sobre esta versión, consulta las notas de versión v2.0.1.

Advertencia

cambio disruptivo

Controlador C v2.0.0 contiene cambios disruptivos. Para obtener más información, consulta Versión 2.0.0 en la guía Actualizar versiones de controladores.

Las siguientes secciones describen los cambios en la versión 2.0.0 del controlador C.

Importante

Eliminaciones

El 2.0.0 La versión de driver remueve muchos tipos y métodos obsoletos. Para ver una lista completa de eliminaciones, consulte las secciones de Eliminaciones de las notas de versión v2.0.

La versión 2.0.0 de libbson incluye los siguientes cambios:

  • Agrega soporte para el subtipo Vector Binario BSON. Para obtener más información, consulta Subtipo de Vector Binario BSON en la documentación de la API de libbson.

La versión 2.0.0 de libmongoc incluye los siguientes cambios:

Para obtener más información sobre esta versión, consulte las notas de versión v2.0.

Las siguientes secciones describen los cambios en la versión 1.30.3 del controlador C.

Esta versión se incrementa para coincidir con la versión libmongoc, pero no hay cambios desde 1.30.6.

La versión 1.30.6 de libmongoc incluye los siguientes cambios:

  • Corrige el siguiente problema de vulnerabilidades y exposiciones comunes (CVE): el guardado masivo con opciones lee memoria no válida si se pasa con opciones grandes. Para obtener más información, consulta el problema CVE-2025-12119 relacionado.

Para obtener más información sobre esta versión, consulta las notas de versión v1.30.6.

La versión 1.30.8 del MongoDB C Driver incluye los siguientes cambios:

Importante

MongoDB C Driver v1.30.8 incluye una corrección para CVE-2026-4359.

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

Las siguientes secciones describen los cambios en la versión 1.30.3 del controlador C.

La versión 1.30.3 de libbson incluye los siguientes cambios:

  • En anticipación a la v2.0 lanzamiento, añade nuevos paquetes de CMake y objetivos importados para bson que te permiten soportar ambas versiones principales sin modificar tu proyecto CMake.

    • Para importar bson con los nuevos nombres, llame a find_package para el paquete bson. Los nuevos nombres de destino importados son bson::static, bson::shared y bson::bson.

La versión 1.30.3 de libmongoc incluye los siguientes cambios:

  • En anticipación de la v2.0 lanzamiento, agrega nuevos paquetes de CMake y objetivos importados para bson y mongoc para permitirle soportar ambas versiones principales sin modificar su proyecto CMake.

    • Para importar mongoc con los nuevos nombres, llame a find_package para el paquete mongoc. Los nuevos nombres de destino importados son mongoc::static, mongoc::shared y mongoc::mongoc.

    • Para importar bson con los nuevos nombres, llame a find_package para el paquete bson. Los nuevos nombres de destino importados son bson::static, bson::shared y bson::bson.

Para obtener más información sobre esta versión, consulta las notas de versión v1.30.3.

Las siguientes secciones describen los cambios en la versión 1.30.0 del controlador C.

La versión 1.30.0 de libbson incluye los siguientes cambios:

  • Se deprecia la compatibilidad con Debian 9 y Debian 10

  • Mejora el rendimiento de la serialización de BSON a JSON para documentos anidados

  • Actualiza la salida truncada de la función bson_as_json_with_opts() para que ya no divida las secuencias UTF-8 válidas

  • Actualiza el texto JSON generado de las siguientes maneras:

    • Serializa todos los arreglos y documentos vacíos con un espacio

    • Serializa arreglos que el controlador omite debido al límite máximo de recursividad a [ ... ] en lugar de { ... }

    • Aplica el límite máximo de recursión a documentos heredados de CodeWScope

  • Soluciona un parámetro de salida filtrado después de llamadas infructuosas a la función bson_append_array_builder_begin()

La versión 1.30.0 de libmongoc incluye los siguientes cambios:

  • Se deprecia la compatibilidad con Debian 9 y Debian 10

  • Añade soporte para registro estructurado. Para configurar esta funcionalidad, utiliza las funciones mongoc_client_set_structured_log_opts() y mongoc_client_pool_set_structured_log_opts().

  • Agrega soporte para la configuración de la duración de la caché de las llaves de cifrado de datos de encriptación en uso. Para configurar esta funcionalidad, utiliza las funciones mongoc_auto_encryption_opts_set_key_expiration() y mongoc_client_encryption_opts_set_key_expiration().

    Para obtener más información sobre la encriptación en uso, consulta Cifrado en uso en la guía de MongoDB Server.

  • Agrega soporte para la opción sort para las operaciones de actualización y reemplazo.

  • Agrega soporte para construir un tipo mongoc_bulkwrite_t sin cliente utilizando las funciones mongoc_bulkwrite_new() y mongoc_bulkwrite_set_client().

  • Mejora el rendimiento de la función mongoc_server_description_new_copy()

  • Incluye las siguientes correcciones de eventos de APM requeridas por la especificación SDAM:

    • Después de entregar un evento server_opening, el conductor debe entregar un evento server_closed correspondiente antes de entregar topology_closed.

    • Antes de entregar un evento topology_closed, el conductor entrega un evento topology_changed que tiene un new_description de tipo Unknown

  • Corrige posibles fallos cuando el controlador informa de las IDs de documentos insertados en los resultados detallados de escrituras masivas de clientes

Para obtener más información sobre esta versión, consulte las notas de versión v1.30.

Advertencia

cambio disruptivo

Controlador C v1.29.0 contiene cambios disruptivos. Para obtener más información, consulta Versión 1.29.0 en la guía Actualizar versiones de controladores.

La versión 1.29.0 del driver C incluye varios cambios.

La versión 1.29.0 de libbson incluye los siguientes cambios:

  • Obsoleta bson_string_t y las funciones asociadas

  • Se desaprueba compilar con BSON_MEMCHECK

  • Obsolece las funciones bson_in_range_*() y bson_cmp_*()

  • Obsolece las funciones bson_atomic_*() y bson_thrd-yield()

  • Obsolece las funciones bson_as_json() y bson_array_as_json()

La versión 1.29.0 de libmongoc incluye los siguientes cambios:

  • Se desaprueba mongoc_client_command. Utiliza mongoc_client_command_simple en su lugar.

  • Se desaprueba mongoc_database_command. Utiliza mongoc_database_command_simple en su lugar.

  • Se desaprueba mongoc_collection_command. Utiliza mongoc_collection_command_simple en su lugar.

Para obtener más información sobre esta versión, consulte las notas de versión v1.29.

Advertencia

cambio disruptivo

Controlador C v1.28.0 contiene cambios disruptivos. Para obtener más información, consulta Versión 1.28.0 en la guía Actualizar versiones de controladores.

La versión 1.28.0 del driver C incluye varios cambios.

La versión 1.28.0 de libbson incluye los siguientes cambios:

  • Agrega la función bson_validate_with_error_and_offset()

  • Agrega soporte para consultas de rango de cifrado en uso

  • mongoc_collection_insert_one incluye el ID de inserción

  • Agrega una nueva API de guardado masivo mongoc_bulkwrite_t

  • Adds serverMonitoringMode URI option

  • Elimina la opción *_hint. En cambio, utiliza la opción *_server_id.

    • Se desaprueba mongoc_bulk_operation_set_hint. En su lugar, utilice mongoc_bulk_operation_set_server_id.

    • Se desaprueba mongoc_bulk_operation_get_hint. En su lugar, utilice mongoc_bulk_operation_get_server_id.

    • Se desaprueba mongoc_cursor_set_hint. En su lugar, utilice mongoc_cursor_set_server_id.

    • Se desaprueba mongoc_cursor_get_hint. En su lugar, utilice mongoc_cursor_get_server_id .

  • Se desaprueba ENABLE_SSL=LIBRESSL y mongoc_stream_tls_libressl_new.

  • Se desaprueban ENABLE_SASL=CYRUS y la opción CYRUS_PLUGIN_PATH_PREFIX en las plataformas Windows.

Para obtener más información sobre esta versión, consulte las notas de versión v1.28.

La versión 1.27.6 del driver C incluye varios cambios.

La versión 1.27.6 de libbson incluye los siguientes cambios:

  • Soluciona el manejo de JSON extendido malformado para tipos especiales de BSON

La versión 1.27.6 de libmongoc incluye los siguientes cambios:

  • Soluciona la advertencia de TSan

  • Corrige la compilación de C23

  • Documenta el comportamiento esperado de los errores de comandos en una transacción

La versión 1.27.5 del driver C incluye varios cambios.

La versión 1.27.5 de libbson incluye los siguientes cambios:

  • Soluciona el manejo de string largas en bson_append_utf8

La versión 1.27.5 de libmongoc incluye los siguientes cambios:

  • Soluciona un posible error de compilación en entornos donde bool o _Bool es una macro

La versión 1.27.4 del driver C incluye varios cambios.

La versión 1.27.4 de libbson incluye los siguientes cambios:

  • Soluciona problemas de compilar con Visual Studio 2013

La versión 1.27.4 de libmongoc incluye los siguientes cambios:

  • Corrige posibles fallos al leer mensajes defectuosos del protocolo cableado

  • Soluciona problemas de compilar con Visual Studio 2013

La versión 1.27.3 del driver C incluye varios cambios.

La versión 1.27.3 de libbson incluye los siguientes cambios:

  • Introduce cambios en los procesos de desarrollo, incluyendo nueva firma de código y seguimiento de dependencias. No hay cambios en el comportamiento ni en la API.

La versión 1.27.3 de libmongoc incluye los siguientes cambios:

  • Actualiza el Zlib integrado de la versión 1.2.3 a la 1.3.1

La versión 1.27.2 del driver C incluye varios cambios.

La versión 1.27.2 de libbson incluye los siguientes cambios:

  • Correcciones en el análisis de dos puntos en la zona horaria

  • Corrige el error al no poder inicializar un subdocumento en bson_iter_visit_all

La versión 1.27.2 de libmongoc incluye los siguientes cambios:

  • Cierra las conexiones residuales a servidores remotos

  • Verifica la variable de entorno MONGO_EXPERIMENTAL_SRV_PREFER_TCP para preferir TCP sobre la búsqueda SRV

La versión 1.27.1 del driver C incluye varios cambios.

La versión 1.27.1 de libbson incluye los siguientes cambios:

  • Corrige el manejo de cadenas grandes en bson_string_new y bson_string_append

Esta versión se incrementa para coincidir con la versión libbson, pero no hay cambios desde 1.27.0.

Advertencia

cambio disruptivo

Controlador C v1.27.0 contiene cambios disruptivos. Para obtener más información, consulta Versión 1.27.0 en la guía Actualizar versiones de controladores.

La versión 1.27.0 del driver C incluye varios cambios.

Esta versión se incrementa para coincidir con la versión libbson, pero no hay cambios desde 1.26.2.

La versión 1.27.0 de libmongoc incluye los siguientes cambios:

  • Corrige un posible fallo cuando el cliente está configurado con una contraseña vacía

  • Agrega el nombre de la base de datos a los eventos de comando mongoc_apm_command_failed_get_database_name y mongoc_apm_command_succeeded_get_database_name

  • Admite el protocolo KMIP delegado para encriptación en uso

  • Permite configurar el tiempo de espera del socket por cliente

Advertencia

cambio disruptivo

Controlador C v1.26.2 contiene cambios disruptivos. Para obtener más información, consulta Versión 1.26.2 en la guía Actualizar versiones de controladores.

La versión 1.26.2 del driver C incluye varios cambios.

La versión 1.26.2 de libbson incluye los siguientes cambios:

  • Corrige iteración en bson_strfreev

La versión 1.26.2 de libmongoc incluye los siguientes cambios:

  • Resuelve un posible cuelgue si se llama a mongoc_gridfs_file_readv con un fragmento dañado con datos incompletos

  • Soluciona un assert con el protocolo legacy exhaust cursor al conectarse a versiones del servidor MongoDB anteriores a 4.2

La versión 1.26.1 del driver C incluye varios cambios.

La versión 1.26.1 de libbson incluye los siguientes cambios:

  • Utiliza asignación alineada para bson_array_builder_t

La versión 1.26.1 de libmongoc incluye los siguientes cambios:

  • Corrige la compilación de 32bits con 64bits time_t

La versión 1.26.0 del driver C incluye varios cambios.

Esta versión se incrementa para coincidir con la versión libmongoc, pero no hay cambios desde 1.25.4.

La versión 1.26.0 de libmongoc incluye los siguientes cambios:

  • Soporta proveedores de KMS nombrados

  • Redirige los reintentos en clústeres particionados a otro mongos si es posible

  • Agrega VERSION_CURRENT archivo en fuente para facilitar la construcción

  • Considera que más errores pueden ser reintentados

Volver

autenticación de empresa