Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Composer error when using PHP 7.3 #32

Closed
poplarmedia opened this issue Feb 13, 2022 · 8 comments
Closed

Composer error when using PHP 7.3 #32

poplarmedia opened this issue Feb 13, 2022 · 8 comments

Comments

@poplarmedia
Copy link

Pawtucket Master branch is presenting this error when installing from Master on MacOS Monterey using Homebrew:
Fatal error: Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 7.4.0". You are running 7.3.33. in /path/to/pawtucket/vendor/composer/platform_check.php on line 24

If I run composer install the issue resolves.

The release notes say it should run in PHP 7.3

Providence does not cause this error

@collectiveaccess
Copy link
Owner

Works fine for me running 7.3.33 on macOS Big Sur + homebrew. The composer.json file is compatible with PHP 7.3 (develop version are not). Perhaps you got this error because you were switching from a develop branch to master?

@poplarmedia
Copy link
Author

This was an existing 1.7.8 DB and media with a clean installation of master branch from git.

To eliminate the upgrade question, I just installed a fresh master of Providence, ran the VRA profile, and then made a fresh master of Pawtucket2, and got the same error.

I then ran the composer install and this is the output:

composer install
Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. It is recommended that you run `composer update` or `composer update <package name>`.
Package operations: 1 install, 14 updates, 9 removals
  - Removing psr/simple-cache (1.0.1)
  - Removing psr/http-factory (1.0.1)
  - Removing psr/http-client (1.0.1)
  - Removing phpoffice/phpspreadsheet (1.20.0)
  - Removing myclabs/php-enum (1.8.3)
  - Removing markbaker/matrix (3.0.0)
  - Removing markbaker/complex (3.0.1)
  - Removing maennchen/zipstream-php (2.1.0)
  - Removing laminas/laminas-escaper (2.9.0)
  - Downgrading phenx/php-svg-lib (0.3.4 => v0.3.3): Extracting archive
  - Downgrading guzzlehttp/promises (1.5.1 => 1.4.1): Extracting archive
  - Downgrading guzzlehttp/psr7 (1.8.3 => 1.8.2): Extracting archive
  - Downgrading php-http/discovery (1.14.1 => 1.14.0): Extracting archive
  - Downgrading symfony/deprecation-contracts (v2.5.0 => v2.4.0): Extracting archive
  - Downgrading symfony/options-resolver (v5.4.0 => v5.3.7): Extracting archive
  - Downgrading php-http/cache-plugin (1.7.4 => 1.7.2): Extracting archive
  - Downgrading symfony/var-dumper (v5.4.0 => v5.3.7): Extracting archive
  - Downgrading maximebf/debugbar (v1.17.3 => v1.17.1): Extracting archive
  - Downgrading phpdocumentor/type-resolver (1.5.1 => 1.4.0): Extracting archive
  - Downgrading phpdocumentor/reflection-docblock (5.3.0 => 5.2.2): Extracting archive
  - Downgrading phpoffice/common (1.0.0 => 0.2.9): Extracting archive
  - Upgrading phpoffice/phppresentation (1.0.0 => dev-master 3deaa89): Extracting archive
  - Installing zendframework/zend-escaper (2.6.1): Extracting archive
  - Downgrading phpoffice/phpword (0.18.2 => 0.15.0): Extracting archive
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 phpoffice/phpexcel is abandoned, you should avoid using it. Use phpoffice/phpspreadsheet instead.
Package phpunit/php-token-stream is abandoned, you should avoid using it. No replacement was suggested.
Package phpunit/phpunit-mock-objects is abandoned, you should avoid using it. No replacement was suggested.
Package scholarslab/bagit is abandoned, you should avoid using it. No replacement was suggested.
Package zendframework/zend-escaper is abandoned, you should avoid using it. Use laminas/laminas-escaper instead.
Generating autoload files

It says the lock file is out of date, so I ran the upgrade. Here is the output:

