पब्लिश होने की तारीख: 16 अक्टूबर, 2024
यहां दिए गए बदलाव, Android, ChromeOS, Linux, macOS, और Windows के लिए Chrome के बीटा चैनल की सबसे नई रिलीज़ पर लागू होते हैं. हालांकि, अगर किसी बदलाव के बारे में अलग से जानकारी दी गई है, तो वह जानकारी लागू होगी. यहां दी गई सुविधाओं के बारे में ज़्यादा जानने के लिए, दिए गए लिंक पर जाएं या ChromeStatus.com पर मौजूद सूची देखें. 16 अक्टूबर, 2024 तक Chrome 131 का बीटा वर्शन उपलब्ध है. डेस्कटॉप के लिए, Google.com से या Android पर Google Play Store से, सबसे नया वर्शन डाउनलोड किया जा सकता है.
सीएसएस
इस रिलीज़ में, सीएसएस की आठ नई सुविधाएं जोड़ी गई हैं.
सीएसएस ऐंकर पोज़िशनिंग: anchor-scope
anchor-scope प्रॉपर्टी की मदद से, ऐंकर के नामों को किसी दिए गए सबट्री तक सीमित किया जा सकता है.
सीएसएस font-variant-emoji
font-variant-emoji सीएसएस प्रॉपर्टी की मदद से, रंगीन (इमोजी स्टाइल) और मोनोक्रोमैटिक (टेक्स्ट स्टाइल) इमोजी ग्लिफ़ के बीच कंट्रोल किया जा सकता है. इसे हर इमोजी कोडपॉइंट के बाद, इमोजी वेरिएशन सिलेक्टर जोड़कर भी किया जा सकता है. खास तौर पर, टेक्स्ट के लिए U+FE0E और इमोजी के लिए U+FE0F.
सीएसएस हाइलाइट इनहेरिटेंस
सीएसएस हाइलाइट इनहेरिटेंस की मदद से, सीएसएस हाइलाइट सूडो-क्लास, जैसे कि ::selection और ::highlight, अपनी प्रॉपर्टी को सूडो हाइलाइट चेन से इनहेरिट करती हैं. ये प्रॉपर्टी, एलिमेंट चेन से इनहेरिट नहीं की जाती हैं. इससे हाइलाइट में प्रॉपर्टी इनहेरिटेंस के लिए, ज़्यादा बेहतर मॉडल तैयार किया जा सकता है.
ज़्यादा जानने के लिए, Igalia के Stephen Chenney की लिखी गई ब्लॉग पोस्ट सीएसएस सिलेक्टर की स्टाइलिंग के लिए इनहेरिटेंस में हुए बदलाव पढ़ें.
<details> और <summary> एलिमेंट के स्टाइलिंग स्ट्रक्चर में सुधार
<details> और <summary> एलिमेंट के स्ट्रक्चर के लिए, ज़्यादा सीएसएस स्टाइलिंग की सुविधा उपलब्ध कराई गई है. इससे इन एलिमेंट का इस्तेमाल उन ज़्यादातर मामलों में किया जा सकेगा जहां वेब पर डिसक्लोज़र विजेट या अकॉर्डियन विजेट बनाए जाते हैं. खास तौर पर, इस बदलाव से उन पाबंदियों को हटा दिया गया है जिनकी वजह से इन एलिमेंट पर डिसप्ले प्रॉपर्टी सेट नहीं की जा सकती थी. साथ ही, इसमें ::details-content स्यूडो-एलिमेंट जोड़ा गया है, ताकि कंटेनर को उस हिस्से के लिए स्टाइल किया जा सके जो बड़ा और छोटा होता है.
@page मार्जिन बॉक्स
वेब दस्तावेज़ को प्रिंट करते समय या उसे PDF के तौर पर एक्सपोर्ट करते समय, पेज मार्जिन बॉक्स के लिए सहायता जोड़ें.
@page मार्जिन बॉक्स की मदद से, पेज के मार्जिन वाले हिस्से में मौजूद कॉन्टेंट तय किया जा सकता है. उदाहरण के लिए, ब्राउज़र की ओर से जनरेट किए गए बिल्ट-इन हेडर और फ़ुटर का इस्तेमाल करने के बजाय, कस्टम हेडर और फ़ुटर उपलब्ध कराए जा सकते हैं.
मार्जिन बॉक्स को सीएसएस @page नियम के अंदर, ऐट-रूल का इस्तेमाल करके तय किया जाता है. मार्जिन बॉक्स की बनावट और कॉन्टेंट, सीएसएस प्रॉपर्टी की मदद से तय किया जाता है. ये प्रॉपर्टी, ऐट-रूल में शामिल होती हैं. इनमें content प्रॉपर्टी भी शामिल है. पेज नंबर डालने के लिए, काउंटर का भी इस्तेमाल किया जा सकता है. इस स्पेसिफ़िकेशन में, दो खास काउंटर के नाम तय किए गए हैं: page, मौजूदा पेज नंबर के लिए और pages, पेजों की कुल संख्या के लिए.
@property के लिए <string> सिंटैक्स का इस्तेमाल किया जा सकता है
रजिस्टर की गई कस्टम प्रॉपर्टी के लिए, <string> सिंटैक्स कॉम्पोनेंट के नाम का इस्तेमाल किया जा सकता है.
रिलेटिव कलर सिंटैक्स में currentcolor के लिए सहायता
सीएसएस में रिलेटिव कलर (from कीवर्ड का इस्तेमाल करके) को अनुमति दें, ताकि currentcolor को बेस के तौर पर इस्तेमाल किया जा सके. इसकी मदद से, किसी एलिमेंट के टेक्स्ट के रंग के आधार पर, उस एलिमेंट के बॉर्डर, शैडो या बैकग्राउंड के लिए मिलते-जुलते रंग सेट किए जा सकते हैं.
इस सुविधा में, इस्तेमाल के ऐसे उदाहरण भी शामिल हैं जहां कलर फ़ंक्शन को currentcolor पर निर्भरता के साथ नेस्ट किया जाता है. उदाहरण के लिए, color-mix(in srgb, rgb(from currentcolor r g b), white)) या
rgb(from rgb(from currentcolor 1 g b) b g r).
clip-path, fill, stroke, और marker-* प्रॉपर्टी के लिए, बाहरी SVG संसाधनों का इस्तेमाल किया जा सकता है
इस सुविधा की मदद से, क्लिप पाथ, मार्कर, और पेंट सर्वर ('fill' और 'stroke' प्रॉपर्टी के लिए) के लिए बाहरी रेफ़रंस इस्तेमाल किए जा सकते हैं. उदाहरण के लिए,
clip-path: url("resources.svg#myPath").
Web APIs
Direct Sockets API
इस अनुमति से, आइसोलेटेड वेब ऐप्लिकेशन को नेटवर्क डिवाइसों और सिस्टम के साथ डायरेक्ट ट्रांसमिशन कंट्रोल प्रोटोकॉल (टीसीपी) और यूज़र डेटाग्राम प्रोटोकॉल (यूडीपी) कम्यूनिकेशन सेट अप करने की अनुमति मिलती है. साथ ही, इससे उन्हें आने वाले कनेक्शन को सुनने और स्वीकार करने की अनुमति भी मिलती है.
Speculation-Rules हेडर को सीएसपी की पाबंदियों से छूट देना
यह कुकी, स्पेकुलेशन नियमों और सीएसपी के बीच इंटिग्रेशन को अपडेट करती है, ताकि सीएसपी सिर्फ़ <script type=speculationrules> पर लागू हो, न कि Speculation-Rules हेडर पर. सीएसपी की स्क्रिप्ट से जुड़ी नीतियां, एचटीएमएल में स्क्रिप्ट इंजेक्ट होने से बचाने के लिए बनाई गई हैं. साथ ही, सीएसपी के थ्रेट मॉडल का एचटीटीपी हेडर से कोई लेना-देना नहीं है. इससे सीडीएन और अन्य एज सर्वर से अनुमान लगाने से जुड़े नियमों को आसानी से डिप्लॉय किया जा सकता है.
Storage Access API के लिए, FedCM को सुरक्षा सिग्नल के तौर पर इस्तेमाल करना
यह कुकी, FedCM और Storage Access API के बीच तालमेल बिठाती है. इसके लिए, यह FedCM के पहले के ग्रांट को स्टोरेज ऐक्सेस के अनुरोध को अपने-आप स्वीकार करने की वजह बनाती है.
जब कोई उपयोगकर्ता, तीसरे पक्ष के आइडेंटिटी प्रोवाइडर (IdP) के साथ अपनी पहचान का इस्तेमाल करने की अनुमति देता है, तो कई IdP को सही तरीके से और सुरक्षित तरीके से काम करने के लिए, तीसरे पक्ष की कुकी की ज़रूरत होती है. इस प्रस्ताव का मकसद, इस ज़रूरत को निजी और सुरक्षित तरीके से पूरा करना है. इसके लिए, Storage Access API (SAA) की अनुमति की जांच को अपडेट किया जाएगा. इससे, स्टोरेज ऐक्सेस के प्रॉम्प्ट से दी गई अनुमति के साथ-साथ, FedCM प्रॉम्प्ट से दी गई अनुमति को भी स्वीकार किया जा सकेगा.
इस तरीके की मुख्य प्रॉपर्टी यह है कि यह सिर्फ़ उन मामलों में अनुमति देता है जिन्हें RP ने FedCM की अनुमतियों से जुड़ी नीति के तहत अनुमति दी है. साथ ही, यह RP के लिए हर फ़्रेम पर कंट्रोल लागू करता है. इसके अलावा, यह IdP को FedCM की अनुमतियों से जुड़ी नीति के तहत मिली अनुमतियों के अलावा, अन्य तरीकों से निगरानी करने से रोकता है.
COOP वैल्यू noopener-allow-popups
कुछ ऑरिजिन में, अलग-अलग लेवल की सुरक्षा से जुड़ी ज़रूरी शर्तों वाले अलग-अलग ऐप्लिकेशन हो सकते हैं. ऐसे मामलों में, एक ही ऑरिजिन वाले किसी दूसरे ऐप्लिकेशन के स्क्रिप्ट पेजों को खोलने और स्क्रिप्ट चलाने से, एक ऐप्लिकेशन में स्क्रिप्ट को रोकना फ़ायदेमंद हो सकता है.
ऐसे मामलों में, दस्तावेज़ के लिए यह फ़ायदेमंद हो सकता है कि उसे खोलने वाला व्यक्ति, स्क्रिप्ट न लिख पाए. भले ही, दस्तावेज़ को खोलने वाला व्यक्ति उसी ऑरिजिन का हो. noopener-allow-popups Cross-Origin-Opener-Policy की वैल्यू से, दस्तावेज़ों को यह तय करने की अनुमति मिलती है.
Private Aggregation API: Protected Audience API का इस्तेमाल करने वाले लोगों के लिए, योगदान की सीमा को बढ़ाकर 100 किया गया
इस कुकी की मदद से, Protected Audience स्क्रिप्ट रनर, Private Aggregation की हर रिपोर्ट में ज़्यादा से ज़्यादा 100 योगदान कर सकते हैं. फ़िलहाल, यह सीमा 20 है.
Private Aggregation, एक एग्रीगेट की जा सकने वाली रिपोर्ट में एम्बेड किए जा सकने वाले हिस्टोग्राम कॉन्ट्रिब्यूशन की संख्या को सीमित करता है. साथ ही, किसी भी अतिरिक्त कॉन्ट्रिब्यूशन को हटा देता है. शेयर किए गए स्टोरेज को कॉल करने वाले लोग, शेयर किए गए स्टोरेज की किसी दूसरी कार्रवाई को शुरू करके, इस सीमा को बाईपास कर सकते हैं. हालांकि, Protected Audience के कॉलर के पास कोई स्थायी स्टोरेज नहीं होता. इसलिए, वे नीलामी के आखिर में अपने अतिरिक्त योगदान खो देते हैं. ध्यान दें कि इस बदलाव से निजता पर कोई असर नहीं पड़ता, क्योंकि एपीआई के योगदान अब भी निजता बजट की सीमा में हैं.
पैडिंग की वजह से, हर Protected Audience रिपोर्ट का पेलोड बड़ा होगा. भले ही, उसे ज़्यादा कॉन्ट्रिब्यूशन लिमिट की ज़रूरत न हो. हमें उम्मीद है कि इन बड़ी रिपोर्ट से, एग्रीगेशन सेवा को चलाने की लागत बढ़ जाएगी.
पार्सर रिलैक्सेशन चुनें
इस बदलाव की वजह से, एचटीएमएल पार्सर <select> में <option>, <optgroup>, और <hr> के अलावा अन्य टैग इस्तेमाल करने की अनुमति देता है.
यह बदलाव, पसंद के मुताबिक बनाए जा सकने वाले <select> की सुविधा के लिए किया गया है. हालांकि, इसे पहले शिप किया जा रहा है, क्योंकि इसे अलग से किया जा सकता है. साथ ही, इसमें कुछ जोखिम भी हैं. Chrome टीम इस बारे में सुझाव/राय पाना चाहती है.
WebGPU: क्लिप की दूरी
इसमें वैकल्पिक जीपीयू सुविधा clip-distances जोड़ी गई है. इससे वर्टेक्स शेडर आउटपुट में, उपयोगकर्ता के तय किए गए क्लिप डिस्टेंस सेट किए जा सकते हैं. यह तकनीक खास तौर पर उन ऐप्लिकेशन के लिए काम की है जिन्हें किसी सीन में मौजूद उन सभी वर्टेक्स को काटना होता है जो उपयोगकर्ता के तय किए गए प्लेन से बाहर हैं. जैसे, कई सीएडी ऐप्लिकेशन.
WebGPU: GPUCanvasContext getConfiguration()
कॉन्फ़िगरेशन डिक्शनरी के साथ GPUCanvasContext configure() को कॉल करने के बाद, कैनवस कॉन्टेक्स्ट कॉन्फ़िगरेशन की जांच करने के लिए, GPUCanvasContext getConfiguration() तरीके का इस्तेमाल किया जा सकता है. इसमें जीपीयू device, format, usage, viewFormats, colorSpace, toneMapping, और alphaMode सदस्य शामिल हैं.
समस्या 4828 में बताए गए तरीके के मुताबिक, वेब ऐप्लिकेशन इसका इस्तेमाल यह पता लगाने के लिए कर सकते हैं कि WebGPU में एचडीआर कैनवस काम करता है या नहीं.
डेडीकेटेड वर्कर पर WebHID
इस नीति से, डेडिकेटेड वर्कर कॉन्टेक्स्ट में WebHID चालू होता है. इससे आपको किसी अलग थ्रेड पर, एचआईडी डिवाइस से मिले डेटा को प्रोसेस करने और I/O से जुड़ी ज़्यादा कार्रवाइयां करने में मदद मिलती है. इससे मुख्य थ्रेड की परफ़ॉर्मेंस पर पड़ने वाले असर को कम किया जा सकता है.
WebRTC RTCRtpEncodingParameters.scaleResolutionDownTo
यह एक ऐसा एपीआई है जो WebRTC एनकोडर को कॉन्फ़िगर करता है. इससे इनपुट फ़्रेम को स्केल किया जा सकता है. ऐसा तब होता है, जब वे तय किए गए maxWidth और maxHeight से ज़्यादा हों. यह एपीआई, scaleResolutionDownBy के जैसा है. हालांकि, इसमें रिज़ॉल्यूशन की सीमाओं को, तुलनात्मक शब्दों (जैसे कि 2 से कम करें) के बजाय, सटीक शब्दों (जैसे कि 640x360) में दिखाया जाता है. इससे, इनपुट फ़्रेम के साइज़ को तुरंत बदलने से जुड़ी रेस की स्थितियों से बचा जा सकता है.
नए ऑरिजिन ट्रायल
Chrome 131 में, यहां दी गई नई ऑरिजिन ट्रायल में ऑप्ट इन किया जा सकता है.
WebAudio के लिए प्लैट आउट के आंकड़े
AudioContext.playoutStats सुविधा की मदद से, कोई ऐप्लिकेशन WebAudio का इस्तेमाल करके, ऑडियो प्लेआउट की क्वालिटी और लेटेन्सी का आकलन कर सकता है.
Summarizer API
यह एक JavaScript API है. इसकी मदद से, इनपुट टेक्स्ट की खास जानकारी जनरेट की जा सकती है. यह एआई लैंग्वेज मॉडल पर आधारित है.
बंद की गई और हटाई गई सुविधाएं
Chrome के इस वर्शन में, इन सुविधाओं को बंद कर दिया गया है और इन्हें हटा दिया गया है. ChromeStatus.com पर जाकर, बंद की जाने वाली सुविधाओं, फ़िलहाल बंद की गई सुविधाओं, और पहले हटाई गई सुविधाओं की सूचियां देखें.
Chrome के इस वर्शन में, तीन सुविधाएं हटा दी गई हैं.
सीएसएस एंकर पोज़िशनिंग प्रॉपर्टी inset-area को हटाना
सीएसएस वर्किंग ग्रुप ने inset-area प्रॉपर्टी का नाम बदलकर position-area कर दिया है. इसलिए, इस प्रॉपर्टी को हटाने से Chromium में, मानकों के मुताबिक काम करने वाली सुविधा को लागू करने में मदद मिलती है.
BeforeunloadEventCancelByPreventDefault को बंद करने की सुविधा हटाना
सुविधा BeforeunloadEventCancelByPreventDefault को Chrome 117 में लॉन्च किया गया था. हालांकि, एंटरप्राइज़ नीति के तहत इस फ़्लैग को बंद किया जा सकता है. यह एंटरप्राइज़ नीति Chrome के वर्शन 131 से हटा दी जाएगी.
नॉन-स्टैंडर्ड GPUAdapter requestAdapterInfo() तरीके को हटाएं
WebGPU वर्किंग ग्रुप ने फ़ैसला किया कि requestAdapterInfo() के लिए अनुमति का अनुरोध करने वाला प्रॉम्प्ट ट्रिगर करना व्यावहारिक नहीं है. इसलिए, उन्होंने उस विकल्प को हटा दिया है और उसे GPUAdapter info एट्रिब्यूट से बदल दिया है, ताकि वेब डेवलपर को एक ही GPUAdapterInfo वैल्यू सिंक्रोनस तरीके से मिल सके.