wp-cli-dev icon indicating copy to clipboard operation
wp-cli-dev copied to clipboard

composer install fails with php 5.6 and composer 2.2

Open toddr opened this issue 2 years ago • 4 comments

Bug Report

Describe the current, buggy behavior

The dependence on "johnpbloch/wordpress-core": "dev-master" is now failing on PHP 5.6, which I understand is still supposed to be supported.

Describe how other contributors can replicate this bug

  • make your PHP 5.6
  • use composer 2.2 (so 5.6 is supported)
  • clone wp-cli-dev
  • composer install.

The error is:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Root composer.json requires johnpbloch/wordpress-core dev-master -> satisfiable by johnpbloch/wordpress-core[dev-master].
    - johnpbloch/wordpress-core dev-master requires php >=7.0.0 -> your php version (5.6.40) does not satisfy that requirement.

Describe what you would expect as the correct outcome

It should succed

Let us know what environment you are running this on

OS:	Linux toddr-cl8.dev.cpanel.net 4.18.0-477.13.1.lve.1.el8.x86_64 #1 SMP Mon Jul 17 15:05:09 EDT 2023 x86_64
Shell:	/usr/bin/zsh
PHP binary:	/home/cli/bin/php
PHP version:	5.6.40
php.ini used:	/opt/cpanel/ea-php56/root/etc/php.ini
MySQL binary:	/usr/bin/mysql
MySQL version:	mysql  Ver 8.0.34 for Linux on x86_64 (MySQL Community Server - GPL)
SQL modes:	
WP-CLI root dir:	/home/cli/wp-cli-dev/wp-cli
WP-CLI vendor dir:	/home/cli/wp-cli-dev/wp-cli/vendor
WP_CLI phar path:	
WP-CLI packages dir:	
WP-CLI cache dir:	/home/cli/.wp-cli/cache
WP-CLI global config:	
WP-CLI project config:	/home/cli/wp-cli-dev/wp-cli.yml
WP-CLI version:	2.9.0-alpha

Provide a possible solution

I think this is the fix but I don't know enough about composer.json to be sure.

diff --git a/composer.json b/composer.json
index 5e6784c..a787647 100644
--- a/composer.json
+++ b/composer.json
@@ -239,7 +239,7 @@
         "wp-cli/wp-config-transformer": "dev-main as 1.2.x-dev",
         "wp-cli/wp-super-cache-cli": "dev-main",
         "johnpbloch/wordpress-core-installer": "^1.0 || ^2.0",
-        "johnpbloch/wordpress-core": "dev-master"
+        "johnpbloch/wordpress-core": "~6"
     },
     "require-dev": {
         "roave/security-advisories": "dev-latest"

toddr avatar Aug 24 '23 19:08 toddr

The dependence on "johnpbloch/wordpress-core": "dev-master" is now failing on PHP 5.6, which I understand is still supposed to be supported.

It looks like the minimum supported PHP version was recently updated: https://github.com/johnpbloch/wordpress/commit/d3b0895b02973ed869b9050f5c1551694390a4c2

johnpbloch/wordpress-core was added as a dependency here: https://github.com/wp-cli/wp-cli-dev/commit/22e0d2387c065d6216c65d63fb41c3fd8d7deca2

We've had to do a ton of PRs like https://github.com/wp-cli/wp-config-transformer/pull/42

In honesty, I'm not actually sure what it's used for. @wp-cli/committers Anyone know?

danielbachhuber avatar Aug 28 '23 13:08 danielbachhuber

In honesty, I'm not actually sure what it's used for. @wp-cli/committers Anyone know?

No idea. @schlessera any insights?

swissspidy avatar Oct 31 '23 15:10 swissspidy