Guida all'aggiornamento 1.4

Effettuare un backup prima di aggiornare, eseguire il seguente comando per l'aggiornamento
composer require workerman/webman-framework ^1.4.7 && composer require webman/console ^1.2.12 && php webman install

Nota
Se non è possibile eseguire l'aggiornamento, è probabile che sia a causa dell'uso di un proxy di composer. Si prega di utilizzare il seguente comando composer config -g --unset repos.packagist per ripristinare l'uso della fonte dati ufficiale di composer.

Funzionalità e modifiche

Plugin dell'applicazione

La versione 1.4 supporta i plugin dell'applicazione, per ulteriori informazioni consultare Plugin dell'applicazione

Routing automatico

La versione 1.4 supporta varie regole complesse riguardanti le directory dei controller, ad esempio

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

In altre parole, il plugin webman/auto-route non è più necessario.

Attivazione del riutilizzo del controller

La versione 1.4 consente di disattivare il riutilizzo dei controller, impostando nel file config/app.php 'controller_reuse' => false, in questo modo ogni richiesta inizializzerà nuovamente un nuovo controller, il che significa che ogni richiesta attiverà il costruttore __construct() del controller corrispondente. Gli sviluppatori possono eseguire delle operazioni di inizializzazione prima di gestire ogni richiesta nel costruttore.

Poiché è possibile disattivare il riutilizzo del controller, il plugin webman/action-hook non è più necessario.

Attivazione del servizio http

La versione 1.4 supporta l'avvio di più porte per fornire il servizio http.
Vedi Gestione delle attività lente

Configurazione del file di visualizzazione

Il suffisso può essere configurato solo nell'opzione options del file view.php.
Vecchio metodo non supportato più

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

Nuovo metodo corretto

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

Modifica del namespace della sessione

A partire da webman 1.4.0, il namespace della classe SessionHandler è stato modificato da

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

a

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

Per evitare errori diretti dopo l'aggiornamento, la classe Webman\FileSessionHandler viene ancora mantenuta per un certo periodo e verrà completamente rimossa nelle versioni future.

Questa modifica influisce sulla configurazione handler di config/session.php.