Migrar para usar as APIs de extensão Swift nos módulos principais

Estamos mesclando nossos SDKs de extensão Swift nos SDKs principais para tornar as APIs nativas do Swift mais amplamente disponíveis e aumentar nossa capacidade de oferecer suporte a novos recursos da linguagem Swift no futuro. As mudanças que estamos fazendo e os impactos esperados em seus projetos estão documentados abaixo.

O que está mudando?

A partir do SDK 10.17.0 do Firebase para Apple, os SDKs de extensão Swift foram mesclados em seus SDKs principais correspondentes. Por exemplo, todas as APIs do módulo FirebaseFirestoreSwift foram adicionadas ao FirebaseFirestore , então você não precisa mais importar o módulo FirebaseFirestoreSwift para acessar essas APIs.

Como todas as extensões Swift agora fazem parte dos módulos principais, os SDKs de extensão não são mais necessários e estão obsoletos. Incluir ou usar os SDKs de extensão Swift gerará um aviso do compilador e, já em fevereiro de 2024, deixaremos de lançar totalmente as extensões Swift.

★ Observação: quaisquer versões das extensões Swift lançadas atualmente ou anteriormente ainda funcionarão. No entanto, recomendamos que você migre seu aplicativo para usar APIs Swift do módulo principal para garantir que você continue recebendo correções e possa aproveitar as mudanças e novos recursos.

Datas importantes para esta mudança

Em outubro de 2023

Os SDKs de extensão Swift foram mesclados nos SDKs principais e, em seguida, descontinuados em favor dos SDKs principais. Consulte as notas de lançamento da versão 10.17.0 anunciando essa mudança.

Agora você pode usar as APIs do SDK da extensão Swift diretamente dos módulos principais do SDK. O uso dos SDKs de extensão ainda será possível até o próximo lançamento da versão principal, mas gerará um aviso de descontinuação quando usado.

Já em fevereiro de 2024

Pararemos de lançar novas versões das extensões Swift e removeremos as extensões Swift do Package.swift do Firebase. As versões mais antigas continuarão funcionando, mas não receberão atualizações.

Como migrar para usar APIs nativas do Swift do módulo principal

Se você atualmente não usa os SDKs de extensão Swift, nenhuma ação será necessária. Se você usar um SDK de extensão Swift, faça as seguintes alterações em seu projeto.

Mudanças no espaço de trabalho

Gerenciador de pacotes Swift

Depois de atualizar o Firebase para a versão 10.17.0+, navegue até a seção Frameworks, Libraries, and Embedded Content na guia General das configurações do seu destino e remova o SDK da extensão Swift (como FirebaseFirestoreSwift ).

CocoaPods

Após atualizar o Firebase para a versão 10.17.0+, navegue até seu Podfile e remova a linha correspondente à dependência do seu projeto na adição da seção de frameworks para seu destino e remova o SDK de extensão Swift (como pod FirebaseFirestoreSwift ). Em seguida, execute novamente o comando pod install .

Distribuição Zip e Cartago

Depois de atualizar o Firebase para a versão 10.17.0+, remova qualquer extensão Swift xcframeworks do seu projeto (como FirebaseFirestoreSwift.xcframework ).

Mudanças no código-fonte

Para todos os SDKs de extensão Swift usados ​​anteriormente, execute as seguintes ações:

  1. Exclua todas as instruções de importação que façam referência ao SDK da extensão Swift. Se o SDK principal não foi importado separadamente, você precisará substituir a importação da extensão Swift pela importação do SDK principal, excluindo o Swift no final da linha.
  2. Se você usou o namespace de módulo explícito do Swift para fazer referência a qualquer tipo de SDK de extensão Swift, precisará substituí-los pelo SDK principal correspondente. Por exemplo, FirebaseFirestoreSwift.QueryPredicate precisaria ser renomeado para FirebaseFirestore.QueryPredicate .