← Dev News

Dev News — September 14, 2026

Lo nuevo hoy

Today's highlights

Points forts du jour

Click en cualquiera para ir al detalle

Click any item to jump to the full section

Cliquez un élément pour aller à la section complète

🔥

Top Stories

Breaking

Chrome 153 estrena el ciclo de dos semanas y trae los elementos camera y microphone

Chrome 153 llegó a stable el 8 de septiembre y es el primero del ciclo de dos semanas — se terminaron las cuatro semanas. Y no vino de vacío: <camera> y <microphone> son controles HTML declarativos activados por el usuario, con manejo de permisos incorporado, así que pedir video o audio deja de ser un ritual de JavaScript. Además el parseo XML pasó a una implementación en Rust, memory-safe, que cubre DOMParser, XMLHttpRequest.responseXML y SVG. Sumá scroll-axis-lock, los scroll containers de un solo eje con overflow: scroll clip, y los métodos join() y zip() de iteradores. Ojo con esto: con releases cada dos semanas, tu matriz de testing cambia de ritmo.

08 Sep 2026
developer.chrome.com →
Breaking

Meta libera Astryx, su design system de React con más de 150 componentes

Ocho años de desarrollo interno y ahora sale con licencia MIT. Astryx corre sobre React 19 y StyleX, trae más de 150 componentes accesibles y design tokens en CSS para colores, tipografía y radios. Lo interesante es que no te casa con StyleX: podés usar className con Tailwind o CSS Modules, o CSS pelado, sin configurar un compilador extra. Tiene un comando swizzle para eyectar el código fuente de un componente a tu repo, y un endpoint MCP más CLI pensados para que los agentes trabajen con el sistema. Ya hay gente portando la arquitectura a Svelte 5 y Flutter.

13 Sep 2026
infoq.com →
Breaking

tsgolint v7 estable: linting type-aware en Oxlint, de 12 a 18 veces más rápido que ESLint

Esto es ENORME si tenés un monorepo grande. tsgolint es el motor type-aware de Oxlint: Rust hace el descubrimiento de archivos y las reglas sintácticas, y delega el análisis semántico a un binario Go construido sobre typescript-go, el port oficial del compilador. La v7 estable cubre 59 de las 61 reglas type-aware de typescript-eslint, contra 43 en el alpha de diciembre. Los benchmarks en microsoft/vscode, microsoft/typescript, typeorm y vuejs/core sobre un M4 Pro dan entre 12x y 18x más rápido que ESLint con typescript-eslint. El versionado ahora sigue al compilador que embebe: v7.0.2000 va con TypeScript 7.0.2.

11 Sep 2026
infoq.com →
🎨

CSS

Destacado

Safari Technology Preview 252: user-select sin prefijo y named-feature() en @supports

Se terminó el -webkit-user-select: STP 252 soporta la propiedad user-select sin prefijo. Suma la función named-feature() en condiciones @supports y CSSMediaRule.matches(), además de valores porcentuales en text-decoration-inset. Del lado de los bugs hay una tanda seria de fixes de layout en grid tracks, subgrid, line clamping y corner-shape para esquinas redondeadas y biseladas. En HTML, dialog ahora mueve el foco correctamente después de show(), y DOMException gana una propiedad stack como cualquier otro error.

11 Sep 2026
webkit.org →
⚛️

React

Patch

Next.js 16.3.5 arregla la caché en disco de next/image y agrega nonce CSP en loading y template

Release de parches backporteados sobre la línea estable. next/image ahora saltea entradas de 0 bytes al inicializar la caché LRU en disco y rechaza imágenes vacías al leer o escribir en ella — si venías viendo imágenes rotas intermitentes, es esto. También se agrega el nonce CSP a los script tags de los archivos loading y template, se emiten los NFT del server completo cuando usás output: 'standalone' con un adapter, y se corrige la retención de la señal de prerender en use cache.

11 Sep 2026
github.com/vercel/next.js →
📱

React Native

Beta

React Native 0.88.0-rc.0: ArrayBuffer en TurboModules y screenshots en DevTools

Arrancó el ciclo de RC de 0.88. Lo más jugoso: ArrayBuffer para TurboModules en Java y ObjC (RCTArrayBuffer), con un contrato explícito de propiedad de bytes — pasar binario entre JS y nativo deja de ser un baile de base64. React Native DevTools gana captura de screenshots vía Page.captureScreenshot e inspección de eventos WebSocket en el Network panel (canal CANARY). Suma fontVariationSettings en Text y TextInput en ambas plataformas. Ojo con el breaking: se removió el export raíz Touchable (no documentado) — si lo extendías como tipo, usá ViewProps. Y InitializeCore queda deprecado a favor de react-native/setup-env.

