modxcms / revolution

MODX Revolution - Content Management Framework
https://modx.com/
GNU General Public License v2.0
1.36k stars 528 forks source link

PHP 8.1 deprecation warnings in setup (rc1) #16017

Open AmaZili opened 2 years ago

AmaZili commented 2 years ago

Bug report

Summary

Quick summary what's this issue about. Upon standard installtion, collected all the error displayed on screen

Step to reproduce

How to reproduce the issue, including custom code if needed. Installa modx 3 RC1 in french

Observed behavior

How it behaved after following steps above. Installtion went well

Expected behavior

How it should behave after following steps above. Should not see errors

Related issue(s)/PR(s)

Let us know if this is related to any issue/pull request.

Environment

MODX version, apache/nginx and version, mysql version, browser, etc. Any relevant information. nginx version: nginx/1.20.1 Mariadb version 10.2.41

PHP 8.1.2

MODX Revolution 3.0.0-rc1 (traditional) Nom de code de la version: Revolution phpinfo(): Voir Heure du serveur: 07:04:31 AM Heure locale: 07:04:31 AM Décalage du serveur: 0 ExtJS Version: 3.4.1 Smarty Version: 4.0.4 PHPMailer Version: 6.5.3 MagpieRSS Version: 0.72 Type de base de données: mysql Version de la base de données: 10.2.41-MariaDB Charset de la base de données: utf8 Nom de la base de données: matthieu Serveur de la base de données: localhost Préfix de table: modx PDO support: enabled PDO drivers: mysql, odbc, pgsql, sqlite PDO Driver for MySQL: enabled Client API version: mysqlnd 8.1.2 Directive: Local Value,Master Value pdo_mysql.default_socket: /var/lib/mysql/mysql.sock,/var/lib/mysql/mysql.sock Zip: enabled Zip version: 1.19.5 Libzip version: 1.3.2 allow_url_fopen: On allow_url_include: Off arg_separator.input: & arg_separator.output: & auto_append_file: no value auto_globals_jit: On auto_prepend_file: no value browscap: no value default_charset: UTF-8 default_mimetype: text/html disable_classes: no value disable_functions: opcache_get_status display_errors: Off display_startup_errors: Off doc_root: no value docref_ext: no value docref_root: no value enable_dl: Off enable_post_data_reading: On error_append_string: no value error_log: no value error_prepend_string: no value error_reporting: 22519 expose_php: Off extension_dir: /opt/plesk/php/8.1/lib64/php/modules fiber.stack_size: no value file_uploads: On hard_timeout: 2 highlight.comment:

FF8000

highlight.default:

0000BB

highlight.html:

000000

highlight.keyword:

007700

highlight.string:

DD0000

html_errors: On ignore_repeated_errors: Off ignore_repeated_source: Off ignore_user_abort: Off implicit_flush: Off include_path: .:/opt/plesk/php/8.1/share/pear input_encoding: no value internal_encoding: no value log_errors: On mail.add_x_header: Off mail.force_extra_parameters: no value mail.log: no value max_execution_time: 120 max_file_uploads: 20 max_input_nesting_level: 64 max_input_time: 60 max_input_vars: 1000 memory_limit: 128M open_basedir: /var/www/vhosts/modx-3.amazili.com/:/tmp/ output_buffering: 4096 output_encoding: no value output_handler: no value post_max_size: 8M precision: 14 realpath_cache_size: 4096K realpath_cache_ttl: 120 register_argc_argv: Off report_memleaks: On report_zend_debug: Off request_order: GP sendmail_from: no value sendmail_path: /usr/sbin/sendmail -t -i serialize_precision: -1 short_open_tag: Off SMTP: localhost smtp_port: 25 sys_temp_dir: no value syslog.facility: LOG_USER syslog.filter: no-ctrl syslog.ident: php unserialize_callback_func: no value upload_max_filesize: 2M upload_tmp_dir: no value user_dir: no value user_ini.cache_ttl: 300 user_ini.filename: .user.ini variables_order: GPCS xmlrpc_error_number: 0 xmlrpc_errors: Off zend.assertions: -1 zend.detect_unicode: On zend.enable_gc: On zend.exception_ignore_args: On zend.exception_string_param_max_len: 0 zend.multibyte: Off zend.script_encoding: no value zend.signal_check: Off

Mark-H commented 2 years ago

I'm confused about this issue, what's the problem you're reporting? Is this a duplicate of #16018?

AmaZili commented 2 years ago

Sorry, if it is the case, I meant while installing in french, do not know if it is the case for all languages Corrected title

Mark-H commented 2 years ago

What errors?

AmaZili commented 2 years ago

Deprecated : Function strftime() is deprecated in /var/www/vhosts/modx-3.amazili.com/httpdocs/core/vendor/smarty/smarty/libs/sysplugins/smarty_internal_runtime_codeframe.php on line 48

MODX

Deprecated : Return type of xPDO\xPDOMap::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/vhosts/modx-3.amazili.com/httpdocs/core/vendor/xpdo/xpdo/src/xPDO/xPDOMap.php on line 33

Deprecated : Function strftime() is deprecated in /var/www/vhosts/modx-3.amazili.com/httpdocs/setup/includes/modinstall.class.php on line 479

Deprecated : Function strftime() is deprecated in /var/www/vhosts/modx-3.amazili.com/httpdocs/setup/includes/modinstall.class.php on line 203

MODX

Deprecated : Return type of Pimple\Container::offsetExists($id) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/vhosts/modx-3.amazili.com/httpdocs/core/vendor/pimple/pimple/src/Pimple/Container.php on line 133

Deprecated : Return type of Pimple\Container::offsetGet($id) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/vhosts/modx-3.amazili.com/httpdocs/core/vendor/pimple/pimple/src/Pimple/Container.php on line 98

