हम अपने Swift एक्सटेंशन SDK टूल को मुख्य SDK टूल में मर्ज कर रहे हैं, ताकि Swift-नेटिव एपीआई को ज़्यादा से ज़्यादा लोगों के लिए उपलब्ध कराया जा सके. साथ ही, आने वाले समय में Swift भाषा के नए फ़ीचर के लिए, हमारी सहायता करने की क्षमता बढ़ाई जा सके. हम जो बदलाव कर रहे हैं और आपके प्रोजेक्ट पर उनका क्या असर पड़ेगा, इसके बारे में यहां बताया गया है.
क्या बदलाव हो रहा है?
Firebase for Apple SDK 10.17.0 से, Swift एक्सटेंशन SDK टूल को उनके मुख्य SDK टूल में मर्ज कर दिया गया है. उदाहरण के लिए, FirebaseFirestoreSwift मॉड्यूल के सभी एपीआई
को FirebaseFirestore में जोड़ दिया गया है.
इसलिए, उन एपीआई को ऐक्सेस करने के लिए, अब आपको FirebaseFirestoreSwift मॉड्यूल इंपोर्ट करने की ज़रूरत नहीं है.
अब सभी Swift एक्सटेंशन, मुख्य मॉड्यूल का हिस्सा हैं. इसलिए, एक्सटेंशन SDK टूल की ज़रूरत नहीं है. साथ ही, इन्हें बंद कर दिया गया है. Swift एक्सटेंशन SDK टूल को शामिल करने या उनका इस्तेमाल करने पर, कंपाइलर की चेतावनी दिखेगी. साथ ही, हम फ़रवरी 2024 से Swift एक्सटेंशन को पूरी तरह से बंद कर देंगे.
★ ध्यान दें: Swift एक्सटेंशन के मौजूदा या पहले रिलीज़ किए गए वर्शन अब भी काम करेंगे. हालांकि, हमारा सुझाव है कि आप अपने ऐप्लिकेशन को मुख्य मॉड्यूल से Swift एपीआई का इस्तेमाल करने के लिए माइग्रेट करें, ताकि आपको गड़बड़ियां ठीक करने वाले अपडेट मिलते रहें. साथ ही, बदलावों और नए फ़ीचर का फ़ायदा मिल सके.
इस बदलाव के लिए अहम तारीखें
अक्टूबर 2023 में
Swift एक्सटेंशन SDK टूल को मुख्य SDK टूल में मर्ज कर दिया गया है. इसके बाद, मुख्य SDK टूल के पक्ष में, Swift एक्सटेंशन SDK टूल को बंद कर दिया गया है. इस बदलाव के बारे में जानने के लिए, वर्शन 10.17.0 के रिलीज़ नोट देखें.
अब Swift एक्सटेंशन SDK टूल के एपीआई को, मुख्य SDK टूल के मॉड्यूल से सीधे इस्तेमाल किया जा सकता है. एक्सटेंशन SDK टूल का इस्तेमाल, अगले बड़े वर्शन के रिलीज़ होने तक किया जा सकेगा. हालांकि, इनका इस्तेमाल करने पर, बंद होने की चेतावनी दिखेगी.
फ़रवरी 2024 से
हम Swift एक्सटेंशन के नए वर्शन रिलीज़ करना बंद कर देंगे. साथ ही, हम Firebase के Package.swift से Swift एक्सटेंशन हटा देंगे. पुराने वर्शन काम करते रहेंगे, लेकिन उन्हें अपडेट नहीं मिलेंगे.
मुख्य मॉड्यूल से Swift-नेटिव एपीआई का इस्तेमाल करने के लिए माइग्रेट करने का तरीका
अगर फ़िलहाल, Swift एक्सटेंशन SDK टूल का इस्तेमाल नहीं किया जा रहा है, तो कोई कार्रवाई करने की ज़रूरत नहीं है. अगर Swift एक्सटेंशन SDK टूल का इस्तेमाल किया जा रहा है, तो अपने प्रोजेक्ट में ये बदलाव करें.
फ़ाइल फ़ोल्डर में बदलाव
Swift Package Manager
Firebase को वर्शन 10.17.0 या इसके बाद के वर्शन पर अपडेट करने के बाद, अपने टारगेट की सेटिंग के 'सामान्य' टैब में, 'फ़्रेमवर्क, लाइब्रेरी, और एम्बेड किया गया कॉन्टेंट' सेक्शन पर जाएं. इसके बाद, Swift एक्सटेंशन SDK टूल (जैसे, FirebaseFirestoreSwift) हटाएं.
CocoaPods
Firebase को वर्शन 10.17.0 या इसके बाद के वर्शन पर अपडेट करने के बाद, अपने Podfile पर जाएं. इसके बाद, अपने टारगेट के लिए फ़्रेमवर्क सेक्शन जोड़ने के लिए, अपने प्रोजेक्ट की डिपेंडेंसी से जुड़ी लाइन हटाएं. साथ ही, Swift एक्सटेंशन SDK टूल (जैसे, pod FirebaseFirestoreSwift) हटाएं. इसके बाद, pod install कमांड को फिर से चलाएं.
ज़िप डिस्ट्रिब्यूशन और Carthage
Firebase को वर्शन 10.17.0 या इसके बाद के वर्शन पर अपडेट करने के बाद, अपने प्रोजेक्ट में मौजूद सभी Swift एक्सटेंशन xcframeworks (जैसे, FirebaseFirestoreSwift.xcframework) हटाएं.
सोर्स कोड में बदलाव
पहले इस्तेमाल किए गए सभी Swift एक्सटेंशन SDK टूल के लिए, ये कार्रवाइयां करें:
- Swift एक्सटेंशन SDK टूल के रेफ़रंस वाले सभी इंपोर्ट स्टेटमेंट मिटाएं. अगर मुख्य SDK टूल को अलग से इंपोर्ट नहीं किया गया था, तो आपको Swift एक्सटेंशन इंपोर्ट की जगह मुख्य SDK टूल इंपोर्ट करना होगा. इसके लिए, लाइन के आखिर में मौजूद
Swiftको मिटाएं. - अगर Swift एक्सटेंशन SDK टूल के किसी टाइप को रेफ़र करने के लिए, Swift के एक्सप्लिसिट-मॉड्यूल नेमस्पेसिंग का इस्तेमाल किया गया था, तो आपको उन्हें मुख्य SDK टूल से बदलना होगा. उदाहरण के लिए,
FirebaseFirestoreSwift.QueryPredicateका नाम बदलकरFirebaseFirestore.QueryPredicateकरना होगा.