Firefox 154: text-box and sibling-* Complete Cross-Engine Support
Firefox 154 is the last gap: text-box and the sibling functions now work in every major engine, so you can delete the JavaScript and utility-class hacks doing their job.
1 source
attr() drops its string-only limit, new progress() and alpha() functions grow the CSS math and color toolkit, and Promise.allKeyed plus allSettledKeyed land.
Firefox 155 shipped September 1, and the CSS story is attr(). The function has long been stuck returning string values inside the content property; now it returns values of any type. A data-* attribute can carry a length, a number, or a color that CSS resolves directly, deleting a whole class of stringified markup and parsing hacks.
Two additions round out the author-facing CSS. progress() computes an intermediate value between two endpoints, handy when you need a step between values. alpha() works as a relative-color function on the alpha channel, so you can pull transparency from an existing color instead of hardcoding a new one.
The JavaScript side earns a skim. Promise.allKeyed and Promise.allSettledKeyed hand results back keyed to the values you passed, so parallel fan-out over a known set needs no manual index-pairing pass. A failed dynamic import() is no longer cached as a failure in the module map, so a transient network error no longer poisons retries. DevTools can emulate prefers-reduced-motion from the Rules view, and the JSON viewer renders NDJSON logs.
Safe to skip: CSS nesting caps at 75 levels, font-width becomes the standard name for font-stretch, and Wasm gains compact import sections and 128-bit arithmetic. One real caveat: on networks that block UDP, the QUIC v2 upgrade can slow page loads, with a fix planned for 155.0.1 by September 8.
Firefox 154 is the last gap: text-box and the sibling functions now work in every major engine, so you can delete the JavaScript and utility-class hacks doing their job.
1 source
Safari Technology Preview 252 and Firefox 156 both moved `Promise.try()` onto `PromiseResolve`, so the promise your callback returns comes back unwrapped and keeps its identity.
2 sources
The v7 alpha rewrites the CSS parser, brings CSS custom properties and media queries to React Native, and adds a built-in animation adapter. No Reanimated required.
2 sources