Bun reescribe 535.496 líneas de Zig a Rust en cuatro meses
El equipo de Bun migró todo el codebase con asistencia de IA — 50 workflows dinámicos orquestando 64 instancias en paralelo, ~165.000 dólares en tokens — contra el año estimado que hubiera llevado a mano. Los números que importan al que corre Bun en producción: 128 bugs longevos resueltos, memory leaks nativos eliminados, y el uso de memoria durante bundling bajó de 6,7 GB a 609 MB. El throughput HTTP mejoró entre 2% y 5%. Más allá del debate sobre IA, el resultado de reemplazar un lenguaje sin ownership por uno que sí lo tiene está en esos números de memoria.
workerd v1.20260921.1: cadencia diaria del runtime de Cloudflare Workers
El runtime open source detrás de Cloudflare Workers siguió publicando builds diarios durante todo el fin de semana. Nada estructural — mantenimiento incremental — pero si pineás la versión de workerd en tu wrangler.toml o en un container local, tenés semana nueva de compatibility_date disponible.
htmx 4.0: reescritura sobre fetch, morphing swaps nativos y herencia explícita de atributos
La major que la gente de hypermedia venía esperando. htmx 4 abandona XMLHttpRequest y se apoya en fetch, incorpora morphing swaps de fábrica (antes necesitabas una extensión como idiomorph) y cambia la herencia de atributos a explícita. Ese último punto es el breaking change real: si tu app dependía de que hx-* se heredara implícitamente por el árbol DOM, vas a tener que declararlo. Si pensás migrar, leé la guía de upgrade antes de tocar una línea.
SolidStart 2 sale y entra en mantenimiento el mismo día
SolidStart 2.0 reemplaza la capa de build Vinxi por la Environment API de Vite 8, mejorando compatibilidad de plugins y manejo de CSS. Pero el anuncio real es otro: el proyecto pasa a modo mantenimiento inmediatamente, porque Solid 2.0 absorbió server functions y file-system routing dentro del core. Como explicó Ryan Carniato, el Start mode reemplaza a SolidStart — cuando la librería base te da lo que el metaframework justificaba, el metaframework deja de tener razón de ser. Lección de arquitectura gratis.
MariaDB 13 amplía compatibilidad Oracle y suma RETURNING en UPDATE
Soporte nativo de tipos REF CURSOR y RECORD en parámetros de rutinas, lo que baja bastante la fricción de migrar aplicaciones PL/SQL. Lo que más va a usar el backend dev de todos los días es el RETURNING en UPDATE: te devuelve valores viejos y nuevos en un solo round trip a la base, así te ahorrás el SELECT previo y la race condition que venía con él. También mejora observabilidad con nuevas system variables y tablas de information schema que exponen roles de replicación y opciones por storage engine.
BullMQ 6.3.8 reintenta la conexión LISTEN de Postgres tras un connect fallido
Fix chico pero de los que te salvan una guardia. En el backend de Postgres de BullMQ, si la conexión dedicada a LISTEN fallaba al conectar, quedaba muerta y los workers dejaban de recibir notificaciones de jobs nuevos sin tirar error visible. Ahora reintenta. Si migraste tus colas de Redis a Postgres y notaste jobs que se quedaban colgados después de un blip de red, este es tu parche.
Amazon ECS Express Mode ahora soporta Graviton (ARM64)
Express Mode era la vía rápida para levantar un servicio en ECS sin pelearte con toda la configuración; ahora corre sobre ARM64. AWS declara hasta 40% mejor price-performance para workloads containerizados. Si tu imagen ya buildea multi-arch — y en 2026 debería — esto es un cambio de una línea en la task definition a cambio de plata real por mes.
Amazon SNS sube el payload de 256 KiB a 1 MiB
Cuádruple de tamaño por mensaje. El patrón de claim check — mandar el mensaje a S3 y publicar solo el puntero — sigue siendo la arquitectura correcta para payloads grandes de verdad, pero este salto elimina un montón de casos borde donde un evento con un poco de contexto extra se pasaba de los 256 KiB y te obligaba a introducir S3 en el camino crítico por nada.
AWS PrivateLink suma Tunnel Endpoints con encapsulado GENEVE
PrivateLink clásico te expone un servicio puntual; los nuevos Tunnel Endpoints te dan acceso privado a segmentos de red enteros cruzando límites de VPC y de cuenta, vía encapsulado GENEVE. Para arquitecturas multi-cuenta donde venías resolviendo esto con Transit Gateway y tablas de ruteo que nadie entiende, es una alternativa bastante más declarativa.
Cloudflare mide preferencias TLS por origen y baja los retries de 52% a 3,7%
Caso de estudio hermoso sobre por qué medir le gana a adivinar. Al negociar TLS 1.3, el cliente apuesta a qué grupo de key exchange soporta el servidor; si falla, hay un HelloRetryRequest y un round trip extra. Cloudflare empezó a medir las preferencias reales de cada origen y las cacheó: los HelloRetryRequests cayeron de ~52% a 3,7% y se fueron más de 150 ms del p90 de latencia de handshake. La moraleja aplica a tu sistema también — cualquier default global es una apuesta sobre una distribución que podrías estar midiendo.
DoorDash limpia 60.000 feature flags con un sistema multi-agente
Deuda técnica a escala industrial: 60.000 flags repartidos en 623 repositorios. Construyeron un sistema multi-agente con git worktrees aislados y validación automatizada; de 50 flags evaluados salieron 45 pull requests usables, a 13,8 minutos y 4,79 dólares de promedio cada uno, contra una a dos horas de trabajo manual. Tasa de limpieza en una sola pasada: 100% en flags simples, 94% en complejidad media, 85% en complejos. Lo interesante no es la IA — es que el problema era mecánico y repetitivo, exactamente el perfil donde delegar rinde.
Microsoft porta el runtime de Copilot a Rust por 120.000 dólares
Segunda migración masiva a Rust de la semana, después de la de Bun. La línea que mejor resume el asunto: el compilador de Rust se mantiene impertérrito ante las travesuras del LLM. Y ahí está el punto arquitectónico que vale la pena llevarse — estas migraciones asistidas funcionan porque el lenguaje destino tiene un verificador implacable que corta las alucinaciones antes de que lleguen a producción. Sin ese gate, no es migración, es ruleta.
adm-zip: un ZIP de 105 bytes te reserva gigabytes de RAM (CVE-2026-77301)
CVSS 7,5. adm-zip reserva el buffer de salida de cada entrada usando el tamaño descomprimido declarado en el directorio central, antes de validarlo contra los datos reales. Un ZIP crafteado de 105 bytes que declara 1.774.399.200 bytes fuerza una asignación multi-gigabyte y te tumba el proceso Node. Afecta a todas las versiones por debajo de 0.6.1, incluida la 0.5.17. Si aceptás uploads de ZIP de usuarios, esto es DoS trivial de explotar — actualizá ya.
Caddy 2.11.3: tres fallas en la capa de handlers y placeholders
CVE-2026-77281, CVSS 6,5. Bundle de tres problemas independientes encontrados en la misma auditoría de código: re-expansión de placeholders en rewrite, buffer de body sin límite que habilita DoS, y un bypass de fileHidden por diferencia de mayúsculas y minúsculas. Ese último es el que más duele en la práctica — si escondías archivos sensibles con file_server, podían servirse cambiando el casing del path. Parcheado en 2.11.4.
AnyIO: IDNA 2003 habilita spoofing de certificados TLS (CVSS 9,3)
CVE-2026-63374, crítico. Los servicios que usan dominios internacionalizados (no ASCII) quedan expuestos en conexiones TLS hechas con connect_tcp() o TLSStream.wrap(): un atacante que ya haya redirigido la conexión puede obtener un certificado legítimo para la versión IDNA 2003 del dominio y presentarlo como válido. Parcheado en 4.14.2. Es Python, pero si tu stack TypeScript habla con servicios internos en FastAPI o similares, vale que lo pasés al equipo de al lado.
Perses: el proxy de datasources desencripta secretos sin chequear scope (CVSS 8,3)
CVE-2026-63199. El proxy autoriza al llamador sobre el scope Datasource, después resuelve y desencripta cualquier Secret nombrado en el body de la request — sin verificar el scope de Secret. Como son roles independientes y otorgables por separado, un operador con acceso a datasources pero no a secretos puede leer secretos de otro scope. Un recordatorio clásico de diseño de autorización: autorizar el endpoint no alcanza, hay que autorizar cada recurso que el endpoint termina tocando. Parcheado en 0.54.0-rc.0.
pnpm 12.5: Python como ecosistema de primera y Package URLs en pnpm add
pnpm sigue estirándose más allá de npm. Ahora pnpm add acepta un Package URL en lugar de un nombre: pnpm add pkg:npm/[email protected] escribe en package.json, pkg:cargo/[email protected] en Cargo.toml y pkg:pypi/[email protected] en pyproject.toml. Sumá que supportedArchitectures ahora nombra plataformas enteras y que las tasks tienen límites de concurrencia a nivel máquina. Y ojo al bugfix: había un install que podía reusar el tarball descargado de un paquete para otro — motivo suficiente para subir. El patch 12.5.1 salió el mismo día.
Turborepo 2.11: devEngines.packageManager, prune --production y TUI sobre Ghostty
Release cargada. Soporte de devEngines.packageManager a nivel raíz y de workspace — por fin una forma estándar de declarar qué gestor usa el monorepo. Llega el flag --production en turbo prune, que es exactamente lo que querés para adelgazar imágenes Docker. La TUI migró sus terminales virtuales de vt100 a Ghostty, con selección de tareas por click, toggle entre TUI y logs en stream, y copiado automático al clipboard. Cierra con una tanda de optimizaciones de hashing y scope filtering.
Nx 23.3.0-beta.2: cachea capabilities de plugins y reusa el project graph en ESLint
Beta orientada a performance del grafo. Las capabilities de plugins pasan a cachearse para que leerlas cueste como mucho una carga, y los workers de concurrencia de ESLint ahora reusan el project graph en lugar de reconstruirlo cada uno. También se arregló que el bundle de esbuild se escriba en un outputPath sobreescrito y que los errores subyacentes se muestren cuando falla el project graph — chico, pero cualquiera que haya debuggeado un grafo roto a ciegas lo agradece.
Tendencias Destacadas
Dos migraciones masivas a Rust en la misma semana — Bun con 535K líneas y el runtime de Copilot de Microsoft — y en ambas el patrón es el mismo: la asistencia de IA escala porque el compilador de Rust actúa como verificador implacable. El gate determinista es lo que hace viable la delegación, no el modelo.
El serverless se estira hacia lo que antes era territorio de contenedores: Lambda pasa a 90 minutos y ECS Express Mode suma ARM64. La frontera entre función y servicio de larga duración se está borrando, y con ella las razones para mantener dos modelos operativos distintos.
Tres de las CVEs de la semana — kcp, Perses y el cluster bus de Redis — son la misma falla conceptual: confiar en una identidad o un canal que nunca se verificó. Autorizar el endpoint no alcanza; hay que autorizar cada recurso que el endpoint termina tocando y autenticar cada canal que el nodo termina escuchando.
SolidStart entra en mantenimiento el día que sale su major, porque Solid 2.0 absorbió server functions y file-system routing en el core. Es el ciclo de vida natural de un metaframework bien hecho: existe para probar ideas que, si funcionan, terminan en la librería base y lo vuelven innecesario.
Bun rewrites 535,496 lines of Zig into Rust in four months
The Bun team migrated the whole codebase with AI assistance — 50 dynamic workflows orchestrating 64 parallel instances, roughly $165,000 in API tokens — against an estimated year of manual work. The numbers that matter in production: 128 longstanding bugs resolved, native memory leaks eliminated, and memory usage during bundling dropped from 6.7 GB to 609 MB. HTTP throughput improved 2–5%.
workerd v1.20260921.1: Cloudflare Workers runtime keeps its daily cadence
The open-source runtime behind Cloudflare Workers kept shipping daily builds through the weekend. Nothing structural — incremental maintenance — but if you pin a workerd version in wrangler.toml or a local container, a fresh week of compatibility_date is available.
htmx 4.0: fetch-based rewrite, built-in morphing swaps, explicit attribute inheritance
The major release the hypermedia crowd was waiting for. htmx 4 drops XMLHttpRequest for fetch, ships morphing swaps built in (previously an extension like idiomorph) and switches attribute inheritance to explicit. That last one is the real breaking change: apps that relied on implicit hx-* inheritance down the DOM tree now need to declare it.
SolidStart 2 ships and enters maintenance the same day
SolidStart 2.0 replaces the Vinxi build layer with Vite 8's Environment API, improving plugin compatibility and CSS handling. The real news is the other half: the project moves into maintenance mode immediately, because Solid 2.0 absorbed server functions and file-system routing into the core. As Ryan Carniato put it, Start mode replaces SolidStart — once the base library provides what justified the metaframework, the metaframework loses its reason to exist.
MariaDB 13 expands Oracle compatibility and adds RETURNING on UPDATE
Native support for REF CURSOR and RECORD types in routine parameters cuts friction when migrating Oracle PL/SQL applications. The feature everyday backend devs will actually reach for is RETURNING on UPDATE: it hands back both old and new values in a single database round trip, removing the preceding SELECT and the race condition that came with it. Observability also improves with new system variables and information schema tables exposing replication roles and storage-engine options.
BullMQ 6.3.8 retries the Postgres LISTEN connection after a failed connect
A small fix of the kind that saves an on-call shift. In BullMQ's Postgres backend, if the dedicated LISTEN connection failed to connect, it stayed dead and workers silently stopped receiving new-job notifications. It now retries. If you moved queues from Redis to Postgres and saw jobs hanging after a network blip, this is your patch.
Amazon ECS Express Mode now supports Graviton (ARM64)
Express Mode was the fast path to standing up an ECS service without fighting the full configuration; it now runs on ARM64. AWS claims up to 40% better price-performance for containerized workloads. If your image already builds multi-arch — and in 2026 it should — this is a one-line task-definition change for real monthly savings.
Amazon SNS raises message payloads from 256 KiB to 1 MiB
Four times the size per message. The claim check pattern — push the body to S3 and publish only the pointer — is still the right architecture for genuinely large payloads, but this jump removes a pile of edge cases where an event carrying a bit of extra context blew past 256 KiB and forced S3 into the critical path for no good reason.
AWS PrivateLink adds Tunnel Endpoints with GENEVE encapsulation
Classic PrivateLink exposes one specific service; the new Tunnel Endpoints give private access to whole network segments across VPC and account boundaries via GENEVE encapsulation. For multi-account architectures that solved this with a Transit Gateway and route tables nobody understands, it is a far more declarative option.
Cloudflare measures per-origin TLS preferences, cutting retries from 52% to 3.7%
A beautiful case study in why measuring beats guessing. Negotiating TLS 1.3, the client bets on which key exchange group the server supports; a wrong guess costs a HelloRetryRequest and an extra round trip. Cloudflare started measuring each origin's real preferences and caching them: HelloRetryRequests fell from ~52% to 3.7% and over 150 ms came off p90 handshake latency. The lesson generalizes — any global default is a bet about a distribution you could be measuring.
DoorDash cleans up 60,000 feature flags with a multi-agent system
Technical debt at industrial scale: 60,000 flags across 623 repositories. They built a multi-agent system with isolated git worktrees and automated validation; of 50 evaluated flags it produced 45 usable pull requests, averaging 13.8 minutes and $4.79 each against one to two hours of manual work. Single-pass cleanup rates: 100% for simple flags, 94% medium, 85% complex. The interesting part is not the AI — it is that the problem was mechanical and repetitive, exactly the profile where delegation pays off.
Microsoft agentically ports the Copilot runtime to Rust for $120K
The week's second mass Rust migration, after Bun's. The line that sums it up: the Rust compiler remains unperturbed by the antics of the LLM. And that is the architectural takeaway — these assisted migrations work because the target language has an unforgiving verifier that cuts hallucinations off before they reach production. Without that gate, it is not migration, it is roulette.
adm-zip: a 105-byte ZIP reserves gigabytes of RAM (CVE-2026-77301)
CVSS 7.5. adm-zip allocates each entry's output buffer from the uncompressed size declared in the central directory, before validating it against the actual data. A crafted 105-byte ZIP declaring 1,774,399,200 bytes forces a multi-gigabyte allocation and takes the Node process down. Affects everything below 0.6.1, including 0.5.17. If you accept user-uploaded ZIPs, this is trivially exploitable DoS.
Caddy 2.11.3: three flaws in the handler and placeholder layer
CVE-2026-77281, CVSS 6.5. A bundle of three independent issues found in the same source review: placeholder re-expansion in rewrite, an unbounded body buffer enabling DoS, and a fileHidden case-sensitivity bypass. That last one hurts most in practice — sensitive files hidden from file_server could be served by changing the path casing. Fixed in 2.11.4.
AnyIO: IDNA 2003 enables TLS certificate spoofing (CVSS 9.3)
CVE-2026-63374, critical. Services using internationalized (non-ASCII) domain names are exposed on TLS connections made via connect_tcp() or TLSStream.wrap(): an attacker who has already redirected the connection can obtain a legitimate certificate for the IDNA 2003 encoding of the domain and present it as valid. Fixed in 4.14.2. It is Python, but worth forwarding if your TypeScript stack talks to internal FastAPI services.
Perses: datasource proxy decrypts secrets without a scope check (CVSS 8.3)
CVE-2026-63199. The proxy authorizes the caller on the Datasource scope, then resolves and decrypts any Secret named in the request body with no Secret-scope check. Since those are distinct, independently grantable roles, an operator granted datasource access without secret access can read cross-scope secrets. A classic authorization-design reminder: authorizing the endpoint is not enough, you authorize every resource the endpoint ends up touching. Fixed in 0.54.0-rc.0.
pnpm 12.5: Python as a first-class ecosystem and Package URLs in pnpm add
pnpm keeps stretching past npm. pnpm add now accepts a Package URL instead of a name: pnpm add pkg:npm/[email protected] writes to package.json, pkg:cargo/[email protected] to Cargo.toml, pkg:pypi/[email protected] to pyproject.toml. Add whole-platform names in supportedArchitectures and machine-wide task concurrency limits. Note the bugfix too: an install could reuse one package's downloaded tarball for another — reason enough to upgrade. Patch 12.5.1 landed the same day.
Turborepo 2.11: devEngines.packageManager, prune --production and a Ghostty-backed TUI
A loaded release. devEngines.packageManager support at root and workspace level finally gives a standard way to declare which manager a monorepo uses. The --production flag on turbo prune is exactly what you want for slimming Docker images. The TUI migrated its virtual terminals from vt100 to Ghostty, with click-to-select tasks, a toggle between TUI and streamed logs, and automatic clipboard copy. Plus a batch of hashing and scope-filtering optimizations.
Nx 23.3.0-beta.2: caches plugin capabilities and reuses the project graph in ESLint
A graph-performance beta. Plugin capabilities are now cached so reading them costs at most one load, and ESLint concurrency workers reuse the project graph instead of each rebuilding it. Also fixed: the esbuild bundle writes to an overridden outputPath, and underlying errors surface when the project graph fails — small, but anyone who has debugged a broken graph blind will appreciate it.
Notable Trends
Two mass Rust migrations in the same week — Bun's 535K lines and Microsoft's Copilot runtime — and both follow the same pattern: AI assistance scales because the Rust compiler acts as an unforgiving verifier. The deterministic gate is what makes delegation viable, not the model.
Serverless keeps stretching into what used to be container territory: Lambda moves to 90 minutes and ECS Express Mode adds ARM64. The line between a function and a long-running service is blurring, and with it the reasons to maintain two separate operational models.
Three of this week's CVEs — kcp, Perses and the Redis cluster bus — are the same conceptual flaw: trusting an identity or a channel that was never verified. Authorizing the endpoint is not enough; you authorize every resource the endpoint ends up touching and authenticate every channel the node ends up listening on.
SolidStart enters maintenance on the day its major ships, because Solid 2.0 absorbed server functions and file-system routing into the core. That is the natural life cycle of a well-made metaframework: it exists to prove ideas that, if they work, end up in the base library and render it unnecessary.
Bun réécrit 535 496 lignes de Zig en Rust en quatre mois
L-équipe Bun a migré tout le codebase avec assistance IA — 50 workflows dynamiques orchestrant 64 instances en parallèle, environ 165 000 dollars de tokens — contre une année estimée en manuel. Les chiffres qui comptent : 128 bugs anciens résolus, fuites mémoire natives éliminées, et l-usage mémoire pendant le bundling passé de 6,7 Go à 609 Mo. Débit HTTP amélioré de 2 à 5 %.
workerd v1.20260921.1 : cadence quotidienne du runtime Cloudflare Workers
Le runtime open source derrière Cloudflare Workers a continué ses builds quotidiens tout le week-end. Rien de structurel, mais si vous épinglez une version de workerd, une nouvelle semaine de compatibility_date est disponible.
htmx 4.0 : réécriture sur fetch, morphing swaps natifs, héritage d-attributs explicite
La version majeure attendue par la communauté hypermedia. htmx 4 abandonne XMLHttpRequest pour fetch, intègre les morphing swaps nativement et rend l-héritage d-attributs explicite. C-est le vrai breaking change : les applications qui comptaient sur l-héritage implicite de hx-* doivent désormais le déclarer.
SolidStart 2 sort et entre en maintenance le même jour
SolidStart 2.0 remplace la couche de build Vinxi par l-Environment API de Vite 8. Mais l-annonce réelle est ailleurs : le projet passe immédiatement en mode maintenance, car Solid 2.0 a absorbé les server functions et le routing fichier dans le core. Selon Ryan Carniato, le Start mode remplace SolidStart.
MariaDB 13 étend la compatibilité Oracle et ajoute RETURNING sur UPDATE
Support natif des types REF CURSOR et RECORD dans les paramètres de routines, facilitant la migration des applications Oracle PL/SQL. La fonctionnalité la plus utile au quotidien : RETURNING sur UPDATE, qui renvoie anciennes et nouvelles valeurs en un seul aller-retour, supprimant le SELECT préalable et sa race condition.
BullMQ 6.3.8 réessaie la connexion LISTEN Postgres après un échec
Petit correctif mais précieux. Dans le backend Postgres de BullMQ, si la connexion dédiée au LISTEN échouait, elle restait morte et les workers cessaient silencieusement de recevoir les notifications de nouveaux jobs. Elle réessaie désormais.
Amazon ECS Express Mode supporte désormais Graviton (ARM64)
Express Mode était la voie rapide pour lancer un service ECS ; il tourne désormais sur ARM64. AWS annonce jusqu-à 40 % de meilleur rapport prix-performance pour les workloads conteneurisés. Si votre image build déjà en multi-arch, c-est un changement d-une ligne.
Amazon SNS porte les payloads de 256 Kio à 1 Mio
Quatre fois la taille par message. Le pattern claim check reste la bonne architecture pour les payloads vraiment volumineux, mais ce saut élimine de nombreux cas limites où un événement un peu enrichi dépassait 256 Kio.
AWS PrivateLink ajoute des Tunnel Endpoints avec encapsulation GENEVE
PrivateLink classique expose un service précis ; les nouveaux Tunnel Endpoints donnent un accès privé à des segments réseau entiers à travers les frontières de VPC et de compte, via encapsulation GENEVE.
Cloudflare mesure les préférences TLS par origine et réduit les retries de 52 % à 3,7 %
Une belle étude de cas sur la mesure contre la supposition. En TLS 1.3, le client parie sur le groupe d-échange de clés supporté ; une erreur coûte un HelloRetryRequest. Cloudflare a mesuré et caché les préférences réelles de chaque origine : les HelloRetryRequests sont passés de ~52 % à 3,7 % et plus de 150 ms ont disparu du p90.
DoorDash nettoie 60 000 feature flags avec un système multi-agents
Dette technique à l-échelle industrielle : 60 000 flags répartis sur 623 dépôts. Un système multi-agents avec worktrees git isolés a produit 45 pull requests utilisables sur 50 flags évalués, à 13,8 minutes et 4,79 dollars en moyenne. Taux de nettoyage en une passe : 100 % simple, 94 % moyen, 85 % complexe.
Microsoft porte le runtime Copilot vers Rust pour 120 000 dollars
Deuxième migration massive vers Rust de la semaine, après celle de Bun. L-enseignement architectural : ces migrations assistées fonctionnent parce que le langage cible dispose d-un vérificateur implacable qui bloque les hallucinations avant la production.
adm-zip : un ZIP de 105 octets réserve des gigaoctets de RAM (CVE-2026-77301)
CVSS 7,5. adm-zip alloue le buffer de sortie de chaque entrée selon la taille décompressée déclarée, avant toute validation. Un ZIP de 105 octets déclarant 1 774 399 200 octets force une allocation de plusieurs gigaoctets. Toutes les versions sous 0.6.1 sont affectées.
Caddy 2.11.3 : trois failles dans la couche handlers et placeholders
CVE-2026-77281, CVSS 6,5. Trois problèmes indépendants : ré-expansion de placeholders dans rewrite, buffer de body non borné permettant un DoS, et contournement de fileHidden par sensibilité à la casse. Corrigé en 2.11.4.
AnyIO : IDNA 2003 permet l-usurpation de certificats TLS (CVSS 9,3)
CVE-2026-63374, critique. Les services utilisant des noms de domaine internationalisés sont exposés sur les connexions TLS via connect_tcp() ou TLSStream.wrap() : un attaquant peut obtenir un certificat légitime pour l-encodage IDNA 2003 du domaine. Corrigé en 4.14.2.
Perses : le proxy de datasources déchiffre des secrets sans vérifier le scope (CVSS 8,3)
CVE-2026-63199. Le proxy autorise l-appelant sur le scope Datasource, puis déchiffre tout Secret nommé dans le body sans vérifier le scope Secret. Rappel classique : autoriser l-endpoint ne suffit pas, il faut autoriser chaque ressource touchée. Corrigé en 0.54.0-rc.0.
pnpm 12.5 : Python en écosystème de première classe et Package URLs dans pnpm add
pnpm continue de dépasser npm. pnpm add accepte désormais un Package URL : pkg:npm/[email protected] vers package.json, pkg:cargo/[email protected] vers Cargo.toml, pkg:pypi/[email protected] vers pyproject.toml. À noter le correctif : un install pouvait réutiliser le tarball d-un paquet pour un autre.
Turborepo 2.11 : devEngines.packageManager, prune --production et TUI sur Ghostty
Une version chargée. Support de devEngines.packageManager à la racine et au niveau workspace. Le flag --production sur turbo prune est parfait pour alléger les images Docker. La TUI migre ses terminaux virtuels de vt100 vers Ghostty, avec sélection de tâches au clic et copie automatique.
Nx 23.3.0-beta.2 : cache les capabilities de plugins et réutilise le project graph dans ESLint
Une bêta axée performance du graphe. Les capabilities de plugins sont désormais cachées, et les workers de concurrence ESLint réutilisent le project graph au lieu de le reconstruire. Corrigé aussi : les erreurs sous-jacentes sont affichées quand le project graph échoue.
Tendances Notables
Deux migrations massives vers Rust la même semaine — les 535K lignes de Bun et le runtime Copilot de Microsoft — suivant le même schéma : l-assistance IA passe à l-échelle parce que le compilateur Rust agit en vérificateur implacable. C-est le gate déterministe qui rend la délégation viable, pas le modèle.
Le serverless s-étend vers le territoire des conteneurs : Lambda passe à 90 minutes et ECS Express Mode ajoute ARM64. La frontière entre fonction et service longue durée s-estompe, ainsi que les raisons de maintenir deux modèles opérationnels distincts.
Trois des CVE de la semaine — kcp, Perses et le cluster bus de Redis — sont la même faille conceptuelle : faire confiance à une identité ou un canal jamais vérifié. Autoriser l-endpoint ne suffit pas ; il faut autoriser chaque ressource touchée et authentifier chaque canal écouté.
SolidStart entre en maintenance le jour de sa version majeure, car Solid 2.0 a absorbé les server functions et le routing fichier dans le core. C-est le cycle de vie naturel d-un métaframework réussi : il existe pour éprouver des idées qui, si elles fonctionnent, rejoignent la bibliothèque de base et le rendent superflu.