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