एक्सटेंशन के लिए Chrome 120 में नया क्या है

Chrome 120 अब बीटा वर्शन में उपलब्ध है. इसमें Chrome एक्सटेंशन डेवलपर के लिए कई शानदार अपडेट शामिल हैं.

यह साल Chrome एक्सटेंशन टीम के लिए काफ़ी व्यस्त रहा है. कल के Chrome 120 बीटा रिलीज़ के साथ, एक्सटेंशन प्लैटफ़ॉर्म एक और बड़ा कदम उठा रहा है. इस साल क्या-क्या हुआ, इस बारे में खास जानकारी के लिए, जुलाई और अक्टूबर में होने वाले तीन महीने के अपडेट देखें. एक्सटेंशन के लिए Chrome 120 में नया क्या है, यह जानने के लिए आगे पढ़ें.

प्लैटफ़ॉर्म गैप को खत्म करना

Chrome 120 के रिलीज़ होने के बाद, हम मेनिफ़ेस्ट V3 की जानी-पहचानी समस्याओं वाले पेज पर मौजूद बाकी प्लैटफ़ॉर्म के अंतर को खत्म कर देंगे. ChromeOS पर फ़ाइल मैनेज करने के लिए, नए userScript API के साथ-साथ, ये दो बाकी आइटम हैं, जिन्हें अब हम बंद कर सकते हैं. पिछले तिमाही अपडेट में बताए गए बदलावों के साथ, हम Chrome एक्सटेंशन प्लैटफ़ॉर्म की मौजूदा स्थिति और पिछले साल के अपने सफ़र से हमें बेहद खुश हैं.

नया userScripts API

उपयोगकर्ता स्क्रिप्ट सहायता उपलब्ध है! उपयोगकर्ता स्क्रिप्ट (आम तौर पर, तुलनात्मक रूप से छोटे) कोड के स्निपेट होते हैं, जिन्हें एक्सटेंशन, पेज के रंग-रूप या व्यवहार में बदलाव करने के लिए वेब पेजों में इंजेक्ट कर सकते हैं. उन्हें सीधे उपयोगकर्ता बना सकता है या वेब पर मौजूद उपयोगकर्ता स्क्रिप्ट को स्टोर करने की कई अलग-अलग जगहों में खोजा जा सकता है. Chrome 120 Manifest V3 एक्सटेंशन, अब उपयोगकर्ता स्क्रिप्ट के कलेक्शन को मैनेज कर सकते हैं. साथ ही, यह तय कर सकते हैं कि उन्हें वेब पेजों पर कब और कैसे इंजेक्ट करना है.

मेनिफ़ेस्ट V2 और मेनिफ़ेस्ट V3, उपयोगकर्ता स्क्रिप्ट के इस्तेमाल के बीच एक अहम अंतर है. उपयोगकर्ता स्क्रिप्ट बेहतरीन होती हैं और उन्हें उपयोगकर्ता स्क्रिप्ट के लेखक पर बहुत ज़्यादा भरोसा होना चाहिए. इसलिए, Chrome टीम ने यह तय किया कि उपयोगकर्ता स्क्रिप्ट चलाने से पहले, उपयोगकर्ताओं को डेवलपर मोड में ऑप्ट इन करना होगा.

एक्सटेंशन पेज
एक्सटेंशन पेज (chrome://extensions)

हमारा नया userScript सैंपल, यह पता लगाने का एक आसान तरीका बताता है कि डेवलपर मोड चालू है या नहीं. साथ ही, उससे ऑनबोर्डिंग का आसान फ़्लो भी मिलता है.

यूज़र स्क्रिप्ट को शामिल करने के फ़्लो का सैंपल.
डेवलपर मोड बंद होने पर, उपयोगकर्ताओं को अपने ऐप्लिकेशन में शामिल करें.

शुरू करने के लिए, दस्तावेज़ देखें या आधिकारिक सैंपल देखें.

डीएनआर के लिए तय की गई ज़्यादा स्टैटिक डीएनआर सीमाएं

हमने चालू स्टैटिक नियमों की सीमा को 10 से बढ़ाकर 50 कर दिया है. इसके अलावा, हमने अनुमति वाले स्टैटिक नियमों की संख्या को 50 से बढ़ाकर 100 कर दिया है. यह अनुमति, वेब एक्सटेंशन कम्यूनिटी ग्रुप से मिले सुझाव, राय या शिकायत के आधार पर दी गई है.

नया ReadingList एपीआई

Chrome ने 2021 में रीडिंग लिस्ट की शुरुआत की थी. पिछले साल, Chrome की टीम ने साइड पैनल के ज़रिए रीडिंग लिस्ट को ऐक्सेस करना और भी आसान बना दिया. Chrome 120 के साथ, हम Chrome एक्सटेंशन के लिए, रीडिंग लिस्ट में एंट्री बनाने, उन्हें पढ़ने, अपडेट करने, और मिटाने की सुविधा जोड़ रहे हैं. ज़्यादा जानने के लिए, एपीआई दस्तावेज़ और हमारा नया सैंपल देखें.

Chrome की रीडिंग लिस्ट, जिसमें एक्सटेंशन के दस्तावेज़ वाले पेज दिख रहे हैं.
Chrome में, रीडिंग लिस्ट का साइड पैनल.

ChromeOS पर फ़ाइल मैनेज करने की सुविधा

फ़ाइल मैनेज करने की सुविधा से, एक्सटेंशन तय किए गए MIME टाइप और फ़ाइल एक्सटेंशन वाली फ़ाइलों को ठीक उसी तरह खोल सकते हैं जिस तरह वेब प्लैटफ़ॉर्म फ़ाइल हैंडलिंग करते हैं. इसे इस्तेमाल करने के तरीके के बारे में ज़्यादा जानकारी के लिए, ChromeOS पर फ़ाइल मैनेज करना लेख पढ़ें.

ChromeOS पर एक्सटेंशन डायलॉग के साथ खुली हुई फ़ाइल का स्क्रीनशॉट
ChromeOS पर फ़ाइलों को किसी एक्सटेंशन में खोलें.

30 सेकंड में अलार्म ट्रिगर करें

यह एक छोटा अपडेट है, लेकिन सर्विस वर्कर लाइफ़साइकल में एक अहम अंतर को खत्म करता है. सर्विस वर्कर, इवेंट के मुताबिक होते हैं. इसलिए, हमारा सुझाव है कि आने वाले समय में इवेंट को ट्रिगर करने के लिए, chrome.alarms का इस्तेमाल करें. अलार्म एपीआई यह पक्का करता है कि सर्विस वर्कर के बंद होने पर भी इवेंट चालू हो जाए.

हालांकि, एक कैच लिया है. Chrome 120 से पहले, अलार्म को ट्रिगर करने में सबसे कम एक मिनट लगता था. हालांकि, 30 सेकंड तक कोई गतिविधि न होने पर सर्विस वर्कर शट डाउन हो जाते हैं. इसलिए, 45 सेकंड में अलार्म चालू करने के लिए शेड्यूल करने का कोई आसान तरीका नहीं था, क्योंकि 45 सेकंड में किसी इवेंट को सेट करने के लिए setTimeout() का इस्तेमाल करने पर, इवेंट ट्रिगर होने से पहले सर्विस वर्कर बंद हो सकता है.

Chrome 120 की शुरुआत के साथ, अब आप इनमें से किसी एक में इवेंट सक्रिय कर सकते हैं:

  • setTimeout() का इस्तेमाल करके 30 सेकंड से कम का हो.
  • chrome.alarms का इस्तेमाल करके, 30 सेकंड से ज़्यादा या इसके बराबर की कोई भी वैल्यू:
await chrome.alarms.create('demo-default-alarm', {
   periodInMinutes: 0.45
 });

खास जानकारी

एक्सटेंशन प्लैटफ़ॉर्म ने पिछले एक साल में जो प्रगति की है उससे हम वाकई बहुत खुश हैं. Chrome 120, डीएनआर की सीमाओं को बढ़ाने और उपयोगकर्ता स्क्रिप्ट के साथ काम करने का एक बड़ा कदम है.