Как перейти на использование API расширений Swift в основных модулях

Мы объединяем SDK расширений Swift с основными SDK, чтобы сделать API Swift-native более доступными и расширить возможности поддержки новых функций языка Swift в будущем. Ниже описаны изменения, которые мы вносим, и их ожидаемое влияние на ваши проекты.

Что изменится

Начиная с Firebase для Apple SDK 10.17.0, SDK расширений Swift были объединены с соответствующими основными SDK. Например, все API из модуля FirebaseFirestoreSwift были добавлены в FirebaseFirestore, поэтому вам больше не нужно импортировать модуль FirebaseFirestoreSwift, чтобы получить доступ к этим API.

Поскольку все расширения Swift теперь являются частью основных модулей, SDK расширений больше не требуются и устарели. При включении или использовании SDK расширений Swift будет появляться предупреждение компилятора, а в феврале 2024 г. мы полностью прекратим выпуск расширений Swift.

★ Примечание. Все текущие и ранее выпущенные версии расширений Swift продолжат работать. Однако мы рекомендуем перенести приложение на Swift API из основного модуля, чтобы вы могли получать исправления и пользоваться новыми функциями.

Важные даты

В октябре 2023 года

SDK расширений Swift были объединены с основными SDK, а затем объявлены устаревшими в пользу основных SDK. Об этом изменении сообщается в примечаниях к выпуску версии 10.17.0.

Теперь вы можете использовать API SDK расширения Swift непосредственно из основных модулей SDK. Использовать SDK расширений можно до выпуска следующей основной версии, но при этом будет появляться предупреждение о прекращении поддержки.

Не ранее февраля 2024 г.

Мы прекратим выпуск новых версий расширений Swift и удалим их из Package.swift Firebase. Более старые версии продолжат работать, но не будут получать обновления.

Как перейти на использование API Swift-native из основного модуля

Если вы не используете SDK расширений Swift, никаких действий не требуется. Если вы используете SDK расширения Swift, внесите в проект следующие изменения:

Изменения в рабочей области

Swift Package Manager

Обновив Firebase до версии 10.17.0 или более поздней, перейдите в раздел Frameworks, Libraries, and Embedded Content (Фреймворки, библиотеки и встроенный контент) на вкладке General (Общие) в настройках целевого объекта и удалите SDK расширения Swift (например, FirebaseFirestoreSwift).

CocoaPods

Обновив Firebase до версии 10.17.0 или более поздней, перейдите к Podfile и удалите строку, соответствующую зависимости проекта от добавления раздела фреймворков для целевого объекта, а также удалите SDK расширения Swift (например, pod FirebaseFirestoreSwift). Затем повторно выполните команду pod install.

ZIP-архив и Carthage

После обновления Firebase до версии 10.17.0 или более поздней удалите из проекта все расширения Swift xcframeworks, например FirebaseFirestoreSwift.xcframework.

Изменения в исходном коде

Для всех ранее использовавшихся SDK расширений Swift выполните следующие действия:

  1. Удалите все операторы импорта, ссылающиеся на SDK расширения Swift. Если основной SDK не был импортирован отдельно, вам нужно будет заменить импорт расширения Swift импортом основного SDK, удалив Swift в конце строки.
  2. Если вы использовали явное пространство имен модулей Swift для ссылки на любые типы SDK расширения Swift, вам нужно будет заменить их соответствующим основным SDK. Например, FirebaseFirestoreSwift.QueryPredicate нужно переименовать в FirebaseFirestore.QueryPredicate.