J4 Issue ?
avatar asika32764
asika32764
13 Nov 2017

Just wonder if we have any plan to do this since 7.0 will drop official support soon.

The 7.1 has an important feature that we can set Nullable type hint.

function (?string $value): ?string

If we create some class without this hint, it will hard to change the interface declaration in the future.

avatar asika32764 asika32764 - open - 13 Nov 2017
avatar joomla-cms-bot joomla-cms-bot - change - 13 Nov 2017
Labels Added: ?
avatar joomla-cms-bot joomla-cms-bot - labeled - 13 Nov 2017
avatar Spudley
Spudley - comment - 13 Nov 2017

I second this. We're forcing a PHP upgrade anyway, we may as well aim high.

avatar brianteeman
brianteeman - comment - 13 Nov 2017

Aiming high is great but not if the web hosts dont support it ;)

These stats https://seld.be/notes/php-versions-stats-2017-2-edition are for sites using composer and you can see that even from these custom developed sites it is still too early

avatar asika32764
asika32764 - comment - 13 Nov 2017

We don't need to change so early, when 4.0 about to release, the 7.1 market share should higher than now.

avatar mbabker
mbabker - comment - 13 Nov 2017

The text in the announcement was very purposefully written in a way to not lock to a specific 7.x(.y) minimum. PHP 7 will be the minimum by the time we release, whether that be .0 or .1 (for our platform, target audience, and distribution model, .2 would be shooting ourselves in the foot unless it takes another 2 years to get 4.0 out) is going to heavily be driven based on numbers and needs.

For what it's worth, the trend continues to grow upward for PHP 7.x adoption on Joomla sites. When we published the PHP 7 announcement 3 months ago, 10.99% of 3.7 sites were on PHP 7.1 and 31.04% of 3.7 sites were on PHP 7.0 (these numbers were run within 36 hours of publishing the blog post). Right now 16.16% of 3.8 sites are on PHP 7.1 and 34.78% of 3.8 sites are on PHP 7.0.

avatar brianteeman
brianteeman - comment - 13 Nov 2017

Those are great stats!!

avatar franz-wohlkoenig franz-wohlkoenig - change - 13 Nov 2017
Status New Discussion
avatar franz-wohlkoenig franz-wohlkoenig - change - 13 Nov 2017
Category Installation
avatar Spudley
Spudley - comment - 13 Nov 2017

Aiming high is great but not if the web hosts dont support it ;)

What are the stats on PHP version support among web hosts?

Historically, I know that web hosts have been slow to upgrade for several reasons, but one of the main ones was compatibility; PHP has had a number of big BC breaks between versions that made it harder for hosts to upgrade without breaking their customers' sites. PHP 7.0 is one of those versions (hence why so many people are sticking with 5.6 for now), but 7.1 and 7.2 are not; they're easy upgrades; so if a host is willing to go up to 7.0, there should be very little stopping them from then moving up to 7.1 or 7.2. I don't expect many people to continue running 7.0 long term, especially once it goes out of support.

avatar brianteeman
brianteeman - comment - 13 Nov 2017

This is about the most generic stat available https://w3techs.com/technologies/details/pl-php/all/all

avatar mbabker
mbabker - comment - 13 Nov 2017