08 Sep 2026
github.com/facebook/react-native →
🧩

JS Frameworks

Destacado

TanStack Router: una pasada de performance profunda sobre Link y buildLocation

Dieciocho commits de performance en un solo release, y casi todos apuntan al mismo lugar: Link. Ahora se memoiza y reenvía refs sin un effect, usa menos hooks por instancia y reduce las allocations en runtime. buildLocation hace match de la location actual de forma lazy y dejó de compartir estructuralmente search y state. La caché de location pasó a ser client-only, lo que adelgaza el SSR de Link. Si tenés listas largas de links, esto se nota.

13 Sep 2026
github.com/TanStack/router →
🔧

Build Tools & Runtimes

Release

Node.js 24.21.0 LTS: OpenSSL 3.5.8, MIMEType.parse sin throw y BlockList más rápida

La línea LTS se pone al día. Actualiza OpenSSL a 3.5.8, Undici a 7.29.1 y los certificados raíz a NSS 3.126. Del lado de la API: MIMEType.parse ahora tiene una variante que no tira excepción — chau try/catch alrededor de cada parseo de content-type — y crypto soporta cargar claves privadas a través de STORE loaders. Suma mejoras de performance en net.BlockList, una implementación de histogramas mejorada y testing de hipótesis estadísticas en perf_hooks.

08 Sep 2026
github.com/nodejs/node →
🛠️

Developer Tools

Destacado

Oxlint 1.82.0 y Oxfmt 0.67.0: una tanda grande de fixes en CSS y reglas de JSX

Oxlint suma la opción checkConditionalExpressions en no-unmodified-loop-condition y corrige varias reglas que venían dando falsos positivos: jsx-a11y/anchor-has-content ahora acepta anchors pasados como props de componentes custom, no-explicit-any arregla los rest params a unknown[], y no-useless-assignment maneja asignaciones destructuradas. El formatter de CSS se llevó el grueso del trabajo: preservar comentarios dentro de !important, en preludios de at-rules, alrededor de variables SCSS/Less y en listas con paréntesis. Hay un breaking en el parser: panicked pasó a llamarse fatal_error en ParserReturn.

07 Sep 2026
github.com/oxc-project/oxc →
🔥

Top Stories

Breaking

Chrome 153 kicks off the two-week release cycle with camera and microphone elements

Chrome 153 hit stable on September 8 and it is the first release of the two-week cycle — the four-week cadence is over. It did not arrive empty-handed: <camera> and <microphone> are declarative, user-activated HTML controls for requesting video and audio capture, with permission handling built in. XML parsing also moved to a memory-safe Rust implementation covering DOMParser, XMLHttpRequest.responseXML and SVG images. Add scroll-axis-lock, single-axis scroll containers via overflow: scroll clip, and the iterator join() and zip() methods. With releases every two weeks, your testing matrix changes rhythm.

08 Sep 2026
developer.chrome.com →
Breaking

Meta open-sources Astryx, its React design system with 150+ components

Eight years of internal development, now shipping under MIT. Astryx runs on React 19 and StyleX, with over 150 accessible components and CSS design tokens for color, typography and border radii. The interesting part: it does not lock you into StyleX — you can use className with Tailwind or CSS Modules, or vanilla CSS, with no extra compiler setup. A swizzle command ejects a component's source into your repo, and a CLI plus MCP endpoint let AI agents work against the system directly. People are already porting the architecture to Svelte 5 and Flutter.

13 Sep 2026
infoq.com →
Breaking

tsgolint v7 stable: type-aware linting in Oxlint, 12 to 18x faster than ESLint

This is huge if you run a large monorepo. tsgolint is Oxlint's type-aware engine: Rust handles file discovery and syntactic rules, then delegates semantic analysis to a Go binary built on typescript-go, the official compiler port. Stable v7 covers 59 of typescript-eslint's 61 type-aware rules, up from 43 at the December alpha. Benchmarks across microsoft/vscode, microsoft/typescript, typeorm and vuejs/core on an Apple M4 Pro put it 12 to 18 times faster than ESLint with typescript-eslint. Versioning now tracks the embedded compiler: v7.0.2000 aligns with TypeScript 7.0.2.

11 Sep 2026
infoq.com →
🎨

CSS

Notable

Safari Technology Preview 252: unprefixed user-select and named-feature() in @supports

-webkit-user-select is done: STP 252 supports the unprefixed user-select property. It also adds the named-feature() function in @supports conditions, CSSMediaRule.matches(), and percentage values in text-decoration-inset. On the bug side there is a serious batch of layout fixes across grid tracks, subgrid, line clamping and corner-shape for both rounded and notched corners. In HTML, dialog now moves focus correctly after show(), and DOMException gains a stack property matching other error objects.

11 Sep 2026
webkit.org →
⚛️

React

Patch

Next.js 16.3.5 fixes the next/image disk cache and adds CSP nonce to loading and template scripts

A backported patch release on the stable line. next/image now skips 0-byte entries when initializing the disk LRU cache and rejects empty images when reading or writing to it — if you were seeing intermittent broken images, this is it. It also adds the CSP nonce to script tags of loading and template files, emits whole-app server NFTs when output: 'standalone' is used with an adapter, and fixes use cache prerender signal retention.

11 Sep 2026
github.com/vercel/next.js →
📱

React Native

Beta

React Native 0.88.0-rc.0: ArrayBuffer in TurboModules and DevTools screenshots

The 0.88 RC cycle is underway. The headline: ArrayBuffer support for TurboModules in Java and ObjC (RCTArrayBuffer), with an explicit byte-ownership contract — passing binary between JS and native stops being a base64 dance. React Native DevTools gains screenshot capture via Page.captureScreenshot and WebSocket event inspection in the Network panel (CANARY channel). It also adds fontVariationSettings for Text and TextInput on both platforms. Breaking change to watch: the undocumented Touchable root export is removed — use ViewProps if you were extending it as a type. And InitializeCore is deprecated in favor of react-native/setup-env.

08 Sep 2026
github.com/facebook/react-native →
🧩

JS Frameworks

Notable

TanStack Router: a deep performance pass over Link and buildLocation

Eighteen performance commits in a single release, and nearly all of them land in the same place: Link. It is now memoized and forwards refs without an effect, uses fewer hooks per instance and cuts runtime allocations. buildLocation matches the current location lazily and stopped structurally sharing search and state. The location cache is now client-only, which slims down Link SSR. If you render long lists of links, you will feel this.

13 Sep 2026
github.com/TanStack/router →
🔧

Build Tools & Runtimes

Release

Node.js 24.21.0 LTS: OpenSSL 3.5.8, non-throwing MIMEType.parse and a faster BlockList

The LTS line catches up. It updates OpenSSL to 3.5.8, Undici to 7.29.1 and root certificates to NSS 3.126. On the API side: MIMEType.parse gains a non-throwing variant — no more try/catch around every content-type parse — and crypto supports loading private keys through STORE loaders. It also brings performance work on net.BlockList, an improved histogram implementation and statistical hypothesis testing in perf_hooks.

08 Sep 2026
github.com/nodejs/node →
🛠️

Developer Tools

Notable

Oxlint 1.82.0 and Oxfmt 0.67.0: a big batch of CSS and JSX rule fixes

Oxlint adds a checkConditionalExpressions option to no-unmodified-loop-condition and fixes several rules that were producing false positives: jsx-a11y/anchor-has-content now allows anchors passed as custom component props, no-explicit-any fixes rest parameters to unknown[], and no-useless-assignment handles destructuring assignments. The CSS formatter took the bulk of the work: preserving comments inside !important, in at-rule preludes, around SCSS/Less variable values and in paren comma lists. There is a breaking change in the parser: panicked is renamed to fatal_error in ParserReturn.

07 Sep 2026
github.com/oxc-project/oxc →
🔥

Top Stories

Breaking

Chrome 153 lance le cycle de deux semaines avec les éléments camera et microphone

Chrome 153 est arrivé en stable le 8 septembre et inaugure le cycle de deux semaines — les quatre semaines, c'est fini. Et pas les mains vides : <camera> et <microphone> sont des contrôles HTML déclaratifs activés par l'utilisateur pour demander la capture vidéo et audio, avec gestion des permissions intégrée. Le parsing XML passe à une implémentation Rust memory-safe couvrant DOMParser, XMLHttpRequest.responseXML et les images SVG. Ajoutez scroll-axis-lock, les scroll containers à axe unique via overflow: scroll clip, et les méthodes d'itérateurs join() et zip().

08 Sep 2026
developer.chrome.com →
Breaking

Meta libère Astryx, son design system React de plus de 150 composants

Huit ans de développement interne, désormais sous licence MIT. Astryx tourne sur React 19 et StyleX, avec plus de 150 composants accessibles et des design tokens CSS. Il ne vous enferme pas dans StyleX : className avec Tailwind ou CSS Modules, ou du CSS vanilla, sans configuration de compilateur supplémentaire. Une commande swizzle éjecte le code source d'un composant dans votre dépôt, et un CLI plus un endpoint MCP permettent aux agents de travailler directement avec le système.

13 Sep 2026
infoq.com →
Breaking

tsgolint v7 stable : linting type-aware dans Oxlint, 12 à 18 fois plus rapide qu'ESLint

Énorme si vous gérez un gros monorepo. tsgolint est le moteur type-aware d'Oxlint : Rust gère la découverte des fichiers et les règles syntaxiques, puis délègue l'analyse sémantique à un binaire Go bâti sur typescript-go. La v7 stable couvre 59 des 61 règles type-aware de typescript-eslint, contre 43 à l'alpha de décembre. Les benchmarks le placent 12 à 18 fois plus rapide qu'ESLint avec typescript-eslint. Le versionnage suit désormais le compilateur embarqué : v7.0.2000 correspond à TypeScript 7.0.2.

11 Sep 2026
infoq.com →
🎨

CSS

Notable

Safari Technology Preview 252 : user-select sans préfixe et named-feature() dans @supports

Fini -webkit-user-select : STP 252 prend en charge la propriété user-select sans préfixe. S'ajoutent la fonction named-feature() dans les conditions @supports, CSSMediaRule.matches() et les valeurs en pourcentage dans text-decoration-inset. Côté correctifs, une série de fixes de layout sur grid tracks, subgrid, line clamping et corner-shape. En HTML, dialog déplace correctement le focus après show().

11 Sep 2026
webkit.org →
⚛️

React

Patch

Next.js 16.3.5 corrige le cache disque de next/image et ajoute le nonce CSP aux scripts loading et template

Release de correctifs backportés sur la ligne stable. next/image ignore désormais les entrées de 0 octet à l'initialisation du cache LRU disque et rejette les images vides en lecture comme en écriture. Le nonce CSP est ajouté aux balises script des fichiers loading et template, les NFT du serveur complet sont émis avec output: 'standalone' et un adapter, et la rétention du signal de prerender dans use cache est corrigée.

11 Sep 2026
github.com/vercel/next.js →
📱

React Native

Bêta

React Native 0.88.0-rc.0 : ArrayBuffer dans les TurboModules et screenshots dans DevTools

Le cycle RC de 0.88 est lancé. En tête : le support d'ArrayBuffer pour les TurboModules en Java et ObjC (RCTArrayBuffer), avec un contrat explicite de propriété des octets. React Native DevTools gagne la capture de screenshots via Page.captureScreenshot et l'inspection des événements WebSocket dans le panneau Network (canal CANARY). Ajout de fontVariationSettings pour Text et TextInput. Breaking change : l'export racine Touchable est supprimé — utilisez ViewProps.

08 Sep 2026
github.com/facebook/react-native →
🧩

JS Frameworks

Notable

TanStack Router : une passe de performance en profondeur sur Link et buildLocation

Dix-huit commits de performance dans une seule release, presque tous au même endroit : Link. Il est désormais mémoïsé et transmet les refs sans effect, utilise moins de hooks par instance et réduit les allocations runtime. buildLocation match la location courante de façon lazy et ne partage plus structurellement search et state. Le cache de location est maintenant client-only.

13 Sep 2026
github.com/TanStack/router →
🔧

Build Tools & Runtimes

Release

Node.js 24.21.0 LTS : OpenSSL 3.5.8, MIMEType.parse sans throw et BlockList plus rapide

La ligne LTS se met à jour. Passage d'OpenSSL à 3.5.8, d'Undici à 7.29.1 et des certificats racine à NSS 3.126. Côté API : MIMEType.parse gagne une variante qui ne lève pas d'exception, et crypto prend en charge le chargement de clés privées via les STORE loaders. S'ajoutent des gains de performance sur net.BlockList et des tests d'hypothèse statistique dans perf_hooks.

08 Sep 2026
github.com/nodejs/node →
🛠️

Developer Tools

Notable

Oxlint 1.82.0 et Oxfmt 0.67.0 : une grosse série de correctifs CSS et de règles JSX

Oxlint ajoute l'option checkConditionalExpressions à no-unmodified-loop-condition et corrige plusieurs règles produisant des faux positifs : jsx-a11y/anchor-has-content accepte désormais les anchors passés comme props de composants custom, et no-useless-assignment gère les affectations déstructurées. Le formatter CSS concentre l'essentiel du travail sur la préservation des commentaires. Un breaking change dans le parser : panicked devient fatal_error dans ParserReturn.

07 Sep 2026
github.com/oxc-project/oxc →