DevNews

Firefox 154: iterator edges and local-network access

On this page
  1. Chunks and windows do not end the same way
  2. CSS positions count all sibling elements
  3. Cache equivalence must match the response

Firefox 154 arrived on August 18 with new CSS and iterator features and local-network controls for WebSockets. The interesting details are at the boundaries: partial groups, sibling counting and cache-key scope.

Input A, B, C, D, E at size three: chunks produce ABC then DE; windows produce ABC, BCD, CDE. The final partial chunk differs from sliding windows. Original semantic illustration, not a browser screenshot.
Input A, B, C, D, E at size three: chunks produce ABC then DE; windows produce ABC, BCD, CDE. The final partial chunk differs from sliding windows. Original semantic illustration, not a browser screenshot. Chart : PeopleAreGeek. Data source.
View full-size image

Chunks and windows do not end the same way

Mozilla’s developer notes list the new iterator helpers. For an input sequence A, B, C, D, E, chunks of three produce [A, B, C], then [D, E]. Sliding windows of three produce [A, B, C], [B, C, D], then [C, D, E]. The cover visualizes this distinction.

The chunks documentation keeps a final non-empty partial chunk. The windows documentation defaults to only-full: an input shorter than the requested window yields nothing, unless allow-partial is selected. Empty input still yields no array. Check feature availability before using these methods across your browser support range.

CSS positions count all sibling elements

sibling-index() starts at one and counts sibling elements, not only those matching a particular class. For a zero-delay first item in a staggered animation, the arithmetic uses index minus one. Inserting another element before the list's cards changes their positions. Keep a reduced-motion path rather than making access to content depend on animation.

The new text-box properties trim selected font-metric edges. They do not promise pixel-perfect bounds around every visible glyph in every script. Check accents, fallback fonts and multiline text before removing layout adjustments.

Cache equivalence must match the response

Firefox 154 adds disk-cache support for No-Vary-Search. For a page whose server response is unchanged by utm_source, params=("utm_source") can exclude that parameter from cache matching. It does not make language, account or product identifiers irrelevant. Only exclude parameters whose response equivalence you have established.

The release notes also extend Local Network Access checks to WebSockets. A permission prompt can explain a stalled connection to a local device, but granting it does not replace server authentication, TLS or origin checks.

This remains an account of version 154. For current maintenance, 155.0.1, released September 4, fixes a sidebar restart issue and unresponsiveness involving blur and backdrop filters. Do not stay on 154 simply to retain these web-platform additions.

Preserve historical release, add 155.0.1 follow-up; explain iterator partial-window behavior, one-based sibling indexing, scoped No-Vary-Search and LAN permissions.