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

स्विफ्ट-नेटिव एपीआई को अधिक व्यापक रूप से उपलब्ध कराने और भविष्य में नई स्विफ्ट भाषा सुविधाओं का समर्थन करने की हमारी क्षमता बढ़ाने के लिए हम अपने स्विफ्ट एक्सटेंशन एसडीके को मुख्य एसडीके में विलय कर रहे हैं। हम जो परिवर्तन कर रहे हैं और आपकी परियोजनाओं पर उनके अपेक्षित प्रभाव नीचे दिए गए हैं।

क्या बदल रहा है?

Apple SDK 10.17.0 के लिए फायरबेस से शुरू करके, स्विफ्ट एक्सटेंशन SDK को उनके संबंधित मुख्य SDK में विलय कर दिया गया है। उदाहरण के लिए, FirebaseFirestoreSwift मॉड्यूल के सभी API को FirebaseFirestore में जोड़ दिया गया है, इसलिए अब आपको उन API तक पहुंचने के लिए FirebaseFirestoreSwift मॉड्यूल को आयात करने की आवश्यकता नहीं है।

चूंकि सभी स्विफ्ट एक्सटेंशन अब मुख्य मॉड्यूल का हिस्सा हैं, इसलिए एक्सटेंशन एसडीके की अब आवश्यकता नहीं है, और उन्हें हटा दिया गया है। स्विफ्ट एक्सटेंशन एसडीके को शामिल करने या उपयोग करने से कंपाइलर चेतावनी जारी हो जाएगी और फरवरी 2024 की शुरुआत में, हम स्विफ्ट एक्सटेंशन को पूरी तरह से जारी करना बंद कर देंगे।

★ नोट: स्विफ्ट एक्सटेंशन का कोई भी वर्तमान या पहले जारी किया गया संस्करण अभी भी काम करेगा। हालाँकि, हम अनुशंसा करते हैं कि आप अपने ऐप को मुख्य मॉड्यूल से स्विफ्ट एपीआई का उपयोग करने के लिए माइग्रेट करें ताकि यह सुनिश्चित हो सके कि आपको सुधार प्राप्त होते रहें और आप परिवर्तनों और नई सुविधाओं का लाभ उठा सकें।

इस परिवर्तन के लिए महत्वपूर्ण तिथियाँ

अक्टूबर 2023 में

स्विफ्ट एक्सटेंशन एसडीके को मुख्य एसडीके में विलय कर दिया गया है और फिर मुख्य एसडीके के पक्ष में हटा दिया गया है। इस परिवर्तन की घोषणा करते हुए संस्करण 10.17.0 के रिलीज़ नोट देखें।

अब आप मुख्य एसडीके मॉड्यूल से सीधे स्विफ्ट एक्सटेंशन एसडीके एपीआई का उपयोग कर सकते हैं। एक्सटेंशन एसडीके का उपयोग अगले प्रमुख संस्करण के रिलीज़ होने तक अभी भी संभव है, लेकिन उपयोग किए जाने पर एक बहिष्करण चेतावनी जारी की जाएगी।

फरवरी 2024 की शुरुआत में

हम स्विफ्ट एक्सटेंशन के नए संस्करण जारी करना बंद कर देंगे, और हम स्विफ्ट एक्सटेंशन को फायरबेस के Package.swift से हटा देंगे। पुराने संस्करण कार्य करते रहेंगे लेकिन अपडेट प्राप्त नहीं होंगे।

मुख्य मॉड्यूल से स्विफ्ट-नेटिव एपीआई का उपयोग करने के लिए माइग्रेट कैसे करें

यदि आप वर्तमान में स्विफ्ट एक्सटेंशन एसडीके का उपयोग नहीं करते हैं, तो कोई कार्रवाई आवश्यक नहीं है। यदि आप स्विफ्ट एक्सटेंशन एसडीके का उपयोग करते हैं, तो अपने प्रोजेक्ट में निम्नलिखित परिवर्तन करें।

कार्यक्षेत्र में परिवर्तन

स्विफ्ट पैकेज मैनेजर

फायरबेस को संस्करण 10.17.0+ में अपडेट करने के बाद, अपने लक्ष्य की सेटिंग्स के सामान्य टैब में फ्रेमवर्क, लाइब्रेरीज़ और एंबेडेड सामग्री अनुभाग पर नेविगेट करें और स्विफ्ट एक्सटेंशन एसडीके (जैसे FirebaseFirestoreSwift ) को हटा दें।

कोकोपोड्स

फायरबेस को संस्करण 10.17.0+ में अपडेट करने के बाद, अपने पॉडफाइल पर नेविगेट करें और अपने लक्ष्य के लिए फ्रेमवर्क अनुभाग जोड़ने पर अपने प्रोजेक्ट की निर्भरता के अनुरूप लाइन को हटा दें और स्विफ्ट एक्सटेंशन एसडीके (जैसे पॉड FirebaseFirestoreSwift ) को हटा दें। फिर, pod install कमांड को फिर से चलाएँ।

ज़िप वितरण और कार्थेज

फायरबेस को संस्करण 10.17.0+ में अपडेट करने के बाद, अपने प्रोजेक्ट के भीतर किसी भी स्विफ्ट एक्सटेंशन xcframeworks हटा दें (जैसे कि FirebaseFirestoreSwift.xcframework )।

स्रोत कोड परिवर्तन

आपके द्वारा पहले उपयोग किए गए सभी स्विफ्ट एक्सटेंशन एसडीके के लिए, निम्नलिखित कार्रवाई करें:

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