Menu Docs
Página inicial do Docs
/ / /
Driver Rust

NOVIDADES

Nesta página

  • Novidades no 3.2
  • Novidades no 3.1
  • Novidades em 3.0.1
  • Novidades no 3.0
  • Novidades no 2.8
  • Novidades no 2.7
  • Novidades no 2.6

Saiba mais sobre os novos recursos, melhorias e correções introduzidos nas seguintes versões do MongoDB Rust Driver:

  • Versão 3.2

  • Versão 3.1

  • Versão 3.0.1

  • Versão 3.0

  • Versão 2.8

  • Versão 2.7

  • Versão 2.6

A versão do driver Rust v3.2 inclui as seguintes funcionalidades, melhorias e correções:

  • Importante: a próxima versão menor eliminará o suporte para a versão do MongoDB Server 4.0 e aumentará a versão mínima suportada 4.2 para. Recomendamos fazer alterações em seu aplicação para acomodar alterações significativas. Consulte a seção Notas de versão no manual do servidor para saber mais sobre a atualização.

  • Aumenta a versão mínima suportada do Rust para 1.71.1. Para saber mais sobre compatibilidade de drivers, consulte o guia de compatibilidade.

  • Marca o recurso de criptografia em uso como estável com as mesmas garantias de compatibilidade com versões anteriores do driver. O sinalizador de recurso é denominado in-use-encryption. Esta é uma alteração de política e a API não é alterada em relação à versão anterior.

  • Permite nomes de host SRV com menos de três partes.

  • Permite fornecer uma opção de classificação ao executar operações de atualização.

  • Adiciona suporte de autenticação OIDC para ambientes Kubernetes.

    Para usar o OIDC para autenticar a partir de um ambiente Kubernetes, defina a opção de conexão authMechanismProperties como ENVIRONMENT:k8s em sua string de conexão. Você pode usar esse recurso ao se conectar a um ambiente em execução no Elastic Kubernetes Service da Amazon, no Google Kubernetes Engine ou no Azure Kubernetes Service.

Para saber mais sobre esta versão, consulte as v3.2 Release Notes no Github Github.

A versão do driver Rust v3.1 inclui as seguintes funcionalidades, melhorias e correções:

  • Adiciona suporte para mais de um fornecedor de KMS (KMS) do mesmo tipo. Para saber mais sobre os provedores de KMS, consulte Queryable Encryption no manual do MongoDB Server .

  • Adiciona suporte para v2 do protocolo de faixa Queryable Encryption . Os índices de faixa para Queryable Encryption agora são GA.

  • Adiciona suporte para o campo type ao criar índices. Para saber mais sobre como criar índices, consulte Índices no manual do MongoDB Server .

  • Implementa o algoritmo FlexibleEyballs para gerenciar conexões TCP. Para saber mais sobre esse algoritmo, consulte a documentação do Rust para os haphyllumballs crate.

  • O driver publica um evento TopologyDescriptionChangedEvent quando uma topologia é fechada.

Para saber mais sobre esta versão, consulte as Notas de versão do v3.1 no Github.

A versão do driver Rust v3.0.1 inclui as seguintes funcionalidades, melhorias e correções:

  • Corrige um problema no qual as aggregations não compilavam quando executadas dentro de sessões explícitas e também implementou tipos personalizados.

  • Corrige um problema no qual o método Collection::watch() não usava o parâmetro de tipo da instância Collection em que foi executado.

Para saber mais sobre esta versão, consulte as Notas da versão v3.0.1 no GitHub.

A versão do driver Rust v3.0 inclui as seguintes funcionalidades, melhorias e correções:

  • Implementa uma API fluente, que introduz as seguintes alterações de sintaxe para passar opções e iniciar sessões:

    • Para definir opções de método assíncrono, encadeie os métodos do construtor de opções diretamente para a chamada do método, em vez de passar um parâmetro de estrutura de opções.

    • Para definir opções de método síncronas, encadeie os métodos construtor de opções à chamada do método e, em seguida, chame o método run() .

    • Se você precisar construir uma estrutura de opções separada, encadeie o método with_options() à chamada do método e passe sua estrutura de opções como um parâmetro.

    • Para iniciar uma sessão, encadeie o método session() à chamada do método em vez de usar um método separado que tenha um sufixo _with_session .

  • Adiciona suporte para operações de escrita em massa. Para saber mais sobre essas operações, consulte o guia de operações em massa .

  • Introduz o tipo EventHandler para reduzir a quantidade de código boilerplate necessária para o monitoramento de evento . Para exemplos que usam o tipo EventHandler , consulte os guias de monitoramento .

  • Remove o suporte para o tempo de execução assíncrono async-std . Para saber mais sobre essa alteração, consulte a seção Configurar o tempo de execução assíncrono do guia de APIs assíncronas e síncronas.

  • Requer o uso de um recurso compat se um aplicação de driver Rust for compilado com o sinalizador de linha de comando no-default-features . Os recursos rustls e dns-resolution agora são opcionais.

  • Remove o suporte para os recursos do driver bson-* . Você pode selecionar essas funcionalidades incluindo bson como uma dependência direta em seu aplicação.

  • Remove o suporte para constantes de read e preocupação de gravação . Em vez disso, utilize métodos de assistente para definir valores ReadConcern e WriteConcern .

  • Adiciona restrições Send + Sync ao tipo Collection<T> .

  • Remove o campo ClientOptions::compressor se nenhum recurso do compressor estiver habilitado.

  • Altera o tipo de campos ReadPreferenceOptions . Esses campos agora têm um tipo Option<ReadPreferenceOptions> .

  • Remove a opção CollectionOptions::human_readable_serialization . Em vez disso, use o tipo wrapper bson::HumanReadable para serializar os dados do usuário em um formato legível por humanos.

  • Adiciona suporte para conversão de valor por meio do traço Into para todos os construtores de estrutura de opção.

  • Renomeia o campo comment_bson para comment para as estruturas AggregateOptions, FindOptions e FindOneOptions .

Para saber mais sobre esta versão, consulte o 3.0 Guia de Migração do v no Github.

A versão v2.8 do driver Rust inclui as seguintes funcionalidades, melhorias e correções:

  • Adiciona métodos de gerenciamento de índice de pesquisa do MongoDB Atlas Search. Para saber mais sobre esses métodos, consulte o guia Atlas Search Indexes .

  • Melhora a conectividade da rede e a confiabilidade da operação implementando os seguintes comportamentos:

    • Executa novas tentativas em uma variedade maior de tipos de erro encontrados pelo driver.

    • mongos novas tentativas para instâncias com problemas de conectividade de rede.

Para saber mais sobre essa versão, consulte a Destaques do lançamento v2.8.0 no GitHub.

A versão v2.7 do driver Rust inclui as seguintes funcionalidades, melhorias e correções:

  • Adiciona a opção human_readable_serialization à estrutura CollectionOptions . Esta opção instrui o driver a serializar os valores passados para os métodos CRUD como um formato legível pelo ser humano. O valor padrão desta opção é false.

    Aviso

    Se você definir o valor de human_readable_serialization como true, suas operações de inserção poderão ser executadas mais lentamente.

  • Adiciona o método run_cursor_command() para executar um comando do banco de dados e recuperar a resposta como um tipo Cursor . Para saber mais, consulte o guia Executar um comando .

  • Adiciona um registro de eventos SDAM ao utilizar a sinalização de recurso tracing-unstable.

  • Adiciona as seguintes configurações para Client e gerenciamento de conexões:

    • max_connecting: uma opção que você pode definir em uma estrutura ClientOptions para especificar quantas conexões você pode estabelecer em paralelo. Para saber mais sobre essa opção, consulte pool de conexões no guia Considerações de desempenho.

    • Client::warm_connection_pool(): um método que você pode usar para criar novas conexões no pool de conexões para fornecer um desempenho mais previsível. Ao usar este método, o driver tenta criar conexões até o número especificado na configuração min_pool_size .

    • Client::shutdown(): um método que você pode usar para interromper tarefas em segundo plano e aguardar a saída dos manipuladores. Este método pode ser útil se você usar manipuladores de eventos para fazer referência a recursos externos, pois esses manipuladores podem ser usados em tarefas mesmo depois que o Client for fechado.

Para saber mais sobre essa versão, consulte a Destaques do lançamento v2.7.0 no GitHub.

A versão v2.6 do driver Rust inclui as seguintes funcionalidades, melhorias e correções:

  • Oferece suporte a roles do Amazon Web Services Identity e Access Management (IAM) para contas de serviço, como contas do Elastic Kubernetes Service (EKS).

  • Oferece suporte a contas de serviço anexadas ao GCP ao usar o Cloud Key Management System (KMS).

  • Suporta a busca de credenciais CSFLE sob demanda do Azure KMS.

  • Implementa a propriedade FromStr para a estrutura Namespace . Essa alteração permite analisar uma string que inclui um nome de reconhecimento de data center e de collection, como "testdb.testcollection" , em uma instância Namespace .

  • Inclui o server_id em uma estrutura ConnectionInfo como um tipo i64 .

  • Remove a maioria das restrições de tipo em valores referenciados por um Cursor.

  • Atualiza a versão libmongocrypt no driver para habilitar o recurso Queryable Encryption em consultas que usam comparações de igualdade.

Para saber mais sobre essa versão, consulte a Destaques do lançamento v2.6.0 no GitHub.

Voltar

Referência rápida