Deprecated : Return type of Pimple\Container::offsetSet($id, $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 in /var/www/vhosts/modx-3.amazili.com/httpdocs/core/vendor/pimple/pimple/src/Pimple/Container.php on line 79

Deprecated : Return type of Pimple\Container::offsetUnset($id) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/vhosts/modx-3.amazili.com/httpdocs/core/vendor/pimple/pimple/src/Pimple/Container.php on line 143

Deprecated : Return type of xPDO\xPDOMap::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/vhosts/modx-3.amazili.com/httpdocs/core/vendor/xpdo/xpdo/src/xPDO/xPDOMap.php on line 33

Deprecated : Function strftime() is deprecated in /var/www/vhosts/modx-3.amazili.com/httpdocs/setup/includes/modinstall.class.php on line 512

AmaZili commented 2 years ago

These are deprecated warning that should not display upon the final version

AmaZili commented 2 years ago

Thanks

Mark-H commented 2 years ago

That's not language dependent. I believe they're also already addressed for rc2 but let's make sure of that.

AmaZili commented 2 years ago

I'll be glad to install RC2 to check it as soon as it is available

JoshuaLuckers commented 2 years ago

@AmaZili there is a new nightly available, can you confirm if it's solved?

AmaZili commented 2 years ago

@JoshuaLuckers I can confirm that with MODX Revolution 3.0.0-pl (traditional) and PHP version 8.1.4, there is no more messages during the web installation process. But I got these messages in the modx log :

[2022-03-28 11:57:35] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/setup/includes/modinstallsettings.class.php : 164) PHP warning: fopen(/var/www/vhosts/modx-3.amazili.com/httpdocs/core/cache/setup/settings.cache.php): Failed to open stream: No such file or directory [2022-03-28 11:57:40] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/cache/setup/smarty/dd6764f7893b0d5bf70f5d60a004c3c41fc5ec5d_0.file.complete.tpl.php : 30) PHP warning: Undefined array key "errors" [2022-03-28 11:57:40] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/cache/setup/smarty/dd6764f7893b0d5bf70f5d60a004c3c41fc5ec5d_0.file.complete.tpl.php : 30) PHP warning: Attempt to read property "value" on null [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 11) PHP warning: Cannot declare class xPDO, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 12) PHP warning: Cannot declare class xPDOCriteria, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 13) PHP warning: Cannot declare class xPDOSimpleObject, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 14) PHP warning: Cannot declare class xPDOQuery, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 15) PHP warning: Cannot declare class xPDOObject, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 16) PHP warning: Cannot declare class xPDOCacheManager, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 17) PHP warning: Cannot declare class xPDOFileCache, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 18) PHP warning: Cannot declare class xPDOTransport, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 19) PHP warning: Cannot declare class xPDOObjectVehicle, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 21) PHP warning: Cannot declare class modX, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 24) PHP warning: Cannot declare class modProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 25) PHP warning: Cannot declare class modObjectProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 26) PHP warning: Cannot declare class modDriverSpecificProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 27) PHP warning: Cannot declare class modProcessorResponse, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 28) PHP warning: Cannot declare class modProcessorResponseError, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 29) PHP warning: Cannot declare class modObjectCreateProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 30) PHP warning: Cannot declare class modObjectDuplicateProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 31) PHP warning: Cannot declare class modObjectExportProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 32) PHP warning: Cannot declare class modObjectGetListProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 33) PHP warning: Cannot declare class modObjectGetProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 34) PHP warning: Cannot declare class modObjectImportProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 35) PHP warning: Cannot declare class modObjectRemoveProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 36) PHP warning: Cannot declare class modObjectSoftRemoveProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 37) PHP warning: Cannot declare class modObjectUpdateProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 40) PHP warning: Cannot declare class modResourceCreateProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 41) PHP warning: Cannot declare class modResourceUpdateProcessor, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 44) PHP warning: Cannot declare class modManagerController, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 45) PHP warning: Cannot declare class modParsedManagerController, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 46) PHP warning: Cannot declare class modExtraManagerController, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 47) PHP warning: Cannot declare class modResource, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 50) PHP warning: Cannot declare class modParser, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 51) PHP warning: Cannot declare class modMail, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 52) PHP warning: Cannot declare class modPHPMailer, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 55) PHP warning: Cannot declare class modDashboardWidgetInterface, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 56) PHP warning: Cannot declare class modTemplateVarInputRender, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 57) PHP warning: Cannot declare class modTemplateVarOutputRender, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 58) PHP warning: Cannot declare class modSystemEvent, because the name is already in use [2022-03-28 11:57:42] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/core/include/deprecated.php : 59) PHP warning: Cannot declare class modMediaSource, because the name is already in use

AmaZili commented 2 years ago

Using our cli install xml file got :

` /opt/plesk/php/8.1/bin/php /var/www/vhosts/modx-3.amazili.com/httpdocs/setup/index.php --installmode=new --core_path=/var/www/vhosts/modx-3.amazili.com/core/ --config=/var/www/vhosts/modx-3.amazili.com/modx-3.amazili.com.config.xml; PHP Deprecated: PDOStatement::fetchColumn(): Passing null to parameter #1 ($column) of type int is deprecated in /var/www/vhosts/modx-3.amazili.com/core/vendor/xpdo/xpdo/src/xPDO/xPDO.php on line 1103

Deprecated: PDOStatement::fetchColumn(): Passing null to parameter #1 ($column) of type int is deprecated in /var/www/vhosts/modx-3.amazili.com/core/vendor/xpdo/xpdo/src/xPDO/xPDO.php on line 1103 `

and this error in the manager :

[2022-03-28 12:06:24] (ERROR @ /var/www/vhosts/modx-3.amazili.com/httpdocs/setup/includes/modinstallsettings.class.php : 164) PHP warning: fopen(/var/www/vhosts/modx-3.amazili.com/core/cache/setup/settings.cache.php): Failed to open stream: No such file or directory

JoshuaLuckers commented 2 years ago

@opengeek did the fixes for those deprecation warnings in xPDO land in 3.0.0?