मुख्य मॉड्यूल में Swift एक्सटेंशन एपीआई इस्तेमाल करने के लिए माइग्रेट करें

हम अपने 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 API का इस्तेमाल करने के लिए माइग्रेट करें. इससे, आपको गड़बड़ियों को ठीक करने के साथ-साथ, बदलावों और नई सुविधाओं का फ़ायदा मिलता रहेगा.

इस बदलाव से जुड़ी अहम तारीखें

अक्टूबर 2023 में

Swift एक्सटेंशन SDK टूल को मुख्य SDK टूल में मर्ज कर दिया गया है. इसके बाद, मुख्य SDK टूल के लिए, इनका इस्तेमाल बंद कर दिया गया है. इस बदलाव के बारे में बताने वाले वर्शन 10.17.0 के रिलीज़ नोट देखें.

अब सीधे मुख्य SDK मॉड्यूल से, Swift एक्सटेंशन 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 कमांड को फिर से चलाएं.

Zip distribution और Carthage

Firebase को 10.17.0 या इसके बाद के वर्शन पर अपडेट करने के बाद, अपने प्रोजेक्ट से कोई भी Swift एक्सटेंशनxcframeworks हटाएं. जैसे,FirebaseFirestoreSwift.xcframework.

सोर्स कोड में बदलाव

आपने पहले जिन Swift एक्सटेंशन SDK टूल का इस्तेमाल किया है उनके लिए, ये कार्रवाइयां करें:

  1. Swift एक्सटेंशन SDK टूल का रेफ़रंस देने वाले सभी इंपोर्ट स्टेटमेंट मिटाएं. अगर मुख्य SDK टूल को अलग से इंपोर्ट नहीं किया गया था, तो आपको Swift एक्सटेंशन इंपोर्ट को मुख्य SDK टूल इंपोर्ट से बदलना होगा. इसके लिए, लाइन के आखिर में मौजूद Swift को मिटाएं.
  2. अगर आपने Swift के एक्सटेंशन SDK टूल के किसी टाइप का रेफ़रंस देने के लिए, Swift के एक्सप्लिशिट-मॉड्यूल नेमस्पेस का इस्तेमाल किया है, तो आपको उन टूल को उनके मुख्य SDK टूल से बदलना होगा. उदाहरण के लिए, FirebaseFirestoreSwift.QueryPredicate का नाम बदलकर FirebaseFirestore.QueryPredicate करना होगा.