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

Add php:8.0.* support #161

Merged
merged 2 commits into from
Oct 21, 2020
Merged

Add php:8.0.* support #161

merged 2 commits into from
Oct 21, 2020

Conversation

Ocramius
Copy link
Owner

This patch explicitly adds php:~8.0.0 support along with php:^7.4.7.

phpunit/phpunit had to also be upgraded, so that it does not contain symbols
that clash with the php:8.0.0 parser BC breaks.

To do so, we had to disable infection/infection reporting for now, as the
mutation testing setup is not yet capable of working with phpunit/phpunit:^9.3.

In addition to that, we now actively replace composer/package-versions-deprecated,
which is constantly causing issues in installation, and which is fully replaced by
this specific package. If you run composer/composer:^2.0 and php:8.0.0, there is
no reason to use composer/package-versions-deprecated anyway.

Please note that the support for PHP is limited to php:^7.4.7 || php:~8.0.0: php:8.1.0
is NOT supported by this release, as the upstream ecosystem is just too unstable
and regularly breaks BC in multiple ways. Once php:8.1.0-rc2 is out (possibly next year),
work will be done to support that too.

@Ocramius Ocramius added this to the 2.1.0 milestone Oct 21, 2020
@Ocramius Ocramius self-assigned this Oct 21, 2020
This patch explicitly adds `php:~8.0.0` support along with `php:^7.4.7`.

`phpunit/phpunit` had to also be upgraded, so that it does not contain symbols
that clash with the `php:8.0.0` parser BC breaks.

To do so, we had to disable `infection/infection` reporting for now, as the
mutation testing setup is not yet capable of working with `phpunit/phpunit:^9.3`.

In addition to that, we now actively replace `composer/package-versions-deprecated`,
which is constantly causing issues in installation, and which is fully replaced by
this specific package. If you run `composer/composer:^2.0` and `php:8.0.0`, there is
no reason to use `composer/package-versions-deprecated` anyway.

Please note that the support for PHP is limited to `php:^7.4.7 || php:~8.0.0`: `php:8.1.0`
is **NOT** supported by this release, as the upstream ecosystem is just too unstable
and regularly breaks BC in multiple ways. Once `php:8.1.0-rc2` is out (possibly next year),
work will be done to support that too.
As per composer/composer#9302, this is a known composer bug
that is not that relevant for this package for multiple reasons:

 1. the only real dependencies are `php` and `composer-runtime-api`, which are fixed
 2. we upgrade all dependencies whenever possible, and restrict the range too, via
    dependabot, so we don't keep old dependencies around for too long anyway
@Ocramius Ocramius changed the title Add PHP 8.0.* support Add php:8.0.* support Oct 21, 2020
@Ocramius Ocramius merged commit a7e35c3 into 2.1.x Oct 21, 2020
@Ocramius Ocramius deleted the feature/php-8.0.x-support branch October 21, 2020 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant