-
Notifications
You must be signed in to change notification settings - Fork 21
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
PHP 8 Hosting Upgrades #940
Comments
@jenlampton, Are there any known PHP issues that you know of? I was unable to find any in backdrop-ops but I have not checked CiviCRM. |
It would surprise me if there weren't any, but I can't remember anything off hand. |
I have replaced php 7.4 and php 7.2 with php 8.0 and tested the sites using an @stpaultim, Would you be some kind as to help with testing? |
Everything seems okay except that drush is giving an error. Drush is at version 8 and the error is:
I installed drush 11 using composer but it will not run either. It is turning in to a late one so I will pick it up later today. I restored the original drush files in the Just a reminder that only the beta server is being worked on. |
I was able to get drush installed and running on php8.0. |
@larsdesigns backdrop support for Drush only works for Drush 8 (so, no need to update to Drush 11, 10, or even 9). If we do ever run into issues with Drush 8, that would be a good time to switch to bee :) |
It was decided today during the core developer meeting that I would proceed with replacing drush 8 with Backdrop CMS Bee: https://backdropcms.org/project/bee. I will scan the other sites with the phpcs php 8 checker but I could probably use some help with testing those. So far there have been no problems reported from Civi. I am getting close to coming to point where I can promote the PHP 8 updates to production. |
I will be moving forward with the upgrade on production in a couple hours. |
Completed the following tasks:
I will leave this ticket open for a little while and close it when I uninstall and clean off php 7.4 from the server. Please report back any errors that are discovered and could potentially related to the upgrade. |
@larsdesigns - The forum is not working, in that I am unable to comment on or post new topics in the forum. I assume this is related to the PHP upgrade. We are getting the following errors:
This indicates to me that we might have an error in our code for the Forum that isn't PHP 8 compatible? I think we have some custom code there. |
FTR: the problem is with the SMTP contrib module, and it is fixed by the PR here: backdrop-contrib/smtp#16 |
I have rolled back to 7.4 for all of the sites. Let's give it another go after smtp module is fixed. Also, I found some changes that need to be made in the theme.
|
It looks like the recent release of the backdrop.org has been fixed and is compatible with PHP 8. I am going to update that site to PHP 8.1. |
I have implemented php 8.1 for backdropcms.org and tested the smtp module by sending myself a password reset e-mail. It seems to be running okay. I will work on evaluating the other sites for upgrade. |
I have updated sanitize.backdropcms.org to use PHP 8.1 and checked the site. The sanitize script has been using 8.1 since last October. |
I just updated a module ( Deprecated function: preg_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in system_requirements() (line 472 of /home/backdrop/repo/www/core/modules/system/system.install). |
I checked for the each() function in all of the sites and found the following usages:
It looks like we need to make small changes to the borg theme or update it and update the smtp module. |
We don't use the dcu site so those can be ignored, as can the JavaScript.
It looks close!
…On Thu, Dec 1, 2022, 1:53 PM Justin Christoffersen ***@***.***> wrote:
I checked for the each() function in all of the sites and found the
following usages:
╰─ grep -rni " each(" .
./docs/backdrop-code-to-index/core/misc/states.js:392: // Break the each() loop if this is checked.
./docs/repo/www/core/misc/states.js:392: // Break the each() loop if this is checked.
./docs/repo/www/modules/contrib/diff/DiffEngine.php:315: while (list ($junk, $y) = each($matches)) {
./docs/repo/www/modules/contrib/diff/DiffEngine.php:323: while (list ($junk, $y) = each($matches)) {
./localize/repo/www/sites/all/modules/contrib/l10n_server/l10n_community/welcome.inc:174: list($language_code, $language_name) = each($language_list);
./localize/repo/www/sites/all/modules/contrib/smtp/smtp.phpmailer.inc:1637: while ( list(, $line) = each($lines) ) {
./forum/repo/www/core/misc/states.js:392: // Break the each() loop if this is checked.
./forum/repo/www/modules/contrib/smtp/includes/smtp.phpmailer.inc:1614: while ( list(, $line) = each($lines) ) {
./forum/repo/www/themes/borg/template.php:515: // Assigning the array to $flat resets the array pointer for use with each().
./forum/repo/www/themes/borg/template.php:519: list($key, $curr) = each($flat);
./forum/repo/www/themes/borg/template.php:537: // Assigning the array to $flat resets the array pointer for use with each().
./forum/repo/www/themes/borg/template.php:539: list($key, $curr) = each($flat);
./dcu/repo/www/includes/bootstrap.inc:3788: while (list($key, $callback) = each($callbacks)) {
./dcu/repo/www/includes/install.inc:782: while (list($module) = each($module_list)) {
./dcu/repo/www/includes/menu.inc:579: list($function, $args) = each($function);
./dcu/repo/www/includes/menu.inc:2405: list($key, $curr) = each($tree);
./dcu/repo/www/includes/menu.inc:2435: list($key, $curr) = each($tree);
./dcu/repo/www/includes/module.inc:407: while (list($module) = each($module_list)) {
./dcu/repo/www/includes/module.inc:543: while (list($module) = each($module_list)) {
./dcu/repo/www/modules/locale/locale.test:3192: while ($equal && list($id) = each($negotiation)) {
./dcu/repo/www/modules/locale/locale.test:3193: list(, $info_id) = each($info['fixed']);
./dcu/repo/www/modules/book/book.module:771: // Assigning the array to $flat resets the array pointer for use with each).
./dcu/repo/www/modules/book/book.module:775: list($key, $curr) = each($flat);
./dcu/repo/www/modules/book/book.module:809: // Assigning the array to $flat resets the array pointer for use with each).
./dcu/repo/www/modules/book/book.module:811: list($key, $curr) = each($flat);
./api/backdrop-code-to-index/core/misc/states.js:392: // Break the each() loop if this is checked.
./api/repo/www/core/misc/states.js:392: // Break the each() loop if this is checked.
./api/repo/www/modules/contrib/diff/DiffEngine.php:315: while (list ($junk, $y) = each($matches)) {
./api/repo/www/modules/contrib/diff/DiffEngine.php:323: while (list ($junk, $y) = each($matches)) {
./api/repo/www/modules/contrib/smtp/includes/smtp.phpmailer.inc:1614: while ( list(, $line) = each($lines) ) {
./api/repo/www/themes/borg/template.php:515: // Assigning the array to $flat resets the array pointer for use with each).
./api/repo/www/themes/borg/template.php:519: list($key, $curr) = each($flat);
./api/repo/www/themes/borg/template.php:537: // Assigning the array to $flat resets the array pointer for use with each).
./api/repo/www/themes/borg/template.php:539: list($key, $curr) = each($flat);
./events/repo/www/core/misc/states.js:392: // Break the each() loop if this is checked.
./events/repo/www/modules/contrib/smtp/includes/smtp.phpmailer.inc:1614: while ( list(, $line) = each($lines) ) {
It looks like we need to make small changes to the borg theme or update it
and update the smtp module.
—
Reply to this email directly, view it on GitHub
<#940 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AADBERYRMFBMGZ27XMAIUITWLEM4DANCNFSM6AAAAAAQYDXBDM>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@jenlampton, I enabled php 8.1 for a few more projects and updated the check list. |
The end of life for php 7 security support is November 28th 2022: https://www.php.net/supported-versions.php
I will be upgrade the servers to php 8.1. in the next few days. I will begin by upgrading the beta.backdropcms.org server first. After testing is successful, I will proceed with upgrading production. The beta.backdropcms.org VM is a clone of production and should be a great testing environment.
A list of sites from nginx configuration:
The text was updated successfully, but these errors were encountered: