1.4 Upgrade-Leitfaden

Bitte sichern Sie Ihre Daten vor dem Upgrade und führen Sie den folgenden Befehl aus
composer require workerman/webman-framework ^1.4.7 && composer require webman/console ^1.2.12 && php webman install

Hinweis
Wenn das Upgrade nicht möglich ist, kann dies daran liegen, dass ein Composer-Proxy verwendet wird. Bitte verwenden Sie den folgenden Befehl composer config -g --unset repos.packagist, um wieder die offizielle Datenquelle von Composer zu verwenden.

Funktionen und Änderungen

Anwendungs-Plugins

Die Version 1.4 unterstützt Anwendungs-Plugins. Weitere Informationen finden Sie unter Anwendungs-Plugins.

Automatische Routen

Die Version 1.4 unterstützt verschiedene komplexe Verzeichnisregeln für Controller, wie zum Beispiel

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

Das bedeutet, dass das webman/auto-route Plugin nicht mehr benötigt wird.

Schalter zur Wiederverwendbarkeit von Controllern

In der Version 1.4 kann die Wiederverwendbarkeit von Controllern deaktiviert werden, indem in config/app.php 'controller_reuse' => false, gesetzt wird. Dadurch wird bei jeder Anfrage ein neuer Controller neu initialisiert, was bedeutet, dass bei jeder Anfrage der Konstruktor __construct() des entsprechenden Controllers ausgelöst wird. Entwickler können im Konstruktor einige Vorbereitungen für die Bearbeitung jeder Anfrage durchführen.

Da die Wiederverwendbarkeit von Controllern deaktiviert werden kann, ist das webman/action-hook Plugin nicht mehr erforderlich.

Aktivierung des HTTP-Dienstes

Die Version 1.4 unterstützt die Aktivierung mehrerer Ports zur Bereitstellung von HTTP-Diensten.
Siehe auch Langsame Geschäftsverarbeitung.

Konfiguration der Ansichtsdatei

Die Dateiendung kann nur in den Optionen von view.php konfiguriert werden.
Nicht unterstützte Verwendung

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

Richtige Verwendung

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

Änderung des Namensraums für den Session-Treiber

Mit Version 1.4.0 wurde der Namensraum der SessionHandler-Klasse geändert, von ursprünglich

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

zu

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

Um zu vermeiden, dass nach dem Upgrade Fehler auftreten, bleibt die Klasse Webman\FileSessionHandler für eine gewisse Zeit erhalten und wird in zukünftigen Versionen vollständig entfernt.

Diese Änderung betrifft die Konfiguration 'handler' in config/session.php.