From 6101ab909f5fe653f9314e4cf805fa8e37522a85 Mon Sep 17 00:00:00 2001 From: L_ing1992 Date: Mon, 4 Apr 2022 16:35:36 +0800 Subject: [PATCH 1/3] =?UTF-8?q?db=20=E6=97=A5=E5=BF=97!!?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.example | 1 + .env.pro | 1 + app/Providers/AppServiceProvider.php | 18 +++++++++++++++++- app/helpers.php | 22 ++++++++++++++++++++++ config/database.php | 6 ++++++ config/logging.php | 22 ++++++++++++++++++++++ 6 files changed, 69 insertions(+), 1 deletion(-) diff --git a/.env.example b/.env.example index eaccd7b..50afb51 100644 --- a/.env.example +++ b/.env.example @@ -14,6 +14,7 @@ DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME=root DB_PASSWORD= +DB_LOG=true BROADCAST_DRIVER=log CACHE_DRIVER=file diff --git a/.env.pro b/.env.pro index a2666f4..2b7de86 100644 --- a/.env.pro +++ b/.env.pro @@ -14,6 +14,7 @@ DB_PORT=3306 DB_DATABASE= DB_USERNAME= DB_PASSWORD= +DB_LOG=false BROADCAST_DRIVER=log CACHE_DRIVER=file diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index ee8ca5b..239f2b2 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -2,6 +2,7 @@ namespace App\Providers; +use Illuminate\Support\Facades\DB; use Illuminate\Support\ServiceProvider; class AppServiceProvider extends ServiceProvider @@ -23,6 +24,21 @@ public function register() */ public function boot() { - // + if (config('database.db_log')) { // 日志 + DB::listen(function ($query) { + $tmp = str_replace('?', '"' . '%s' . '"', $query->sql); + $qBindings = []; + foreach ($query->bindings as $key => $value) { + if (is_numeric($key)) { + $qBindings[] = $value; + } else { + $tmp = str_replace(':' . $key, '"' . $value . '"', $tmp); + } + } + $tmp = vsprintf($tmp, $qBindings); + $tmp = str_replace("\\", "", $tmp); + dbLog(' execution time: ' . $query->time . 'ms; ' . $tmp); + }); + } } } diff --git a/app/helpers.php b/app/helpers.php index b38910c..d8a6d8a 100644 --- a/app/helpers.php +++ b/app/helpers.php @@ -2,6 +2,7 @@ use App\Http\Enums\HttpResCode; use Illuminate\Http\JsonResponse; +use Illuminate\Support\Facades\Log; if (!function_exists('success')) { function success(string $msg = '', array $data = []): JsonResponse @@ -11,3 +12,24 @@ function success(string $msg = '', array $data = []): JsonResponse } +if (!function_exists('cLog')) { + /** + * @param $message + * @param array $context + */ + function cLog($message, array $context = []) + { + Log::channel('cron-daily')->info($message, $context); + } +} + +if (!function_exists('dbLog')) { + /** + * @param $message + * @param array $context + */ + function dbLog($message, array $context = []) + { + Log::channel('db-daily')->info($message, $context); + } +} diff --git a/config/database.php b/config/database.php index 0faebae..bf37cac 100644 --- a/config/database.php +++ b/config/database.php @@ -143,5 +143,11 @@ ], ], + /* + |-------------------------------------------------------------------------- + | Databases sql Log + |-------------------------------------------------------------------------- + */ + 'db_log' => env('DB_LOG', false), ]; diff --git a/config/logging.php b/config/logging.php index 9a4e700..d8e743a 100644 --- a/config/logging.php +++ b/config/logging.php @@ -119,6 +119,28 @@ 'driver' => 'single', 'path' => storage_path('logs/php-deprecation-warnings.log'), ], + + /* + * 仅供 cron tab 定时器使用 + */ + 'cron-daily' => [ + 'driver' => 'daily', + 'path' => storage_path('logs/laravel-cron.log'), + 'level' => 'debug', + 'days' => 14, + ], + + + /* + * 仅供 db sql 使用 + */ + 'db-daily' => [ + 'driver' => 'daily', + 'path' => storage_path('logs/laravel-db.log'), + 'level' => 'debug', + 'days' => 14, + ], + ], ]; -- Gitee From af4bfe8a5093762c67bc92f1f47c863722e65997 Mon Sep 17 00:00:00 2001 From: Ling Date: Wed, 6 Apr 2022 10:44:00 +0800 Subject: [PATCH 2/3] update Fail.php --- app/Exceptions/Fail.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/app/Exceptions/Fail.php b/app/Exceptions/Fail.php index 64c105c..ec807d7 100644 --- a/app/Exceptions/Fail.php +++ b/app/Exceptions/Fail.php @@ -5,9 +5,18 @@ use App\Http\Enums\HttpResCode; use Exception; use Illuminate\Http\JsonResponse; +use Illuminate\Http\Request; class Fail extends Exception { + public function __construct($message = "", int|HttpResCode $code = 0, $previous = null) + { + if ($code instanceof HttpResCode) { + $code = $code->value; + } + parent::__construct($message, $code, $previous); + } + /** * 报告异常。 */ @@ -28,8 +37,8 @@ public function context(): array /** * 返回异常为 HTTP 响应。 */ - public function render($request): JsonResponse + public function render(Request $request): JsonResponse { - return new JsonResponse(['code' => HttpResCode::Fail, 'msg' => $this->getMessage(), 'data' => []], '200'); + return new JsonResponse(['code' => $this->getCode() ?: HttpResCode::Fail, 'msg' => $this->getMessage(), 'data' => $request->all()]); } } -- Gitee From 5eec88af966f2eefae56aedcbbdba4d0c1d24c6c Mon Sep 17 00:00:00 2001 From: Ling Date: Wed, 6 Apr 2022 10:47:36 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BE=9D=E8=B5=96?= =?UTF-8?q?=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- composer.json | 12 ++-- composer.lock | 186 ++++++++++++++++++++++++++------------------------ 2 files changed, 101 insertions(+), 97 deletions(-) diff --git a/composer.json b/composer.json index de78148..9321f9a 100644 --- a/composer.json +++ b/composer.json @@ -10,9 +10,9 @@ "require": { "php": "^8.0.2", "guzzlehttp/guzzle": "^7.4.2", - "laravel/framework": "^9.5.1", - "laravel/sanctum": "^2.14.2", - "laravel/tinker": "^2.7.1", + "laravel/framework": "^9.7.0", + "laravel/sanctum": "^2.15.0", + "laravel/tinker": "^2.7.0", "ext-pdo": "*", "ext-openssl": "*" }, @@ -20,9 +20,9 @@ "fakerphp/faker": "^1.19.0", "laravel/sail": "^1.13.7", "mockery/mockery": "^1.5.0", - "nunomaduro/collision": "^6.1", - "phpunit/phpunit": "^9.5.19", - "spatie/laravel-ignition": "^1.1.1" + "nunomaduro/collision": "^6.2.0", + "phpunit/phpunit": "^9.5.0", + "spatie/laravel-ignition": "^1.2.0" }, "autoload": { "psr-4": { diff --git a/composer.lock b/composer.lock index e8e0c6e..afd3e72 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "dd4e0ae76eff89e886a58192aa77445d", + "content-hash": "e51761e2780f5c41c97e894a395e79f0", "packages": [ { "name": "brick/math", @@ -673,11 +673,11 @@ }, { "name": "laravel/framework", - "version": "v9.5.1", + "version": "v9.7.0", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/laravel/framework/v9.5.1/laravel-framework-v9.5.1.zip", - "reference": "35be2599c9ac3d58bf1578895c2e85ea4848a0d7", + "url": "https://mirrors.tencent.com/repository/composer/laravel/framework/v9.7.0/laravel-framework-v9.7.0.zip", + "reference": "54c9696ee3e558ab29317ed6e0cb16bb9db5aad4", "shasum": "" }, "require": { @@ -838,19 +838,20 @@ "framework", "laravel" ], - "time": "2022-03-15T14:41:19+00:00" + "time": "2022-04-05T15:07:51+00:00" }, { "name": "laravel/sanctum", - "version": "v2.14.2", + "version": "v2.15.0", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/laravel/sanctum/v2.14.2/laravel-sanctum-v2.14.2.zip", - "reference": "dc5d749ba9bfcfd68d8f5c272238f88bea223e66", + "url": "https://mirrors.tencent.com/repository/composer/laravel/sanctum/v2.15.0/laravel-sanctum-v2.15.0.zip", + "reference": "5be160413b6f37dcf8758663edeab12d0e806f56", "shasum": "" }, "require": { "ext-json": "*", + "illuminate/console": "^6.9|^7.0|^8.0|^9.0", "illuminate/contracts": "^6.9|^7.0|^8.0|^9.0", "illuminate/database": "^6.9|^7.0|^8.0|^9.0", "illuminate/support": "^6.9|^7.0|^8.0|^9.0", @@ -892,7 +893,7 @@ "laravel", "sanctum" ], - "time": "2022-02-16T14:40:23+00:00" + "time": "2022-03-28T13:53:05+00:00" }, { "name": "laravel/serializable-closure", @@ -945,11 +946,11 @@ }, { "name": "laravel/tinker", - "version": "v2.7.1", + "version": "v2.7.2", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/laravel/tinker/v2.7.1/laravel-tinker-v2.7.1.zip", - "reference": "1e2d500585a4e546346fadd3adc6f9c1a97e15f4", + "url": "https://mirrors.tencent.com/repository/composer/laravel/tinker/v2.7.2/laravel-tinker-v2.7.2.zip", + "reference": "dff39b661e827dae6e092412f976658df82dbac5", "shasum": "" }, "require": { @@ -999,7 +1000,7 @@ "laravel", "psysh" ], - "time": "2022-03-15T15:25:01+00:00" + "time": "2022-03-23T12:38:24+00:00" }, { "name": "league/commonmark", @@ -1132,11 +1133,11 @@ }, { "name": "league/flysystem", - "version": "3.0.12", + "version": "3.0.13", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/league/flysystem/3.0.12/league-flysystem-3.0.12.zip", - "reference": "4744d96fb2456d9808be3ad596a2520b902996e2", + "url": "https://mirrors.tencent.com/repository/composer/league/flysystem/3.0.13/league-flysystem-3.0.13.zip", + "reference": "15dc1ccb2db8daef507c4d3e501565bae42a9f0e", "shasum": "" }, "require": { @@ -1194,7 +1195,7 @@ "sftp", "storage" ], - "time": "2022-03-12T19:32:12+00:00" + "time": "2022-04-02T08:55:13+00:00" }, { "name": "league/mime-type-detection", @@ -2146,11 +2147,11 @@ }, { "name": "symfony/console", - "version": "v6.0.5", + "version": "v6.0.7", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/console/v6.0.5/symfony-console-v6.0.5.zip", - "reference": "3bebf4108b9e07492a2a4057d207aa5a77d146b1", + "url": "https://mirrors.tencent.com/repository/composer/symfony/console/v6.0.7/symfony-console-v6.0.7.zip", + "reference": "70dcf7b2ca2ea08ad6ebcc475f104a024fb5632e", "shasum": "" }, "require": { @@ -2214,7 +2215,7 @@ "console", "terminal" ], - "time": "2022-02-25T10:48:52+00:00" + "time": "2022-03-31T17:18:25+00:00" }, { "name": "symfony/css-selector", @@ -2260,11 +2261,11 @@ }, { "name": "symfony/deprecation-contracts", - "version": "v3.0.0", + "version": "v3.0.1", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/deprecation-contracts/v3.0.0/symfony-deprecation-contracts-v3.0.0.zip", - "reference": "c726b64c1ccfe2896cb7df2e1331c357ad1c8ced", + "url": "https://mirrors.tencent.com/repository/composer/symfony/deprecation-contracts/v3.0.1/symfony-deprecation-contracts-v3.0.1.zip", + "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c", "shasum": "" }, "require": { @@ -2300,15 +2301,15 @@ ], "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", - "time": "2021-11-01T23:48:49+00:00" + "time": "2022-01-02T09:55:41+00:00" }, { "name": "symfony/error-handler", - "version": "v6.0.3", + "version": "v6.0.7", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/error-handler/v6.0.3/symfony-error-handler-v6.0.3.zip", - "reference": "20343b3bad7ebafa38138ddcb97290a24722b57b", + "url": "https://mirrors.tencent.com/repository/composer/symfony/error-handler/v6.0.7/symfony-error-handler-v6.0.7.zip", + "reference": "e600c54e5b30555eecea3ffe4314e58f832e78ee", "shasum": "" }, "require": { @@ -2348,7 +2349,7 @@ ], "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", - "time": "2022-01-02T09:55:41+00:00" + "time": "2022-03-18T16:21:55+00:00" }, { "name": "symfony/event-dispatcher", @@ -2506,11 +2507,11 @@ }, { "name": "symfony/http-foundation", - "version": "v6.0.6", + "version": "v6.0.7", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/http-foundation/v6.0.6/symfony-http-foundation-v6.0.6.zip", - "reference": "a000fcf2298a1bc79a1dcff22608792506534719", + "url": "https://mirrors.tencent.com/repository/composer/symfony/http-foundation/v6.0.7/symfony-http-foundation-v6.0.7.zip", + "reference": "c816b26f03b6902dba79b352c84a17f53d815f0d", "shasum": "" }, "require": { @@ -2551,15 +2552,15 @@ ], "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", - "time": "2022-03-05T21:04:00+00:00" + "time": "2022-03-24T14:13:59+00:00" }, { "name": "symfony/http-kernel", - "version": "v6.0.6", + "version": "v6.0.7", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/http-kernel/v6.0.6/symfony-http-kernel-v6.0.6.zip", - "reference": "f9e49ad9fe16895b24cd7a09dc28d3364282e21a", + "url": "https://mirrors.tencent.com/repository/composer/symfony/http-kernel/v6.0.7/symfony-http-kernel-v6.0.7.zip", + "reference": "9c03dab07a6aa336ffaadc15352b1d14f4ce01f5", "shasum": "" }, "require": { @@ -2637,15 +2638,15 @@ ], "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", - "time": "2022-03-05T21:19:20+00:00" + "time": "2022-04-02T06:35:11+00:00" }, { "name": "symfony/mailer", - "version": "v6.0.5", + "version": "v6.0.7", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/mailer/v6.0.5/symfony-mailer-v6.0.5.zip", - "reference": "0f4772db6521a1beb44529aa2c0c1e56f671be8f", + "url": "https://mirrors.tencent.com/repository/composer/symfony/mailer/v6.0.7/symfony-mailer-v6.0.7.zip", + "reference": "f7343f94e7afecca2ad840b078f9d80200e1bd27", "shasum": "" }, "require": { @@ -2688,15 +2689,15 @@ ], "description": "Helps sending emails", "homepage": "https://symfony.com", - "time": "2022-02-25T10:48:52+00:00" + "time": "2022-03-18T16:06:28+00:00" }, { "name": "symfony/mime", - "version": "v6.0.3", + "version": "v6.0.7", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/mime/v6.0.3/symfony-mime-v6.0.3.zip", - "reference": "2cd9601efd040e56f43360daa68f3c6b0534923a", + "url": "https://mirrors.tencent.com/repository/composer/symfony/mime/v6.0.7/symfony-mime-v6.0.7.zip", + "reference": "74266e396f812a2301536397a6360b6e6913c0d8", "shasum": "" }, "require": { @@ -2746,7 +2747,7 @@ "mime", "mime-type" ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2022-03-13T20:10:05+00:00" }, { "name": "symfony/polyfill-ctype", @@ -3221,11 +3222,11 @@ }, { "name": "symfony/process", - "version": "v6.0.5", + "version": "v6.0.7", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/process/v6.0.5/symfony-process-v6.0.5.zip", - "reference": "1ccceccc6497e96f4f646218f04b97ae7d9fa7a1", + "url": "https://mirrors.tencent.com/repository/composer/symfony/process/v6.0.7/symfony-process-v6.0.7.zip", + "reference": "e13f6757e267d687e20ec5b26ccfcbbe511cd8f4", "shasum": "" }, "require": { @@ -3255,7 +3256,7 @@ ], "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", - "time": "2022-01-30T18:19:12+00:00" + "time": "2022-03-18T16:21:55+00:00" }, { "name": "symfony/routing", @@ -3324,11 +3325,11 @@ }, { "name": "symfony/service-contracts", - "version": "v3.0.0", + "version": "v3.0.1", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/service-contracts/v3.0.0/symfony-service-contracts-v3.0.0.zip", - "reference": "36715ebf9fb9db73db0cb24263c79077c6fe8603", + "url": "https://mirrors.tencent.com/repository/composer/symfony/service-contracts/v3.0.1/symfony-service-contracts-v3.0.1.zip", + "reference": "e517458f278c2131ca9f262f8fbaf01410f2c65c", "shasum": "" }, "require": { @@ -3379,7 +3380,7 @@ "interoperability", "standards" ], - "time": "2021-11-04T17:53:12+00:00" + "time": "2022-03-13T20:10:05+00:00" }, { "name": "symfony/string", @@ -3445,11 +3446,11 @@ }, { "name": "symfony/translation", - "version": "v6.0.6", + "version": "v6.0.7", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/translation/v6.0.6/symfony-translation-v6.0.6.zip", - "reference": "f6639cb9b5e0c57fe31e3263b900a77eedb0c908", + "url": "https://mirrors.tencent.com/repository/composer/symfony/translation/v6.0.7/symfony-translation-v6.0.7.zip", + "reference": "b2792b39d74cf41ea3065f27fd2ddf0b556ac7a1", "shasum": "" }, "require": { @@ -3513,15 +3514,15 @@ ], "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", - "time": "2022-03-02T12:58:14+00:00" + "time": "2022-03-31T17:18:25+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.0.0", + "version": "v3.0.1", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/symfony/translation-contracts/v3.0.0/symfony-translation-contracts-v3.0.0.zip", - "reference": "1b6ea5a7442af5a12dba3dbd6d71034b5b234e77", + "url": "https://mirrors.tencent.com/repository/composer/symfony/translation-contracts/v3.0.1/symfony-translation-contracts-v3.0.1.zip", + "reference": "c4183fc3ef0f0510893cbeedc7718fb5cafc9ac9", "shasum": "" }, "require": { @@ -3568,7 +3569,7 @@ "interoperability", "standards" ], - "time": "2021-09-07T12:43:40+00:00" + "time": "2022-01-02T09:55:41+00:00" }, { "name": "symfony/var-dumper", @@ -4074,11 +4075,11 @@ }, { "name": "laravel/sail", - "version": "v1.13.7", + "version": "v1.13.9", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/laravel/sail/v1.13.7/laravel-sail-v1.13.7.zip", - "reference": "2092e1ce6e4ba534bff443de8c3a7bb280aba121", + "url": "https://mirrors.tencent.com/repository/composer/laravel/sail/v1.13.9/laravel-sail-v1.13.9.zip", + "reference": "7bb294fe99fc42c3b1bee83fb667cd7698b3c385", "shasum": "" }, "require": { @@ -4120,7 +4121,7 @@ "docker", "laravel" ], - "time": "2022-03-11T14:11:15+00:00" + "time": "2022-04-04T15:21:51+00:00" }, { "name": "mockery/mockery", @@ -4229,11 +4230,11 @@ }, { "name": "nunomaduro/collision", - "version": "v6.1.0", + "version": "v6.2.0", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/nunomaduro/collision/v6.1.0/nunomaduro-collision-v6.1.0.zip", - "reference": "df09e21a5e5d5a7d51a8b9ecd44d3dd150d97fec", + "url": "https://mirrors.tencent.com/repository/composer/nunomaduro/collision/v6.2.0/nunomaduro-collision-v6.2.0.zip", + "reference": "c379636dc50e829edb3a8bcb944a01aa1aed8f25", "shasum": "" }, "require": { @@ -4244,10 +4245,10 @@ }, "require-dev": { "brianium/paratest": "^6.4.1", - "laravel/framework": "^9.0", + "laravel/framework": "^9.7", "nunomaduro/larastan": "^1.0.2", "nunomaduro/mock-final-classes": "^1.1.0", - "orchestra/testbench": "^7.0.0", + "orchestra/testbench": "^7.3.0", "phpunit/phpunit": "^9.5.11" }, "type": "library", @@ -4288,7 +4289,7 @@ "php", "symfony" ], - "time": "2022-01-18T17:49:08+00:00" + "time": "2022-04-05T15:31:38+00:00" }, { "name": "phar-io/manifest", @@ -4473,11 +4474,11 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.6.0", + "version": "1.6.1", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/phpdocumentor/type-resolver/1.6.0/phpdocumentor-type-resolver-1.6.0.zip", - "reference": "93ebd0014cab80c4ea9f5e297ea48672f1b87706", + "url": "https://mirrors.tencent.com/repository/composer/phpdocumentor/type-resolver/1.6.1/phpdocumentor-type-resolver-1.6.1.zip", + "reference": "77a32518733312af16a44300404e945338981de3", "shasum": "" }, "require": { @@ -4509,7 +4510,7 @@ } ], "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", - "time": "2022-01-04T19:58:01+00:00" + "time": "2022-03-15T21:29:03+00:00" }, { "name": "phpspec/prophecy", @@ -4808,11 +4809,11 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.19", + "version": "9.5.20", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/phpunit/phpunit/9.5.19/phpunit-phpunit-9.5.19.zip", - "reference": "35ea4b7f3acabb26f4bb640f8c30866c401da807", + "url": "https://mirrors.tencent.com/repository/composer/phpunit/phpunit/9.5.20/phpunit-phpunit-9.5.20.zip", + "reference": "12bc8879fb65aef2138b26fc633cb1e3620cffba", "shasum": "" }, "require": { @@ -4887,7 +4888,7 @@ "testing", "xunit" ], - "time": "2022-03-15T09:57:31+00:00" + "time": "2022-04-01T12:37:26+00:00" }, { "name": "sebastian/cli-parser", @@ -5159,11 +5160,11 @@ }, { "name": "sebastian/environment", - "version": "5.1.3", + "version": "5.1.4", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/sebastian/environment/5.1.3/sebastian-environment-5.1.3.zip", - "reference": "388b6ced16caa751030f6a69e588299fa09200ac", + "url": "https://mirrors.tencent.com/repository/composer/sebastian/environment/5.1.4/sebastian-environment-5.1.4.zip", + "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7", "shasum": "" }, "require": { @@ -5202,7 +5203,7 @@ "environment", "hhvm" ], - "time": "2020-09-28T05:52:38+00:00" + "time": "2022-04-03T09:37:03+00:00" }, { "name": "sebastian/exporter", @@ -5689,11 +5690,11 @@ }, { "name": "spatie/ignition", - "version": "1.2.6", + "version": "1.2.7", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/spatie/ignition/1.2.6/spatie-ignition-1.2.6.zip", - "reference": "be24d33a9de271638314924b5da85e168e4148e4", + "url": "https://mirrors.tencent.com/repository/composer/spatie/ignition/1.2.7/spatie-ignition-1.2.7.zip", + "reference": "2f059cf42b48f7c522efbba1c05ad59fc2c1a3f2", "shasum": "" }, "require": { @@ -5737,15 +5738,15 @@ "laravel", "page" ], - "time": "2022-03-23T11:02:14+00:00" + "time": "2022-03-29T08:48:34+00:00" }, { "name": "spatie/laravel-ignition", - "version": "1.1.1", + "version": "1.2.0", "dist": { "type": "zip", - "url": "https://mirrors.tencent.com/repository/composer/spatie/laravel-ignition/1.1.1/spatie-laravel-ignition-1.1.1.zip", - "reference": "f3243fd99351e0a79df6886a5354d8dd88d6d0d2", + "url": "https://mirrors.tencent.com/repository/composer/spatie/laravel-ignition/1.2.0/spatie-laravel-ignition-1.2.0.zip", + "reference": "2b54c8c66f2d280f25e15064ebe3d5e3eda19820", "shasum": "" }, "require": { @@ -5784,6 +5785,9 @@ } }, "autoload": { + "files": [ + "src/helpers.php" + ], "psr-4": { "Spatie\\LaravelIgnition\\": "src" } @@ -5806,7 +5810,7 @@ "laravel", "page" ], - "time": "2022-03-21T07:13:26+00:00" + "time": "2022-04-01T21:01:58+00:00" }, { "name": "theseer/tokenizer", -- Gitee