Nitro v3 Beta : Tracing intégré, détection inteligente des dépendances et support Vercel Queues

Nitro v3 Beta : Tracing intégré, détection inteligente des dépendances et support Vercel Queues

lschvn

La beta publique de Nitro v3 continue de évoluer rapidement. La mise à jour du 15 avril (v3.0.260415-beta) apporte un ensemble de fonctionnalités axées sur l'expérience développeur et la production.

Canaux de Tracing Intégrés

L'ajout principal est le support expérimental des canaux de tracing (PR #4001). Nitro émet désormais des spans de trace structurés pour le cycle de vie des requêtes — correspondance de route, exécution de handler, cache hits/misses, timing des requêtes base de données — directement depuis le cœur du framework. Pas besoin de SDK OpenTelemetry ; le tracing est une fonctionnalité native de Nitro.

Détection Intelligente des Dépendances avec Full-trace

L'outil traceDeps de Nitro reçoit une amélioration importante (PR #4175). Le nouveau mode full-trace et les options de trace personnalisées donnent aux développeurs le contrôle sur la façon dont Nitro analyse le graphe de dépendances pendant le build.

L'amélioration clé : le tracer upstream nf3 inclut désormais une base de données de packages natifs en expansion et la détection automatique des dépendances optionnelles. Si votre projet utilise des packages avec des binaires natifs — sharp, canvas, better-sqlite3 — Nitro peut désormais les détecter automatiquement et éviter un bundling incorrect, source fréquente d'erreurs "ça marche en local, ça plante en prod".

Vercel Queues et Configuration par Route

Le preset de déploiement Vercel gagne deux fonctionnalités de production.

Vercel Queues : Les handlers de routes Nitro peuvent désormais enfiler du travail asynchrone via l'infrastructure queue de Vercel. Définissez des tâches avec nitro.tasks, déployez sur Vercel, et utilisez le SDK Vercel. Le preset gère la configuration automatiquement. Cela apporte une exécution asynchrone durable sans infrastructure queue séparée.

Override de config par route : Les routes individuelles peuvent désormais surcharger la configuration de fonction Vercel par défaut — limite mémoire, timeout, maxDuration. Pratique quand une route spécifique a besoin de plus de ressources que le reste de l'application.

Tencent EdgeOne Pages

Nitro ajoute Tencent EdgeOne Pages comme cible de déploiement. Le nouveau preset edgeone-pages utilise l'API v3 de EdgeOne Pages Build Output et est documenté sur nitro.build/deploy/providers/edgeone.

Correctifs de Sécurité H3 v2

H3 passe de rc.16 à rc.20 avec plusieurs corrections importantes :

  • Protection path traversal : les doubles segments pointés encodés dans les URLs sont maintenant rejetés
  • Protection open redirect : redirectBack() valide que la cible n'utilise pas un chemin protocol-relative
  • Streaming body plus strict : applique les limites de taille quelque soit l'en-tête Content-Length
  • Conformité cookie RFC 6265bis : parsing et sérialisation des cookies alignés avec le RFC actualisé
  • Fix count cookie illimité : prévient un vecteur DoS via un nombre arbitraire de cookies

ocache et unstorage

ocache gagne l'invalidation de cache via handler.invalidate() et le support multi-tier. unstorage flush désormais proactivement les entrées mémoire expirées plutôt que d'attendre le prochain accès.

Documentation

Nitro.build introduit de nouvelles guides pour OpenAPI et WebSocket.

Cette mise à jour montre Nitro v3 se rapprochant de la GA avec des fonctionnalités d'infrastructure de production plutôt que du confort développeur.

Questions fréquentes

Articles connexes

Plus de couverture avec des sujets et tags en commun.

Astro 6.1.8 corrige un bug critique de nom de fichier sur Netlify et une faille de sécurité sur /_image
TypeScript

Astro 6.1.8 corrige un bug critique de nom de fichier sur Netlify et une faille de sécurité sur /_image

Astro 6.1.8 corrige une régression où les noms de fichiers de build contenant des caractères spéciaux cassaient les déploiements Netlify et Vercel, et colmate une faille de confusion content-type dans l'endpoint image intégré qui pouvait servir du non-SVG comme SVG.
Inertia.js 3.0 Comble le Fossé Entre les SPAs et les Frameworks Serveur
Vue

Inertia.js 3.0 Comble le Fossé Entre les SPAs et les Frameworks Serveur

Inertia.js 3.0 prend en charge React, Vue et Svelte avec Laravel, Rails ou Django en backend — sans couche API. Voici les nouveautés de cette approche 'Monolithe Moderne' du développement web.
Bun rejoint Anthropic : ce que l'acquisition signifie pour l'écosystème JavaScript
TypeScript

Bun rejoint Anthropic : ce que l'acquisition signifie pour l'écosystème JavaScript

Le runtime, bundler et toolkit JavaScript construit par une équipe de 14 personnes et utilisé par des millions de développeurs a été acquis par Anthropic. Bun reste open source et sous licence MIT, mais la roadmap s'oriente désormais vers l'infrastructure de coding IA.

Commentaires

Connexion Connectez-vous pour participer à la conversation.

Pas encore de commentaires. Soyez le premier à partager vos pensées.