Safari Technology Preview 248: BigInt Math, CSS Fixes, and Web Inspector Overhaul
Apple has released Safari Technology Preview 248, the latest experimental build of its browser engine. This release packs significant JavaScript additions, dozens of CSS and rendering fixes, and a massive sweep of Web Inspector improvements.
JavaScript: BigInt Math Lands
The headline feature is support for the TC39 BigInt Math proposal. You can now call BigInt.pow and BigInt.sqrt directly, along with other Math-equivalent methods on BigInt values. This eliminates the need to manually implement exponentiation or square root for large integers.
Example:
const big = 12345678901234567890n;
console.log(BigInt.sqrt(big)); // 3513641828n
console.log(BigInt.pow(2n, 100n)); // 1267650600228229401496703205376n
CSS: Progress() No-Clamp and @import Preloading Fix
CSS progress() gains a no-clamp option, allowing values to exceed the 0-1 range when interpolating between analogous color spaces. This is useful for animations that overshoot or bounce.
A critical fix addresses the CSS preload scanner: @import rules that follow an @layer statement now preload correctly. Previously, they were silently skipped, delaying stylesheet loading.
Other CSS fixes include:
:last-childno longer incorrectly matches based on parser state outside style resolution.color-schemechanges on `