composer update
Loading composer repositories with package information
Updating dependencies
Lock file operations: 9 installs, 25 updates, 1 removal
  - Removing zendframework/zend-escaper (2.6.1)
  - Upgrading ezyang/htmlpurifier (v4.13.0 => v4.14.0)
  - Upgrading guzzlehttp/promises (1.4.1 => 1.5.1)
  - Upgrading guzzlehttp/psr7 (1.8.2 => 1.8.3)
  - Locking laminas/laminas-escaper (2.9.0)
  - Locking maennchen/zipstream-php (2.1.0)
  - Locking markbaker/complex (3.0.1)
  - Locking markbaker/matrix (3.0.0)
  - Upgrading maximebf/debugbar (v1.17.1 => v1.18.0)
  - Locking myclabs/php-enum (1.8.3)
  - Upgrading phenx/php-font-lib (0.5.2 => 0.5.4)
  - Upgrading php-http/cache-plugin (1.7.2 => 1.7.5)
  - Upgrading php-http/discovery (1.14.0 => 1.14.1)
  - Upgrading php-http/message (1.12.0 => 1.13.0)
  - Upgrading phpdocumentor/reflection-docblock (5.2.2 => 5.3.0)
  - Upgrading phpdocumentor/type-resolver (1.4.0 => 1.6.0)
  - Upgrading phpoffice/common (0.2.9 => 1.0.1)
  - Downgrading phpoffice/phppresentation (dev-master 3deaa89 => 1.0.0)
  - Locking phpoffice/phpspreadsheet (1.22.0)
  - Upgrading phpoffice/phpword (0.15.0 => 0.18.3)
  - Locking psr/http-client (1.0.1)
  - Locking psr/http-factory (1.0.1)
  - Locking psr/simple-cache (1.0.1)
  - Upgrading react/promise (v2.8.0 => v2.9.0)
  - Upgrading sabberworm/php-css-parser (8.3.1 => 8.4.0)
  - Upgrading symfony/deprecation-contracts (v2.4.0 => v2.5.0)
  - Upgrading symfony/options-resolver (v5.3.7 => v5.4.3)
  - Upgrading symfony/polyfill-ctype (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-intl-idn (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-intl-normalizer (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-mbstring (v1.23.1 => v1.24.0)
  - Upgrading symfony/polyfill-php72 (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-php73 (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-php80 (v1.23.1 => v1.24.0)
  - Upgrading symfony/var-dumper (v5.3.7 => v5.4.3)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 9 installs, 25 updates, 1 removal
  - Downloading sabberworm/php-css-parser (8.4.0)
  - Downloading symfony/polyfill-mbstring (v1.24.0)
  - Downloading phenx/php-font-lib (0.5.4)
  - Downloading react/promise (v2.9.0)
  - Downloading guzzlehttp/promises (1.5.1)
  - Downloading guzzlehttp/psr7 (1.8.3)
  - Downloading php-http/discovery (1.14.1)
  - Downloading symfony/polyfill-php72 (v1.24.0)
  - Downloading symfony/polyfill-intl-normalizer (v1.24.0)
  - Downloading symfony/polyfill-intl-idn (v1.24.0)
  - Downloading symfony/polyfill-php80 (v1.24.0)
  - Downloading symfony/polyfill-php73 (v1.24.0)
  - Downloading symfony/deprecation-contracts (v2.5.0)
  - Downloading symfony/options-resolver (v5.4.3)
  - Downloading php-http/message (1.13.0)
  - Downloading php-http/cache-plugin (1.7.5)
  - Downloading symfony/var-dumper (v5.4.3)
  - Downloading maximebf/debugbar (v1.18.0)
  - Downloading myclabs/php-enum (1.8.3)
  - Downloading symfony/polyfill-ctype (v1.24.0)
  - Downloading phpdocumentor/type-resolver (1.6.0)
  - Downloading phpdocumentor/reflection-docblock (5.3.0)
  - Downloading psr/simple-cache (1.0.1)
  - Downloading psr/http-factory (1.0.1)
  - Downloading psr/http-client (1.0.1)
  - Downloading markbaker/matrix (3.0.0)
  - Downloading markbaker/complex (3.0.1)
  - Downloading maennchen/zipstream-php (2.1.0)
  - Downloading ezyang/htmlpurifier (v4.14.0)
  - Downloading phpoffice/phpspreadsheet (1.22.0)
  - Downloading phpoffice/common (1.0.1)
  - Downloading phpoffice/phppresentation (1.0.0)
  - Downloading laminas/laminas-escaper (2.9.0)
  - Downloading phpoffice/phpword (0.18.3)
  - Removing zendframework/zend-escaper (2.6.1)
  - Upgrading sabberworm/php-css-parser (8.3.1 => 8.4.0): Extracting archive
  - Upgrading symfony/polyfill-mbstring (v1.23.1 => v1.24.0): Extracting archive
  - Upgrading phenx/php-font-lib (0.5.2 => 0.5.4): Extracting archive
  - Upgrading react/promise (v2.8.0 => v2.9.0): Extracting archive
  - Upgrading guzzlehttp/promises (1.4.1 => 1.5.1): Extracting archive
  - Upgrading guzzlehttp/psr7 (1.8.2 => 1.8.3): Extracting archive
  - Upgrading php-http/discovery (1.14.0 => 1.14.1): Extracting archive
  - Upgrading symfony/polyfill-php72 (v1.23.0 => v1.24.0): Extracting archive
  - Upgrading symfony/polyfill-intl-normalizer (v1.23.0 => v1.24.0): Extracting archive
  - Upgrading symfony/polyfill-intl-idn (v1.23.0 => v1.24.0): Extracting archive
  - Upgrading symfony/polyfill-php80 (v1.23.1 => v1.24.0): Extracting archive
  - Upgrading symfony/polyfill-php73 (v1.23.0 => v1.24.0): Extracting archive
  - Upgrading symfony/deprecation-contracts (v2.4.0 => v2.5.0): Extracting archive
  - Upgrading symfony/options-resolver (v5.3.7 => v5.4.3): Extracting archive
  - Upgrading php-http/message (1.12.0 => 1.13.0): Extracting archive
  - Upgrading php-http/cache-plugin (1.7.2 => 1.7.5): Extracting archive
  - Upgrading symfony/var-dumper (v5.3.7 => v5.4.3): Extracting archive
  - Upgrading maximebf/debugbar (v1.17.1 => v1.18.0): Extracting archive
  - Installing myclabs/php-enum (1.8.3): Extracting archive
  - Upgrading symfony/polyfill-ctype (v1.23.0 => v1.24.0): Extracting archive
  - Upgrading phpdocumentor/type-resolver (1.4.0 => 1.6.0): Extracting archive
  - Upgrading phpdocumentor/reflection-docblock (5.2.2 => 5.3.0): Extracting archive
  - Installing psr/simple-cache (1.0.1): Extracting archive
  - Installing psr/http-factory (1.0.1): Extracting archive
  - Installing psr/http-client (1.0.1): Extracting archive
  - Installing markbaker/matrix (3.0.0): Extracting archive
  - Installing markbaker/complex (3.0.1): Extracting archive
  - Installing maennchen/zipstream-php (2.1.0): Extracting archive
  - Upgrading ezyang/htmlpurifier (v4.13.0 => v4.14.0): Extracting archive
  - Installing phpoffice/phpspreadsheet (1.22.0): Extracting archive
  - Upgrading phpoffice/common (0.2.9 => 1.0.1): Extracting archive
  - Downgrading phpoffice/phppresentation (dev-master 3deaa89 => 1.0.0): Extracting archive
  - Installing laminas/laminas-escaper (2.9.0): Extracting archive
  - Upgrading phpoffice/phpword (0.15.0 => 0.18.3): Extracting archive
3 package suggestions were added by new dependencies, use `composer suggest` to see details.
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 hoa/compiler is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/consistency is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/event is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/exception is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/file is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/iterator is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/math is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/protocol is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/regex is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/stream is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/ustring is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/visitor is abandoned, you should avoid using it. No replacement was suggested.
Package hoa/zformat is abandoned, you should avoid using it. No replacement was suggested.
Package phpoffice/phpexcel is abandoned, you should avoid using it. Use phpoffice/phpspreadsheet instead.
Package phpunit/php-token-stream is abandoned, you should avoid using it. No replacement was suggested.
Package phpunit/phpunit-mock-objects is abandoned, you should avoid using it. No replacement was suggested.
Package scholarslab/bagit is abandoned, you should avoid using it. No replacement was suggested.
Generating autoload files

If you want me to run further tests, let me know.

@collectiveaccess
Copy link
Owner

So there wasn't a fatal error?

@poplarmedia
Copy link
Author

poplarmedia commented Feb 20, 2022

With the clean install, and then running the VRA profile into an empty install, It was the same error as before:
Fatal error: Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 7.4.0". You are running 7.3.33. in /path/to/pawtucket/test/vendor/composer/platform_check.php on line 24

@collectiveaccess
Copy link
Owner

Ok, so what was different in the previous run where you didn't get the error? I'm not seeing any issues running with current Pawtucket code in a clean install.

@poplarmedia
Copy link
Author

poplarmedia commented Feb 20, 2022

Sorry if I am not being clear. In both instances, I get a fatal error in php 7.3 with a fresh install, whether it is an exiting DB or a new one created from a profile. I fix it by running composer update at the root of Pawtucket.

The release notes say:

Note that this version supports 7.3 and 7.4. It is not yet compatible with PHP 8.

Is is this what is supposed to happen? The fatal error?

Line 8 of the platform_check.php references PHP 7.4.0
$issues[] = 'Your Composer dependencies require a PHP version ">= 7.4.0". You are running ' . PHP_VERSION . '.';

Is that correct, or should it say '7.3.0'?

@collectiveaccess
Copy link
Owner

That's generated by composer... the thing is I don't get that error when I try to install on 7.3.

@poplarmedia
Copy link
Author

Point taken. Would it make sense to add a something to the release notes in case others encounter this issue in 7.3?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants