From 885ae324025e3af6c3c36d6d9d2ee010ae22f38f Mon Sep 17 00:00:00 2001 From: Alex Runyan Date: Thu, 30 Nov 2023 13:08:43 -0500 Subject: [PATCH 1/3] Add revised clear-compiled artisan command --- .../Console/Commands/ClearCompiledCommand.php | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 ProcessMaker/Console/Commands/ClearCompiledCommand.php diff --git a/ProcessMaker/Console/Commands/ClearCompiledCommand.php b/ProcessMaker/Console/Commands/ClearCompiledCommand.php new file mode 100644 index 0000000000..6bacd4570a --- /dev/null +++ b/ProcessMaker/Console/Commands/ClearCompiledCommand.php @@ -0,0 +1,46 @@ +laravel->getCachedServicesPath())) { + @unlink($servicesPath); + } + + if (is_file($packagesPath = $this->laravel->getCachedPackagesPath())) { + @unlink($packagesPath); + } + + $this->info('Compiled services and packages files removed successfully.'); + + $this->call('package:discover'); + + $this->info('Package manifest regenerated.'); + } +} From 7cd544f18009c680de4061319a19e06b126671e9 Mon Sep 17 00:00:00 2001 From: Nolan Ehrstrom Date: Thu, 30 Nov 2023 11:06:30 -0800 Subject: [PATCH 2/3] Use a listener instead of overwriting laravel commands --- .../Console/Commands/ClearCompiledCommand.php | 46 ------------------- .../Console/Commands/OptimizeClearCommand.php | 42 ----------------- .../Providers/LicenseServiceProvider.php | 7 +++ 3 files changed, 7 insertions(+), 88 deletions(-) delete mode 100644 ProcessMaker/Console/Commands/ClearCompiledCommand.php delete mode 100644 ProcessMaker/Console/Commands/OptimizeClearCommand.php diff --git a/ProcessMaker/Console/Commands/ClearCompiledCommand.php b/ProcessMaker/Console/Commands/ClearCompiledCommand.php deleted file mode 100644 index 6bacd4570a..0000000000 --- a/ProcessMaker/Console/Commands/ClearCompiledCommand.php +++ /dev/null @@ -1,46 +0,0 @@ -laravel->getCachedServicesPath())) { - @unlink($servicesPath); - } - - if (is_file($packagesPath = $this->laravel->getCachedPackagesPath())) { - @unlink($packagesPath); - } - - $this->info('Compiled services and packages files removed successfully.'); - - $this->call('package:discover'); - - $this->info('Package manifest regenerated.'); - } -} diff --git a/ProcessMaker/Console/Commands/OptimizeClearCommand.php b/ProcessMaker/Console/Commands/OptimizeClearCommand.php deleted file mode 100644 index 9870ffa33b..0000000000 --- a/ProcessMaker/Console/Commands/OptimizeClearCommand.php +++ /dev/null @@ -1,42 +0,0 @@ -components->info('Clearing cached bootstrap files.'); - - collect([ - 'events' => fn () => $this->callSilent('event:clear') == 0, - 'views' => fn () => $this->callSilent('view:clear') == 0, - 'route' => fn () => $this->callSilent('route:clear') == 0, - ])->each(fn ($task, $description) => $this->components->task($description, $task)); - - $this->newLine(); - } -} diff --git a/ProcessMaker/Providers/LicenseServiceProvider.php b/ProcessMaker/Providers/LicenseServiceProvider.php index 0ffe556584..8983174835 100644 --- a/ProcessMaker/Providers/LicenseServiceProvider.php +++ b/ProcessMaker/Providers/LicenseServiceProvider.php @@ -2,6 +2,7 @@ namespace ProcessMaker\Providers; +use Illuminate\Console\Events\CommandFinished; use Illuminate\Filesystem\Filesystem; use Illuminate\Foundation\PackageManifest; use Illuminate\Support\Carbon; @@ -17,6 +18,12 @@ class LicenseServiceProvider extends ServiceProvider { public function boot(): void { + $this->app['events']->listen(CommandFinished::class, function ($event) { + if ($event->command == 'clear-compiled' || $event->command == 'optimize:clear') { + LicensedPackageManifest::discoverPackagesOnce(); + } + }); + try { $expires = Cache::get(LicensedPackageManifest::EXPIRE_CACHE_KEY); } catch (ConnectionException $e) { From dd2acdcc9f126368b62eae248792d655fc53a7b7 Mon Sep 17 00:00:00 2001 From: Nolan Ehrstrom Date: Thu, 30 Nov 2023 11:23:09 -0800 Subject: [PATCH 3/3] Use artisan command in case cache is not ready yet --- ProcessMaker/Providers/LicenseServiceProvider.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ProcessMaker/Providers/LicenseServiceProvider.php b/ProcessMaker/Providers/LicenseServiceProvider.php index 8983174835..d11701e3d1 100644 --- a/ProcessMaker/Providers/LicenseServiceProvider.php +++ b/ProcessMaker/Providers/LicenseServiceProvider.php @@ -6,6 +6,7 @@ use Illuminate\Filesystem\Filesystem; use Illuminate\Foundation\PackageManifest; use Illuminate\Support\Carbon; +use Illuminate\Support\Facades\Artisan; use Illuminate\Support\Facades\Cache; use Illuminate\Support\ServiceProvider; use Predis\Connection\ConnectionException; @@ -20,7 +21,7 @@ public function boot(): void { $this->app['events']->listen(CommandFinished::class, function ($event) { if ($event->command == 'clear-compiled' || $event->command == 'optimize:clear') { - LicensedPackageManifest::discoverPackagesOnce(); + Artisan::call('package:discover'); } });