rfc:php6
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
rfc:php6 [2014/07/06 00:44] – Clarity, vernum ajf | rfc:php6 [2014/07/22 15:55] – zeev | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== PHP RFC: Name of Next Release of PHP ====== | ====== PHP RFC: Name of Next Release of PHP ====== | ||
- | * Version: | + | * Version: |
- | * Date: 2014-07-05 (latest 2014-07-06) | + | * Date: 2014-07-05 (latest 2014-07-22) |
- | * Author: Andrea Faulds, ajf@ajf.me | + | * Authors: Andrea Faulds |
* Status: Under Discussion | * Status: Under Discussion | ||
* First Published at: http:// | * First Published at: http:// | ||
Line 10: | Line 10: | ||
There has been some debate over what the name of the next major release of PHP, to succeed the PHP 5.x series, should be called. This RFC is an attempt to settle the matter once and for all. | There has been some debate over what the name of the next major release of PHP, to succeed the PHP 5.x series, should be called. This RFC is an attempt to settle the matter once and for all. | ||
- | Unlike most RFCs, this deals with a release process issue, and not with extending PHP itself. | + | This RFC proposes that the next major version of PHP shall be named either PHP 6 or PHP 7, based on the outcome of this vote. In the following arguments for both sides are presented. |
- | ===== Proposal | + | ===== Historical context |
- | This RFC proposes | + | The reason why this question even comes up, is that there has been a previous attempt at a new major version, which was started in 2005 and abandoned in 2010 due to difficulties in the Unicode implementation. Apart from language-integrated Unicode support, most features added for that version were integrated either in PHP 5.3 or PHP 5.4. |
- | ===== Rationale ===== | + | This previous attempt at a new major version was also developed under the name of PHP 6 and as such there are various resources referring to it, including a number of books. There is concern that there might be confusion between the abandoned previous attempt and the work that is currently happening. |
- | PHP 6 is the most obvious name choice as it follows the existing numbering scheme. Do we really need to break from it? | + | ===== The Case for PHP 7 ===== |
- | The main argument against this is that there was previously a project, which was abandoned in 2010, also called PHP 6. There have been many discussions about it in the past and some books and articles dealing with it exist, and this could cause confusion. Essentially, | + | The case for choosing 7 as the next major version |
- | In past discussions, | + | ==== No good reasons NOT to skip version 6 ==== |
- | Another point that has been made is that due to online reviews, it would quickly become clear that these old "PHP 6" books do not cover the new PHP 6; people | + | Regarding the first element, it seems that many people |
- | Finally, with the release | + | The main confusion point cited by proponents |
- | ===== Proposed Voting Choices ===== | + | We also wouldn' |
- | I propose | + | ==== Strong reasons of why we actually should skip version 6 into 7 ==== |
+ | |||
+ | There are several reasons of why we shouldn' | ||
+ | |||
+ | * First and foremost, PHP 6 already existed and it was something completely different. | ||
+ | * While it's true that the other PHP 6 never reached General Availability, | ||
+ | * PHP 6, the original PHP 6, has been discussed in detail in many PHP conferences. | ||
+ | * PHP 6 was widely known not only within the Internals community, but around the PHP community at large. | ||
+ | * There' | ||
+ | * Unlike the ' | ||
+ | * Skipping versions isn't unprecedented or uncommon in both open source projects and commercial products. | ||
+ | * Version 6 is generally associated with failure in the world of dynamic languages. | ||
+ | * The case for 6 is mostly a rebuttal of some of the points above, but without providing a strong case for why we *shouldn' | ||
+ | |||
+ | As a special non serious bonus, 7 is perceived as a lucky number in both the Western world and Chinese culture. | ||
+ | |||
+ | ==== Summary ==== | ||
+ | |||
+ | Version 6 is already taken by a highly publicized project that is in the minds of a very large chunk of PHP developers, internals and general PHP community alike. | ||
+ | |||
+ | We risk nothing by calling it PHP 7. We risk confusion and negative perception if we insist on reusing 6 for a completely different project. | ||
+ | |||
+ | Taking a risk that stands to yield absolutely no reward | ||
+ | |||
+ | |||
+ | ===== The Case for PHP 6 ===== | ||
+ | |||
+ | * According to our current release process and semantic versioning, the next major version after PHP 5 should be PHP 6. Unless there are very strong reasons to the contrary, we should not abandon our current version numbering scheme. | ||
+ | * While there exists a number of resources about the previous attempt at a PHP 6 release, these will be quickly displaced once PHP 6 is actually released. This applies both to blog posts, which will be (and partially already are) displaced by newer content, and books, which will receive negative reviews because they do not actually cover the version of PHP they claim to cover. | ||
+ | * By now there are also many resources which refer to the next major version as "PHP 6", without having any relation to the abandoned previous attempt. This includes anything from blog posts and discussions about features for the upcoming version, to RFCs and design documents in this wiki. Calling the next major version "PHP 7" instead will cause confusion in this direction. | ||
+ | * In OTR discussions about a new major version, it is nearly always referred to as "PHP 6". Given that the current version is PHP 5, people understandably jump to the conclusion that the next one will be "PHP 6" and refer to it as such. In the minds of many devs "PHP 6" | ||
+ | * While many participants on the internals mailing list were involved in the original PHP 6 effort and as such are acutely aware of its existence, the larger PHP community | ||
+ | * While there has certainly been precedent for missing version numbers, the examples given in the previous section involve larger changes to versioning. When going from version 1.4 to 5.0 it's a clear change in the versioning scheme and not just a skipped version. The existing precedent suggests going to PHP 2016 or something equally distinct, rather than skipping a version. (No, this is not a serious suggestion.) | ||
+ | * Choosing a language version based on "lucky numbers" | ||
+ | |||
+ | |||
+ | ===== Vote ===== | ||
+ | |||
+ | A 50%+1 (simple majority) vote with two options, "PHP 6" and "PHP 7", is proposed. If more votes are for PHP 6, that shall be the name of the next major release of PHP. Otherwise, if more of votes are for PHP 7, that shall be its name. | ||
+ | |||
+ | Voting started 2014-07-20 but was cancelled. | ||
===== References ===== | ===== References ===== |
rfc/php6.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1