Résumé
Cette version boucle quasiment la transition vers les espaces de noms PHP avec le transfert du cœur de Dotclear et commence à en tirer partie. Le typage des variables, des propriétés de classes et méthodes devient plus strict et précis grâce au passage à PHP 8.1. La gestion du cœur de Dotclear est entièrement remaniée. Une nouvelle classe de lectures des valeurs de configuration fait son apparition. L'utilisation de My pour les modules est de plus en plus nécessaire et recommandé…
Nouveautés :
- Utilisation des avancées de PHP 8.1,
- Nombreuses classes Déplacées, principalement liées au Core,
- Nombreuses variables, fonctions, méthodes et classes dépréciées
- Passage de dcCore en déprécié,
- Nouvelle classe d'accès aux valeurs de configuration
- Nouvel accès aux classes de premier niveau
- Système de services pour les classes de premier niveau
- Nouvelles classes d'Exception de premier niveau
- Permissions de modules entièrement gérées par My
- Ajout du plugin Uninstaller.
- Renforcement du typage des arguments et retours de méthodes.
- Travail sur la documentation doxygen.
- Travail sur le niveau d'erreur d'analyseurs phpstan (niveau 8!), phpunit, psalm.
- Support du format media Avif
Incompatibilités :
- Les constructeurs des classes du Core ont de nouveaux arguments, les plugins instanciant eux-mêmes ces classes provoqueront un arrêt du script.
- Les tests de nullité sur des propriétés ou objets du Core (principalement) ne sont plus permis (des méthodes les remplacent) et provoqueront un arrêt du script.
- Des nombreuses méthodes ont vu leur typage explicitement déclaré, un arrêt du script sera provoqué par une classe qui étend une de ces classes sans avoir été mise à jour.
- La classe de gestion d'erreurs fatales introduite en 2.27 n'est plus compatible, ces anciennes méthodes sont simplement supprimées . (Seule la distribution l'utilise à ce jour)
Information importante pour les développeurs :
C'est la première version nécessitant PHP 8.1 minimum, et PHP 8.2.x est supporté, et PHP 8.3.0 devrait l'être.
Les informations distillées ici sont non exhaustives et pourront être complétées à l'avenir.
La discussion continue ailleurs
URL de rétrolien : https://dotclear.watch/trackback/403