Scripts that only compile when it pays, cards that line up, and bold that stays bold
Pages run their scripts faster: the engine now compiles code to machine instructions only once that pays for itself, so busy pages spend far less time waiting on compilation, and a page's scripts are read in parallel before they run. Large objects find their properties faster, web-component pages restyle in half the time, and container-query pages restyle only what can change. Layout follows the reference browser more closely: a row of cards is as tall as its tallest card, bold and regular text no longer trade letters, inline flex and grid boxes sit on the baseline, boxes split across columns, and overlays fill the box they cover.
Compile only when it pays
Code that runs often is turned into machine instructions, and that used to happen after a fixed number of runs. On real pages most functions run a few times and stop, so the engine spent more time compiling than it saved: up to a tenth of a second per page. Now each function keeps a running bill of what interpreting it has cost, and it is compiled only once that bill reaches what compiling would cost, the classic rent-or-buy rule. A function that runs a few times never pays for a compile; a hot loop earns one within a fraction of a millisecond.
Scripts read in parallel
Every script a page loads used to be read (parsed) on the main thread, one at a time, just before it ran. When a page brings a lot of script, they are now all read at once on up to six worker threads while the main thread runs them in order as soon as each is ready. Nothing a page can observe changes: errors are still reported where the script is reached.
A row of cards is as tall as its tallest card




Flex items stretch to fill their line by default, which is how a row of cards gets equal heights. When the row had no height of its own, its items were stretched to a first estimate of one line of text, and the cards with less content stayed short. The line now takes the height its tallest item really has, and every stretched item fills it.
Bold and regular text no longer trade letters




The regular and bold faces of a family are often stored in one font file. The cache that keeps each drawn letter told them apart by the file, so whichever weight drew a letter first at a size was used for that letter everywhere after it: bold headings lost letters to the regular text, and body text picked up stray bold ones. Each face is now told apart by its own outlines.
What changed 14 changes
Try it in your browser
Each check runs live in the browser you are reading with. Nothing is sent anywhere.