CocoaPods, Aralık 2026'da salt okunur hale geleceğini duyurdu. Bu tarihten sonra yeni pod sürümleri yayınlanamayacak. Aşağıdaki bölümlerde bu değişiklik hakkında daha fazla bilgi verilmekte ve uygulamalarınızı diğer yükleme yöneticilerine nasıl taşıyacağınız açıklanmaktadır.
Genel Bakış
- Neler değişiyor? CocoaPods salt okunur duruma geçiyor ve Firebase, Ekim 2026'da CocoaPods'a yeni sürümler yayınlamayı durduracak.
- Uygulamam bozulur mu? Hayır. Firebase kitaplıklarının mevcut sürümleri, CocoaPods kayıt defterinde süresiz olarak kullanılmaya devam edecek ve bu CocoaPods sürümlerini kullanan uygulamalarınız çalışmaya devam edecek.
- Neden taşıma işlemi yapmalısınız? En yeni özellikleri, performans iyileştirmelerini ve önemli düzeltmeleri almaya devam etmek için Swift Package Manager'a veya manuel kuruluma geçmelisiniz.
CocoaPods'un duyurusunu dikkate alan Firebase, Ekim 2026'da CocoaPods'a yeni sürümler yayınlamayı durduracak. Bu değişiklikler aşağıdaki tüm pod'ları ve alt bağımlılıklarını etkiler:
| Etkilenen Firebase pod'ları | ||
|---|---|---|
Firebase |
FirebaseAuth |
FirebaseInstallations |
FirebaseABTesting |
FirebaseCore |
FirebaseMessaging |
FirebaseAI |
FirebaseCrashlytics |
FirebaseMLModelDownloader |
FirebaseAILogic |
FirebaseDatabase |
FirebasePerformance |
FirebaseAnalytics |
FirebaseFirestore |
FirebaseRemoteConfig |
FirebaseAppCheck |
FirebaseFunctions |
FirebaseStorage |
FirebaseAppDistribution |
FirebaseInAppMessaging |
Bu değişiklikler, Firebase Unity SDK, Firebase C++ SDK ve FlutterFire dahil olmak üzere yerel Firebase Apple SDK'sını sarmalayan tüm Firebase dağıtımlarını da etkileyecektir.
Apple uygulamalarınızı taşıma
CocoaPods'tan başka (Firebase olmayan) bağımlılıkları taşıyorsanız projenizin tamamı için tek bir yükleme yöntemi kullanmanın sektördeki en iyi uygulama olduğunu unutmayın. Aynı hedefte CocoaPods ve Swift Package Manager'ın (SPM) birlikte kullanılması, karmaşık bağımlılık döngülerine ve derleme hatalarına yol açabilir. Firebase dışı bağımlılıklarınız henüz SPM'yi desteklemiyorsa Firebase kitaplıkları için manuel yükleme kullanmak, taşıma işlemi sırasında iş akışınızı birleştirmenin en kararlı yoludur.
Swift Package Manager (SPM)
Swift Package Manager nedir?
Swift Package Manager (SPM), Apple'ın kod dağıtımını yönetmek için kullandığı yerel araçtır. Xcode'a doğrudan entegre edildiğinden CocoaPods gibi harici CLI araçlarına gerek kalmaz ve çoğu standart yapılandırma için .xcworkspace ihtiyacını ortadan kaldırarak proje yapınızı basitleştirir.
Swift Package Manager'a geçiş yapma
Çoğu proje için Swift Package Manager'a geçiş, projenizde özel Xcode yapılandırmaları veya CocoaPods yükleme komut dosyalarını yoğun şekilde kullanan bağımlılıklar olmadığı sürece uygulama kodunuzun değiştirilmesini gerektirmez.
CocoaPods'tan Swift Package Manager'a nasıl geçeceğinizi aşağıda bulabilirsiniz:
- Uygulamanızın bağımlılıklarının Swift Package Manager'ı desteklediğini doğrulayın. Tüm Firebase kitaplıkları SPM'yi destekler ancak Firebase dışı bağımlılıklarınızın SPM desteğini GitHub depolarında veya ürün sayfalarında kontrol etmeniz gerekir. Firebase dışı bağımlılıklarınızdan bazıları SPM'yi desteklemiyorsa CocoaPods'tan uzaklaşmak için en kararlı taşıma yolu, SPM yerine manuel yüklemeyi kullanmaktır.
- Xcode kapalıyken CocoaPods'u projenizden kaldırın:
- Proje dizininizde aşağıdaki komutu çalıştırarak CocoaPods bağımlılıklarınızı kaldırın:
pod deintegrate
- CocoaPods tarafından oluşturulan
.xcworkspacedosyasını silin.
- Proje dizininizde aşağıdaki komutu çalıştırarak CocoaPods bağımlılıklarınızı kaldırın:
- Xcode'da projenizi Swift Package Manager bağımlılıklarıyla güncelleyin:
- Projenizin
.xcodeprojdosyasını Xcode ile açın. - File > Add Package Dependencies (Dosya > Paket Bağımlılıkları Ekle) seçeneğini kullanarak uygulama bağımlılıklarınızı yeniden ekleyin.
- Projenizin
- Firebase paketi eklendikten sonra, Xcode'da proje ayarlarına gidip uygulama hedefinizi seçerek ve Frameworks, Libraries, and Embedded Content (Framework'ler, Kitaplıklar ve Yerleştirilmiş İçerik) bölümündeki kitaplıkları güncelleyerek bağlı olduğunuz Firebase kitaplıklarını güncelleyebilirsiniz. Apple belgelerinden Xcode'da ÖİOY'yi kullanma hakkında daha fazla bilgi edinin.
Manuel yükleme
Manuel kurulum nedir?
Manuel yükleme, tüm Firebase ürünleri için önceden derlenmiş XCFramework'leri içeren Firebase.zip arşivinin indirilmesini gerektirir. Bu sayede, bağımlılık yöneticisi kullanmadan belirli SDK'ları doğrudan Xcode projenize sürükleyip bırakabilirsiniz.
Manuel yüklemeye geçiş yapma
- Xcode kapalıyken CocoaPods'u projenizden kaldırın:
- Proje dizininizde aşağıdaki komutu çalıştırarak CocoaPods bağımlılıklarınızı kaldırın:
pod deintegrate
- CocoaPods tarafından oluşturulan
.xcworkspacedosyasını silin.
- Proje dizininizde aşağıdaki komutu çalıştırarak CocoaPods bağımlılıklarınızı kaldırın:
- Firebase'i projenize manuel olarak eklemek için yükleme kılavuzumuzdaki adımları uygulayın.
Unity, C++ ve Flutter uygulamalarınızı taşıma
Firebase Unity SDK ve FlutterFire
Çoğu Unity ve Flutter geliştiricisinin herhangi bir işlem yapması gerekmez. Unity veya Flutter'da Firebase'in en yeni sürümüne güncelleme yaptığınızda, Apple platformlarındaki temel bağımlılık yöneticiniz otomatik olarak Swift Package Manager'a taşınır.
Firebase dışı bağımlılıkları CocoaPods üzerinden yönetiyorsanız bunları manuel olarak taşımanız gerekebilir.
Firebase C++ SDK
Temel iOS bağımlılıklarını CocoaPods üzerinden dahil ediyorsanız Firebase CocoaPod bağımlılıklarınızı Swift Package Manager'ı kullanacak şekilde güncellemek için yukarıdaki taşıma talimatlarını uygulayabilirsiniz.
SSS
Ekim 2026'dan sonra CocoaPods'u kullanmaya devam etmem gerekiyor. Uygulamamın çalışmaya devam etmesini nasıl sağlarım?
Firebase pod'larının eski sürümlerini kullanabilir veya Firebase podspec'lerini GitHub'dan kopyalayıp kendi spec deponuzda barındırabilirsiniz.
Her iki durumda da en kısa sürede CocoaPods'dan geçmenizi öneririz. CocoaPods desteği Ekim 2026'da sonlandırıldıktan sonra Firebase'in doğrudan podspec'ten yüklenmesi için resmi destek sağlamayacağız. Kendi podspec'lerinizi barındırmayı seçerseniz bunları güncel tutmak sizin sorumluluğunuzda olur.
CocoaPods, Aralık 2026'ya kadar yayınlanabiliyorken neden CocoaPods desteği Ekim 2026'da sonlandırılıyor?
Aralık ayında kayıt kilitlenmeden önce CocoaPods'de yayınlanan son sürümlerin kararlı olmasını sağlamak için Ekim ayını seçtik. Bu zaman çizelgesi, son güncellemelerin güvenli bir şekilde koordine edilmesi için gerekli bir tampon sağlar ve yerel SDK'ya bağlı olan ancak yayın döngüleri gecikmeli olan platformlar arası SDK'ların kendi yayınlarını hazırlamaları için yeterli zamanı olmasını sağlar.
Güncelleme yapmazsam uygulamam çalışmayı durdurur mu?
Hayır, bu desteğin sonlandırılması yalnızca Firebase kitaplıklarının gelecekteki sürümlerini etkiler. CocoaPods'teki mevcut sürümler yüklenebilir olmaya devam edecek ve bu pod sürümlerini kullanan dağıtılmış uygulamalar etkilenmeyecek.
Bu durum proje faturalandırmasını etkiler mi?
Hayır.
Swift Package Manager'a geçiş yaptıktan sonra projemi derlerken "FirebaseLibrary not found" (FirebaseLibrary bulunamadı) hatası alıyorum. Bu durumu nasıl düzeltebilirim?
Firebase paketini Xcode projenize eklediğinizden emin olun.
Firebase paketini eklerken Xcode, Firebase çerçevelerini uygulamanızın derleme hedeflerine eklemenizi ister. Bu adımda bir çerçeve eklemeyi unutursanız hedefinizin ayarlarında Build Phases > Link Binary with Libraries bölümünden istediğiniz zaman ekleyebilirsiniz. Projenizde birden fazla hedef varsa Firebase'in doğru hedeflere eklendiğinden emin olun.
Bu geçiş işlemi CI/CD işlem hatlarımı bozar mı?
Hayır, pod install veya pod update ile çalışan işlem hatları mevcut sürümlerde çalışmaya devam edecek. Ancak Ekim 2026'dan sonra yayınlanan yeni Firebase kitaplığı güncellemelerini çekmezler.