Vue 3.6.0-rc.3: la rama minor sigue puliéndose
Tercera release candidate de Vue 3.6, publicada esta madrugada. El equipo mantiene el changelog de pre-releases en la rama minor, así que si venés siguiendo el ciclo, ahí está el detalle fino. Lo importante es la señal: 3.6 lleva semanas en RC y el ritmo de candidatas se acortó, mientras la línea estable sigue en 3.5.41. Si tenés una app grande, este es el momento de probar la RC en una branch y reportar, no cuando salga la estable.
SvelteKit 3.0.0-next.18 separa los plugins de Vite de los adapters en pre y post
Cambio breaking en la línea next de SvelteKit 3: los plugins de Vite que aportan los adapters ahora se dividen en pre y post (#16711). Traducción para el que mantiene un adapter propio: vas a tener que declarar en qué fase corre cada plugin en vez de tirar todo junto. Si sos usuario del adapter oficial, esto te llega gratis en el upgrade — pero si tenés un adapter custom para tu infra, revisalo antes de que 3.0 sea estable.
TanStack Start 2.0 sigue en beta con el port a Solid al día
Otra tanda de betas del monorepo de TanStack Router: @tanstack/solid-start 2.0.0-beta.31, solid-router 2.0.0-beta.30 y compañía salieron el 10 de agosto, con las líneas de Vue moviéndose en paralelo en 1.168.x. No hay una feature titular acá, pero el dato importa: el 2.0 avanza a ritmo de release diaria y los ports por framework ya no van atrás del de React. Si estás evaluando Start para un proyecto nuevo, el 2.0 sigue siendo beta — planificá en consecuencia.
@shadcn/react 0.3.0 agrega la primitiva Questionnaire
Nueva primitiva Questionnaire: preguntas multi-step, respuestas libres, validación y navegación por teclado, todo resuelto de una (#11414). Es exactamente ese componente que todos terminamos escribiendo mal tres veces — el wizard de onboarding, el formulario por pasos, la encuesta. Que venga con navegación por teclado de fábrica no es un detalle: es la parte que casi siempre se saltea y la que rompe la accesibilidad.
Turborepo 2.10.9: casi toda la release es performance
Contá los commits y la mayoría son perf: parseo de lockfiles de pnpm por fast path, hashing de fingerprints de resolución en paralelo, listas de identidad compartidas entre closures idénticos, globs con prefijo literal recorridos sin compilar wax, e indexado de entradas anidadas de Bun por nombre. Traducido: el arranque del task graph en monorepos grandes debería sentirse más liviano sin que cambies una línea. También acepta rangos semver en devEngines.packageManager.version y arregla la composición de tareas afectadas con filtros de paquete.
esbuild 0.28.2 arregla un tree shaking roto por alias de import de TypeScript
Dos bugs finos pero peligrosos. El primero: con la sintaxis de asignación de import de TypeScript (import Alias = Base.SomeType), esbuild podía tree-shakear imports que sí se usaban en un type alias (#4507). El segundo es del minificador de CSS, que borraba un & cuando no era seguro hacerlo dentro de un :not() anidado (#4497) — o sea, estilos que se rompían solo en build de producción. Justo el tipo de bug que te come una tarde.
Vite 8.2.1 y plugin-legacy 8.2.3
Patch de mantenimiento de la línea 8.2, publicado junto a @vitejs/plugin-legacy 8.2.3. El detalle está en el CHANGELOG del tag; no hay cambios de API. Actualizá y seguí.
ESLint 10.8.1 cierra dos autofix que podían romper tu código
Lo relevante son los ASI hazards: el autofix de no-unused-labels y la sugerencia removeVar de no-unused-vars podían dejar código donde el punto y coma automático cambiaba el significado. Si corrés --fix en CI, esto te importa. Suman falsos positivos arreglados en getter-return y accessor-pairs, y ahora id-denylist e id-match ignoran nombres de meta-properties.
Cypress 15.20.1 sale cinco días después del 15.20.0
Patch rápido sobre la 15.20.0 del 4 de agosto. El equipo publica el detalle en el changelog de la doc, no en la release de GitHub, así que si venís de 15.19 conviene leerlo antes de saltar directo a la última.
Chrome 151 estable llega a desktop, Android e iOS
El canal estable pasó a 151.0.7922.108/.109 en Windows y Mac, y 151.0.7922.108 en Linux, con los updates de Android e iOS el mismo día. Es el rollout habitual escalonado, así que ojo con asumir que tus usuarios ya están ahí: si dependés de una feature nueva de la 151, seguí necesitando feature detection.
Tendencias Destacadas
El tema de la semana es la resolución de dependencias: pnpm 12 deja de sondear la red para elegir transporte y Turborepo dedica media release a parsear lockfiles más rápido. Los package managers dejaron de competir por features y ahora compiten por determinismo y milisegundos.
Semana sin novedades verificadas en TypeScript, React core ni React Native: TypeScript sigue publicando nightlies de 7.1 sin anuncio, React no sacó release, y React Native quedó en 0.87.0-rc.4 desde el 5 de agosto. Cuando no hay noticia, no la inventamos.
VS Code 1.132 confirma que el editor ya no se diseña para vos solo, sino para vos y un agente: comentarios sobre elementos del browser, side chats para no interrumpirlo y status pills de subagentes. Nos guste o no, ese es el nuevo loop.
Vue 3.6.0-rc.3: the minor branch keeps polishing
Third release candidate for Vue 3.6, published overnight. The team keeps the pre-release changelog on the minor branch, so that is where the fine-grained detail lives. The signal matters more than the diff: 3.6 has been in RC for weeks and the cadence between candidates is tightening, while the stable line sits at 3.5.41. If you run a large app, now is the time to test the RC on a branch and file reports — not after stable ships.
SvelteKit 3.0.0-next.18 splits adapter Vite plugins into pre and post
Breaking change on the SvelteKit 3 next line: Vite plugins contributed by adapters are now separated into pre and post (#16711). Translation for anyone maintaining their own adapter: you now declare which phase each plugin runs in instead of handing over one flat list. Users of official adapters get this for free on upgrade — but if you keep a custom adapter for your infra, audit it before 3.0 goes stable.
TanStack Start 2.0 keeps shipping betas with the Solid port in lockstep
Another batch of betas from the TanStack Router monorepo: @tanstack/solid-start 2.0.0-beta.31, solid-router 2.0.0-beta.30 and friends landed on August 10, with the Vue lines moving in parallel on 1.168.x. There is no headline feature here, but the cadence is the story: 2.0 is shipping at near-daily pace and the per-framework ports are no longer trailing the React one. If you are evaluating Start for a greenfield project, 2.0 is still beta — plan accordingly.
@shadcn/react 0.3.0 adds the Questionnaire primitive
New Questionnaire primitive: multi-step questions, freeform answers, validation and keyboard navigation, handled in one piece (#11414). This is exactly the component everyone ends up writing badly three times — the onboarding wizard, the stepped form, the survey. Shipping keyboard navigation by default is not a detail: it is the part teams usually skip, and the part that breaks accessibility.
Turborepo 2.10.9 is almost entirely performance work
Count the commits and most of them are perf: pnpm lockfile parsing on a fast path, resolution fingerprint hashing done in parallel, resolution identity lists shared across identical workspace closures, literal-prefix globs walked without wax compilation, and Bun nested lockfile entries indexed by name. Translation: task graph startup in large monorepos should feel lighter without you changing a line. It also accepts semver ranges in devEngines.packageManager.version and fixes composing affected tasks with package filters.
esbuild 0.28.2 fixes tree shaking broken by a TypeScript import alias
Two subtle but nasty bugs. First: with TypeScript's import assignment syntax (import Alias = Base.SomeType), esbuild could tree-shake imports that were in fact used in a type alias (#4507). Second is in the CSS minifier, which dropped an & when it was unsafe to do so inside a nested :not() (#4497) — styles breaking only in production builds. Exactly the class of bug that eats an afternoon.
Vite 8.2.1 and plugin-legacy 8.2.3
Maintenance patch on the 8.2 line, shipped alongside @vitejs/plugin-legacy 8.2.3. Details live in the CHANGELOG for the tag; no API changes. Bump and move on.
ESLint 10.8.1 closes two autofixes that could break your code
The relevant part is the ASI hazards: the no-unused-labels autofix and the removeVar suggestion in no-unused-vars could leave code where automatic semicolon insertion changed the meaning. If you run --fix in CI, this matters to you. It also fixes false positives in getter-return and accessor-pairs, and id-denylist plus id-match now ignore meta-property names.
Cypress 15.20.1 lands five days after 15.20.0
A quick patch on top of 15.20.0 from August 4. The team publishes the detail in the docs changelog rather than the GitHub release, so if you are coming from 15.19 it is worth reading before jumping straight to the latest.
Chrome 151 stable rolls out to desktop, Android and iOS
The stable channel moved to 151.0.7922.108/.109 on Windows and Mac, and 151.0.7922.108 on Linux, with Android and iOS updates the same day. It is the usual staged rollout, so do not assume your users are already there: if you depend on a new 151 feature, you still need feature detection.
Notable Trends
The theme of the week is dependency resolution: pnpm 12 stops probing the network to pick a transport, and Turborepo spends half a release parsing lockfiles faster. Package managers stopped competing on features and now compete on determinism and milliseconds.
No verified TypeScript, React core or React Native news this week: TypeScript keeps publishing 7.1 nightlies with no announcement, React shipped no release, and React Native has sat on 0.87.0-rc.4 since August 5. When there is no news, we do not invent it.
VS Code 1.132 confirms the editor is no longer designed for you alone but for you plus an agent: comments on browser elements, side chats so you do not interrupt it, and subagent status pills. Like it or not, that is the new loop.
Vue 3.6.0-rc.3 : la branche minor continue de se peaufiner
Troisième release candidate de Vue 3.6, publiée cette nuit. L'équipe garde le changelog des pré-releases sur la branche minor, c'est là que se trouve le détail. Le signal compte plus que le diff : 3.6 est en RC depuis des semaines et la cadence entre candidates se resserre, tandis que la ligne stable reste en 3.5.41. Sur une grosse app, c'est maintenant qu'il faut tester la RC sur une branche et remonter les retours, pas après la stable.
SvelteKit 3.0.0-next.18 scinde les plugins Vite des adaptateurs en pre et post
Changement breaking sur la ligne next de SvelteKit 3 : les plugins Vite fournis par les adaptateurs sont désormais séparés en pre et post (#16711). Traduction pour qui maintient son propre adaptateur : il faut déclarer la phase d'exécution de chaque plugin au lieu d'une liste unique. Les utilisateurs des adaptateurs officiels l'obtiennent gratuitement à l'upgrade — mais un adaptateur custom pour votre infra mérite un audit avant la 3.0 stable.
TanStack Start 2.0 continue ses betas, le port Solid suit le rythme
Nouvelle salve de betas dans le monorepo TanStack Router : @tanstack/solid-start 2.0.0-beta.31, solid-router 2.0.0-beta.30 et consorts sont sortis le 10 août, les lignes Vue avançant en parallèle en 1.168.x. Pas de feature phare ici, mais la cadence est l'info : la 2.0 sort presque quotidiennement et les ports par framework ne traînent plus derrière celui de React. Si vous évaluez Start pour un nouveau projet, la 2.0 reste en beta — planifiez en conséquence.
@shadcn/react 0.3.0 ajoute la primitive Questionnaire
Nouvelle primitive Questionnaire : questions multi-étapes, réponses libres, validation et navigation clavier, le tout d'un bloc (#11414). C'est exactement le composant que tout le monde finit par mal écrire trois fois — le wizard d'onboarding, le formulaire par étapes, le sondage. La navigation clavier par défaut n'est pas un détail : c'est la partie qu'on saute d'habitude, et celle qui casse l'accessibilité.
Turborepo 2.10.9 : quasiment que de la performance
Comptez les commits : la majorité sont des perf — parsing des lockfiles pnpm en fast path, hachage des fingerprints de résolution en parallèle, listes d'identité partagées entre closures identiques, globs à préfixe littéral parcourus sans compilation wax, et entrées imbriquées de lockfile Bun indexées par nom. Traduction : le démarrage du task graph sur gros monorepos devrait être plus léger sans changer une ligne. La release accepte aussi des ranges semver dans devEngines.packageManager.version et corrige la composition des tâches affectées avec les filtres de packages.
esbuild 0.28.2 corrige un tree shaking cassé par un alias d'import TypeScript
Deux bugs subtils mais méchants. Le premier : avec la syntaxe d'assignation d'import TypeScript (import Alias = Base.SomeType), esbuild pouvait tree-shaker des imports pourtant utilisés dans un type alias (#4507). Le second vient du minifieur CSS, qui supprimait un & alors que ce n'était pas sûr dans un :not() imbriqué (#4497) — des styles cassés uniquement en build de production. Exactement le genre de bug qui bouffe un après-midi.
Vite 8.2.1 et plugin-legacy 8.2.3
Patch de maintenance sur la ligne 8.2, publié avec @vitejs/plugin-legacy 8.2.3. Le détail est dans le CHANGELOG du tag ; aucun changement d'API. Mettez à jour et passez à la suite.
ESLint 10.8.1 corrige deux autofix capables de casser votre code
L'essentiel, ce sont les ASI hazards : l'autofix de no-unused-labels et la suggestion removeVar de no-unused-vars pouvaient laisser du code où l'insertion automatique de point-virgule changeait le sens. Si vous lancez --fix en CI, ça vous concerne. S'ajoutent des faux positifs corrigés dans getter-return et accessor-pairs, et id-denylist comme id-match ignorent désormais les noms de meta-properties.
Cypress 15.20.1 arrive cinq jours après la 15.20.0
Patch rapide sur la 15.20.0 du 4 août. L'équipe publie le détail dans le changelog de la doc, pas dans la release GitHub : si vous venez de 15.19, lisez-le avant de sauter directement à la dernière.
Chrome 151 stable arrive sur desktop, Android et iOS
Le canal stable est passé en 151.0.7922.108/.109 sur Windows et Mac, et 151.0.7922.108 sur Linux, avec les updates Android et iOS le même jour. C'est le déploiement progressif habituel : ne supposez pas que vos utilisateurs y sont déjà — si vous dépendez d'une nouveauté de la 151, la feature detection reste nécessaire.
Tendances Notables
Le thème de la semaine, c'est la résolution de dépendances : pnpm 12 cesse de sonder le réseau pour choisir un transport, et Turborepo consacre la moitié d'une release à parser les lockfiles plus vite. Les package managers ne se battent plus sur les features mais sur le déterminisme et les millisecondes.
Aucune nouvelle vérifiée côté TypeScript, React core ou React Native cette semaine : TypeScript continue ses nightlies 7.1 sans annonce, React n'a rien publié, et React Native reste en 0.87.0-rc.4 depuis le 5 août. Quand il n'y a pas d'info, on ne l'invente pas.
VS Code 1.132 confirme que l'éditeur n'est plus pensé pour vous seul mais pour vous et un agent : commentaires sur les éléments du navigateur, side chats pour ne pas l'interrompre, status pills des subagents. Qu'on aime ou non, c'est la nouvelle boucle.