ক্রোম ১৪৮

স্থায়ী মুক্তির তারিখ: ৫ই মে, ২০২৬

অন্যথায় উল্লেখ না থাকলে, নিম্নলিখিত পরিবর্তনগুলি Android, ChromeOS, Linux, macOS, এবং Windows-এর জন্য Chrome 148 স্টেবল চ্যানেল রিলিজে প্রযোজ্য।

CSS এবং UI

CSS নাম-ভিত্তিক কন্টেইনার কোয়েরি

একটি CSS কোয়েরি কন্টেইনারকে শুধুমাত্র তার কন্টেইনার-নেমের উপর ভিত্তি করে কোয়েরি করা যায়, এবং কন্টেইনারটির কোনো কন্টেইনার-টাইপ সেট করার প্রয়োজন হয় না:

#container {
  container-name: --foo;
}
@container --foo {
  input { background-color: green; }
}
<div id="container">
  <div><input></div>
</div>

পূর্বে, @container জন্য নামের পাশাপাশি একটি কন্টেইনার টাইপও প্রয়োজন হতো।

ট্র্যাকিং বাগ #40287550 | ChromeStatus.com এন্ট্রি | স্পেক

অ্যাট-রুল: CSS ফিচার ডিটেকশন

এই ফিচারটি CSS @supports এ একটি at-rule() ফাংশন যোগ করে, যা লেখকদের CSS at-rules-এর সাপোর্ট ফিচার-ডিটেক্ট করতে সক্ষম করে।

ট্র্যাকিং বাগ #40211832 | ChromeStatus.com এন্ট্রি | স্পেক

ওপেন ফন্ট ফরম্যাট avar2 টেক্সট শেপিং এবং গ্লিফ রেন্ডারিং

avar (Axis Variations) টেবিলের ভার্সন ২ ফন্ট ডিজাইনারদের ইন্টারপোলেশনের উপর আরও ভালো নিয়ন্ত্রণ সহ ভ্যারিয়েবল ফন্ট তৈরি করতে সক্ষম করে। যেখানে মূল ভ্যারিয়েবল ফন্ট স্পেকটি অ্যাক্সিসগুলোকে স্বাধীনভাবে পরিচালনা করে, সেখানে avar2 অ্যাক্সিসগুলোকে একে অপরকে প্রভাবিত করার সুযোগ দেয়। এর ফলে এমন ফন্ট তৈরি হয় যা কন্টেন্ট লেখকদের জন্য ব্যবহার করা সহজ এবং যা কম জায়গায় সংরক্ষণ করা যায়।

Avar2 ফন্ট ভ্যারিয়েশনের পরিচিত ধারণাগুলো ব্যবহার করেই কাজ করে, তবে এটি পরিবর্তনশীল ডেল্টা মানগুলোকে সরাসরি ডিজাইন অ্যাক্সিস স্পেসিফিকেশনে প্রয়োগ করে। এছাড়াও, এটি আপনাকে একাধিক অ্যাক্সিসের একটি পরিসর জুড়ে এই কাজটি করার সুযোগ দেয়।

উদাহরণস্বরূপ, এটি ফন্ট ডিজাইনারদের 'মেটা স্লাইডার' তৈরি করার সুযোগ দেয়, যা একই সাথে একাধিক ভ্যারিয়েশন অ্যাক্সিস নিয়ন্ত্রণ করে। এর ফলে ব্যবহারকারীকে ফন্টের ডিজাইন স্পেসের সূক্ষ্ম সমন্বয় এবং একটি উপযোগী অংশ খুঁজে বের করার ঝামেলা থেকে মুক্তি দেওয়া হয়।

Avar2 ফন্ট ডিজাইনারদের তাদের ফন্টের ব্যবহারযোগ্য বৈচিত্র্যের পরিসরের উপর আরও ভালো নিয়ন্ত্রণ দেয় এবং তাদেরকে একাধিক অক্ষ বরাবর ডিজাইনের সমন্বয় সাধন করতে সাহায্য করে।

avar ভার্সন 2 টেবিলের মধ্যে অক্ষগুলোর মধ্যকার সম্পর্ক গাণিতিকভাবে সংজ্ঞায়িত করার মাধ্যমে, ফন্টগুলো কম সংখ্যক মাস্টার ব্যবহার করেই জটিল ডিজাইন তৈরি করতে পারে, যার ফলে ফাইলের আকার ছোট হয়, কারণ ইন্টারপোলেশন আরও দক্ষতার সাথে সংরক্ষিত হয়।

ট্র্যাকিং বাগ #40246300 | ChromeStatus.com এন্ট্রি | স্পেক

রিভার্ট-রুল কীওয়ার্ড

revert-rule কীওয়ার্ডটি ক্যাসকেডকে পূর্ববর্তী নিয়মে ফিরিয়ে নিয়ে যায়, ঠিক যেমন revert-layer ক্যাসকেডকে পূর্ববর্তী লেয়ারে ফিরিয়ে নিয়ে যায়। উদাহরণস্বরূপ:

div { color: green; }
div { color: revert-rule; /* Effectively green */ }

এটি কন্ডিশনালের সাথে একত্রে ব্যবহার করলে বিশেষভাবে কার্যকর, কারণ এর মাধ্যমে কোনো শর্ত পূরণ না হলে বর্তমান নিয়মটি বাতিল করা যায়:

div {
  display: if(style(--layout: fancy): grid; else: revert-rule);
}

ট্র্যাকিং বাগ #393582263 | ChromeStatus.com এন্ট্রি | স্পেক

ভিডিও এবং অডিও উপাদানগুলির জন্য লেজি লোডিং

<video> এবং <audio> এলিমেন্টে loading অ্যাট্রিবিউট যোগ করে, যা ডেভেলপারদের loading="lazy" ব্যবহার করে এলিমেন্টটি ভিউপোর্টের কাছাকাছি না আসা পর্যন্ত মিডিয়া রিসোর্স লোডিং স্থগিত রাখতে দেয়। এটি <img> এবং <iframe> এলিমেন্টের বিদ্যমান লেজি লোডিং আচরণের সাথে সামঞ্জস্যপূর্ণ, যা পেজ লোডের পারফরম্যান্স উন্নত করে এবং ডেটা ব্যবহার কমায়।

ট্র্যাকিং বাগ #469111735 | ChromeStatus.com এন্ট্রি | স্পেক

text-decoration-skip-ink: all

CSS text-decoration-skip-ink প্রপার্টির জন্য all ভ্যালুর সাপোর্ট যোগ করুন।

