Ce qui se passe
Next.js 16.4, publié le 6 octobre 2026, fait de Cache Components le choix
recommandé pour toute application. Les projets créés avec create-next-app
l'ont activé par défaut dès cette version, et le billet annonce que ce sera le
défaut de tous les projets en Next.js 17.
Un point à ne pas déformer : un projet existant n'est pas touché. Un récapitulatif de la presse allemande résume la nouveauté par « activés par défaut » ; c'est exact pour les nouveaux projets seulement.
Ce que c'est
L'App Router mettait en cache de façon implicite. Cache Components le remplace
par un cache déclaré : on annote un composant avec 'use cache', comme on
poserait un Cache-Control sur une réponse HTTP, mais au niveau du composant.
Le résultat peut être gardé dans le navigateur pendant les navigations client
et, au choix, sur le serveur. Une même réponse mêle ainsi du contenu prérendu et
du contenu rendu à la requête : un article statique avec l'avatar de
l'utilisateur courant, par exemple.
Ce que 16.4 ajoute
ensureStatic garantit qu'une route reste statique. Le build échoue si un
composant dynamique s'y glisse, ce qui protège les boutiques, pages marketing et
blogs d'un surcoût discret.
export const ensureStatic = 'navigation';Les trois valeurs : 'navigation' (aucune navigation vers la route ne rend à
la requête), 'prefetch' (un lien préchargé n'obtient que du contenu statique)
et 'shell' (seul du statique est récupéré quand la route est découverte). On
peut aussi le poser dans un layout, jusqu'au layout racine.
navigation() et prefetch() retirent une partie coûteuse d'un
préchargement. Exemple du billet : une messagerie dont chaque lien précharge le
fil entier. Avec await navigation() dans le composant du fil, seul le premier
message est préparé ; le reste attend la vraie navigation.
Côté outillage
next upgrade --agentprépare pour un agent les guides de migration, les codemods et les vérifications. Avecnext@canary, on obtient les derniers outils même depuis une version plus ancienne.experimental.agentUpgraderappelle les mises à jour pendantnext devetnext build:'security'par défaut,'latest', oufalse.- Les retours d'agent (expérimental) exigent la télémétrie, ne tournent pas en CI, et rien n'est envoyé avant un clic sur « Send feedback ».
- Cache disque Turbopack : 20 à 25 % d'espace en moins (Zstandard).
- React 19.3 : View Transitions stables, Fragment Refs, API
browser(). - Expérimental : compilateur React en Rust, avec 30 % de mémoire et 15 % de temps
de compilation en moins ;
turbopackGc; imports dynamiques paresseux. Les worker threads retombent sur des processus enfants à partir de Node.js 24.13.1, à cause d'un bug de Node.
Comment s'y prendre
- Nouveau projet : rien à faire, Cache Components est actif.
- Projet existant : créer une branche, lancer
next upgrade --agent, lire le guide de mise en cache. L'activation passe par deux options denext.config, détaillées dans le billet. - Pages purement statiques : poser
ensureStaticpour que le build signale la régression.
Source : Next.js 16.4, Next.js, 6 octobre 2026. Repéré dans le récapitulatif Developer-Häppchen de heise Developer (en allemand).