Skip to content

CI dependencies are broken #38067

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Closed
phil-davis opened this issue Nov 2, 2020 · 2 comments · Fixed by #38066
Closed

CI dependencies are broken #38067

phil-davis opened this issue Nov 2, 2020 · 2 comments · Fixed by #38066

Comments

@phil-davis
Copy link
Contributor

See test PR #38065
https://drone.owncloud.com/owncloud/core/27424/1/4

behat composer.lock is not up to date.
composer bin behat install --no-progress
No lock file found. Updating dependencies instead of installing from lock file. Use composer update over composer install if you do not have a lock file.
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - sensiolabs/behat-page-object-extension[v2.3.0, ..., v2.3.2] require ocramius/proxy-manager ^2.1.1 -> satisfiable by ocramius/proxy-manager[2.1.1, ..., 2.9.1].
    - ocramius/proxy-manager[2.2.0, ..., 2.2.3] require ocramius/package-versions ^1.1.3 -> satisfiable by ocramius/package-versions[1.1.3, ..., 1.11.0].
    - ocramius/proxy-manager 2.1.1 requires ocramius/package-versions ^1.1.1 -> satisfiable by ocramius/package-versions[1.1.1, ..., 1.11.0].
    - ocramius/package-versions[1.1.1, ..., 1.2.0] require composer-plugin-api ^1.0 -> found composer-plugin-api[2.0.0] but it does not match the constraint.
    - ocramius/package-versions[1.3.0, ..., 1.4.2] require composer-plugin-api ^1.0.0 -> found composer-plugin-api[2.0.0] but it does not match the constraint.
    - ocramius/package-versions[1.5.0, ..., 1.5.1] require php ^7.3.0 -> your php version (7.2.34) does not satisfy that requirement.
    - ocramius/package-versions[1.6.0, ..., 1.9.0] require php ^7.4.0 -> your php version (7.2.34) does not satisfy that requirement.
    - ocramius/proxy-manager[2.3.0, ..., 2.5.2] require php ^7.4.0 -> your php version (7.2.34) does not satisfy that requirement.
    - ocramius/package-versions[1.10.0, ..., 1.11.0] require php ^7.4.7 -> your php version (7.2.34) does not satisfy that requirement.
    - ocramius/proxy-manager[2.6.0, ..., 2.7.0] require php 7.4.* -> your php version (7.2.34) does not satisfy that requirement.
    - ocramius/proxy-manager 2.7.1 requires php 7.4.0 -> your php version (7.2.34) does not satisfy that requirement.
    - ocramius/proxy-manager[2.8.0, ..., 2.9.1] require php ~7.4.1 -> your php version (7.2.34) does not satisfy that requirement.
    - Root composer.json requires sensiolabs/behat-page-object-extension ^2.3 -> satisfiable by sensiolabs/behat-page-object-extension[v2.3.0, v2.3.1, v2.3.2].

ocramius/package-versions only provides support for Composer 2 in 1.8+, which requires PHP 7.4.
If you can not upgrade PHP you can require composer/package-versions-deprecated to resolve this with PHP 7.0+.

You are using Composer 2, which some of your plugins seem to be incompatible with. Make sure you update your plugins or report a plugin-issue to ask them to support Composer 2.
make: *** [vendor-bin/behat/vendor] Error 2
@phil-davis phil-davis changed the title CI dependdencies are borken CI dependencies are borken Nov 2, 2020
@phil-davis phil-davis changed the title CI dependencies are borken CI dependencies are broken Nov 2, 2020
@phil-davis
Copy link
Contributor Author

phil-davis commented Nov 2, 2020

This seems to be related to composer 2.0, which was released around 2020-10-24. I ran the owncloud-ci/php drone today, to pickup the latest patch releases of PHP 7.4 and 7.3 that came out a few days ago. I guess that has also picked up composer 2.0.

Most things seem OK, but behat is not working with PHP 7.2 or 7.3. I installed composer 2.0 locally on Ubuntu 18.04 with:

sudo composer self-update --2

And then I get the same dependency problems as are seen in CI.

When I switch to PHP 7.4 then the dependencies work:

