mollie / PrestaShop

iDEAL, Creditcard, Bancontact, SOFORT, Bank transfer, PayPal & paysafecard for Prestashop
http://www.mollie.com
BSD 2-Clause "Simplified" License
69 stars 42 forks source link

PHP 8.1 throws these errors on backoffice config page #640

Closed Ken-vdE closed 1 year ago

Ken-vdE commented 1 year ago

Expected behavior

No errors

Actual behavior

Red pop-up shown with these errors:

Unknown error on line 162 in file .../modules/mollie/vendor/vlucas/phpdotenv/src/Environment/AbstractVariables.php [8192] Return type of Dotenv\Environment\AbstractVariables::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Unknown error on line 170 in file .../modules/mollie/vendor/vlucas/phpdotenv/src/Environment/AbstractVariables.php [8192] Return type of Dotenv\Environment\AbstractVariables::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Unknown error on line 178 in file .../modules/mollie/vendor/vlucas/phpdotenv/src/Environment/AbstractVariables.php [8192] Return type of Dotenv\Environment\AbstractVariables::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Unknown error on line 186 in file .../modules/mollie/vendor/vlucas/phpdotenv/src/Environment/AbstractVariables.php [8192] Return type of Dotenv\Environment\AbstractVariables::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Unknown error on line 114 in file .../vendor/smarty/smarty/libs/sysplugins/smarty_internal_compile_private_modifier.php [16384] Using php-function "intval" as a modifier is deprecated and will be removed in a future release. Use Smarty::registerPlugin to explicitly register a custom modifier.

Errors seem related to this issue: https://github.com/vlucas/phpdotenv/issues/504, which are solved in a newer version.

Steps to reproduce the behavior

Install in 8.0 store with PHP 8.1 & click config

Environment

justelis22 commented 1 year ago

Hey there,

We will be glad to help you with this! Our team will check your case, and get back to you as soon as possible with an update.

-- Best Regards, Invertus Support team.

justelis22 commented 1 year ago

Hi @Ken-vdE,

This requires more investigation and access to your shop. Could you please write us an email to support@invertus.eu? Send us these details: FTP - BO - SSH - SSH access is really important in this case.

Waiting for your reply!

-- Best Regards, Invertus Support team.

tajriba commented 1 year ago

@justelis22 is the plugin compatible with prestashop 8.0.1 with PHP 8 ? because this is not what the information at the latest release says.

justelis22 commented 1 year ago

Hi @tajriba,

Yes, the Mollie module is compatible with PS8 and PHP 8. The compatibility was implemented in the 5.3.0 release - https://github.com/mollie/PrestaShop1.7/releases/tag/5.3.0 you can check the changelog there.

It seems like other modules are using older libraries, and when Mollie tries to use the newer ones a conflict appears. In this case, we need to check the specific shop and change some settings to see what is exactly causing the issue.

-- Best Regards, Invertus Support team.

Steven44223 commented 1 year ago

I'm getting the same errors with a fresh install of Prestashop 8.0.1, PHP 8.1 and Mollie V5.3.1. This is probably related to the debug mode in Prestashop. If it's turned on you will get the errors in the back office (and in the dev.log). If Prestashop debug mode is disabled there are no errors. Also no errors in the Prestashop dev.log

justelis22 commented 1 year ago

Hi there,

Yes, these messages are only notices, so if you turn off the debug mode everything should work fine, and no errors should be visible.

-- Best Regards, Invertus Support team.

justelis22 commented 1 year ago

Hi there @Ken-vdE,

We have not received any updates from your side, so we are going to close the ticket. If you decide to come back to this case, please do let us know, and we will continue the investigation!

-- Best Regards, Invertus Support team.

sharkooon commented 1 year ago

Also getting the notices. Composer file for phpdotenv:

"require": {
    "php": "^5.4 || ^7.0"

PHP 8 is not supported, so you have to update the phpdotenv libary.

I'm aware that it is a notice, but if the mollie plugin is compatible with PHP 8, notices should not appear!

Please re-open this issue.

justelis22 commented 1 year ago

Hi @sharkooon,

We have another issue open with the same topic - https://github.com/mollie/PrestaShop1.7/issues/670 So let's continue the communication there.

-- Best Regards, Invertus Support team.