diff --git a/composer.json b/composer.json index 15bad824..81fc6a58 100644 --- a/composer.json +++ b/composer.json @@ -37,11 +37,9 @@ "php": "^7.2 || ^7.3 || ^7.4 || ^8.0 || ^8.1", "ext-json": "*", "ext-posix": "*", - "doctrine/annotations": "~1.12 || ~1.4.0", "doctrine/dbal": "^2.13.1", "jelix/version": "^2.0", "koriym/attributes": "^1.0", - "league/climate": "^3.6", "psy/psysh": "^0.11.2", "symfony/console": "~5.0 || ~4.0 || ~3.0", "symfony/polyfill-ctype": "^1.19", diff --git a/docs/guide/installation.md b/docs/guide/installation.md index bac652ef..9c76072d 100644 --- a/docs/guide/installation.md +++ b/docs/guide/installation.md @@ -49,20 +49,22 @@ docker run -it --rm -v $(pwd):/app/ -p 20001:20001 zmbot/swoole vendor/bin/start ```verilog $ vendor/bin/start server -host: 0.0.0.0 | port: 20001 -log_level: 2 | version: 2.0.0 -config: global.php | worker_num: 4 -working_dir: /app/zhamao-framework - ______ -|__ / |__ __ _ _ __ ___ __ _ ___ - / /| '_ \ / _` | '_ ` _ \ / _` |/ _ \ - / /_| | | | (_| | | | | | | (_| | (_) | -/____|_| |_|\__,_|_| |_| |_|\__,_|\___/ +================================================================= + working_dir: /app/zhamao-framework-starter + listen: 0.0.0.0:20001 | worker: 4 (auto) + environment: default | log_level: 2 + version: 2.7.0 | master_pid: 28449 +================================================================= + ______ + |__ / |__ __ _ _ __ ___ __ _ ___ + / /| '_ \ / _` | '_ ` _ \ / _` |/ _ \ + / /_| | | | (_| | | | | | | (_| | (_) | + /____|_| |_|\__,_|_| |_| |_|\__,_|\___/ -[14:27:31] [S] [#3] Worker #3 已启动 -[14:27:31] [S] [#0] Worker #0 已启动 -[14:27:31] [S] [#2] Worker #2 已启动 -[14:27:31] [S] [#1] Worker #1 已启动 +[03-20 22:30:56] [S] [#1] Worker #1 started +[03-20 22:30:56] [S] [#2] Worker #2 started +[03-20 22:30:56] [S] [#3] Worker #3 started +[03-20 22:30:56] [S] [#0] Worker #0 started ``` 单纯运行 炸毛框架 后,如果不部署或安装启动任何机器人客户端的话,仅仅相当于启动了一个 监听 20001 端口的WebSoket + HTTP 服务器。你可以通过浏览器访问:http://127.0.0.1:20001 ,或者你部署到了服务器后需要输入服务器地址。 diff --git a/src/ZM/Command/BuildCommand.php b/src/ZM/Command/BuildCommand.php index b68188ea..f2f1e386 100644 --- a/src/ZM/Command/BuildCommand.php +++ b/src/ZM/Command/BuildCommand.php @@ -4,6 +4,7 @@ declare(strict_types=1); namespace ZM\Command; +use ArrayIterator; use League\CLImate\CLImate; use Phar; use Symfony\Component\Console\Command\Command; @@ -66,7 +67,6 @@ class BuildCommand extends Command @unlink($target_dir . $filename); $phar = new Phar($target_dir . $filename); $phar->startBuffering(); - $climate = new CLImate(); $all = DataProvider::scanDirFiles(DataProvider::getSourceRootDir(), true, true); @@ -76,19 +76,29 @@ class BuildCommand extends Command }); sort($all); - $progress = $climate->progress()->total(count($all)); $archive_dir = DataProvider::getSourceRootDir(); - foreach ($all as $k => $v) { - $phar->addFile($archive_dir . '/' . $v, $v); - $progress->current($k + 1, 'Adding ' . $v); - } + $map = []; + if (class_exists('\\League\\CLImate\\CLImate')) { + $climate = new CLImate(); + $progress = $climate->progress()->total(count($all)); + } + foreach ($all as $k => $v) { + $map[$v] = $archive_dir . '/' . $v; + if (isset($progress)) { + $progress->current($k + 1, 'Adding ' . $v); + } + } + $this->output->write('Building...'); + $phar->buildFromIterator(new ArrayIterator($map)); $phar->setStub( "#!/usr/bin/env php\n" . $phar->createDefaultStub(LOAD_MODE == 0 ? 'src/entry.php' : 'vendor/zhamao/framework/src/entry.php') ); $phar->stopBuffering(); + $this->output->writeln(''); $this->output->writeln('Successfully built. Location: ' . $target_dir . "{$filename}"); + $this->output->writeln('You may use `chmod +x server.phar` to let phar executable with `./` command'); } } diff --git a/src/ZM/ConsoleApplication.php b/src/ZM/ConsoleApplication.php index af1142f8..2aa1636a 100644 --- a/src/ZM/ConsoleApplication.php +++ b/src/ZM/ConsoleApplication.php @@ -28,9 +28,9 @@ use ZM\Exception\InitException; class ConsoleApplication extends Application { - public const VERSION_ID = 447; + public const VERSION_ID = 448; - public const VERSION = '2.7.0'; + public const VERSION = '2.7.1'; private static $obj;