Ce qui se passe
Reprise sort en 1.0.0. La mention expérimentale disparaît, et l'API publique entre sous versionnage sémantique et sous la promesse de rétrocompatibilité Symfony : dans une majeure, rien ne casse, et ce qui doit changer est déprécié avant d'être retiré.
Le périmètre n'a pas bougé, et c'est ce qui rend la 1.0 possible si tôt. Vite et
Rsbuild font le travail — regroupement, empreintes, source maps, HMR, serveur
de développement. Reprise ne fournit que la colle Symfony qui leur manque :
entrypoints.json, manifest.json, et les fonctions Twig qui les exploitent,
comme le faisait Webpack Encore.
Ce que ça change
Les deux appels connus des utilisateurs d'Encore ont leur équivalent, et le même gabarit sert en développement — où il pointe vers le serveur HMR — et en production :
{{ reprise_entry_link_tags('app') }}
{{ reprise_entry_script_tags('app') }}L'installation demande les deux moitiés du projet, puis le branchement du plugin dans la configuration du bundler :
composer require symfony/reprise
npm install @symfony/reprise --save-devLe guide de migration depuis Encore nomme chaque méthode d'Encore et la renvoie soit vers une fonctionnalité de Reprise, soit vers le bundler qui la traite nativement. C'est le document à ouvrir en premier si vous migrez.
Ce qu'apporte réellement le passage en 1.0
Rien de visible dans l'API, et c'est le propos : des tests de bout en bout avec
Vitest et Playwright exercent désormais les deux bundlers contre un vrai
back-end Symfony à chaque exécution d'intégration continue, et Subresource
Integrity a reçu deux correctifs, sur les en-têtes Link préchargés et sur le
préchargement des scripts de module.