WP Snapshots container needs PHP 7.3 upgraded / incompatibility with the latest WPVIP dev environment
Troubleshooting
- [X] I have attempted to troubleshoot this already
Describe the bug
Using WP Snapshots with the latest VIP Go MU Plugins changes, https://github.com/Automattic/vip-go-mu-plugins/commit/51ccaa379bedb39f9f41ef7319d9ddfd87883a0c#diff-f689ded77c119b968db89a8c3b868aa245442df4c8711edbe95d59c0a471d834R18, is causing the following error (project name omitted using *):
$ 10updocker wpsnapshots create
✔ Global services are running...
✔ MariaDB has started...
Project Slug (letters, numbers, _, and - only): ****
Snapshot Description (e.g. Local environment): ******* **** **** **** ****** *****
Include files in snapshot? (Y/n) y
Include database in snapshot? (Y/n) y
Parse error: syntax error, unexpected 'array' (T_ARRAY), expecting function (T_FUNCTION) or const (T_CONST) in /var/www/html/wp-content/mu-plugins/healthcheck/class-healthcheck.php on line 18
That line in particular is using a coding convention introduced in PHP 7.4 and above: https://www.php.net/manual/en/language.types.declarations.php.
Using the following with the Docker CLI confirms that the WP Snapshots container is running PHP 7.3.x, which will be the cause of the error:
$ docker exec -it [container-name] /bin/bash
root@c67ea627f75b:/opt/wpsnapshots# php --version
PHP 7.3.9 (cli) (built: Sep 12 2019 10:57:34) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.9, Copyright (c) 1998-2018 Zend Technologies
with Xdebug v2.7.0beta1, Copyright (c) 2002-2018, by Derick Rethans
Steps to Reproduce
- Create a new environment using the 10updocker CLI.
- Add the
vip-go-mu-pluginsrepository to thewp-content/mu-pluginsdirectory, using the guide here: https://docs.wpvip.com/how-tos/local-development/#h-step-2-add-vip-go-mu-plugins. - Run
10updocker wpsnapshots create.
Please note: there is a separate issue regarding Object Cache and WP Snapshots as per my previous ticket, https://github.com/10up/wp-local-docker-v2/issues/201, which as far as I know has not been resolved. If there is a Memcache related error, then the object-cache.php file needs to be renamed or removed.
Screenshots, screen recording, code snippet
No response
Environment information
- Device: bespoke PC build
- OS: Ubuntu 20.04.4 LTS
- Docker Version: 20.10.16, build aa7e414
- 10updocker Version: 3.0.2
Code of Conduct
- [X] I agree to follow this project's Code of Conduct