$ make vendor-bin-behat
composer install
Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Nothing to install, update or remove
Package container-interop/container-interop is abandoned, you should avoid using it. Use psr/container instead.
Package guzzlehttp/ringphp is abandoned, you should avoid using it. No replacement was suggested.
Package guzzlehttp/streams is abandoned, you should avoid using it. No replacement was suggested.
Package patchwork/jsqueeze is abandoned, you should avoid using it. No replacement was suggested.
Package jakub-onderka/php-console-color is abandoned, you should avoid using it. Use php-parallel-lint/php-console-color instead.
Package jakub-onderka/php-console-highlighter is abandoned, you should avoid using it. Use php-parallel-lint/php-console-highlighter instead.
Package phpunit/php-token-stream is abandoned, you should avoid using it. No replacement was suggested.
Generating optimized autoload files
14 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
Composer cleaner: Removed 5 files or directories.
behat composer.lock is not up to date.
composer bin behat install --no-progress
No lock file found. Updating dependencies instead of installing from lock file. Use composer update over composer install if you do not have a lock file.
Loading composer repositories with package information
Updating dependencies
Lock file operations: 81 installs, 0 updates, 0 removals
  - Locking behat/behat (v3.8.0)
  - Locking behat/gherkin (v4.6.2)
  - Locking behat/mink (v1.7.1)
  - Locking behat/mink-browserkit-driver (v1.3.4)
  - Locking behat/mink-extension (2.3.1)
  - Locking behat/mink-goutte-driver (v1.2.1)
  - Locking behat/mink-selenium2-driver (v1.4.0)
  - Locking behat/transliterator (v1.3.0)
  - Locking ciaranmcnulty/behat-stepthroughextension (dev-master 4c0df28)
  - Locking doctrine/instantiator (1.3.1)
  - Locking fabpot/goutte (v3.2.3)
  - Locking friends-of-behat/mink-extension (2.3.1)
  - Locking guzzlehttp/guzzle (6.5.5)
  - Locking guzzlehttp/promises (1.4.0)
  - Locking guzzlehttp/psr7 (1.7.0)
  - Locking instaclick/php-webdriver (1.4.7)
  - Locking jarnaiz/behat-junit-formatter (v1.3.2)
  - Locking laminas/laminas-code (3.4.1)
  - Locking laminas/laminas-eventmanager (3.3.0)
  - Locking laminas/laminas-ldap (2.10.3)
  - Locking laminas/laminas-zendframework-bridge (1.1.1)
  - Locking myclabs/deep-copy (1.10.1)
  - Locking ocramius/proxy-manager (2.9.1)
  - Locking phar-io/manifest (1.0.3)
  - Locking phar-io/version (2.0.1)
  - Locking phpdocumentor/reflection-common (2.2.0)
  - Locking phpdocumentor/reflection-docblock (5.2.2)
  - Locking phpdocumentor/type-resolver (1.4.0)
  - Locking phpspec/prophecy (1.12.1)
  - Locking phpunit/php-code-coverage (7.0.10)
  - Locking phpunit/php-file-iterator (2.0.2)
  - Locking phpunit/php-text-template (1.2.1)
  - Locking phpunit/php-timer (2.1.2)
  - Locking phpunit/php-token-stream (3.1.1)
  - Locking phpunit/phpunit (8.5.8)
  - Locking psr/container (1.0.0)
  - Locking psr/event-dispatcher (1.0.0)
  - Locking psr/http-message (1.0.1)
  - Locking ralouphie/getallheaders (3.0.3)
  - Locking rdx/behat-variables (1.2)
  - Locking sabre/uri (2.2.1)
  - Locking sabre/xml (2.2.3)
  - Locking sebastian/code-unit-reverse-lookup (1.0.1)
  - Locking sebastian/comparator (3.0.2)
  - Locking sebastian/diff (3.0.2)
  - Locking sebastian/environment (4.2.3)
  - Locking sebastian/exporter (3.1.2)
  - Locking sebastian/global-state (3.0.0)
  - Locking sebastian/object-enumerator (3.0.3)
  - Locking sebastian/object-reflector (1.1.1)
  - Locking sebastian/recursion-context (3.0.0)
  - Locking sebastian/resource-operations (2.0.1)
  - Locking sebastian/type (1.1.3)
  - Locking sebastian/version (2.0.1)
  - Locking sensiolabs/behat-page-object-extension (v2.3.2)
  - Locking symfony/browser-kit (v4.4.16)
  - Locking symfony/config (v4.4.16)
  - Locking symfony/console (v5.1.8)
  - Locking symfony/css-selector (v3.4.46)
  - Locking symfony/dependency-injection (v4.4.16)
  - Locking symfony/deprecation-contracts (v2.2.0)
  - Locking symfony/dom-crawler (v4.4.16)
  - Locking symfony/event-dispatcher (v5.1.8)
  - Locking symfony/event-dispatcher-contracts (v2.2.0)
  - Locking symfony/filesystem (v5.1.8)
  - Locking symfony/polyfill-ctype (v1.20.0)
  - Locking symfony/polyfill-intl-grapheme (v1.20.0)
  - Locking symfony/polyfill-intl-idn (v1.20.0)
  - Locking symfony/polyfill-intl-normalizer (v1.20.0)
  - Locking symfony/polyfill-mbstring (v1.20.0)
  - Locking symfony/polyfill-php72 (v1.20.0)
  - Locking symfony/polyfill-php73 (v1.20.0)
  - Locking symfony/polyfill-php80 (v1.20.0)
  - Locking symfony/service-contracts (v2.2.0)
  - Locking symfony/string (v5.1.8)
  - Locking symfony/translation (v4.4.16)
  - Locking symfony/translation-contracts (v2.3.0)
  - Locking symfony/yaml (v5.1.8)
  - Locking theseer/tokenizer (1.2.0)
  - Locking webimpress/safe-writer (2.1.0)
  - Locking webmozart/assert (1.9.1)
Writing lock file

@phil-davis phil-davis self-assigned this Nov 2, 2020
@phil-davis
Copy link
Contributor Author

core, all ownCloud10 apps, owncloud/ocis and cs3org/reva have been updated to use composer 2.0 ...
CI should be great again.

# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant