phar-io / phive

The Phar Installation and Verification Environment (PHIVE)
https://phar.io
BSD 3-Clause "New" or "Revised" License
579 stars 43 forks source link

PHP Fatal error: During inheritance of IteratorAggregate: Uncaught ArgumentCountError #414

Closed andreleitao closed 11 months ago

andreleitao commented 11 months ago

In my Dockerfile, there is this step:

RUN phive install -g --trust-gpg-keys <key1>,<key2>,<key3> phpcov@~8.2.0

and I'm getting the following error:



Phive 0.14.5 - Copyright (C) 2015-2023 by Arne Blankerts, Sebastian Heuer and Contributors

PHP Fatal error:  During inheritance of IteratorAggregate: Uncaught ArgumentCountError: Too few arguments to function PharIo\Phive\Cli\Runner::errorHandler(), 4 passed in phar:///usr/local/bin/phive/src/shared/phar/ReleaseCollection.php on line 4 and exactly 5 expected in phar:///usr/local/bin/phive/src/shared/cli/Runner.php:98

Stack trace:

.0 phar:///usr/local/bin/phive/src/shared/phar/ReleaseCollection.php(4): PharIo\Phive\Cli\Runner->errorHandler(8192, 'Return type of ...', 'phar:///usr/loc...', 16)

.1 /usr/local/bin/phive(342): require('phar:///usr/loc...')

.2 phar:///usr/local/bin/phive/src/shared/repository/LocalRepository.php(16): PharIo\Phive\{closure}('phario\\phive\\re...')

.3 phar:///usr/local/bin/phive/src/services/resolver/LocalAliasResolver.php(22): PharIo\Phive\LocalRepository->getReleasesByRequestedPhar(Object(PharIo\Phive\RequestedPhar))

.4 phar:///usr/local/bin/phive/src/services/resolver/RequestedPharResolverService.php(28): PharIo\Phive\LocalAliasResolver->resolve(Object(PharIo\Phive\RequestedPhar))

.5 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(53): PharIo\Phive\RequestedPharResolverService->resolve(Object(PharIo\Phive\RequestedPhar))

.6 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(42): PharIo\Phive\InstallCommand->resolveToRelease(Object(PharIo\Phive\RequestedPhar))

.7 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(37): PharIo\Phive\InstallCommand->installRequestedPhar(Object(PharIo\Phive\RequestedPhar), Object(PharIo\FileSystem\Directory))

.8 phar:///usr/local/bin/phive/src/shared/cli/Runner.php(215): PharIo\Phive\InstallCommand->execute()

.9 phar:///usr/local/bin/phive/src/shared/cli/Runner.php(69): PharIo\Phive\Cli\Runner->execute()

.10 /usr/local/bin/phive(349): PharIo\Phive\Cli\Runner->run()

.11 {main} in phar:///usr/local/bin/phive/src/shared/phar/ReleaseCollection.php on line 4

PHP Stack trace:

PHP   1. {main}() /usr/local/bin/phive:0

PHP   2. PharIo\Phive\Cli\Runner->run() /usr/local/bin/phive:349

PHP   3. PharIo\Phive\Cli\Runner->execute() phar:///usr/local/bin/phive/src/shared/cli/Runner.php:69

PHP   4. PharIo\Phive\InstallCommand->execute() phar:///usr/local/bin/phive/src/shared/cli/Runner.php:215

PHP   5. PharIo\Phive\InstallCommand->installRequestedPhar($requestedPhar = class PharIo\Phive\RequestedPhar { private $identifier = class PharIo\Phive\PharAlias { private $alias = 'phpcov' }; private $versionConstraint = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $lockedVersion = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $location = NULL; private $makeCopy = TRUE }, $targetDirectory = class PharIo\FileSystem\Directory { private $path = '/usr/local/bin' }) phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php:37

PHP   6. PharIo\Phive\InstallCommand->resolveToRelease($requestedPhar = class PharIo\Phive\RequestedPhar { private $identifier = class PharIo\Phive\PharAlias { private $alias = 'phpcov' }; private $versionConstraint = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $lockedVersion = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $location = NULL; private $makeCopy = TRUE }) phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php:42

