From 301731d5a8bfe9daca424f019ac4aad37453ee00 Mon Sep 17 00:00:00 2001 From: lazerg Date: Wed, 23 Sep 2026 10:15:36 +0500 Subject: [PATCH 1/2] Ensure the nocache view directory exists --- src/Providers/ViewServiceProvider.php | 5 ++++- tests/Providers/ViewServiceProviderTest.php | 21 +++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 tests/Providers/ViewServiceProviderTest.php diff --git a/src/Providers/ViewServiceProvider.php b/src/Providers/ViewServiceProvider.php index f00c4e47094..d2bea3358e6 100644 --- a/src/Providers/ViewServiceProvider.php +++ b/src/Providers/ViewServiceProvider.php @@ -4,6 +4,7 @@ use Illuminate\Contracts\Foundation\Application; use Illuminate\Support\Facades\Blade; +use Illuminate\Support\Facades\File; use Illuminate\Support\Facades\View as ViewFactory; use Illuminate\Support\ServiceProvider; use Illuminate\View\View; @@ -425,7 +426,9 @@ public function registerBladeDirectives() public function boot() { - ViewFactory::addNamespace('nocache__views', storage_path('statamic/tmp/nocache')); + File::ensureDirectoryExists($nocacheViews = storage_path('statamic/tmp/nocache')); + + ViewFactory::addNamespace('nocache__views', $nocacheViews); Region::preserveContextKeys(IncludeTag::VIEW_DATA_KEYS); diff --git a/tests/Providers/ViewServiceProviderTest.php b/tests/Providers/ViewServiceProviderTest.php new file mode 100644 index 00000000000..4543e31214b --- /dev/null +++ b/tests/Providers/ViewServiceProviderTest.php @@ -0,0 +1,21 @@ +app))->boot(); + + $this->assertDirectoryExists($directory); + } +} From ca02ab92ab0904e70a20c4800800836f33645362 Mon Sep 17 00:00:00 2001 From: lazerg Date: Wed, 23 Sep 2026 10:27:00 +0500 Subject: [PATCH 2/2] Use the Statamic File facade to create the directory --- src/Providers/ViewServiceProvider.php | 4 ++-- tests/Providers/ViewServiceProviderTest.php | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/Providers/ViewServiceProvider.php b/src/Providers/ViewServiceProvider.php index d2bea3358e6..fa7741f51c6 100644 --- a/src/Providers/ViewServiceProvider.php +++ b/src/Providers/ViewServiceProvider.php @@ -4,11 +4,11 @@ use Illuminate\Contracts\Foundation\Application; use Illuminate\Support\Facades\Blade; -use Illuminate\Support\Facades\File; use Illuminate\Support\Facades\View as ViewFactory; use Illuminate\Support\ServiceProvider; use Illuminate\View\View; use Statamic\Contracts\View\Antlers\Parser as ParserContract; +use Statamic\Facades\File; use Statamic\Facades\Site; use Statamic\Statamic; use Statamic\StaticCaching\NoCache\Region; @@ -426,7 +426,7 @@ public function registerBladeDirectives() public function boot() { - File::ensureDirectoryExists($nocacheViews = storage_path('statamic/tmp/nocache')); + File::makeDirectory($nocacheViews = storage_path('statamic/tmp/nocache')); ViewFactory::addNamespace('nocache__views', $nocacheViews); diff --git a/tests/Providers/ViewServiceProviderTest.php b/tests/Providers/ViewServiceProviderTest.php index 4543e31214b..2efe501a458 100644 --- a/tests/Providers/ViewServiceProviderTest.php +++ b/tests/Providers/ViewServiceProviderTest.php @@ -2,7 +2,6 @@ namespace Tests\Providers; -use Illuminate\Support\Facades\File; use PHPUnit\Framework\Attributes\Test; use Statamic\Providers\ViewServiceProvider; use Tests\TestCase; @@ -12,7 +11,7 @@ class ViewServiceProviderTest extends TestCase #[Test] public function it_creates_the_nocache_view_directory() { - File::deleteDirectory($directory = storage_path('statamic/tmp/nocache')); + app('files')->deleteDirectory($directory = storage_path('statamic/tmp/nocache')); (new ViewServiceProvider($this->app))->boot();