IMO any host that's worth the cost is letting you choose your PHP version and that means either WHM or cPanel (depending on package) are up-to-date. So for shared hosting it honestly should be less of an issue because hopefully they aren't only offering one version or forcing customer upgrades in this manner anymore (not to say they should let users stay on 5.3 forever but that one customer shouldn't block an update for others).

An equally as big issue is dealing with organizations that only let you use what comes with the OS or in its official repos (so folks running Ubuntu 14.04 are only able to use the PHP 5.5.9 build they provide and can't upgrade by either custom compiling or using a third party repo).

avatar Bakual
Bakual - comment - 13 Nov 2017

Just throwing in that even my cheap hoster has already PHP 7.1
I think hosters are adopting PHP7 because it actually pays out for them. PHP7 is way faster than PHP5 and thus they can shove more sites on the same server ?

avatar brianteeman
brianteeman - comment - 13 Nov 2017

An equally as big issue is dealing with organizations that only let you use what comes with the OS or in its official repos (so folks running Ubuntu 14.04 are only able to use the PHP 5.5.9 build they provide and can't upgrade by either custom compiling or using a third party repo).

You only need to look at the comments in the forum to understand how big an issue this is as well

avatar peteruoi
peteruoi - comment - 14 Nov 2017

Ubuntu 16.04 lts is on php 7.0 and i think it's for five years.

avatar brianteeman brianteeman - change - 25 Mar 2018
Labels Added: J4 Issue
avatar brianteeman brianteeman - labeled - 25 Mar 2018
avatar mbabker
mbabker - comment - 28 Jun 2018

OK, I think it's time we start re-visiting this one.

  • There are key features in PHP 7.1 and 7.2 that can improve our own API and give us a bit more flexibility going forward
    • PHP 7.1 has support for nullable parameter types, void return types, class constant visibility, and the iterable pseudo-type
    • PHP 7.2 supports type covariance and contravariance, allowing us to add typehints to existing APIs without creating hard B/C breaks for downstream code (extended classes won't be forced to change their method signatures to keep up), as well as parameter type widening in extended classes
  • PHP 5.6 and 7.0 reach end of support in December (6 months from now)
  • Even if Joomla 4.0 ships this year, that is 2 branches of PHP that would have a minimal support period before reaching their own end of support
    • In relation, when Joomla 1.6 shipped its PHP 5.2 minimum had already reached end of support
    • Conversely, when Joomla 3.0 shipped its PHP 5.3 minimum didn't reach end of support for nearly two years
  • Our biggest chunks of users running Joomla 3.8 are on PHP 5.6 (36.8%) and 7.0 (30.08%), newer versions account for 23.12%; not supporting PHP 5 has already lost roughly half of current (within the last nine months sending statistical data at least) users
    • This is arguably one of the bigger debate points in the decision; to be forward facing we have to be willing to not support day one upgrades for a larger portion of the userbase but we also have to be careful to not make it so difficult to move forward that the majority of those who are going to migrate cannot do so responsibly during the two year support overlap
  • Bumping to at least a 7.1 minimum aligns us with key libraries we have external dependencies to, including:
    • Symfony (4.x branch requires 7.1.3 which will have full support to 2022 and security support to 2023, given the number of components we are leaning on I do think this needs to be a key factor)
    • Doctrine's Inflector (as a replacement for our mostly abandoned class)

So I think it's time we move to at least a 7.1 minimum, and responsibly consider the benefits and issues of a 7.2 minimum.

avatar laoneo
laoneo - comment - 28 Jun 2018

All in for 7.2.

avatar asika32764
asika32764 - comment - 28 Jun 2018

7.2 +1

avatar infograf768
infograf768 - comment - 28 Jun 2018

My host is proposing 5.6 and 7.0

avatar roland-d
roland-d - comment - 28 Jun 2018

@Infograf both are eol at the end of the year. They really don't have an option for at least 7.1?

avatar Bakual
Bakual - comment - 28 Jun 2018

5.6, 7.0 and 7.1 here. 7.2 is no option yet.

avatar franz-wohlkoenig
franz-wohlkoenig - comment - 28 Jun 2018

I suggest 7.2 as Minimum for 2 Reasons:

  • Find J4-Issues in real Life
  • Users ask Providers for Option 7.2
avatar infograf768
infograf768 - comment - 28 Jun 2018

@roland-d

both are eol at the end of the year. They really don't have an option for at least 7.1?

No idea if he has a plan. My host is our friend Brad who is usually good at keeping things up-to-date.
The fact that he may not yet been proposing at least a 7.1 makes me feel that a lot of hosts could be well behind.

avatar brianteeman
brianteeman - comment - 28 Jun 2018

Instead of guessing the JSST have a contact list of hosts and we should ask them. Then it's a decision made from a position of knowledge and not supposition

avatar peteruoi
peteruoi - comment - 28 Jun 2018

The right question to host companies is not if now support 7.2. But if they plan to support 7.2 by mid December. Even 7.1 stops development by then and has only a year more for security issues.
Even today wordpress https://wordpress.org/about/requirements/ suggests 7.2 and not generally 7.x and recommends us to send a letter to our host :)
If joomla 4 is gonna happen after December i believe 7.2 is not so difficult to choose.
+1 7.2

avatar mbabker
mbabker - comment - 28 Jun 2018

Regarding hosts, also see http://phpversions.info/ (but keep in mind this is more reliant on community contributions and you're still best off directly communicating with a hosting company).

avatar Spudley
Spudley - comment - 28 Jun 2018

How long will Joomla 3.10 be supported? Because that will be the option for users who can't upgrade to Joomla 4 due to PHP version constraints. There will always be some users who are affected by this, whatever PHP version we lock J4 to, but the higher we go with locking to PHP 7.1 or 7.2, the more users will be affected, at least in the short term.

This isn't necessarily a reason not to aim high with our PHP version, but I think there needs to be some thought for those users who can't upgrade and are stuck on the last J3 release, and how long to support them. If we aim high with our PHP version, we may need to consider supporting J3 for a bit longer. (not in the sense of adding anything to it, but certainly fixing security issues, etc)

That may sound like I'm being negative, but in spite of that, I still stick with my vote for PHP 7.2 as a minimum for J4, because the long-term benefits outweigh the short term pain.

avatar franz-wohlkoenig
franz-wohlkoenig - comment - 28 Jun 2018

How long will Joomla 3.10 be supported?

@Spudley https://developer.joomla.org/roadmap.html (End of Support for 3.x: 2 years after 3.10 is released)

avatar HLeithner
HLeithner - comment - 28 Jun 2018

One more for 7.2

avatar beat
beat - comment - 17 Jul 2018

? for PHP 7.2 for Joomla 4. Strongly.
People with a PHP 5.6-7.1 host can stay on Joomla 3.10 for 2 years after Joomla 4 release.

Isn't this a double discussion with #21025 ?

avatar mbabker
mbabker - comment - 17 Jul 2018

This one is specifically regarding 4.0 minimum. #21025 deals with policy regarding when bumps may be made.

avatar jwaisner jwaisner - change - 11 Mar 2020
Status Discussion Closed
Closed_Date 0000-00-00 00:00:00 2020-03-11 19:30:52
Closed_By jwaisner
avatar joomla-cms-bot
joomla-cms-bot - comment - 11 Mar 2020

Set to "closed" on behalf of @jwaisner by The JTracker Application at issues.joomla.org/joomla-cms/18562

avatar jwaisner
jwaisner - comment - 11 Mar 2020

This discussion has ran it course and no comments have been made in many months. Closing.


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/18562.

avatar HLeithner
HLeithner - comment - 13 Mar 2020

A better close message would be j4 requires 7.2.5 at the moment ;-)

Add a Comment

Login with GitHub to post a comment