PHP   7. PharIo\Phive\RequestedPharResolverService->resolve($requestedPhar = class PharIo\Phive\RequestedPhar { private $identifier = class PharIo\Phive\PharAlias { private $alias = 'phpcov' }; private $versionConstraint = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $lockedVersion = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $location = NULL; private $makeCopy = TRUE }) phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php:53

PHP   8. PharIo\Phive\LocalAliasResolver->resolve($requestedPhar = class PharIo\Phive\RequestedPhar { private $identifier = class PharIo\Phive\PharAlias { private $alias = 'phpcov' }; private $versionConstraint = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $lockedVersion = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $location = NULL; private $makeCopy = TRUE }) phar:///usr/local/bin/phive/src/services/resolver/RequestedPharResolverService.php:28

PHP   9. PharIo\Phive\LocalRepository->getReleasesByRequestedPhar($requestedPhar = class PharIo\Phive\RequestedPhar { private $identifier = class PharIo\Phive\PharAlias { private $alias = 'phpcov' }; private $versionConstraint = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $lockedVersion = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $location = NULL; private $makeCopy = TRUE }) phar:///usr/local/bin/phive/src/services/resolver/LocalAliasResolver.php:22

PHP  10. PharIo\Phive\{closure:/usr/local/bin/phive:27-344}($class = 'PharIo\\Phive\\ReleaseCollection') phar:///usr/local/bin/phive/src/shared/repository/LocalRepository.php:16

PHP  11. require() /usr/local/bin/phive:342

[ERROR]   An error occurred while processing your request:
          During inheritance of IteratorAggregate: Uncaught ArgumentCountError: Too few arguments to function PharIo\Phive\Cli\Runner::errorHandler(), 4 passed in phar:///usr/local/bin/phive/src/shared/phar/ReleaseCollection.php on line 4 and exactly 5 expected in phar:///usr/local/bin/phive/src/shared/cli/Runner.php:98
Stack trace:
.0 phar:///usr/local/bin/phive/src/shared/phar/ReleaseCollection.php(4): PharIo\Phive\Cli\Runner->errorHandler(8192, 'Return type of ...', 'phar:///usr/loc...', 16)
.1 /usr/local/bin/phive(342): require('phar:///usr/loc...')
.2 phar:///usr/local/bin/phive/src/shared/repository/LocalRepository.php(16): PharIo\Phive\{closure}('phario\\phive\\re...')
.3 phar:///usr/local/bin/phive/src/services/resolver/LocalAliasResolver.php(22): PharIo\Phive\LocalRepository->getReleasesByRequestedPhar(Object(PharIo\Phive\RequestedPhar))
.4 phar:///usr/local/bin/phive/src/services/resolver/RequestedPharResolverService.php(28): PharIo\Phive\LocalAliasResolver->resolve(Object(PharIo\Phive\RequestedPhar))
.5 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(53): PharIo\Phive\RequestedPharResolverService->resolve(Object(PharIo\Phive\RequestedPhar))
.6 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(42): PharIo\Phive\InstallCommand->resolveToRelease(Object(PharIo\Phive\RequestedPhar))
.7 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(37): PharIo\Phive\InstallCommand->installRequestedPhar(Object(PharIo\Phive\RequestedPhar), Object(PharIo\FileSystem\Directory))
.8 phar:///usr/local/bin/phive/src/shared/cli/Runner.php(215): PharIo\Phive\InstallCommand->execute()

.9 phar:///usr/local/bin/phive/src/shared/cli/Runner.php(69): PharIo\Phive\Cli\Runner->execute()

.10 /usr/local/bin/phive(349): PharIo\Phive\Cli\Runner->run()

.11 {main}

          .0 src/shared/phar/ReleaseCollection.php(4)
          .1 unknown file(0): PharIo\Phive\Cli\Runner->shutdownHandler()
          .2 {main}
          Environment: PHP 8.1.24 (on Linux 5.4.0-162-generic)
          Phive Version: 0.14.5
          This should not have happened and is most likely a bug.
          Please report it at https://github.com/phar-io/phive/issues, make sure you include
          the full output of this error message. Thank you!
theseer commented 11 months ago

Hi,

thanks for reporting an issue.

The version output states you're using 0.14.5. That version is outdated and over 3 years old.

Please verify whether the issue persists when using the current version.

Am Dienstag, 24. Oktober 2023 schrieb Andre Leitao:

