Melakukan migrasi untuk menggunakan API ekstensi Swift di modul utama

Kami menggabungkan SDK ekstensi Swift ke dalam SDK utama agar API berbasis Swift tersedia lebih luas dan meningkatkan kemampuan kami untuk mendukung fitur bahasa Swift yang baru di masa mendatang. Perubahan yang kami buat dan dampak yang diharapkan pada project Anda didokumentasikan di bawah ini.

Apa yang berubah?

Mulai Firebase for Apple SDK 10.17.0, SDK ekstensi Swift telah digabungkan ke SDK utama yang sesuai. Misalnya, semua API dari modul FirebaseFirestoreSwift telah ditambahkan ke FirebaseFirestore, sehingga Anda tidak perlu lagi mengimpor modul FirebaseFirestoreSwift untuk mengakses API tersebut.

Karena semua ekstensi Swift kini merupakan bagian dari modul utama, SDK ekstensi tidak lagi diperlukan, dan tidak digunakan lagi. Menyertakan atau menggunakan SDK ekstensi Swift akan memunculkan peringatan compiler dan mulai Februari 2024, kami akan berhenti merilis ekstensi Swift sepenuhnya.

★ Catatan: Semua versi ekstensi Swift yang dirilis saat ini atau sebelumnya akan tetap berfungsi. Namun, sebaiknya migrasikan aplikasi Anda untuk menggunakan Swift API dari modul utama agar dapat terus menerima perbaikan dan dapat memanfaatkan perubahan dan fitur baru.

Tanggal penting untuk perubahan ini

Di bulan Oktober 2023

SDK ekstensi Swift telah digabungkan ke dalam SDK utama, dan tidak digunakan lagi karena digantikan dengan SDK utama. Lihat catatan rilis untuk versi 10.17.0 yang mengumumkan perubahan ini.

Anda kini dapat menggunakan API SDK ekstensi Swift langsung dari modul SDK utama. Penggunaan SDK ekstensi masih dimungkinkan hingga rilis versi utama berikutnya, tetapi akan memunculkan peringatan penghentian saat digunakan.

Mulai Februari 2024

Kami akan berhenti merilis versi baru ekstensi Swift, dan kami akan menghapus ekstensi Swift dari Package.swift Firebase. Versi lama akan tetap berfungsi, tetapi tidak akan menerima update.

Cara bermigrasi untuk menggunakan API native Swift dari modul utama

Jika saat ini tidak menggunakan SDK ekstensi Swift, Anda tidak perlu melakukan tindakan apa pun. Jika Anda menggunakan SDK ekstensi Swift, lakukan perubahan berikut pada project Anda.

Perubahan ruang kerja

Swift Package Manager

Setelah mengupdate Firebase ke versi 10.17.0+, buka bagian Framework, Library, dan Embedded Content di tab General pada setelan target Anda, lalu hapus SDK ekstensi Swift (seperti FirebaseFirestoreSwift).

CocoaPods

Setelah mengupdate Firebase ke versi 10.17.0+, buka Podfile dan hapus baris yang sesuai dengan dependensi project untuk menambahkan bagian framework untuk target Anda, lalu hapus SDK ekstensi Swift (seperti pod FirebaseFirestoreSwift). Kemudian, jalankan kembali perintah pod install.

Distribusi Zip dan Carthage

Setelah mengupdate Firebase ke versi 10.17.0+, hapus semua ekstensi Swift xcframeworks dalam project Anda (seperti FirebaseFirestoreSwift.xcframework).

Perubahan kode sumber

Untuk semua SDK ekstensi Swift yang sebelumnya Anda gunakan, lakukan tindakan berikut:

  1. Hapus semua pernyataan impor yang merujuk ke SDK ekstensi Swift. Jika SDK utama tidak diimpor secara terpisah, Anda harus mengganti impor ekstensi Swift dengan impor SDK utama dengan menghapus Swift di akhir baris.
  2. Jika Anda menggunakan namespace modul eksplisit Swift untuk merujuk jenis SDK ekstensi Swift apa pun, Anda harus menggantinya dengan SDK utama yang sesuai. Misalnya, FirebaseFirestoreSwift.QueryPredicate harus diganti namanya menjadi FirebaseFirestore.QueryPredicate.