Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error when uploading an image asset #10672

Closed
simonfrost opened this issue Aug 21, 2024 · 15 comments · Fixed by #10687
Closed

Error when uploading an image asset #10672

simonfrost opened this issue Aug 21, 2024 · 15 comments · Fixed by #10687

Comments

@simonfrost
Copy link

simonfrost commented Aug 21, 2024

Bug description

When uploading any image asset I get an error in the CP.

preg_replace(): Unknown modifier '/'

I have many Statamic apps running locally that do not show this error so I don't think it's the environment.

How to reproduce

I set up a collection as normal, created a few text fields, then added an image asset field.

When I go to upload an image, it fails with the following error message:

preg_replace(): Unknown modifier '/'

Screenshot 2024-08-21 at 11 16 52

Logs

No response

Environment

Environment
Application Name: Ashton Bentley
Laravel Version: 10.48.10
PHP Version: 8.1.21
Composer Version: 2.7.7
Environment: local
Debug Mode: ENABLED
URL: ab_site.test
Maintenance Mode: OFF

Cache
Config: NOT CACHED
Events: NOT CACHED
Routes: NOT CACHED
Views: CACHED

Drivers
Broadcasting: log
Cache: file
Database: mysql
Logs: stack / single
Mail: smtp
Queue: sync
Session: file

Statamic
Addons: 0
Sites: 1
Stache Watcher: Enabled
Static Caching: Disabled
Version: 5.17.0 PRO

Installation

Other (please explain)

Additional details

Cloned an existing (working) local Statamic app and then updated.

@duncanmcclean
Copy link
Member

Are you able to provide the full stack trace for the error? You can find it in your site's log file in storage\logs.

@simonfrost
Copy link
Author

Sure thing:

[2024-08-21 10:35:58] local.ERROR: preg_replace(): Unknown modifier '/' {"userId":"ff38c56c-1acb-465f-a5b7-23f8ef2d9bea","exception":"[object] (ErrorException(code: 0): preg_replace(): Unknown modifier '/' at /Users/simonfrost/Sites/ab_site/vendor/statamic/stringy/src/Stringy.php:1958)
[stacktrace]
#0 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(255): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(2, 'preg_replace():...', '/Users/simonfro...', 1958)
#1 [internal function]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->Illuminate\\Foundation\\Bootstrap\\{closure}(2, 'preg_replace():...', '/Users/simonfro...', 1958)
#2 /Users/simonfrost/Sites/ab_site/vendor/statamic/stringy/src/Stringy.php(1958): preg_replace('///ums', '-', 'test-upload')
#3 /Users/simonfrost/Sites/ab_site/vendor/statamic/stringy/src/Stringy.php(1019): Stringy\\Stringy->eregReplace('/', '-', 'test-upload', 'ms')
#4 /Users/simonfrost/Sites/ab_site/vendor/statamic/stringy/src/Stringy.php(1083): Stringy\\Stringy->regexReplace('/', '-')
#5 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Assets/AssetUploader.php(97): Stringy\\Stringy->replace('/', '-')
#6 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Assets/AssetUploader.php(35): Statamic\\Assets\\AssetUploader::getSafeFilename('test upload')
#7 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Assets/Uploader.php(17): Statamic\\Assets\\AssetUploader->uploadPath(Object(Illuminate\\Http\\UploadedFile))
#8 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Assets/Asset.php(905): Statamic\\Assets\\Uploader->upload(Object(Illuminate\\Http\\UploadedFile))
#9 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Controllers/CP/Assets/AssetsController.php(86): Statamic\\Assets\\Asset->upload(Object(Illuminate\\Http\\UploadedFile))
#10 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): Statamic\\Http\\Controllers\\CP\\Assets\\AssetsController->store(Object(Illuminate\\Http\\Request))
#11 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction('store', Array)
#12 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Routing/Route.php(260): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(Statamic\\Http\\Controllers\\CP\\Assets\\AssetsController), 'store')
#13 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Routing/Route.php(205): Illuminate\\Routing\\Route->runController()
#14 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Routing/Router.php(806): Illuminate\\Routing\\Route->run()
#15 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(144): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#16 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/DeleteTemporaryFileUploads.php(18): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#17 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\DeleteTemporaryFileUploads->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#18 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/AddVaryHeaderToResponse.php(11): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#19 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\AddVaryHeaderToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#20 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/CountUsers.php(18): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#21 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\CountUsers->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#22 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/BootUtilities.php(14): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#23 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\BootUtilities->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/BootPreferences.php(14): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\BootPreferences->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#26 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/BootPermissions.php(14): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#27 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\BootPermissions->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/SelectedSite.php(15): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\SelectedSite->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/Localize.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\Localize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#32 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/Authorize.php(25): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\Authorize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#34 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/AddToasts.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#37 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\AddToasts->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#38 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/AuthGuard.php(14): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#39 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\AuthGuard->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CP/ContactOutpost.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#41 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CP\\ContactOutpost->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#42 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#43 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#44 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(78): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#45 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(121): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#49 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(64): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#50 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#52 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#53 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#54 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#55 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/SwapExceptionHandler.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#56 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\SwapExceptionHandler->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#57 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(119): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#58 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Routing/Router.php(807): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#59 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Routing/Router.php(784): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#60 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Routing/Router.php(748): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#61 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Routing/Router.php(737): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#62 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#63 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(144): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#64 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/StopImpersonating.php(12): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\StopImpersonating->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#66 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/DisableFloc.php(17): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#67 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\DisableFloc->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#68 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CheckMultisite.php(15): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#69 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CheckMultisite->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#70 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/CheckComposerJsonScripts.php(14): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#71 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\CheckComposerJsonScripts->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#72 /Users/simonfrost/Sites/ab_site/vendor/statamic/cms/src/Http/Middleware/PoweredByHeader.php(18): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#73 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Statamic\\Http\\Middleware\\PoweredByHeader->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#74 /Users/simonfrost/Sites/ab_site/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php(59): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#75 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Barryvdh\\Debugbar\\Middleware\\InjectDebugbar->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#76 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#77 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#78 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#79 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#80 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#81 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#82 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#83 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(99): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#84 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#85 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#86 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#87 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(39): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#88 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#89 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(119): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#90 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#91 /Users/simonfrost/Sites/ab_site/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#92 /Users/simonfrost/Sites/ab_site/public/index.php(52): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#93 /Applications/Herd.app/Contents/Resources/valet/server.php(155): require('/Users/simonfro...')
#94 {main}
"} 

@duncanmcclean
Copy link
Member

Does this happen when uploading all files, or just some?

@simonfrost
Copy link
Author

simonfrost commented Aug 22, 2024

Hiya - thanks for looking into this for me.

Seems to be all files. Large and small. PNG, JPG, PDF, TXT tested.

Same when dragging a file straight into the assets root folder.

Screenshot 2024-08-22 at 14 17 29

(The existing files you can see came across from my colleague's repo btw)

As I mentioned, I have 7 or 8 other Statamic apps running in this local folder (MBP/Laravel Herd) and they all work fine. Very frustrating.

@duncanmcclean
Copy link
Member

Do your other sites run on PHP 8.1?

@simonfrost
Copy link
Author

Yep - all PHP 8.1

@simonfrost
Copy link
Author

simonfrost commented Aug 28, 2024 via email

@simonfrost
Copy link
Author

simonfrost commented Aug 28, 2024 via email

@simonfrost
Copy link
Author

simonfrost commented Aug 28, 2024 via email

@duncanmcclean
Copy link
Member

From the screenshot in the email you sent me, it looks like you're still using Statamic 5.20.0. What's the statamic/cms version constraint in your composer.json file?

@simonfrost
Copy link
Author

simonfrost commented Aug 28, 2024 via email

@duncanmcclean
Copy link
Member

Packagist has latest version (v5.23.0) listed.

You could maybe try deleting your composer.lock and vendor directories, clearing your local Composer cache (with composer clear-cache and reinstall your dependencies with composer install.

@simonfrost
Copy link
Author

Nice one. This is clearly specific to my installation. I'll have a play. Really appreciate your help though.

@simonfrost
Copy link
Author

simonfrost commented Sep 3, 2024

Hiya. Quickie. Got 5.23.0 going, but still had my issue. Looking at your related commit, the code you'd changed in src/Assets/AssetUploader.php lines 95-105ish (see below) have not been merged into this release I don't think.

Manually added (as a test) and all good.

return (string) Str::of(urldecode($string)) ->replace(array_keys($replacements), array_values($replacements)) ->when(config('statamic.assets.lowercase'), fn ($stringable) => $stringable->lower()) ->ascii();

@duncanmcclean
Copy link
Member

duncanmcclean commented Sep 3, 2024

Ah, you're right, my bad. It'll be included in the next release.

Glad it's working for you when you manually copy/paste the changes into your app.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants