Chrome 95 Highlights: WebAssembly Exception Handling, Secure Payments, EyeDropper API
Chrome 95, released on October 19 2021, introduces fourteen new features—including native WebAssembly exception handling, Secure Payment Confirmation, the EyeDropper API, and a reduced User‑Agent string—each aimed at improving performance, security, and developer experience, with detailed opcode tables, usage examples, and privacy‑focused client hints.
Chrome 95 was officially released on 2021‑10‑19 and adds fourteen new features. The most notable is native WebAssembly exception handling, which brings try/catch semantics to WebAssembly, reducing code size and improving performance.
WebAssembly Exception Handling
Support landed in Chrome 95 after trial in Chrome 90. The proposal adds the following opcodes:
Name Opcode Description
try 0x06 begins a block which can handle thrown exceptions
catch 0x07 begins the catch block of the try block
catch_all 0x19 begins the catch_all block of the try block
delegate 0x18 begins the delegate block of the try block
throw 0x08 creates an exception defined by the tag and then throws it
rethrow 0x09 pops the exnref on top of the stack and throws itThe proposal is in Phase 3 of the WebAssembly spec process and already has support in Firefox, Safari, and Edge, so it is expected to become a standard.
Previously WebAssembly relied on JavaScript try/catch, which increased code size and reduced performance. Native handling cuts code volume by about 30 % and improves speed by a similar margin, though more data is needed for confirmation.
Secure Payment Confirmation
Available as an origin trial in Chrome 91 and shipped in Chrome 95, this W3C proposal aims to make online payments more secure and convenient by keeping the flow inside the merchant site and using Web Authentication API for biometric verification.
Testing by Stripe shows an 8 % increase in conversion rate and a three‑fold reduction in authorization latency.
EyeDropper API
Chrome 95 adds the EyeDropper API, allowing scripts to sample colors from anywhere on the screen, useful for design tools such as Figma. The API is a WICG proposal led by Microsoft.
const eyeDropper = new EyeDropper();
try {
const selectedColor = await eyeDropper.open();
console.log(selectedColor); // { sRGBHex: '#ff0000' }
} catch (err) {
console.log("color selection cancelled");
}Reduce User‑Agent String Information
Chrome 95 begins trialing a reduced User‑Agent string to limit fingerprinting. The string now only reveals the browser’s major version, operating system name, and device class, while finer details require the newer User‑Agent Client Hints headers such as Sec‑CH‑UA, Sec‑CH‑UA‑Mobile, etc.
Request Header Example
Sec-CH-UA "Chromium";v="84", "Google Chrome";v="84"
Sec-CH-UA-Mobile ?1
Sec-CH-UA-Full-Version "84.0.4143.2"
Sec-CH-UA-Platform "Android"
Sec-CH-UA-Platform-Version "10"
Sec-CH-UA-Arch "arm"
Sec-CH-UA-Model "Pixel 3"
Sec-CH-UA-Bitness "64"Developers needing more precise information must explicitly request the desired hints, which improves privacy by default.
For a complete list of Chrome 95 features, see Chrome Platform Status.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
