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

2.4.x - Allow installation on PHP 8 #60

Closed
wants to merge 1 commit into from
Closed

2.4.x - Allow installation on PHP 8 #60

wants to merge 1 commit into from

Conversation

jrbasso
Copy link

@jrbasso jrbasso commented Mar 16, 2021

Q A
Documentation no
Bugfix no
BC Break no
New Feature no
RFC yes
QA no

Description

Same as #46 for 2.4.x series. This will allow the library to be installed in wider ranger of PHP versions since 2.5 can't be installed in versions below 7.3.

Copy link
Member

@weierophinney weierophinney left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've noted some problems with the Travis configuration.

However, I think the more important concern I have is: why would we expand the PHP versions supported on this particular release series?

The Laminas security window policy indicates that we only support (a) the current release branch, and (b) any release branch where the minimum supported PHP version is still supported by php.net.

The 2.4 series falls outside that realm. On top of that, if a user is on 7.3 or 7.4 currently, they can already upgrade to the 2.5 series; if they are on PHP 8, installation will give them 2.5+. Expanding what we support on the 2.4 series is unnecessary, as users of later versions of PHP can already get a later version.

env:
- DEPS=latest
- CS_CHECK=true
- TEST_COVERAGE=true
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We cannot drop versions from testing that are explicitly supported via the package constraints. You either need to bump the PHP constraint to ^7.2, or keep the above.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PHPUnit 8.x doesn't support PHP 7.1 and PHPUnit 7.x doesn't support 8.x. What do you recommend in this case?

.travis.yml Outdated Show resolved Hide resolved
.travis.yml Outdated Show resolved Hide resolved
@jrbasso
Copy link
Author

jrbasso commented Mar 16, 2021

The main reason for supporting PHP 8 in this old minor version is because our system uses PHP 7.2 and we are migrating to 8.0. Since our app uses composer.lock we can't change between the 2 different environments. Supporting PHP 8.0 on 2.4 will allow us to use the same package independent of the PHP version. Once we fully migrate to PHP 8 we can upgrade to the version 2.5+.

Otherwise we would need to migrate all our systems to something like PHP 7.4 first and then 8.0, which almost doubles the work required for the upgrade.

@jrbasso
Copy link
Author

jrbasso commented Mar 18, 2021

To avoid changing the library and the minimum PHP tested version because of PHPUnit I will be closing it. Since the code itself is compatible with PHP 8 for the most part, we can specify the platform version in the composer while we are doing the transition.

@jrbasso jrbasso closed this Mar 18, 2021
@jrbasso jrbasso deleted the 2.4-php8 branch March 18, 2021 15:27
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

Successfully merging this pull request may close these issues.

2 participants