Actus Dev

Dev News — 7 septembre 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

Release

Bun 1.4.1: HTTP/2 en Bun.serve, argon2 nativo y tree-shaking que recorta 50–85% del bundle

Release grande: 202 issues cerrados. Bun.serve ahora sirve HTTP/2 en el mismo puerto que HTTP/1.1 — sin proxy adelante ni puerto separado. Llegan crypto.argon2() y crypto.argon2Sync() nativos, pause() y resume() en WebSocket para controlar la lectura del socket, y Bun.write() streamea el body a disco en vez de cargarlo entero en memoria.

Del lado del bundler: tree-shaking mejorado para patrones export * as baja el bundle entre 50% y 85% en librerías como zod y effect, y el tree-shaking de dynamic imports ahora saca exports sin usar de módulos lazy. Suma <link rel="modulepreload"> en builds de browser y code-splitting con menos archivos y más chicos. Las operaciones de Buffer llegan a ser 9.2x más rápidas por JIT inlining, y bun install gana --offline y --prefer-offline para CI. Esto es ENORME.

04 Sep 2026
bun.com →
Destacado

Playwright 1.63: test locks, frameLocator sin selector y locator.visible()

Test locks resuelve un dolor viejo: los tests que tocan un recurso compartido — un servicio externo, una config global de cuenta — declaran un lock con nombre, y los que comparten ese nombre nunca corren en simultáneo, ni entre archivos, ni entre workers, ni entre projects. Todo lo demás sigue en paralelo. Un test puede tomar varios locks y test.describe() acepta uno para el grupo entero.

Además page.frameLocator() sin selector busca en cualquier frame del subárbol — ya no tenés que localizar el iframe primero — y el nuevo locator.visible() es el reemplazo recomendado del pseudo-selector CSS :visible.

04 Sep 2026
github.com/microsoft →
Patch

pnpm 12.3.4: los flags booleanos vuelven a funcionar y se desbloquean los deploys en Vercel

pnpm 12 rechazaba con unexpected argument los settings booleanos que pnpm 11 aceptaba como flags — y eso reventaba todos los installs en Vercel, cuyo build corre pnpm install --unsafe-perm. 12.3.4 los vuelve a aceptar en cada comando que los toma: --unsafe-perm, --offline, --dangerously-allow-all-builds, y ahora también en pnpm remove. Suma resolución de dependencias más rápida en workspaces grandes. Si tenés deploys fallando desde que subiste a pnpm 12, este es el parche.

04 Sep 2026
github.com/pnpm →
🔧

Build Tools & Runtimes

Patch

Bun 1.4.2: fix del shadowing en bun build, leak de AsyncLocalStorage y ~350 commits de JSC

Un día después llega el parche. Se arregla una regresión de bun build donde variables anidadas se renombraban al mismo nombre que otras del mismo bloque, tirando SyntaxError: Cannot declare a var variable that shadows a let/const/class variable en proyectos con Elysia. También un leak de AsyncLocalStorage con timers o promesas pendientes creadas dentro de store.exit() o store.run() anidado, y el orden del evento 'online' en worker_threads que colgaba a @discordjs/ws. Se integran ~350 commits upstream de WebKit en JavaScriptCore: fixes de Intl y TypedArray, crashes de Proxy y mejor performance de Date.

05 Sep 2026
bun.sh →
Release

pnpm 11.26.0: catálogos con protocolo workspace y pnpm change check para CI

La rama 11 sigue viva y trae cosas propias: los catalogs ahora resuelven dependencias de workspace a través del protocolo workspace:, y llega pnpm change check para validar en CI las versiones de paquetes contra las bandas versioning.epics y los grupos versioning.fixed de pnpm-workspace.yaml. En seguridad: los errores de fetch y tarball y los logs de retry ahora ocultan credenciales, query strings y fragments de la URL — o sea, dejan de filtrar secretos a los logs de CI. Ojo con esto si guardás logs de build.

06 Sep 2026
github.com/pnpm →
Beta

Vite 8.3.0-beta.1 habilita la integración de DevTools con el dev server

La beta.1 enciende la integración de devtools con el dev server, el feature grande de la 8.3. Del lado de los fixes: resolveFileUrl mantiene los hash placeholders tal cual, deja de inlinear los targets de los preload links en HTML, y el bundled-dev marca el payload como entregado en el reporte del cliente.

07 Sep 2026
github.com/vitejs →
🛠️

Developer Tools

Minor

ESLint 10.10.0: new-cap mira Object.prototype y no-extra-bind deja de tener falsos negativos

Tres features chicas pero útiles: no-unexpected-multiline suma las flags d y v, new-cap pasa a chequear nombres de propiedades de Object.prototype, y no-extra-bind deja de perderse casos con class fields y static blocks. Entre los fixes: el autofix de prefer-object-has-own rompía cuando Object estaba shadoweado, y __proto__ ahora funciona en comentarios /* exported */.

04 Sep 2026
github.com/eslint →
🔥

Top Stories

Release

Bun 1.4.1: HTTP/2 in Bun.serve, native argon2, and tree-shaking that cuts bundles 50–85%

A big one: 202 issues closed. Bun.serve now serves HTTP/2 on the same port as HTTP/1.1 — no proxy in front, no separate port. Native crypto.argon2() and crypto.argon2Sync() land, WebSocket gains pause() and resume() to control socket reads, and Bun.write() streams response bodies to disk instead of loading them fully into memory.

On the bundler side: improved tree-shaking for export * as patterns cuts bundles 50–85% for libraries like zod and effect, and dynamic-import tree-shaking now strips unused exports from lazily loaded modules. Browser builds emit <link rel="modulepreload">, and code-splitting produces fewer, smaller files. Buffer operations get up to 9.2x faster via JIT inlining, and bun install gains --offline and --prefer-offline for CI.

04 Sep 2026
bun.com →
Notable

Playwright 1.63: test locks, selectorless frameLocator, and locator.visible()

Test locks solve an old pain: tests touching a shared resource — an external service, a global account setting — declare a named lock, and tests sharing that name never run concurrently, across files, workers, or projects. Everything else stays parallel. A test can hold several locks, and test.describe() accepts one for a whole group.

On top of that, page.frameLocator() without a selector searches any frame in the subtree — no more locating the iframe first — and the new locator.visible() is the recommended replacement for the :visible CSS pseudo-class.

04 Sep 2026
github.com/microsoft →
Patch

pnpm 12.3.4: boolean flags work again, unblocking Vercel deploys

pnpm 12 was rejecting with unexpected argument the boolean settings pnpm 11 accepted as flags — which broke every install on Vercel, whose build runs pnpm install --unsafe-perm. 12.3.4 accepts them again on every command that takes them: --unsafe-perm, --offline, --dangerously-allow-all-builds, and now on pnpm remove too. Dependency resolution in large workspaces also got faster. If your deploys have been failing since you moved to pnpm 12, this is the fix.

04 Sep 2026
github.com/pnpm →
🔧

Build Tools & Runtimes

Patch

Bun 1.4.2: bun build shadowing fix, AsyncLocalStorage leak, and ~350 JSC commits

The patch lands a day later. It fixes a bun build regression where nested variables were renamed to collide with others in the same block, throwing SyntaxError: Cannot declare a var variable that shadows a let/const/class variable in Elysia projects. Also an AsyncLocalStorage leak with timers or pending promises created inside store.exit() or a nested store.run(), and the worker_threads 'online' event order that hung @discordjs/ws. Roughly 350 upstream WebKit commits land in JavaScriptCore: Intl and TypedArray correctness, Proxy crash fixes, faster Date.

05 Sep 2026
bun.sh →
Release

pnpm 11.26.0: catalogs resolve workspace: deps, plus pnpm change check for CI

The 11 branch is still alive and shipping its own features: catalogs now resolve workspace dependencies through the workspace: protocol, and pnpm change check arrives to validate package versions in CI against the versioning.epics bands and versioning.fixed groups in pnpm-workspace.yaml. On the security side, fetch/tarball errors and retry logs now hide URL credentials, query strings and fragments — they stop leaking secrets into CI logs. Worth noting if you archive build logs.

06 Sep 2026
github.com/pnpm →
Beta

Vite 8.3.0-beta.1 enables DevTools integration with the dev server

beta.1 turns on dev server integration for devtools, the headline feature of 8.3. On the fix side: resolveFileUrl keeps hash placeholders as-is, preload link targets are no longer inlined in HTML, and bundled-dev marks the payload delivered on the client report.

07 Sep 2026
github.com/vitejs →
🛠️

Developer Tools

Minor

ESLint 10.10.0: new-cap checks Object.prototype, no-extra-bind loses its false negatives

Three small but useful features: no-unexpected-multiline gains the d and v flags, new-cap now checks Object.prototype property names, and no-extra-bind stops missing cases with class fields and static blocks. Among the fixes: the prefer-object-has-own autofix broke when Object was shadowed, and __proto__ now works in /* exported */ comments.

04 Sep 2026
github.com/eslint →
🔥

Top Stories

Release

Bun 1.4.1 : HTTP/2 dans Bun.serve, argon2 natif et tree-shaking réduisant les bundles de 50 à 85%

Une grosse version : 202 issues fermées. Bun.serve sert désormais HTTP/2 sur le même port que HTTP/1.1 — sans proxy ni port séparé. Arrivent crypto.argon2() et crypto.argon2Sync() natifs, pause() et resume() sur WebSocket, et Bun.write() qui streame le corps vers le disque.

Côté bundler : le tree-shaking des motifs export * as réduit les bundles de 50 à 85% pour zod ou effect, et le tree-shaking des imports dynamiques retire les exports inutilisés des modules lazy. Les opérations Buffer atteignent 9,2x plus vite grâce au JIT inlining.

04 Sep 2026
bun.com →
Notable

Playwright 1.63 : test locks, frameLocator sans sélecteur et locator.visible()

Les test locks règlent une vieille douleur : les tests touchant une ressource partagée déclarent un lock nommé, et ceux qui partagent ce nom ne s'exécutent jamais simultanément, ni entre fichiers, ni entre workers, ni entre projects. page.frameLocator() sans sélecteur cherche dans n'importe quel frame du sous-arbre, et locator.visible() remplace le pseudo-sélecteur CSS :visible.

04 Sep 2026
github.com/microsoft →
Patch

pnpm 12.3.4 : les flags booléens refonctionnent, débloquant les déploiements Vercel

pnpm 12 rejetait avec unexpected argument les réglages booléens que pnpm 11 acceptait en flags — ce qui cassait tous les installs sur Vercel, dont le build lance pnpm install --unsafe-perm. 12.3.4 les accepte de nouveau sur chaque commande concernée, y compris pnpm remove. La résolution de dépendances est aussi plus rapide sur les gros workspaces.

04 Sep 2026
github.com/pnpm →
🔧

Build Tools & Runtimes

Patch

Bun 1.4.2 : correctif de shadowing dans bun build, fuite AsyncLocalStorage et ~350 commits JSC

Le correctif arrive un jour plus tard : régression de bun build renommant des variables imbriquées en collision dans le même bloc (projets Elysia), fuite d'AsyncLocalStorage avec timers ou promesses créés dans store.exit(), et ordre de l'événement 'online' de worker_threads qui bloquait @discordjs/ws. Environ 350 commits WebKit intégrés dans JavaScriptCore.

05 Sep 2026
bun.sh →
Release

pnpm 11.26.0 : catalogues avec protocole workspace et pnpm change check pour la CI

La branche 11 reste active : les catalogues résolvent désormais les dépendances de workspace via le protocole workspace:, et pnpm change check valide en CI les versions de paquets contre les bandes versioning.epics et les groupes versioning.fixed. Côté sécurité, les erreurs de fetch/tarball et les logs de retry masquent identifiants, query strings et fragments d'URL.

06 Sep 2026
github.com/pnpm →
Bêta

Vite 8.3.0-beta.1 active l'intégration DevTools avec le dev server

La beta.1 active l'intégration devtools avec le dev server, la fonctionnalité phare de la 8.3. Côté correctifs : resolveFileUrl conserve les hash placeholders tels quels, les cibles des preload links ne sont plus inlinées dans le HTML.

07 Sep 2026
github.com/vitejs →
🛠️

Developer Tools

Mineur

ESLint 10.10.0 : new-cap vérifie Object.prototype, no-extra-bind perd ses faux négatifs

Trois petites fonctionnalités utiles : no-unexpected-multiline gagne les flags d et v, new-cap vérifie les noms de propriétés d'Object.prototype, et no-extra-bind ne rate plus les cas avec class fields et static blocks. L'autofix de prefer-object-has-own ne casse plus quand Object est masqué.

04 Sep 2026
github.com/eslint →