rfc:php57

PHP RFC: PHP 5.7

Introduction

There is going to be a new major release of PHP, PHP 7, and we have agreed on a timeline for it. Because it is a major release that breaks backwards-compatibility in some areas, there have been calls to create a final minor release for the PHP 5.x line, PHP 5.7. Such a release would ease the transition from PHP 5 to PHP 7. Firstly, it would give users an extra year of official support for PHP 5. Secondly, it would allow us to add deprecation notices and pre-reserve keywords for things that will change or be added in PHP 7, in order to give users a chance to update their code.

Proposal

A final minor version of PHP 5 shall be made, PHP 5.7. Its feature freeze should coincide with that of PHP 7, however it will be released earlier (a year after the release of PHP 5.6, per the normal Release Process), in August 2015:

Proposed Milestones
Milestone Timeline Comment
1. Line up any remaining RFCs that target PHP 5.7 and PHP 7. Now - Mar 15 (4+ additional months) There are already two of these, the Make defining multiple default cases in a switch a syntax error RFC (accepted) and the Remove PHP 4 Constructors RFC (under discussion)
2. Finalize implementation & testing of changes. Mar 16 - Jun 15 (3 months)
3. Release Candidate (RC) cycles Jun 16 - Aug 15 (2 months)
4. GA/Release August 2015

Unlike normal PHP minor versions, no new features may be added to the PHP 5.7 release - any new features must go into PHP 7 instead. However, RFCs targeting PHP 7 may choose to add deprecation notices or other warnings to PHP 5.7, and pre-reserve new reserved words that will be used by PHP 7 features. Bug fixes will be allowed as usual.

Vote

The vote will be a straight Yes/No vote with 2/3 majority.

Voting started on 2014-12-29 and ended on 2015-01-08.

Accept the PHP 5.7 RFC?
Real name Yes No
aharvey (aharvey)  
ajf (ajf)  
bwoebi (bwoebi)  
daverandom (daverandom)  
derick (derick)  
dmitry (dmitry)  
francois (francois)  
fredemmott (fredemmott)  
gwynne (gwynne)  
hywan (hywan)  
irker (irker)  
jedibc (jedibc)  
jpauli (jpauli)  
kalle (kalle)  
krakjoe (krakjoe)  
laruence (laruence)  
leigh (leigh)  
levim (levim)  
lstrojny (lstrojny)  
mbeccati (mbeccati)  
mike (mike)  
nikic (nikic)  
pajoye (pajoye)  
philstu (philstu)  
rasmus (rasmus)  
remi (remi)  
rrichards (rrichards)  
salathe (salathe)  
sixd (sixd)  
stas (stas)  
thorstenr (thorstenr)  
tyrael (tyrael)  
yunosh (yunosh)  
Final result: 14 19
This poll has been closed.

References

Changelog

  • v0.2 - Target August, allow reserved words
  • v0.1 - Initial version
rfc/php57.txt · Last modified: 2015/01/08 21:32 by ajf