Guide de mise à niveau 1.4

Avant la mise à niveau, veuillez sauvegarder vos données et exécuter la commande suivante pour mettre à niveau
composer require workerman/webman-framework ^1.4.7 && composer require webman/console ^1.2.12 && php webman install

Attention
Si la mise à niveau échoue, cela peut être dû à l'utilisation d'un proxy Composer. Veuillez exécuter la commande suivante composer config -g --unset repos.packagist pour revenir à la source de données officielle de Composer.

Fonctionnalités et changements

Plugins d'application

La version 1.4 prend en charge les plugins d'application. Pour plus d'informations, consultez Plugins d'application.

Route automatique

La version 1.4 prend en charge diverses règles complexes pour les répertoires de contrôleurs, par exemple :

app
app
├── admin
│   └── v1
│       └── v2
│           └── v3
│               └── controller
│                   └── Index.php
└── controller
    ├── v1
    │   └── Index.php
    └── v2
        └── v3
            └── Index.php

Cela signifie que le plugin webman/auto-route n'est plus nécessaire.

Commutateur de réutilisation de contrôleur

La version 1.4 permet de désactiver la réutilisation des contrôleurs. Dans config/app.php, définissez 'controller_reuse' => false,. Ainsi, chaque requête initialise un nouveau contrôleur, ce qui signifie que chaque requête déclenche le constructeur __construct() du contrôleur correspondant. Les développeurs peuvent effectuer certaines initialisations avant le traitement des requêtes dans le constructeur.

Comme la réutilisation des contrôleurs peut être désactivée, le plugin webman/action-hook n'est plus nécessaire.

Activer le service HTTP

La version 1.4 prend en charge l'activation de plusieurs ports pour fournir le service HTTP.
Voir Traitement de tâches lentes.

Configuration des fichiers de vue

Les extensions ne peuvent être configurées que dans l'option options de view.php.
Utilisation non prise en charge

use support\view\Raw;
return [
    'handler' => Raw::class,
    'view_suffix' => '.php'
];

Utilisation correcte

use support\view\Raw;
return [
    'handler' => Raw::class,
    'options' => [
        'view_suffix' => '.php'
    ]
];

Changement de l'espace de noms du moteur de session

À partir de la version 1.4.0, Webman a modifié l'espace de noms de la classe SessionHandler, de l'ancienne manière :

use Webman\FileSessionHandler;  
use Webman\RedisSessionHandler;  
use Webman\RedisClusterSessionHandler;  

à

use Webman\Session\FileSessionHandler;  
use Webman\Session\RedisSessionHandler;  
use Webman\Session\RedisClusterSessionHandler;

Pour éviter des erreurs de programme après la mise à niveau, la classe Webman\FileSessionHandler sera maintenue pendant un certain temps, mais sera complètement supprimée dans les futures versions.

Ce changement affecte la configuration 'handler' dans config/session.php.