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 php7.4 support #18064

Merged
merged 26 commits into from
Nov 28, 2019
Merged

Add php7.4 support #18064

merged 26 commits into from
Nov 28, 2019

Conversation

rullzer
Copy link
Member

@rullzer rullzer commented Nov 21, 2019

@rullzer
Copy link
Member Author

rullzer commented Nov 23, 2019

@rullzer
Copy link
Member Author

rullzer commented Nov 26, 2019

Some help in the final fixes is appreciated. As I'd like to merge this sooner than later/.

@ChristophWurst ChristophWurst changed the title Feature/php74 Add php7.4 support Nov 26, 2019
ChristophWurst and others added 12 commits November 27, 2019 13:34
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* Run 7.4 tests (nodb + sqlite)
* Update older images to newer phpunit

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Because we test very naively we matched also on def in default...

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
@rullzer rullzer merged commit 669302e into master Nov 28, 2019
@rullzer rullzer deleted the feature/php74 branch November 28, 2019 07:36
@Thaodan
Copy link

Thaodan commented Nov 30, 2019

Will this be added to the next point release of 17.x?

@nickvergessen
Copy link
Member

Unlikely. We try to keep the same php versions for a major once it is released

@Thaodan
Copy link

Thaodan commented Dec 1, 2019 via email

@rullzer
Copy link
Member Author

rullzer commented Dec 1, 2019

They could since we don't test them. 18 is set to be released mid January which will support it.

@nursoda
Copy link

nursoda commented Dec 1, 2019

So, at least on Arch I don not have PHP 7.3 and 7.4 to cheese from, it's just 'current'. So I may either not patch PHP (and related packages) for >6 weeks (not a good idea IF security relevant patches to PHP appear, apart from dependency quirks), or run NC 17 on an not only untested but also unsupported PHP version hoping that changes merely create warnings.

I would be interested to hear which other major distros have such issue. If non, then I agree that Arch was not be a good choice for a production system. But on the other hand, PHP 7.4 did not just pop up yesterday and compatibility checks or could have been done meanwhile, or even adaption of current NC stable, not only NC next.

@go2sh
Copy link
Contributor

go2sh commented Dec 1, 2019

@nursoda Most other Distro allow multiple php Versions to be installed side-by-side and the packages are called php-7.0, php-7.1 and so on. For normal release distros, you can install the distro version and some other version (backport, custom repo). Arch does this for python, but there are many other packages, which have the same problem, e.g. the kernel.

@Thaodan
Copy link

Thaodan commented Dec 1, 2019 via email

@alerque
Copy link

alerque commented Dec 2, 2019

7.3 → 7.4 is not a major version change that distros should be expected to check every webapp against. The latest 7.x should be workable and it is incumbent on projects like this one to support it them. Distros shouldn't have to backport a bunch of patches to run on the latest interpreter, if anything only the opposite scenario should be necessary.

@rullzer
Copy link
Member Author

rullzer commented Dec 2, 2019

@alerque as said we will support it with 18 that is scheduled for mid january.

@nursoda debian/ubuntu, red hat/centos, suse etc all do not feature php 7.4 yet and usually stick to a version on a new release. Or often they allow you to install other versions. Gentoo is similar and also doesn't have 7.4 in stable yet.

So, as said you can remove the version check at your own risk. Or you wait till end of the week to try out the beta of 18.

@blizzz
Copy link
Member

blizzz commented Dec 3, 2019

@alerque PHP 7.4 (as any other releases of this level) bring their own backward incompatibilities: https://www.php.net/manual/en/migration74.incompatible.php

@eli-schwartz
Copy link

@nursoda Most other Distro allow multiple php Versions to be installed side-by-side and the packages are called php-7.0, php-7.1 and so on.

I took a look at debian as an example: https://packages.debian.org/search?suite=all&searchon=names&keywords=php

I see exactly one version of php available in each of Debian's release channels. Stretch has php7.0 exclusively, Buster/Bullseye/Sid have php7.3 exclusively, Experimental has php7.4 exclusively.

Arch Linux has php exclusively, currently at version 7.4.

Please don't try to pretend that a distro supporting one version of php at a time is somehow bizarre.

@kesselb
Copy link
Contributor

kesselb commented Dec 8, 2019

What's the intention of your post? Nobody said that "a distro supporting one version of php at a time is somehow bizarre". That's your interpretation. A user shared his way to deal with this kind of problem. Nothing wrong with that. I think there is a discussion at help.nextcloud.com regarding release strategies and early support for PHP 7.4. This pull request adds support for PHP 7.4 and is the wrong place to discuss such things.

@go2sh
Copy link
Contributor

go2sh commented Dec 8, 2019

Please don't try to pretend that a distro supporting one version of php at a time is somehow bizarre.

You have quoted only the first part of my post. I said you need some other source like backports or custom repos to install any other version then the current distro version. But every php package follow a certain naming schema and directory layout, which makes it easily possible to install multiple version side by side.

And its the same with arch. Official repo 7.4, AUR what ever php version there is. One user in the bug tracker said the right thing:

Perhaps Nextcloud should be pushed back into to AUR where having multiple versions of a package is more palatable? Upgrading right away to NC18 might not always be desirably anyway as plugins tend to lag behind, so multiple versions of nextcloud and multiple versions of php in AUR would probably offer a better user experience.

@Thaodan
Copy link

Thaodan commented Dec 9, 2019 via email

@ChristophWurst
Copy link
Member

Let's discuss this in a ticket or on help.nextcloud.com.

@nextcloud nextcloud locked as too heated and limited conversation to collaborators Dec 9, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
3. to review Waiting for reviews overview
Projects
None yet
Development

Successfully merging this pull request may close these issues.