text-decoration-skip-ink প্রপার্টিটি ইতিমধ্যেই auto এবং none সমর্থন করে। ` all ভ্যালুটি এই সুবিধাকে আরও প্রসারিত করে, কারণ এটি নিঃশর্তভাবে সমস্ত গ্লিফের উপর—CJK অক্ষর সহ—ইঙ্ক-স্কিপিং প্রয়োগ করে। অন্যদিকে, auto ভ্যালুটি CJK অক্ষরগুলোকে স্কিপ করে না, কারণ সাধারণত আন্ডারলাইনের জায়গায় ভাবলিপির জন্য ইঙ্ক-স্কিপিং অনাকাঙ্ক্ষিত দৃশ্যগত ফলাফল তৈরি করে।

text-decoration-skip-ink: all ব্যবহার করলে, যে সকল ডেভেলপার CJK গ্লিফগুলির সাথে সংঘর্ষ এড়ানোর জন্য text-underline-position বা text-underline-offset সমন্বয় করেছেন, তারা সেই অক্ষরগুলির জন্যও স্পষ্টভাবে ইঙ্ক-স্কিপিং বেছে নিতে পারেন।

ট্র্যাকিং বাগ #40675832 | ChromeStatus.com এন্ট্রি | স্পেক

dragEnter , dragLeave , এবং dragOver ইভেন্টগুলির জন্য dropEffect সঠিকভাবে সেট করুন।

ড্র্যাগ অ্যান্ড ড্রপ স্পেসিফিকেশন অনুযায়ী, ` dataTransfer অবজেক্টের ` dropEffect অ্যাট্রিবিউটে dragEnter , dragOver এবং dragLeave এর জন্য কিছু পূর্বনির্ধারিত মান থাকা আবশ্যক। ড্র্যাগ এন্টার এবং ড্র্যাগ ওভারের ` dropEffect বর্তমান effectAllowed উপর ভিত্তি করে হওয়া উচিত এবং dragLeave dropEffect সর্বদা ` none হওয়া উচিত। বর্তমানে, ক্রোমিয়াম এই নিয়মগুলো মেনে চলে না। এই ফিচারটি চালু হওয়ার সাথে সাথে, ক্রোমিয়াম স্পেসিফিকেশনটি মেনে চলতে শুরু করবে এবং এই অ্যাট্রিবিউটে সঠিক মান নির্ধারণ করবে, যাতে ওয়েব ডেভেলপাররা এর উপর নির্ভর করতে পারে।

ট্র্যাকিং বাগ #434151262 | ChromeStatus.com এন্ট্রি | স্পেক

ড্র্যাগ শুরু করার সময় পয়েন্টার ইভেন্ট দমন

এইচটিএমএল স্পেক অনুযায়ী, যখন একটি ড্র্যাগ শুরু হয়, তখন ইউজার এজেন্টকে ড্র্যাগ সোর্সে উপযুক্ত ইভেন্ট পাঠাতে হবে এটা বোঝানোর জন্য যে পয়েন্টার ইভেন্ট স্ট্রিমটি শেষ হয়ে গেছে এবং এই পয়েন্টার থেকে আর কোনো ইভেন্ট আশা করা উচিত নয়। এই কোডটি মাউস ইভেন্টের জন্য আংশিকভাবে এবং অ্যান্ড্রয়েডে টাচ ড্র্যাগের জন্য সম্পূর্ণরূপে প্রয়োগ করা হয়েছিল। এই ফিচারের কাজের মাধ্যমে, আমরা অন্যান্য সমস্ত প্ল্যাটফর্মে এই স্পেকের প্রয়োজনীয়তা সম্পূর্ণরূপে পূরণ করার লক্ষ্য রাখি। কার্যত, এর অর্থ হলো, একটি ড্র্যাগ শুরু হওয়ার পরে ড্র্যাগ সোর্স এখন pointercancel , pointerout , এবং pointerleave ইভেন্টগুলো পাবে এটা বোঝানোর জন্য যে বর্তমান ইভেন্ট স্ট্রিমটি শেষ হয়ে গেছে।

ট্র্যাকিং বাগ #452372355 | ChromeStatus.com এন্ট্রি | স্পেক

সক্ষমতা

প্রকাশ্য স্থানীয়করণ

ম্যানিফেস্ট মেম্বারগুলোর স্থানীয়করণ সমর্থন করে, যার ফলে অ্যাপগুলো ব্যবহারকারীর ভাষা ও অঞ্চল অনুযায়ী তাদের নাম, বিবরণ, আইকন এবং শর্টকাটগুলো মানিয়ে নিতে পারে। ডেভেলপাররা ওয়েব অ্যাপ ম্যানিফেস্টে স্থানীয়কৃত ভ্যালু প্রদান করেন এবং ব্রাউজার ব্যবহারকারীর ভাষা সেটিংসের ওপর ভিত্তি করে স্বয়ংক্রিয়ভাবে উপযুক্ত রিসোর্সগুলো নির্বাচন করে, যা বিভিন্ন মার্কেটে ভাষা সমর্থন চালু করে।

ওয়েব অ্যাপ ম্যানিফেস্টের স্থানীয়করণ সমর্থন সম্পর্কে আরও জানুন।

ট্র্যাকিং বাগ #380491647 | ChromeStatus.com এন্ট্রি | স্পেক

অ্যান্ড্রয়েডে ওয়েব

অ্যান্ড্রয়েডে ওয়েব সিরিয়াল এপিআই

ওয়েব সিরিয়াল এপিআই ব্যবহারকারীর সিস্টেমের সিরিয়াল পোর্ট অথবা সিরিয়াল পোর্ট অনুকরণকারী অপসারণযোগ্য ইউএসবি ও ব্লুটুথ ডিভাইসের মাধ্যমে সিরিয়াল ডিভাইসের সাথে সংযোগ স্থাপনের জন্য একটি ইন্টারফেস প্রদান করে। এখন এটি অ্যান্ড্রয়েডেও সমর্থিত।

ব্যবহারকারীরা, বিশেষ করে শিক্ষা, শখ এবং শিল্প খাতে, তাদের কম্পিউটারের সাথে এমন সব পেরিফেরাল ডিভাইস সংযুক্ত করেন যেগুলো নিয়ন্ত্রণের জন্য কাস্টম সফটওয়্যারের প্রয়োজন হয়। উদাহরণস্বরূপ, স্কুলে কম্পিউটার প্রোগ্রামিং এবং ইলেকট্রনিক্স শেখানোর জন্য প্রায়শই রোবটিক্স ব্যবহার করা হয়। এর জন্য এমন সফটওয়্যার প্রয়োজন যা একটি রোবটে কোড আপলোড করতে বা দূর থেকে এটিকে নিয়ন্ত্রণ করতে পারে। শিল্প বা শখের ক্ষেত্রে, মিল, লেজার কাটার বা থ্রিডি প্রিন্টারের মতো কোনো সরঞ্জাম সংযুক্ত কম্পিউটারে চলমান একটি প্রোগ্রামের মাধ্যমে নিয়ন্ত্রিত হয়। এই ডিভাইসগুলো প্রায়শই সিরিয়াল সংযোগ ব্যবহার করে ছোট মাইক্রোকন্ট্রোলার দ্বারা নিয়ন্ত্রিত হয়।

আরও তথ্যের জন্য, web.dev-এ থাকা ওয়েব সিরিয়াল এপিআই গাইড এবং ওয়েব সিরিয়াল স্পেসিফিকেশন দেখুন।

ট্র্যাকিং বাগ #365514951 | ChromeStatus.com এন্ট্রি

অ্যান্ড্রয়েডে শেয়ার্ডওয়ার্কার

এর অনির্দেশ্য প্রসেস লাইফসাইকেল সংক্রান্ত উদ্বেগের কারণে দীর্ঘদিন ধরে অ্যান্ড্রয়েডে SharedWorker নিষ্ক্রিয় রাখা হয়েছে। SharedWorker ইনস্ট্যান্সগুলো ব্যবহারকারী বা ওয়েব ডেভেলপারদের অবহিত না করেই অপ্রত্যাশিতভাবে বন্ধ হয়ে যেতে পারে।

তবে, গিটহাবে সাম্প্রতিক একটি আলোচনা ( গিটহাব আলোচনাটি দেখুন) থেকে জানা যাচ্ছে যে, SharedWorker-এর প্রসেস লাইফসাইকেলের অনিশ্চিত প্রকৃতি হয়তো আগের ধারণার মতো ততটা গুরুতর সমস্যা নয়। এর উপর ভিত্তি করে, একটি স্থিতিশীল ও নির্ভরযোগ্য অভিজ্ঞতা নিশ্চিত করার জন্য এই আচরণটি তদন্তাধীন থাকা অবস্থায় অ্যান্ড্রয়েডে SharedWorker পুনরায় চালু করা হচ্ছে।

ট্র্যাকিং বাগ #40290702 | ChromeStatus.com এন্ট্রি | স্পেক

ওয়েব এপিআই

WebGPU: linear_indexing বৈশিষ্ট্য

এই ফিচারটি ব্রাউজারে প্রথমবার চালু হওয়ার পর WebGPU স্পেসিফিকেশনে কার্যকারিতা যোগ করে।

ব্যবহারকারীর সুবিধার্থে দুটি নতুন কম্পিউট শেডার বিল্ট-ইন ভ্যালু যোগ করা হয়েছে। এগুলি সমস্ত ব্যাকএন্ডের জন্য প্রয়োগ করা হয়েছে (বিদ্যমান বিল্ট-ইন ভ্যালুগুলির পলিফিল হিসাবে)।

ট্র্যাকিং বাগ #482840564 | ChromeStatus.com এন্ট্রি | স্পেক

ওয়েব প্রমাণীকরণ তাৎক্ষণিক UI মোড

navigator.credentials.get() এর জন্য একটি নতুন মোড, যা ব্যবহারকারীকে ব্রাউজার সাইন-ইন UI প্রদর্শন করে যদি সাইটের জন্য এমন কোনো পাসকি বা পাসওয়ার্ড থাকে যা ব্রাউজারের কাছে তাৎক্ষণিকভাবে পরিচিত, অথবা অন্যথায় NotAllowedError সহ প্রমিসটি রিজেক্ট করে। এর ফলে, যদি ব্রাউজার সফল হওয়ার সম্ভাবনাযুক্ত একাধিক সাইন-ইন ক্রেডেনশিয়াল বেছে নেওয়ার সুযোগ দেয়, তবে সাইটটি সাইন-ইন পেজ দেখানো এড়িয়ে যেতে পারে; আবার, এমন কোনো ক্রেডেনশিয়াল না থাকলে প্রচলিত সাইন-ইন পেজের প্রবাহও বজায় রাখতে পারে।

ট্র্যাকিং বাগ #408002783 | ChromeStatus.com এন্ট্রি | স্পেক

নিরাপদ পেমেন্ট নিশ্চিতকরণ সুবিধা পান

পেমেন্ট রিকোয়েস্টে একটি নতুন স্ট্যাটিক মেথড যোগ করা হয়েছে, যা ওয়েব ডেভেলপারদের ব্রাউজারের সিকিওর পেমেন্ট কনফার্মেশন ইমপ্লিমেন্টেশনের সক্ষমতাগুলো পেতে সাহায্য করে।

এর মাধ্যমে ওয়েব ডেভেলপাররা জানতে পারেন যে সুরক্ষিত পেমেন্ট নিশ্চিতকরণের জন্য কী কী সুবিধা উপলব্ধ আছে, যাতে তাঁরা সেই সুবিধাগুলোর সাথে সুরক্ষিত পেমেন্ট নিশ্চিতকরণ ব্যবহার করবেন কি না, সে বিষয়ে সিদ্ধান্ত নিতে পারেন।

ট্র্যাকিং বাগ #484043990 | ChromeStatus.com এন্ট্রি | স্পেক

বর্ধিত জীবনকালের ভাগীদার কর্মীরা

এই আপডেটে SharedWorker কনস্ট্রাক্টরে extendedLifetime: true একটি নতুন অপশন যোগ করা হয়েছে। এই নতুন অপশনটির মাধ্যমে অনুরোধ করা হয় যেন সমস্ত বর্তমান ক্লায়েন্ট আনলোড হয়ে যাওয়ার পরেও শেয়ার্ড ওয়ার্কারটি চালু থাকে। এর ফলে, কোনো পেজ আনলোড হওয়ার পরেও সার্ভিস ওয়ার্কারের উপর নির্ভর না করেই জাভাস্ক্রিপ্ট-নির্ভর অ্যাসিঙ্ক্রোনাস কাজ সম্পাদন করা যায়।

ট্র্যাকিং বাগ #400473072 | ChromeStatus.com এন্ট্রি | স্পেক

প্রম্পট এপিআই

প্রম্পট এপিআই ওয়েব ডেভেলপারদের একটি ব্রাউজার-প্রদত্ত অন-ডিভাইস এআই ল্যাঙ্গুয়েজ মডেলে সরাসরি অ্যাক্সেস দেয়। এই এপিআই ডিজাইনটি ক্লাউড এপিআই কাঠামোর সাথে সামঞ্জস্য রেখে সূক্ষ্ম নিয়ন্ত্রণের সুযোগ দেয়, যার মাধ্যমে স্বতন্ত্র ব্যবহারের ক্ষেত্র অনুযায়ী তৈরি মডেল ইন্টারঅ্যাকশনের সাহায্যে সাইটগুলোকে ক্রমান্বয়ে উন্নত করা যায়। এটি সামারাইজার এপিআই-এর মতো টাস্ক-ভিত্তিক ল্যাঙ্গুয়েজ মডেল এপিআই-গুলোর পাশাপাশি ডেভেলপার-সরবরাহকৃত এমএল মডেল ব্যবহার করে জেনারেলাইজড অন-ডিভাইস ইনফারেন্সের জন্য বিভিন্ন এপিআই এবং ফ্রেমওয়ার্কের পরিপূরক হিসেবে কাজ করে।

প্রাথমিক বাস্তবায়নটি টেক্সট, ছবি এবং অডিও ইনপুট সমর্থন করে। এছাড়াও, রেসপন্স কনস্ট্রেইন্ট নিশ্চিত করে যে জেনারেট করা টেক্সট পূর্বনির্ধারিত রেগুলার এক্সপ্রেশন এবং JSON স্কিমা ফরম্যাট মেনে চলে।

এটি বিভিন্ন ধরনের ব্যবহারের ক্ষেত্রে সহায়তা করে, যেমন—ছবির ক্যাপশন তৈরি করা ও দৃশ্যমান অনুসন্ধান চালানো থেকে শুরু করে অডিও প্রতিলিপি করা, শব্দ ঘটনা শ্রেণিবদ্ধ করা, নির্দিষ্ট নির্দেশনা অনুসরণ করে পাঠ্য তৈরি করা এবং বহু-মাধ্যম উৎস উপাদান থেকে তথ্য বা অন্তর্দৃষ্টি আহরণ করা।

ট্র্যাকিং বাগ #417526788 | ChromeStatus.com এন্ট্রি | স্পেক

নেটওয়ার্ক এবং সংযোগ

IDNA ContextJ নিয়মাবলী

IDNA হলো ডোমেইন নামে নন-ASCII অক্ষর ব্যবহারের একটি পদ্ধতি। এটি http://네이버.한국/ এর মতো একটি URL-কে http://xn--950bt9s8xi.xn--3e0b707e/ (যা naver.com-এ রিডাইরেক্ট করে) হিসেবে এনকোড করে।

URL স্পেসিফিকেশনটি CheckJoiners ফ্ল্যাগটি সেট করে, যা IDNA2008ContextJ নিয়মগুলোকে সক্রিয় করে। এটি URL-এর বেশিরভাগ স্থানে ZWNJ (U+200C জিরো উইডথ নন-জয়নার) এবং ZWJ (U+200D জিরো উইডথ জয়নার)-কে অনুমোদন দেয় না। ইমপ্লিমেন্টেশনটি UIDNA_CHECK_CONTEXTJ অপশনটি ICU-তে পাঠায়, যেখানে এই নিয়মটি প্রয়োগ করা হয়।

ট্র্যাকিং বাগ #40765949 | ChromeStatus.com এন্ট্রি | স্পেক

একই-src পুনঃনির্ধারণের ক্ষেত্রে no-store ইমেজ পুনরায় ব্যবহার করুন

যখন কোনো <img> এলিমেন্টে একই src ভ্যালু পুনরায় অ্যাসাইন করা হয়, তখন Cache-Control: no-store রিলোড বাইপাস করার জন্য একই ডকুমেন্টের উপলব্ধ ইমেজ পুনরায় ব্যবহারের অনুমতি দেওয়া হয়েছে। পূর্বে, ইমেজটি ডিকোড হয়ে ডকুমেন্টে উপলব্ধ থাকা সত্ত্বেও Blink সেটি পুনরায় ফেচ করত। এটি Gecko এবং WebKit-এর বিদ্যমান আচরণের সাথে সামঞ্জস্যপূর্ণ।

ট্র্যাকিং বাগ #486562295 | ChromeStatus.com এন্ট্রি | স্পেক

কর্মক্ষমতা

রিসোর্স টাইমিং-এ কন্টেন্টটাইপ

সার্ভার থেকে ফেরত আসা ফেচ করা রিসোর্সের Content-Type HTTP হেডারের সাথে সঙ্গতিপূর্ণ একটি স্ট্রিং ধারণ করার জন্য PerformanceResourceTimingcontentType ফিল্ডটি যোগ করে।

ট্র্যাকিং বাগ #1366706 | ChromeStatus.com এন্ট্রি | স্পেক

WebRTC ডেটাচ্যানেল: ডেটা চ্যানেল নিয়ে সর্বদা আলোচনা করুন

এটি alwaysNegotiateDataChannels একটি WebRTC এক্সটেনশন প্রয়োগ করে, যা একটি ডেটাচ্যানেল তৈরি করার আগে অ্যাপ্লিকেশনকে SDP অফারে ডেটা চ্যানেল নেগোসিয়েট করার একটি উপায় নির্ধারণ করে। এটি যেকোনো অডিও বা ভিডিও m= সেকশনের আগে ডেটা m= সেকশন নিয়েও নেগোসিয়েট করে এবং এটিকে BUNDLE জন্য 'অফারার-ট্যাগড m= সেকশন' হিসেবে ব্যবহার করে।

এর মানে হলো:

const pc = new RTCPeerConnection({ alwaysNegotiateDataChannels: true });
const offer = await pc.createOffer();

এসডিপি-তে একটি অ্যাপ্লিকেশন এম-লাইন সহ একটি অফার তৈরি করবে এবং যা:

const pc = new RTCPeerConnection({ alwaysNegotiateDataChannels: true });
pc.addTransceiver('audio');
pc.createDataChannel('somechannel');
const offer = await pc.createOffer();

এমন একটি অফার তৈরি করা হবে যা এসডিপি-তে একটি অ্যাপ্লিকেশন এম-লাইন এবং তার পরে একটি অডিও এম-লাইন নিয়ে আলোচনা করবে।

ট্র্যাকিং বাগ #433898678 | ChromeStatus.com এন্ট্রি | স্পেক

নতুন উৎস পরীক্ষা

ঘোষণামূলক CSS মডিউল স্ক্রিপ্ট

ডিক্লারেটিভ সিএসএস মডিউল স্ক্রিপ্ট হলো বিদ্যমান স্ক্রিপ্ট-ভিত্তিক সিএসএস মডিউল স্ক্রিপ্টগুলোর একটি বর্ধিত রূপ। এগুলো ডেভেলপারদের ডিক্লারেটিভ শ্যাডো রুটসহ শ্যাডো রুটযুক্ত ডিক্লারেটিভ স্টাইলশিট শেয়ার করার সুযোগ দেয়। ডেভেলপাররা <style type="module" specifier="foo"> ব্যবহার করে ইনলাইন স্টাইল মডিউল সংজ্ঞায়িত করতে পারেন এবং স্পেসিফায়ার বা একটি ইউআরএল রেফারেন্স করে একটি ডিক্লারেটিভ শ্যাডো ডমে ডিক্লারেটিভ মডিউল প্রয়োগ করতে পারেন, যেমন <template shadowrootmode="open" shadowrootadoptedstylesheets="foo">

অরিজিন ট্রায়াল | ট্র্যাকিং বাগ #448174611 | ChromeStatus.com এন্ট্রি | স্পেক

কন্টেইনার টাইমিং এপিআই

কন্টেইনার টাইমিং এপিআই ব্যবহার করে DOM-এর অ্যানোটেড অংশগুলো কখন স্ক্রিনে প্রদর্শিত হয় এবং তাদের প্রাথমিক পেইন্ট সম্পন্ন করে, তা পর্যবেক্ষণ করা যায়। একজন ডেভেলপার DOM-এর উপ-অংশগুলোকে containertiming অ্যাট্রিবিউট দিয়ে চিহ্নিত করতে পারবেন (যা `Element Timing API`-এর elementtiming অনুরূপ) এবং যখন সেই অংশটি প্রথমবারের জন্য পেইন্ট হবে, তখন পারফরম্যান্স এন্ট্রি পাবেন। এই এপিআই ডেভেলপারদের তাদের পেজের বিভিন্ন কম্পোনেন্টের টাইমিং পরিমাপ করতে সাহায্য করবে।

অরিজিন ট্রায়াল | ট্র্যাকিং বাগ #382422286 | ChromeStatus.com এন্ট্রি | স্পেক

ওয়েব অ্যাপ এইচটিএমএল ইনস্টল এলিমেন্ট

একটি ওয়েবসাইটকে ব্যবহারকারীদেরকে একটি ওয়েব অ্যাপ ইনস্টল করার জন্য ঘোষণামূলকভাবে অনুরোধ জানানোর সুযোগ দেয়। এই এলিমেন্টটি ঐচ্ছিকভাবে দুটি অ্যাট্রিবিউট গ্রহণ করে, যা ভিন্ন অরিজিন থেকে কন্টেন্ট ইনস্টল করার সুযোগ দেয়।

অরিজিন ট্রায়াল | ট্র্যাকিং বাগ #454827186 | ChromeStatus.com এন্ট্রি | স্পেক

দীর্ঘ অ্যানিমেশন ফ্রেম শৈলীর সময়কাল

Long Animation Frame API-তে styleDuration এবং forcedStyleDuration তথ্য যোগ করুন, যা ডেভেলপারদের স্টাইল এবং লেআউটের সময় আলাদা করতে সক্ষম করবে।

অরিজিন ট্রায়াল | ট্র্যাকিং বাগ #476826067 | ChromeStatus.com এন্ট্রি | স্পেক

এইচটিএমএল-ইন-ক্যানভাস

এইচটিএমএল-ইন-ক্যানভাস তিনটি নতুন প্রিমিটিভের সাহায্যে ক্যানভাস ব্যবহার করে এইচটিএমএল রেন্ডারিং কাস্টমাইজ করার সুযোগ দেয়: ক্যানভাস এলিমেন্ট বেছে নেওয়ার জন্য একটি অ্যাট্রিবিউট ( layoutsubtree ), চাইল্ড এলিমেন্ট আঁকার জন্য মেথড (2d: drawElementImage , webgl: texElementImage2D , webgpu: copyElementImageToTexture ), এবং আপডেট হ্যান্ডেল করার জন্য একটি পেইন্ট ইভেন্ট।

অরিজিন ট্রায়াল | ট্র্যাকিং বাগ #500967896 | ChromeStatus.com এন্ট্রি | স্পেক

সংযোগ অনুমতি তালিকা

কানেকশন অ্যালাওলিস্ট হলো এমন একটি ফিচার যা কোনো ডকুমেন্ট বা ওয়ার্কার থেকে ফেচ এপিআই (Fetch API) বা অন্যান্য ওয়েব প্ল্যাটফর্ম এপিআই ব্যবহার করে শুরু করা কানেকশনগুলোকে সীমাবদ্ধ করার মাধ্যমে এক্সটার্নাল এন্ডপয়েন্টগুলোর ওপর সুস্পষ্ট নিয়ন্ত্রণ প্রদানের জন্য ডিজাইন করা হয়েছে।

প্রস্তাবিত বাস্তবায়নে সার্ভার থেকে একটি HTTP রেসপন্স হেডারের মাধ্যমে অনুমোদিত এন্ডপয়েন্ট তালিকা বিতরণ করা হবে। কোনো পেজের পক্ষ থেকে ইউজার এজেন্ট কোনো সংযোগ স্থাপন করার আগে, এজেন্ট এই অনুমোদিত তালিকার সাথে গন্তব্যস্থলটি যাচাই করবে; যাচাইকৃত এন্ডপয়েন্টগুলোতে সংযোগের অনুমতি দেওয়া হবে, আর যেগুলো তালিকার এন্ট্রিগুলোর সাথে মিলবে না, সেগুলো ব্লক করা হবে।

অরিজিন ট্রায়াল | ট্র্যাকিং বাগ #447954811 | ChromeStatus.com এন্ট্রি | স্পেক

প্রম্পট এপিআই স্যাম্পলিং প্যারামিটার

প্রম্পট এপিআই-তে স্যাম্পলিং প্যারামিটার যোগ করে। এগুলি মডেল থেকে টোকেনগুলি কীভাবে স্যাম্পল করা হবে তা নিয়ন্ত্রণ করে, যা ডেভেলপারদের আউটপুটের "সৃজনশীলতা" বা "এলোমেলো ভাব"-এর উপর নিয়ন্ত্রণ দেয়। এছাড়াও, এটি সেট করা মানগুলি পড়ার জন্য LanguageModel ইনস্ট্যান্সে অ্যাট্রিবিউট যোগ করে, এবং সেইসাথে এই প্যারামিটারগুলির ডিফল্ট ও সর্বোচ্চ মান পাওয়ার জন্য একটি স্ট্যাটিক LanguageModel ফাংশনও যোগ করে।

প্রথম বাস্তবায়নে temperature এবং topK প্যারামিটার যোগ করা হয়েছে।

অরিজিন ট্রায়াল | ট্র্যাকিং বাগ #496663356 | ChromeStatus.com এন্ট্রি | স্পেক

HTML-এ প্রক্রিয়াকরণের নির্দেশাবলী পার্স করুন

প্রসেসিং নির্দেশাবলী (সিনট্যাক্স: <?target data> ) হলো XML-এ প্রকাশিত একটি বিদ্যমান DOM কনস্ট্রাক্ট, যা এমন নোড অবজেক্ট ব্যবহারের সুযোগ দেয় যেগুলো এলিমেন্ট না হলেও একটি ডকুমেন্ট প্রসেসিংয়ের জন্য কিছু অর্থগত তাৎপর্য বহন করতে পারে।

উদাহরণস্বরূপ, নতুন DOM এলিমেন্ট তৈরি না করে এবং CSS-এর দৃষ্টিকোণ থেকে DOM কাঠামো পরিবর্তন না করেই স্ট্রিমিং বা হাইলাইটিংয়ের জন্য রেঞ্জ নির্দেশ করতে, অথবা কীভাবে বাফার ও স্ট্রিম করতে হবে সে সম্পর্কে HTML পার্সারের জন্য নির্দেশিকা হিসেবে এগুলো ব্যবহার করা যেতে পারে।

ট্র্যাকিং বাগ #481087638 | ChromeStatus.com এন্ট্রি

অস্বচ্ছ পরিসর

OpaqueRange একটি ফর্ম কন্ট্রোলের (যেমন <textarea> বা টেক্সট-ভিত্তিক <input> ) ভ্যালুর মধ্যে থাকা টেক্সটের একটি জীবন্ত পরিসরকে বোঝায়, ফলে ডেভেলপাররা রেঞ্জ-সদৃশ এপিআই ব্যবহার করে ভ্যালু টেক্সট নিয়ে কাজ করতে পারেন।

এটি getBoundingClientRect() , getClientRects() এর মতো অপারেশন এবং ইনলাইন সাজেশন, হাইলাইট ও অ্যাঙ্কর্ড পপওভারের মতো UI-এর জন্য CSS কাস্টম হাইলাইট API-এর সাথে ইন্টিগ্রেশন সক্ষম করে। এটি startContainer এবং endContainer জন্য null রিটার্ন করার পাশাপাশি শুধুমাত্র ভ্যালু অফসেট প্রকাশ করে এনক্যাপসুলেশন বজায় রাখে, ফলে DOM এন্ডপয়েন্ট এবং অভ্যন্তরীণ কাঠামো প্রকাশ পায় না।

অরিজিন ট্রায়াল | ট্র্যাকিং বাগ #421421332 | ChromeStatus.com এন্ট্রি