MyBB Community Forums

Full Version: Feedback: PHP version requirements
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
Our intentions
  • Set the minimum required version of PHP to 7.0. This will allow us to take advantage of new and extended constructs such as type declarations, which indicate possible inconsistencies at the point of writing new code.
  • Follow the Active Support with 6-month grace period. MyBB's releases will support PHP branches that are officially maintained and those for which Active Support ended within 6 months (180 days) at the point of our release.
  • Requirements for environment will be increased at minor-point release. Our requirements for versions of packages like Apache/nginx, PHP, MySQL/MariaDB, etc. could be increased with each x.Y release (for example from 2.3 to 2.4).

Why?
  • Increased performance due to PHP's built-in optimizations,
  • more language constructs and solutions available to MyBB developers and contributors, resulting in easier and faster development,
  • greater support for assuring code quality and testing (such as scalar type hints in PHP),
  • ability to use frameworks and libraries that already require higher PHP versions,
  • up-to-date PHP branches actively receive bugfixes, increasing stability and security,
  • reducing impact of incorrect behavior of unsupported PHP versions.

Additionally, by requiring higher PHP version the MyBB project joins the movement to push for larger adoption of modern and updated environments (including shared hosting and VPS/dedicated/cloud server providers that have latest software available out of the box) providing latest technologies.

Drawbacks
  • Reduced support on shared hosting providers with outdated software,
  • necessity of upgrading it by server administrators in case of self-managed servers.

Given PHP 7's throughput approaching 100% increase when compared to 5.6, we expect shared hosting and pre-installed server image providers to update their packages relatively fast.

This decision may affect other dependencies, such as database engines, and third party libraries, however our code compatibility issues are mainly associated with PHP.

Looking forward to your feedback,
The MyBB Team
I fully support the idea for use of php 7 -with the only 'main' issue in my eyes being some hosts are slow to update their php support, and also that plugins would need to be re-written in some parts due to old code practices.

However, both are things that can be worked around or solved.

Thus I fully support the decision for php7
(2016-07-14, 07:27 PM)katos Wrote: [ -> ]I fully support the idea for use of php 7 -with the only 'main' issue in my eyes being some hosts are slow to update their php support, and also that plugins would need to be re-written in some parts due to old code practices.

However, both are things that can be worked around or solved.

Thus I fully support the decision for php7

Second point is invalid, since 2.0 is a complete rewrite all plugins won't work on 2.0 anyway.
And I do want to point out for any of you who might be on a cPanel-based shared host that I'm really, really confident that the PHP version issue on shared hosts is going to be a thing of the past within the next year. cPanel has released EasyApache 4 and (with it) MultiPHP, which makes it super easy for the hosts to allow people to run up-to-date versions of PHP. Hosts will be able to let specific users run a lower version, if desired, or a higher one, without affecting other users, which isn't what the landscape is usually like today.

The hosts that will be on the later end of what will be almost an industry-wide upgrade are the ones who are still running CentOS 5 systems, which I would also imagine will get phased out relatively soon, because EasyApache 4 is only being rolled out to CentOS 6 and 7, which hosts should almost definitely be using on their recent-ish servers already.
(2016-07-14, 07:29 PM)Ben C Wrote: [ -> ]
(2016-07-14, 07:27 PM)katos Wrote: [ -> ]I fully support the idea for use of php 7 -with the only 'main' issue in my eyes being some hosts are slow to update their php support, and also that plugins would need to be re-written in some parts due to old code practices.

However, both are things that can be worked around or solved.

Thus I fully support the decision for php7

Second point is invalid, since 2.0 is a complete rewrite all plugins won't work on 2.0 anyway.

Ahh of course! A very valid point
And I would argue that if a host doesn't support PHP 7 by the time we get to release that they shouldn't be a host that anyone uses (see my post above for my reasoning). Thus, the first point is almost invalid as well.

Hosts WANT to support PHP 7 because it will let them cram more users on each server. It's just a matter of them being able to do it safely.
I'm all for using PHP 7, but must verify that all the other web apps I run aren't negatively impacted.
Yeah, by the time being. PHP version changed a lot.
Also MyBB,... drastically change into (non-independence) framework base is called Laravel.
I Understand that age have to change, from focuses code into application focus.

Well, no problem.. its matter of time, all shared-hosting provider must upgrade their system. Usually, they already built it for their newest racks. So do I,.... I've just finished my Dedicated Server into latest supported Centos 7 and leaving old PHP.. and leave my server into PHP 5.4 and PHP 7 only (for safe backwards old application and the future).

Dang, I am ready to 2.0 and willing to upgrade as soon as release it or when reach Beta/RC..
And I have over 2 millions+ posts ready to try anytime (with my own risk) over my own "super" dedicated server Smile

Good Job myBB, long life...
Is that possible for the old coded part (coded before the decision) to work with php 7? Does it mean it need a major rewrite again?
(2016-08-19, 12:53 PM)fallr Wrote: [ -> ]Is that possible for the old coded part (coded before the decision) to work with php 7? Does it mean it need a major rewrite again?

No. This will actually speed up the development as there will be no need to write custom code for features that are included in PHP 7 and it's strict type checking will reduce the amount of own automated tests that need to be created.
Pages: 1 2 3