ML icon indicating copy to clipboard operation
ML copied to clipboard

Requirements not resolved to an installable set of packages

Open ghost opened this issue 2 years ago • 3 comments

Hi there,

It seems as if rubix/ml can't be installed with either amphp/amp ^3 or amphp/phpunit-util ^3 because of amphp/parallel.

composer install
Deprecation Notice: Using ${var} in strings is deprecated, use {$var} instead in phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:879
Deprecation Notice: Using ${var} in strings is deprecated, use {$var} instead in phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:884
Composer is operating significantly slower than normal because you do not have the PHP curl extension enabled.
No composer.lock file present. Updating dependencies to latest instead of installing from lock file. See https://getcomposer.org/install for more information.
Loading composer repositories with package information
Info from https://repo.packagist.org: #StandWithUkraine
Updating dependencies
Deprecation Notice: Using ${var} in strings is deprecated, use {$var} instead in phar:///usr/local/bin/composer/src/Composer/DependencyResolver/Problem.php:366
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - amphp/parallel[v1.3.0, ..., v1.4.3] require amphp/amp ^2 -> found amphp/amp[v2.0.0, ..., v2.6.2] but it conflicts with your root composer.json require (^3).
    - chesslablab/php-chess dev-master requires rubix/ml ^2.4 -> satisfiable by rubix/ml[2.4.0].
    - rubix/ml 2.4.0 requires amphp/parallel ^1.3 -> satisfiable by amphp/parallel[v1.3.0, ..., v1.4.3].
    - Root composer.json requires chesslablab/php-chess dev-master -> satisfiable by chesslablab/php-chess[dev-master].

Thanks for the help,

ghost avatar Sep 05 '23 12:09 ghost

Hey thanks @programarivm, will try to fix this ASAP

andrewdalpino avatar Sep 05 '23 22:09 andrewdalpino

It looks like amphp/parallel only works with PHP 8.1 or above - since Rubix ML 2.0 supports PHP 7.4 and above, we will need to stick to using the 1.0 version of Parallel which is unfortunately not compatible with your environment. In Rubix ML 3.0 we plan to support PHP 8.0+, however, we may reconsider knowing that Parallel requires PHP 8.1+.

andrewdalpino avatar Sep 20 '23 22:09 andrewdalpino

Yes, Fibers are only available since PHP 8.1, so it basically blocks using any new versions of amp libraries, which in the meantime have stabilized around amp v3.

So yes, I would encourage you to require PHP 8.1 :-)

bwoebi avatar Jan 29 '24 17:01 bwoebi