In my Dockerfile, there is this step:

RUN phive install -g --trust-gpg-keys <key1>,<key2>,<key3> phpcov@~8.2.0

and I'm getting the following error:



Phive 0.14.5 - Copyright (C) 2015-2023 by Arne Blankerts, Sebastian Heuer and Contributors

PHP Fatal error:  During inheritance of IteratorAggregate: Uncaught ArgumentCountError: Too few arguments to function PharIo\Phive\Cli\Runner::errorHandler(), 4 passed in phar:///usr/local/bin/phive/src/shared/phar/ReleaseCollection.php on line 4 and exactly 5 expected in phar:///usr/local/bin/phive/src/shared/cli/Runner.php:98

Stack trace:

.0 phar:///usr/local/bin/phive/src/shared/phar/ReleaseCollection.php(4): PharIo\Phive\Cli\Runner->errorHandler(8192, 'Return type of ...', 'phar:///usr/loc...', 16)

.1 /usr/local/bin/phive(342): require('phar:///usr/loc...')

.2 phar:///usr/local/bin/phive/src/shared/repository/LocalRepository.php(16): PharIo\Phive\{closure}('phario\\phive\\re...')

.3 phar:///usr/local/bin/phive/src/services/resolver/LocalAliasResolver.php(22): PharIo\Phive\LocalRepository->getReleasesByRequestedPhar(Object(PharIo\Phive\RequestedPhar))

.4 phar:///usr/local/bin/phive/src/services/resolver/RequestedPharResolverService.php(28): PharIo\Phive\LocalAliasResolver->resolve(Object(PharIo\Phive\RequestedPhar))

.5 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(53): PharIo\Phive\RequestedPharResolverService->resolve(Object(PharIo\Phive\RequestedPhar))

.6 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(42): PharIo\Phive\InstallCommand->resolveToRelease(Object(PharIo\Phive\RequestedPhar))

.7 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(37): PharIo\Phive\InstallCommand->installRequestedPhar(Object(PharIo\Phive\RequestedPhar), Object(PharIo\FileSystem\Directory))

.8 phar:///usr/local/bin/phive/src/shared/cli/Runner.php(215): PharIo\Phive\InstallCommand->execute()

.9 phar:///usr/local/bin/phive/src/shared/cli/Runner.php(69): PharIo\Phive\Cli\Runner->execute()

.10 /usr/local/bin/phive(349): PharIo\Phive\Cli\Runner->run()

.11 {main} in phar:///usr/local/bin/phive/src/shared/phar/ReleaseCollection.php on line 4

PHP Stack trace:

PHP   1. {main}() /usr/local/bin/phive:0

PHP   2. PharIo\Phive\Cli\Runner->run() /usr/local/bin/phive:349

PHP   3. PharIo\Phive\Cli\Runner->execute() phar:///usr/local/bin/phive/src/shared/cli/Runner.php:69

PHP   4. PharIo\Phive\InstallCommand->execute() phar:///usr/local/bin/phive/src/shared/cli/Runner.php:215

PHP   5. PharIo\Phive\InstallCommand->installRequestedPhar($requestedPhar = class PharIo\Phive\RequestedPhar { private $identifier = class PharIo\Phive\PharAlias { private $alias = 'phpcov' }; private $versionConstraint = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $lockedVersion = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $location = NULL; private $makeCopy = TRUE }, $targetDirectory = class PharIo\FileSystem\Directory { private $path = '/usr/local/bin' }) phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php:37

PHP   6. PharIo\Phive\InstallCommand->resolveToRelease($requestedPhar = class PharIo\Phive\RequestedPhar { private $identifier = class PharIo\Phive\PharAlias { private $alias = 'phpcov' }; private $versionConstraint = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $lockedVersion = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $location = NULL; private $makeCopy = TRUE }) phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php:42

PHP   7. PharIo\Phive\RequestedPharResolverService->resolve($requestedPhar = class PharIo\Phive\RequestedPhar { private $identifier = class PharIo\Phive\PharAlias { private $alias = 'phpcov' }; private $versionConstraint = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $lockedVersion = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $location = NULL; private $makeCopy = TRUE }) phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php:53

PHP   8. PharIo\Phive\LocalAliasResolver->resolve($requestedPhar = class PharIo\Phive\RequestedPhar { private $identifier = class PharIo\Phive\PharAlias { private $alias = 'phpcov' }; private $versionConstraint = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $lockedVersion = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $location = NULL; private $makeCopy = TRUE }) phar:///usr/local/bin/phive/src/services/resolver/RequestedPharResolverService.php:28

PHP   9. PharIo\Phive\LocalRepository->getReleasesByRequestedPhar($requestedPhar = class PharIo\Phive\RequestedPhar { private $identifier = class PharIo\Phive\PharAlias { private $alias = 'phpcov' }; private $versionConstraint = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $lockedVersion = class PharIo\Version\AndVersionConstraintGroup { private ${PharIo\Version\AbstractVersionConstraint}originalValue = '~8.2.0'; private $constraints = [...] }; private $location = NULL; private $makeCopy = TRUE }) phar:///usr/local/bin/phive/src/services/resolver/LocalAliasResolver.php:22

PHP  10. PharIo\Phive\{closure:/usr/local/bin/phive:27-344}($class = 'PharIo\\Phive\\ReleaseCollection') phar:///usr/local/bin/phive/src/shared/repository/LocalRepository.php:16

PHP  11. require() /usr/local/bin/phive:342

[ERROR]   An error occurred while processing your request:
          During inheritance of IteratorAggregate: Uncaught ArgumentCountError: Too few arguments to function PharIo\Phive\Cli\Runner::errorHandler(), 4 passed in phar:///usr/local/bin/phive/src/shared/phar/ReleaseCollection.php on line 4 and exactly 5 expected in phar:///usr/local/bin/phive/src/shared/cli/Runner.php:98
Stack trace:
.0 phar:///usr/local/bin/phive/src/shared/phar/ReleaseCollection.php(4): PharIo\Phive\Cli\Runner->errorHandler(8192, 'Return type of ...', 'phar:///usr/loc...', 16)
.1 /usr/local/bin/phive(342): require('phar:///usr/loc...')
.2 phar:///usr/local/bin/phive/src/shared/repository/LocalRepository.php(16): PharIo\Phive\{closure}('phario\\phive\\re...')
.3 phar:///usr/local/bin/phive/src/services/resolver/LocalAliasResolver.php(22): PharIo\Phive\LocalRepository->getReleasesByRequestedPhar(Object(PharIo\Phive\RequestedPhar))
.4 phar:///usr/local/bin/phive/src/services/resolver/RequestedPharResolverService.php(28): PharIo\Phive\LocalAliasResolver->resolve(Object(PharIo\Phive\RequestedPhar))
.5 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(53): PharIo\Phive\RequestedPharResolverService->resolve(Object(PharIo\Phive\RequestedPhar))
.6 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(42): PharIo\Phive\InstallCommand->resolveToRelease(Object(PharIo\Phive\RequestedPhar))
.7 phar:///usr/local/bin/phive/src/commands/install/InstallCommand.php(37): PharIo\Phive\InstallCommand->installRequestedPhar(Object(PharIo\Phive\RequestedPhar), Object(PharIo\FileSystem\Directory))
.8 phar:///usr/local/bin/phive/src/shared/cli/Runner.php(215): PharIo\Phive\InstallCommand->execute()

.9 phar:///usr/local/bin/phive/src/shared/cli/Runner.php(69): PharIo\Phive\Cli\Runner->execute()

.10 /usr/local/bin/phive(349): PharIo\Phive\Cli\Runner->run()

.11 {main}

          .0 src/shared/phar/ReleaseCollection.php(4)
          .1 unknown file(0): PharIo\Phive\Cli\Runner->shutdownHandler()
          .2 {main}
          Environment: PHP 8.1.24 (on Linux 5.4.0-162-generic)
          Phive Version: 0.14.5
          This should not have happened and is most likely a bug.
          Please report it at https://github.com/phar-io/phive/issues, make sure you include
          the full output of this error message. Thank you!

``

-- 
Reply to this email directly or view it on GitHub:
https://github.com/phar-io/phive/issues/414
You are receiving this because you are subscribed to this thread.

Message ID: ***@***.***
theseer commented 11 months ago

Duplicate of #319

andreleitao commented 11 months ago

Thanks. It worked!