Aller au contenu

CHANGELOG

Présentation des versions du framework Edu Framework

v2.12.0 - 07/11/2026

features

  • #197 Nouvelle commande php bin/edu routes:list : liste les routes de app/Config/routes.yaml (méthode, URI, contrôleur, nom), une ligne par méthode HTTP ; l'option --method filtre sur une méthode HTTP

maintenance

  • Routage : studoo/edu-route passe en ^1.1 (liste des routes déclarées). Le nom de la route (clé de routes.yaml) est désormais transmis au moteur de routage ; FastRouteCore::addRoute() accepte un quatrième paramètre optionnel $name et FastRouteCore::declaredRoutes() renvoie les routes déclarées

documentation

v2.11.0 - 06/11/2026

maintenance

  • #187 Routage : le framework utilise studoo/edu-route (^1.0), fork modernisé pour PHP 8.4 de nikic/fast-route, dont aucune version n'a été publiée depuis la 1.3.0 de 2018. Aucun changement pour les applications : le format de app/Config/routes.yaml, la syntaxe des URI (/user/{id:\d+}[/{name}]), les méthodes HTTP (la casse est conservée : une route [get] ne répond pas à une requête GET), les pages 404 et 405, les variables de route ($request->get('id')) et getNameToPath() fonctionnent comme avant
  • Dépendances : studoo/edu-route remplace nikic/fast-route et ajoute psr/http-message et psr/simple-cache ; il prend en charge PHP 8.4 et 8.5
  • Code qui utilise directement le moteur de routage :
    • FastRouteCore::getDispatcher() renvoie un Studoo\EduRoute\Dispatcher (au lieu de FastRoute\Dispatcher) ; son dispatch() renvoie un objet Matched, MethodNotAllowed ou NotMatched (propriétés handler, variables, allowedMethods) au lieu d'un tableau : l'accès $result[0] fonctionne encore mais est déprécié, utilisez instanceof
    • une route invalide (route en double, paramètre répété, groupe capturant) lève Studoo\EduRoute\BadRouteException au lieu de FastRoute\BadRouteException, avec le même message ; Route::getNameToPath() la lève aussi pour une URI invalide. Elle est différente de Studoo\EduFramework\Core\Exception\BadRouteException (route inconnue, paramètre manquant), qui ne change pas

bug Fixes

  • routes.yaml : une route mal décrite (clé uri, controller ou httpMethod absente, liste à la place d'un texte) lève une ErrorConfigException qui nomme la route (La route <hello> du fichier routes.yaml est invalide : la clé 'controller' est absente…, affiché en mode dev) au lieu d'une erreur PHP
  • routes.yaml : une valeur vide (~ ou tiret orphelin) dans la liste httpMethod n'émet plus d'avertissement de dépréciation sous PHP 8.5

documentation

v2.10.1 - 06/11/2026

bug Fixes

  • Template base.html.twig (application et template interne du framework) : le bloc s'appelait titre alors que les pages définissent {% block title %}, la balise <title> restait vide. Le bloc est renommé title (même correction dans studoo/edu-framework-skeleton)

maintenance

  • Tests : ajout de tests d'exemple sur les controllers de l'application (tests/App/Controller) et mise à jour des empreintes HTML de FastRouteCoreTest

documentation

  • new Tester son application (tests unitaires) : démarche, installation et configuration de PHPUnit, tests d'une entité, d'un repository sur une base SQLite de test et d'un controller, DataProvider, erreurs fréquentes et exercices
  • update L'arborescence : dossier tests et fichier phpunit.xml

v2.10.0 - 06/11/2026

new features

  • Profiler : la page descriptif d'une requête affiche les variables GET, POST et de session sous forme de tableaux. HttpRequestLogger enregistre $_GET et $_POST en début de requête et $_SESSION en fin de requête (clés get, post et session du log). Les variables sensibles (nom contenant pass, pwd, secret, mot_de_passe ou mdp) sont masquées, et les objets en session sont enregistrés avec toutes leurs propriétés et une clé __class
  • Vue Logs : les variables GET / POST / session du contexte sont affichées en JSON

bug Fixes

  • #174 Dépendances Symfony : symfony/yaml, symfony/console, symfony/filesystem et symfony/process passent en 7.4 LTS stable (^7.4) au lieu de branches x-dev. composer.json active prefer-stable pour ne plus résoudre de branches de développement quand une version stable existe
  • Console bin/edu : Application::add(), déprécié en Symfony 7.4, est remplacé par addCommand()
  • Profiler : une erreur pendant l'enregistrement de la session ne peut plus faire échouer la requête

maintenance

  • Tests : migration de PHPUnit 9 vers PHPUnit 13 (phpunit/phpunit: ^13) et de phpunit.xml vers le schéma 13.4 (la section <coverage><include> devient <source><include>)
  • Tests : HttpErrorControllerTest remet le code de réponse HTTP à 200 après chaque test, pour ne plus fausser HttpRequestLoggerTest selon l'ordre d'exécution

documentation

v2.9.1 - 05/11/2026

bug Fixes

  • Correction du package symfony/filesystem[7.2.x-dev]

v2.9.0 - 21/10/2026

new features

  • Profiler : flamegraph intégré à l'onglet Code, sans fichier à télécharger. Trois vues s'ajoutent au tableau des fonctions : Flamegraph (appels regroupés, le plus coûteux à gauche, #code/{token}/flame), Chronologique (ordre des appels avec axe du temps, #code/{token}/time) et Comparer (flamegraph différentiel de deux requêtes profilées, en rouge ce qui est plus lent et en bleu ce qui est plus rapide, #code/{token}/diff/{autre}). Les couleurs indiquent l'origine du code (app / framework / vendor). On peut zoomer d'un clic, remonter par le chemin d'appels ou avec Échap, rechercher une fonction (avec le temps total trouvé), afficher une infobulle et le détail de la fonction, avec un lien vers ses appelants et ses appelés. Les appels de moins de 0,1 % sont regroupés dans « … (autres) »
  • Barre de debug : mini-flamegraph dans le panneau du bloc Code ; un clic l'ouvre en grand dans le profiler
  • Endpoint GET /edu-code-profile : nouveau format=flame avec les paramètres order (heavy / time), compare (token de référence), min (élagage) et depth (profondeur) ; nouvelles méthodes CodeProfileAggregator::flameTree() et CodeProfileAggregator::diffTree()
  • Déploiement sur un serveur Debian / Ubuntu avec FrankenDeploy : nouvelle commande php bin/edu make:deploy qui génère le fichier frankendeploy.yaml (options --domain, --name, --database=mariadb|mysql|sqlite|none, --force) avec les dossiers partagés entre les déploiements (.env.local, var/logs, var/sessions, var/sqlite, public/upload)
  • Dockerfile multi-stage : frankenphp_base (socle commun), frankenphp_prod (image de production : HTTP sur le port 8080, utilisateur non-root app, php.ini-production, OPcache sans revalidation, sessions dans var/sessions, sans Excimer ni dépendances de dev, healthcheck) et frankenphp_dev (image de développement, ciblée explicitement par compose.yaml). Nouveau script docker-entrypoint.sh qui attend la base de données avant de démarrer FrankenPHP
  • Variables d'environnement : nouvelle méthode ConfigCore::loadEnv() utilisée par l'application et par bin/edu. Les fichiers .env et .env.local sont optionnels (le .env.local est prioritaire sur le .env), les variables de l'environnement du processus (Docker) sont prioritaires et lues par ConfigCore::getEnv() / existEnv() même lorsque variables_order ne contient pas E (cas de php.ini-production). Si DATABASE_URL est définie (mysql://user:pass@host:3306/db), les variables DB_* manquantes en sont déduites ; une DATABASE_URL MySQL / MariaDB / PostgreSQL mal formée (Exemple: mot de passe contenant # non encodé) lève une ErrorConfigException explicite

bug Fixes

  • ConfigCore::getEnv() ne lève plus d'avertissement pour une variable absente (retourne une chaîne vide)
  • bin/edu démarre sans fichier .env
  • Tests : APP_ENV hérité du shell ou du conteneur de développement n'influence plus les tests (tests/bootstrap.php)

documentation

  • update La barre de debug et le profiler : nouvelles sections « Le flamegraph intégré » et « Comparer deux requêtes » (avec captures d'écran), mini-flamegraph de la barre de debug, paramètres format=flame, order, compare, min et depth de l'API
  • new Migrer de la version 2.8 à la version 2.9 : mise à jour du framework, fichiers Docker (Dockerfile multi-stage, docker-entrypoint.sh, .dockerignore, target dans compose.yaml), .gitignore (.env.local, composer.lock), .gitattributes pour les scripts shell, changements du chargement des variables d'environnement
  • new Déployer son application : préparation du serveur, make:deploy, variables d'environnement, déploiement, import de la base, dossiers partagés, commandes du quotidien, image de production
  • update La commande bin/edu : commande make:deploy
  • update L'application dans Docker : lien vers l'image de production

v2.8.0 - 20/10/2026

new features

  • Profiler de code dans la barre de debug : le temps passé dans chaque fonction PHP d'une requête HTTP est mesuré par l'extension Excimer (profiler par échantillonnage toutes les 0,1 ms, compatible FrankenPHP en mode classique et worker). Le profilage est à la demande (EDU_PROFILER=trigger par défaut) : le nouveau bloc Code de la barre de debug pose le cookie edu_profile=1 (ou paramètre ?_profile=1) et reste actif jusqu'au clic sur Désactiver ; EDU_PROFILER=on profile chaque requête, off désactive le profiler. Le profil est rattaché au token de la requête et stocké compressé dans la table serv_code_profiles (EDU_PROFILER_KEEP profils conservés, 50 par défaut). Le bloc affiche le temps profilé et le top 3 des fonctions ; le nouvel onglet Code du profiler (/_debug/profiler#code/{token}) liste toutes les fonctions (temps propre / inclusif, filtre par origine app / framework / vendor), leurs appelants et appelés, et exporte le profil au format Speedscope pour un flamegraph. Nouvel endpoint interne GET /edu-code-profile (mode dev uniquement). L'image Docker installe Excimer (argument de build EDU_PROFILER, EDU_PROFILER_BUILD=0 pour l'exclure) et php bin/edu check:config signale l'extension comme recommandée
  • Profiler : la section de résumé d'une requête n'affiche plus que l'URL ; les informations détaillées (méthode, statut HTTP, IP, SAPI, durée, mémoire, date, token) ont été retirées de l'en-tête pour alléger l'affichage

documentation

  • new Les fonctionnalités : toutes les fonctionnalités du framework regroupées par thème d'apprentissage, avec la notion travaillée et son équivalent dans Symfony
  • new Migrer de la version 2.3 à la version 2.8 : étapes de migration (sauvegarde et passage de MySQL à MariaDB, templates d'erreur, cache Twig, variables du .env, fichiers Docker), changements et nouveautés des versions 2.4 à 2.8
  • update La barre de debug et le profiler : nouvelle section « Le profiler de code » (installation, modes, lecture du profil avec captures d'écran, lecture du flamegraph avec Speedscope, API)
  • update Installation avec Docker : variables d'environnement EDU_PROFILER, EDU_PROFILER_KEEP et EDU_PROFILER_BUILD
  • update Prérequis : installation de l'extension optionnelle excimer hors Docker

v2.7.3 - 17/10/2026

new features

  • Profiler : la vue Recherche (/_debug/profiler#search) gagne les mêmes onglets de filtrage par famille de statut que la vue des logs — Tous / 2xx / 3xx / 4xx / 5xx, avec le nombre de requêtes par famille en badge. Un clic filtre les résultats sur la famille sélectionnée (l'onglet Tous affiche toutes les requêtes), l'onglet actif est mis en évidence et le champ Statut du formulaire de recherche est synchronisé ; les compteurs proviennent de l'API /edu-logs (calculés côté serveur, ils couvrent l'ensemble des requêtes correspondant aux autres filtres) et restent indépendants du filtre de statut, comme dans la vue des logs

bug Fixes

  • Barre de debug : correction de l'alignement des colonnes contenant des liens (DbGate, phpMyAdmin, Mailpit) dans le panneau

documentation

  • update La barre de debug et le profiler : onglets de filtrage par famille de statut documentés pour les vues Logs et Recherche (clic pour filtrer, onglet actif, synchronisation du champ Statut du formulaire)

v2.7.2 - 17/10/2026

bug Fixes

  • Barre de debug : correction finale de l'alignement du bouton de fermeture à droite (styles flex, hauteur et alignement)

v2.7.1 - 17/10/2026

bug Fixes

  • Barre de debug : correction du décalage du bouton de fermeture à droite, amélioration du cloisonnement CSS pour les boutons

v2.7.0 - 17/10/2026

new features

  • Barre de debug : le bloc DEV liste les services de développement avec leurs URLs cliquables (application HTTP/HTTPS, MariaDB, Mailpit et son SMTP, DbGate, phpMyAdmin) — ports lus dans le .env (défauts du compose.yaml), variables transmises au conteneur frankenphp
  • Exécution de l'application dans Docker via FrankenPHP : nouveau service web frankenphp dans le compose.yaml (PHP 8.4, HTTPS et HTTP/3), Dockerfile avec les extensions requises par le framework, Caddyfile pilotable par SERVER_NAME, variables du .env transmises au conteneur (surcharges réseau DB_HOST, DB_SOCKET, MAILER_DSN), conteneurs préfixés par APP_NAME, ports et SERVER_NAME paramétrables dans le .env (mode HTTPS local : SERVER_NAME=localhost), healthcheck MariaDB — le flux classique php bin/edu start reste inchangé

bug Fixes

  • Profiler : les requêtes servies par FrankenPHP ne s'enregistraient pas dans la base des logs — seul le serveur PHP intégré (php bin/edu start) la remplissait, sans indicateur de performance par requête. La nouvelle classe HttpRequestLogger journalise désormais chaque requête traitée par le framework, quel que soit le SAPI (serveur intégré, FrankenPHP, FPM, ...), avec le serveur à l'origine (sapi, affiché et filtrable dans le profiler via le champ SAPI et le paramètre sapi de l'API /edu-logs), le temps d'exécution (execution_time_ms) et la mémoire utilisée (memory_mb) par requête, mesurés comme la barre de debug. Comme le profiler de Symfony, la ligne est réservée en début de requête puis complétée en fin : le bloc DevTool de la barre de debug affiche le token de la requête et pointe vers la nouvelle page descriptif de la requête (#request/{token} : statut, méthode, URL, IP, SAPI, durée, mémoire, ligne brute). La commande php bin/edu start n'écrit plus dans la base (affichage console uniquement) : seules les requêtes exécutées par PHP sont journalisées (fichiers statiques servis directement par le serveur web exclus), et la base partagée entre les serveurs est protégée contre les verrous (PRAGMA busy_timeout). La barre de pagination du profiler est supprimée : la navigation se fait par les filtres, le sélecteur « Résultats » et les raccourcis « 10 derniers » / « Dernier » (le paramètre page de l'API reste supporté)

documentation

  • new L'application dans Docker : architecture, démarrage/arrêt, variables d'environnement, ports et coexistence de plusieurs projets, mode HTTPS local (certificat auto-signé, limitation https://127.0.0.1), vérification des prérequis dans le conteneur, dépannage
  • update Démarrer les services : MySQL devient MariaDB, service FrankenPHP dans le tableau des ports, commandes par version, corrections de liens
  • update La barre de debug et le profiler : collecte de toutes les requêtes par HttpRequestLogger quel que soit le serveur (clé sapi, temps d'exécution et mémoire par requête), token de la requête dans le bloc DevTool, nouvelle page descriptif d'une requête (#request/{token}), profiler disponible sur les deux serveurs (http://localhost:8042/_debug/profiler et https://localhost/_debug/profiler), limitations (fichiers statiques non journalisés, IP du réseau Docker, mode worker FrankenPHP) ; liste des services de développement (URLs cliquables) dans le bloc DEV

v2.6.3 - 15/10/2026

bug Fixes

  • Mise à jour de zircote/swagger-php (4.x-dev → 5.8.*) : la librairie n'était pas compatible avec PHP 8.4 et supérieur — la commande vendor/bin/openapi affichait l'erreur Constant E_STRICT is deprecated et produisait un fichier incomplet

documentation

  • update Construire une API : suppression de la note de contournement (script generate-openapi.php), la commande vendor/bin/openapi est de nouveau fonctionnelle avec PHP 8.4 et supérieur

v2.6.2 - 15/10/2026

documentation

v2.6.1 - 15/10/2026

new features

  • Migration de MkDocs vers ProperDocs, le fork maintenu de MkDocs 1.x — MkDocs n'est plus maintenu depuis août 2024 et son dépôt est fermé aux contributions extérieures. ProperDocs est un remplacement direct (drop-in) : le thème Material et tous les plugins restent inchangés, la configuration devient properdocs.yml et les commandes mkdocs build/mkdocs serve deviennent properdocs build/properdocs serve

bug Fixes

  • Les cartes sociales (og:image) sont de nouveau générées : le logo du plugin social est résolu via le logo du thème (préfixé par le dossier de documentation)

documentation

  • new Use case "VILLE" : STEP 1 et Refactoring : ajout à la navigation (contenus retirés depuis)
  • update Contribuer pour la docs : installation et lancement avec ProperDocs
  • suppression de la page obsolète dataservice-insert.md (contenu intégré à Construire le CRUD)

v2.6.0 - 14/10/2026

new features

  • Nouveau service CsrfService pour protéger les formulaires contre les attaques CSRF (Cross-Site Request Forgery) selon le pattern "Synchronizer Token" : jeton aléatoire (CSPRNG) cloisonné par nom de route, comparaison protégée contre les attaques temporelles (hash_equals), rotation du jeton après chaque validation réussie. Nouvelle fonction Twig csrf_token('nom_route') pour générer le champ caché du formulaire et méthode Request::isCsrfTokenValid('nom_route') pour la validation dans le controller (le jeton peut aussi être transmis dans l'en-tête HTTP X-CSRF-TOKEN pour les appels AJAX). Démo applicative sur la route /medecin/import et documentation complète docs/build/csrf.md

v2.5.0 - 08/10/2026

new features

  • #149 Nouvelle commande php bin/edu make:entity : génération de l'entité (app/Entity) et de son repository (app/Repository) — mode interactif ou option --fields, getters et setters fluides camelCase typés, hydratation avec casts dans le repository @bfoujols
  • #150 Les paramètres d'identité du framework (name, version, date_version, php_version) sont personnalisables via le fichier eduframe.yml à la racine du framework (lu depuis vendor/ dans les projets) — plus besoin de modifier ConfigCore.php, exception ErrorConfigException explicite si le fichier est invalide @bfoujols
  • #76 Pages d'erreur HTTP mises en forme (404, 405, 403, 500) : templates autonomes et stylés dans app/Template/error/, nouveau HttpError403Controller, la classe ErrorHttpStatusException permet de lever une erreur HTTP depuis un controller (Exemple : accès interdit 403), toute exception non gérée affiche la page 500 avec le message de l'exception en mode développement (masqué en production). Le template http-Default.html.twig devient http-500.html.twig. Le nom du framework n'est plus affiché sur les pages d'erreur (titre et pied de page) @bfoujols

bug Fixes

  • #76 Correction de l'affichage de la barre de debug : les styles globaux de la page hôte (ex: a { margin-top: 1.5rem; }) ne cassent plus l'alignement des blocs de la barre — reset CSS sur les liens de la toolbar, immunisée contre les feuilles de style de l'application @bfoujols

documentation

Release notes for v2.5.0

https://github.com/studoo-app/edu-framework/milestone/22


v2.4.0 - 08/10/2026

new features

  • #147 Un controller peut maintenant gérer plusieurs routes via plusieurs méthodes : la clé controller du fichier "app/Config/routes.yaml" accepte la syntaxe Controller\VilleController::index. Sans méthode explicite, la méthode execute() est appelée comme avant (100 % rétro-compatible) @bfoujols
  • La méthode appelée est validée par le framework (publique, non statique, paramètre de type Request, retour string|null) et lève une ErrorControllerException avec un message explicite en cas d'erreur @bfoujols
  • #75 Gestion des fichiers téléversés ($_FILES) dans Request : normalisation automatique de la structure (champ simple et multi-fichiers), méthodes hasFile(), getFile(), getFiles(), isValid(), getExtension() et move(), démo applicative /medecin/import @bfoujols
  • #64 Activation du cache TWIG : les templates compilés sont stockés dans var/cache/twig (nouvelle clé de configuration cache_path), recompilation automatique des templates modifiés (auto_reload) @bfoujols
  • #65 Nouvelle commande php bin/edu cache:clear pour supprimer le cache de l'application (dossier var/cache) @bfoujols

bug Fixes

  • #86 Le fichier de configuration des routes est vérifié avant lecture : une exception ErrorRouteConfigNotExistException avec un message explicite (chemin attendu, configuration route_config_path, sensibilité à la casse sur Linux) remplace le fatal error du composant Yaml quand "routes.yaml" est introuvable @bfoujols

documentation

Release notes for v2.4.0

https://github.com/studoo-app/edu-framework/milestone/21


v2.3.2 - 05/10/2026

new features

  • Add documentation for building APIs and CRUD operations @bfoujols

bug Fixes

  • #143 Mettre à jour les chemins de sqlite et des logs pour utiliser des chemins relatifs @bfoujols
  • fix: mettre à jour la vérification de version PHP à 8.4 et ajuster les messages d'erreur @bfoujols
  • test: remplacer sha1 par hash('sha256', ...) dans FastRouteCoreTest @bfoujols

Release notes for v2.3.2

https://github.com/studoo-app/edu-framework/milestone/v2.3.2


v2.3.1 - 05/10/2026

bug Fixes

  • #143 Mettre à jour les chemins de sqlite et des logs pour utiliser des chemins relatifs @bfoujols

Release notes for v2.3.1

https://github.com/studoo-app/edu-framework/milestone/v2.3.1


v2.3.0 - 05/10/2026

new features

  • #136 Implement SQLite logging service for server request logs @bfoujols
  • #136 Add BufferFormat and BufferToServer classes for log formatting @bfoujols
  • #136 Add logs navigation in the debug bar @bfoujols
  • #136 Replace in-bar logs panel with a Symfony-style profiler page @bfoujols
  • #136 Enhance filtering capabilities and add status family counting @bfoujols
  • #69 Add custom listening socket (#69) Thanks @CapelleGab
  • #122 Add Manage DB by dbgate @bfoujols
  • #120 Add MailPit Service @bfoujols
  • #97 Add slash command @bfoujols
  • Update PHP minimum version 8.2 -> 8.4 (composer, bin/edu, CI, doc) @bfoujols
  • Update dependencies (vlucas/phpdotenv v5.7, nette/php-generator, zircote/swagger-php, symfony/yaml 6.3 -> 6.4) @bfoujols

bug Fixes

  • #136 Make SQLite logging non-blocking and resilient @bfoujols
  • #136 Send proper HTTP status codes from error controllers @bfoujols
  • #136 Gate debug routes on SQLite availability to prevent PDOException @bfoujols
  • #136 Buffer stream chunks into complete lines to preserve adjacent request logs @bfoujols
  • #130 github action E: Package 'netcat' has no installation candidate @bfoujols
  • #129 run command taskfile before-commit @bfoujols
  • Fix CI failure on profiler page and logs endpoint @bfoujols
  • Fix CI failure on debug toolbar (missing semicolon) and deprecated dynamic property @bfoujols
  • Fix debug toolbar always showing an empty controller instead of "aucun" (Request::hasHander always true) @bfoujols
  • Fix PHP 8.5 deprecation (PDO::MYSQL_ATTR_INIT_COMMAND -> PDO\MYSQL::ATTR_INIT_COMMAND) @bfoujols
  • Fix FastRouteCoreTest failures caused by APP_ENV state leaking between tests @bfoujols
  • Fix security advisories on symfony/yaml (CVE-2026-45304, CVE-2026-45305, CVE-2026-45133) @bfoujols

documentation

Release notes for v2.3.0

https://github.com/studoo-app/edu-framework/milestone/v2.3.0


v2.2.1 - 23/08/2024

new features

  • #119 add Request::getBody() @bfoujols

bug Fixes

  • #117 Fix class not use in API controller @bfoujols
  • Fix Doc install pip package

Release notes for v2.2.1

https://github.com/studoo-app/edu-framework/milestone/18


v2.2.0 - 08/08/2024

new features

  • #112 Implement OpenAPI @bfoujols

bug Fixes

  • #114 Update PHP version 8.1 -> 8.2 @bfoujols
  • #116 Add Tests for OpenAPI, Command Cli @bfoujols

Release notes for v2.2.0

https://github.com/studoo-app/edu-framework/milestone/17


v2.1.0 - 20/06/2024

new features

bug Fixes

  • #96 Problème d'installation de phpunit 11 @pbentura @RaphaelBensoussan
  • #92 Problème de TestUnit sur FastRouteCore

Release notes for v2.1.0

https://github.com/studoo-app/edu-framework/milestone/v2.1.0


v2.0.2 - 24/05/2024

bug Fixes

Release notes for v2.0.2

https://github.com/studoo-app/edu-framework/milestone/v2.0.2


v2.0.1 - 15/05/2024

bug Fixes

  • #88 Correction sur le probleme avec DatabaseService dans la ligne de command

Release notes for v2.0.1

https://github.com/studoo-app/edu-framework/milestone/v2.0.1


v2.0.0 - 06/04/2024

new features

  • #73 ajout de la commande php bin/edu make:api pour générer un controller de type API
  • #70 ajout de la commande php bin/edu make:command pour générer une commande console
  • #59 ajout d'une page par défaut sur la route

deprecations

  • #68 Suppression des anciennes configurations Docker
  • #72 Bootstrap 5.3 Clean

bug Fixes

  • #83 Docker compose.yaml: version is obsolete
  • #78 Barre de debug dans les pages d'erreur

documentation

Release notes for v2.0.0

https://github.com/studoo-app/edu-framework/milestone/v2.0.0


v1.2.0 - 25/03/2024

new features

  • #66 ajout de la commande php bin/edu start pour démarrer le serveur de développement
  • #62 ajout de la commande php bin/edu check:config pour vérifier la configuration du framework
  • #26 Implement PHPDebugBar

bug fixes

  • #81 Probleme de récupération des variables dynamiques passées dans la route via {}

Release notes for v1.2.0

https://github.com/studoo-app/edu-framework/milestone/v1.2.0


v1.1.0 - 03/2024

Version beta de la bar de debug avec les fonctionnalités suivantes :

  • Mise en place de la bar de debug en beta sur environnement de développement
  • Refonte de docker pour l'installation des services
  • Correction de bugs mineurs
    • Docker : correction sur le reseau des services Mydql et PhpMyAdmin

v1.0.0 - 2024

Version définitive du framework avec les fonctionnalités suivantes :

  • Création de controller via la commande php bin/edu make:controller

v0.6.0 - 2023

Version stable du framework avec les fonctionnalités suivantes :

  • Création de controller
  • Création de template
  • Création de route
  • Mise en place de la base de données

v0.5.0 - 2023

Versions de développement du framework avec les fonctionnalités suivantes :

  • Mise en place et conception de l'architecture du framework (MVC)
  • plusieurs POC des couches du MVC
  • Tests unitaires
  • Mise en place de la documentation du framework (Writerside)
  • Gestion de la configuration du framework (DotEnv)
  • Gestion de dépendances (Composer)
  • Gestion des services (Docker)

v0.1.0 - 2022

Début du projet Edu Framework