woocommerce-blocks update was blocked by jetpack-autoloader conflict between woocommerce core and woocommerce-blocks. Now that this has been resolved in an earlier commit, woocommerce-blocks can be updated.
myclabs/deep-copy was added to composer.json directly as a workaround an issue in
the Travis build when running PHP 5.6 (#24079). Removing it in this commit to
check if the issue in Travis has been fixed as we don't really use this
package for WooCommerce development.
When running `composer update` on anything more recent than PHP 7.0, doctrine/instantiator version 1.2.0 is installed and tracked in the `composer.lock` file. Unfortunately, this causes some rather cryptic errors when running the WooCommerce test suite in PHP 7.0, as doctrine/instantiator version 1.1.0 dropped support for PHP < 7.1 (see https://github.com/doctrine/instantiator/releases/tag/1.1.0).
This commit adds two things to the `composer.json` file:
1. Explicit platform requirements ("php": "^5.6|^7.0")
2. A `config.platform` value, which essentially tells Composer "when you're installing/updating dependencies, assume it's on a machine running PHP 7.0".
My assumption is the current `composer.lock` file was generated in an environment running PHP 7.0, which is why current Travis runs are working but running `composer update` on anything higher than PHP 7.0 causes the tests to start failing within the PHP 7.0 test runner.
- Now wp-coding-standards/wpcs and wimg/php-compatibility are dependencies of WooCommerce Sniffs.
- Updated wp-coding-standards/wpcs to 1.1.
- Updated wimg/php-compatibility to 9.0.
phpunit-speedtrap (https://github.com/johnkary/phpunit-speedtrap) includes a report of slow-running unit tests to the PHPUnit output and it will help identify WC core tests that need to be changed to run faster.