Menu Docs
Página inicial do Docs
/ /
Kotlin Coroutine

NOVIDADES

Descubra as novidades de cada versão:

Os novos recursos da versão do driver 5.0 incluem:

  • O construtor KotlinSerializerCodecProvider agora aceita objetos serializersModule e bsonConfiguration :

    KotlinSerializerCodec.create(clazz.kotlin, serializersModule=serializersModule, bsonConfiguration=bsonConfiguration)

    Isso torna mais fácil personalizar sua configuração.

  • Corrige um bug de reflexão do Kotlin que resultou no apagamento do tipo de container.

Esta seção inclui as seguintes informações:

Aviso

Depreciações nesta versão

Para evitar alterações significativas em futuras versões principais do driver, substitua qualquer código de aplicativo que dependa de métodos e tipos preteridos.

A versão 4.11 do driver substitui os seguintes itens:

  • Os seguintes métodos relacionados ao endereço de rede são preteridos e serão removidos na v5.0:

  • Os seguintes métodos e tipos relacionados à interface StreamFactory foram preteridos e agendados para remoção na v5.0:

    • streamFactoryFactory() método de MongoClientSettings.Builder

    • getStreamFactoryFactory() método de MongoClientSettings

    • NettyStreamFactoryFactory classe

    • NettyStreamFactory classe

    • AsynchronousSocketChannelStreamFactory classe

    • AsynchronousSocketChannelStreamFactoryFactory classe

    • BufferProvider classe

    • SocketStreamFactory classe

    • Stream classe

    • StreamFactory classe

    • StreamFactoryFactory classe

    • TlsChannelStreamFactoryFactory classe

    Se você configurar o Netty utilizando MongoClientSettings.Builder.streamFactoryFactory(), seu código poderá se assemelhar ao seguinte:

    import com.mongodb.connection.netty.NettyStreamFactoryFactory;
    // ...
    MongoClientSettings settings = MongoClientSettings.builder()
    .streamFactoryFactory(NettyStreamFactoryFactory.builder().build())
    .build();

    Substitua este código pelo TransportSettings.nettyBuilder() como mostrado no exemplo a seguir:

    import com.mongodb.connection.TransportSettings;
    // ...
    MongoClientSettings settings = MongoClientSettings.builder()
    .transportSettings(TransportSettings.nettyBuilder().build())
    .build();

Os novos recursos da versão 4.11 do driver incluem:

  • Suporte para conexão ao MongoDB usando um proxy SOCKS5.

  • Foi adicionado o método getSplitEvent() à classe ChangeStreamDocument para identificar fragmentos de um evento de fluxo de alteração que excede 16 MB. Você deve usar o estágio de agregação $changeStreamSplitLargeEvent em seu fluxo de alterações para lidar com eventos que excedam 16 MB.

  • Foi adicionado um construtor de estágio de agregação para $vectorSearch.

  • Foram adicionados assistentes de gerenciamento de índices do Atlas Search.

  • Versões atualizadas da biblioteca de compressão Snappy e zstd . Para saber mais sobre as versões de dependência atuais, consulte Compressão de rede.

  • Foram adicionados métodos getElapsedTime() às seguintes classes para monitorar a duração dos eventos do pool de conexões:

  • Suporte para threads virtuais Java 21 e simultaneidade estruturada. Os componentes internos do driver foram atualizados para evitar a fixação desnecessária de threads virtuais e para preservar o status de interrupção de um thread, já que esse último é importante para a simultaneidade estruturada, onde é usado para cancelamento.

    Para saber mais sobre threads virtuais, consulte a proposta de aprimoramento do JDK de threads virtuais. Para saber mais sobre simultaneidade estruturada, consulte a proposta de aprimoramento JDK de simultaneidade estruturada.

  • Documentação da API atualizada para os seguintes tipos:

Importante

A partir da versão 4.10.1 do driver Kotlin, você deve adicionar a biblioteca bson-kotlinx como uma dependência explícita para usar a biblioteca kotlinx-serialization .

  • Suporte para uso do lado do servidor Kotlin, tanto para corrotinas quanto para aplicativos síncronos.

  • Suporte de codec para classes de dados Kotlin.

  • Suporte para a biblioteca kotlinx.serialization

Voltar

Referência rápida

Nesta página