"Commerce Price" update error. Not show in the recent log

Created on 20 March 2025, 18 days ago

Drupal 10.4.4
Commerce v3.0.1

After enable "Commerce Price" module. Website is OK.

But click โ€œupdate scriptโ€, show "The website encountered an unexpected error. Try again later." Browser back, website is still working. I can read any error information in โ€œRecent log messagesโ€

After uninstalled "Commerce Price" module, The "update script" restore

๐Ÿ› Bug report
Status

Active

Version

3.0

Component

Price

Created by

๐Ÿ‡บ๐Ÿ‡ธUnited States sevenfish

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @sevenfish
  • ๐Ÿ‡บ๐Ÿ‡ธUnited States corE

    I too received "The website encountered an unexpected error. Try again later." with no other error/log messages, so I don't know where to start looking for cause. Rolled back to 3.0.0

    Not sure I understand the "Commerce Price" module information from sevenfish

    My platform:
    Drupal 10.4.4
    PHP 8.3.17

    If any information is needed to help please advise where to find.

    Thank you

  • ๐Ÿ‡ฎ๐Ÿ‡นItaly antonio.bertolini

    Similar for me:
    try update from 2.0.0 to 3.0.1:
    update.php => "The website encountered an unexpected error. Try again later.", Error: Class "Drupal\rat\v1\RenderArray" not found in inline_entity_form
    try to edit product => form appear but can't add variations, Error: Class "CommerceGuys\Intl\Currency\CurrencyRepository" not found
    try to add new product => "The website encountered an unexpected error. Try again later." Error: Class "CommerceGuys\Intl\Currency\CurrencyRepository" not found

    try update from 2.0.0. to 3.0.0:
    update.php => OK
    try to edit product => OK
    try to add new product => OK

  • ๐Ÿ‡บ๐Ÿ‡ธUnited States corE

    I'm holding off on updating to 3.0.1

    I'm not sure if sevenfish and antonio.bertolini figured out a work around and got past the white screen with their update.

    Is this issue an outlier?

    If development team could comment and/or advise please.

    Thank you.

  • ๐Ÿ‡ฎ๐Ÿ‡ฑIsrael jsacksick

    Hm... I haven't been experiencing this... Could this be due to a contrib module? Could you turn on detailed messages logging so we can see what's in the backtrace?

  • ๐Ÿ‡บ๐Ÿ‡ธUnited States corE

    Thank you @jsacksick

    I just tried updating again (3.0.0 to 3.0.1) and got the same white screen "The website encountered an unexpected error. Try again later" when i did update.php. I had messages, with backtrace information, turned on, and no other error messages were given and I didn't see anything in the logs. Just the white screen error message. I cleared all the caches prior to updating... everything seems to be in order, I can't figure out what's going on or where to start looking. So, once again I rolled back to 3.0.0 and did the update.php with no problems.

    I don't know if @sevenfish and @antonio.bertolini managed to get past their issue and get it to work. I am not completely clear on their postings... If you are reading this @sevenfish and @antonio.bertolini would you please post/clearify if you have had resolution and what you did.

    Any ideas jsacksick? Or where I might start looking?

    Thank you.

  • ๐Ÿ‡บ๐Ÿ‡ธUnited States corE

    Hi @jsacksick

    I was dinking around with this and did get some php error log info... but I'm not sure if this is relevant. I am just posting this because I noticed antonio.bertolini had mentioned something about CurrencyRepository

    Error: Class "CommerceGuys\Intl\Currency\CurrencyRepository" not found in include() (line 20 of /public/modules/commerce/modules/price/src/Repository/CurrencyRepository.php).

    Backtrace

    #0 /public/vendor/composer/ClassLoader.php(576): include()
    #1 /public/vendor/composer/ClassLoader.php(427): Composer\Autoload\{closure}()
    #2 [internal function]: Composer\Autoload\ClassLoader->loadClass()
    #3 /public/vendor/symfony/dependency-injection/ContainerBuilder.php(363): class_exists()
    #4 /public/vendor/symfony/dependency-injection/Compiler/AutowireAsDecoratorPass.php(27): Symfony\Component\DependencyInjection\ContainerBuilder->getReflectionClass()
    #5 /public/vendor/symfony/dependency-injection/Compiler/Compiler.php(80): Symfony\Component\DependencyInjection\Compiler\AutowireAsDecoratorPass->process()
    #6 /public/vendor/symfony/dependency-injection/ContainerBuilder.php(767): Symfony\Component\DependencyInjection\Compiler\Compiler->compile()
    #7 /public/core/lib/Drupal/Core/DrupalKernel.php(1449): Symfony\Component\DependencyInjection\ContainerBuilder->compile()
    #8 /public/core/lib/Drupal/Core/DrupalKernel.php(972): Drupal\Core\DrupalKernel->compileContainer()
    #9 /public/core/lib/Drupal/Core/DrupalKernel.php(1218): Drupal\Core\DrupalKernel->initializeContainer()
    #10 /public/core/includes/common.inc(470): Drupal\Core\DrupalKernel->rebuildContainer()
    #11 /public/modules/ludwig/src/Controller/PackageController.php(126): drupal_flush_all_caches()
    #12 [internal function]: Drupal\ludwig\Controller\PackageController->page()
    #13 /public/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array()
    #14 /public/core/lib/Drupal/Core/Render/Renderer.php(638): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
    #15 /public/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(121): Drupal\Core\Render\Renderer->executeInRenderContext()
    #16 /public/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext()
    #17 /public/vendor/symfony/http-kernel/HttpKernel.php(181): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
    #18 /public/vendor/symfony/http-kernel/HttpKernel.php(76): Symfony\Component\HttpKernel\HttpKernel->handleRaw()
    #19 /public/core/lib/Drupal/Core/StackMiddleware/Session.php(53): Symfony\Component\HttpKernel\HttpKernel->handle()
    #20 /public/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle()
    #21 /public/core/lib/Drupal/Core/StackMiddleware/ContentLength.php(28): Drupal\Core\StackMiddleware\KernelPreHandle->handle()
    #22 /public/core/modules/big_pipe/src/StackMiddleware/ContentLength.php(32): Drupal\Core\StackMiddleware\ContentLength->handle()
    #23 /public/core/modules/page_cache/src/StackMiddleware/PageCache.php(116): Drupal\big_pipe\StackMiddleware\ContentLength->handle()
    #24 /public/core/modules/page_cache/src/StackMiddleware/PageCache.php(90): Drupal\page_cache\StackMiddleware\PageCache->pass()
    #25 /public/modules/advban/src/AdvbanMiddleware.php(57): Drupal\page_cache\StackMiddleware\PageCache->handle()
    #26 /public/core/modules/ban/src/BanMiddleware.php(50): Drupal\advban\AdvbanMiddleware->handle()
    #27 /public/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\ban\BanMiddleware->handle()
    #28 /public/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle()
    #29 /public/core/lib/Drupal/Core/StackMiddleware/AjaxPageState.php(36): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle()
    #30 /public/core/lib/Drupal/Core/StackMiddleware/StackedHttpKernel.php(51): Drupal\Core\StackMiddleware\AjaxPageState->handle()
    #31 /public/core/lib/Drupal/Core/DrupalKernel.php(741): Drupal\Core\StackMiddleware\StackedHttpKernel->handle()
    #32 /public/index.php(19): Drupal\Core\DrupalKernel->handle()
    #33 {main}

  • ๐Ÿ‡ฎ๐Ÿ‡ฑIsrael jsacksick
    Error: Class "CommerceGuys\Intl\Currency\CurrencyRepository" not found in include() (line 20 of /public/modules/commerce/modules/price/src/Repository/CurrencyRepository.php).
    

    That seems to be it... But I don't really get why this would happen on 3.0.1 but not on 3.0.0.

    It could be due to changes made around the services autowiring... Any reason to stick with Ludwig? Pretty sure you wouldn't experience this with composer.

  • ๐Ÿ‡บ๐Ÿ‡ธUnited States corE

    Hi @jsacksick

    I'm looking into setting up composer. I think the endeavor is going to take some time.
    Can you guide me into making the 3.0.0 to 3.0.1 update with my current set up until I'm about to get composer figured out?
    Any suggestions of approaches to try to clear the white screen and complete the update.php successfully?

    Thank you.

  • ๐Ÿ‡ฎ๐Ÿ‡ฑIsrael jsacksick

    Hi @core, I'll try reproducing the issue sometime this week, but there are some discussions in the Ludwig issue queue about retiring it, See ๐Ÿ’ฌ Retire Ludwig? Active .

  • ๐Ÿ‡ฎ๐Ÿ‡ฑIsrael jsacksick

    hm... I tried installing Ludwig and it didn't crash, but I guess because my dependencies are already correctly installed via Composer.
    Can you ensure the commerceguys/intl is properly downloaded and in the vendor directory?

  • ๐Ÿ‡บ๐Ÿ‡ธUnited States corE

    Thank you so much @jsacksick !!

    I did have commerceguys/intl installed correctly and even tried fiddling around with it.

    I tried, and squared, the 3 different version references in the files (v2.0.1, v2.0.2 and v/^2.0.6:

    From the composer.json: "commerceguys/intl": "^2.0.6"

    And from the ludwig.json file (which was the same, and worked with, commerce version 3.0.0)
    {
    "require": {
    "commerceguys/intl": {
    "version": "v2.0.1",
    "url": "https://github.com/commerceguys/intl/archive/v2.0.2.zip"
    }
    }
    }

    I got the white screen on all these.

    Are there other sub dependencies (other than commerceguys/intl) I'm overlooking?

    I did clear the cache from the interface as well as the .opcache for good measure... I'm wondering if there is something stuck in the database cache?? and if clearing the cache directly in the database would help?

    I know about the Ludwig retire. The retro-site setup looks a little daunting and I'm not finding very good resources that clarifies the tasks and puts me at ease. A video walk trough, for established sites, would be nice. The Ludwig transfer instructions... well, lets just say that I've learned that the worst place to find instructions about a product or thing are often on the sites own page (ie Microsoft ๐Ÿ˜‰ )
    I have been running Drupal since before Composer became a focus. so I've just been updating manually ever since because I understand it... but the world is getting ever more complicated.

    Thank you for your attention!!!

  • ๐Ÿ‡บ๐Ÿ‡ธUnited States corE

    PS @jsacksick

    I just noticed you mentioned the vendor directory...

    "Can you ensure the commerceguys/intl is properly downloaded and in the vendor directory?"

    In the past the path to commerceguys/intl was in the commerce module files... /modules/commerce/lib/commerceguys-intl/v2.0.1

    So I'm gathering this has changed to vendor?

    Could you please provide the proper full path?

    Thank you

Production build 0.71.5 2024