Pour autant, il n'y a pas eu de grands bouleversements, et nous sommes encore clairement dans une phase de consolidation du code source, puisque la majorité des modifications sont des corrections de bugs.

Les bugs #52484, #52508, #52468, #52534, #51259, #52550, #52533, #51610, #52539, #50481, #52523 et #52302 sont en effet maintenant corrigé, le #52550 ayant été suffisamment retors pour avoir nécessité cinq modifications à lui seul.

Le reste des modifications concerne diverses optimisations au niveau du moteur de PHP, ainsi que du nettoyage et des optimisations, aussi bien au niveau du code source que des tests unitaires.

Ainsi, mysqlnd supportera dans quelques temps les tubes nommés, et le patch #52555 qui permet à la fonction header_list() de renvoyer le code de retour http a été intégré.

En réalité, les choses intéressantes se sont passées sur la liste de diffusion des contributeurs, internals@.

En effet, il a été question sur cette dernière de sortir une éventuelle version alpha de la prochaine version majeure de PHP, nommée pour l'occasion PHP 5.4, et qui serait basée sur l'état actuel du trunk.

Cependant, je tiens à tempérer immédiatement l'excitation qui vient de vous étreindre en lisant ces mots.

Cette question a en effet entraîné un débat et pour l'instant, aucune décision n'a été prise car aucun consensus n'a pu être trouvé.

Une partie des contributeurs désire sortir cette version rapidement, suivant en cela la décision qui avait été prise lors de l'abandon de PHP 6 de suivre la régle release early, release often, voir même d'aller plus loin et de suivre la politique de gestion de version d'Ubuntu en définissant un calendrier.

Version Time ->
5.3 ****************+++++
5.4 |*****
5.5 || *****
5.6 || | *****
6.0 || | | ****************
6.1 || | | | *****
|| | | | |
|| | | | ^ Release date 6.1.0
|| | | ^ Release 6.0.0, 5.3 goes to extended support (security only)
|| | ^ Release 5.6.0, 5.3 stays in support, 5.5 EOL
|| ^ Release 5.5.0, 5.3 stays in support, 5.4 EOL
|^ Release 5.4.0, 5.3 stays in support
^ now

Cependant, une autre partie des contributeurs pense que ce n'est pas encore le bon moment pour cela et préfère temporiser jusqu'à début septembre pour définir précisément ce que contiendra la prochaine version majeure du langage, cette dernière pouvant potentiellement ne pas être le reflet exact du trunk.

Le débat continuant au moment même ou j'écris ces lignes, il est difficile de faire un pronostic, mais vu l'activité sur le trunk depuis maintenant un mois et les nouvelles fonctionnalités qui lui ont été ajoutées, je pense que sortir une version alpha maintenant a du sens.

Il y a également eu d'autres débats, comme celui qui vise à définir si APC, doit être ou non intégré à PHP, mais pour l'instant, ce n'est pas à l'ordre du jour, vu que sa dernière version n'est pas encore stable.

Il y a également eu des propositions pour améliorer le langage, autour des espaces de nommage et de arrayAccess::offsetGet().

La première vise à permettre la résolution d'un espace de nommage relatif vers un espace de nommage absolu, et la seconde doit permettre à arrayAccess::offsetGet() de retourner une variable par référence.

Pour l'instant, ces deux propositions ne sont pas formalisées par une RFC, et sont encore discutées sur internals@.

Autre chose intéressante, il y a également eu un patch de proposé afin de permettre de lier une fermeture, aka closures, à un autre objet que celui défini au départ via closure::bind(), et à titre personnel, j'espère qu'il sera accepté, car il me semble aberrant que cela n'est pas été implémenté dès le départ.

Enfin, il y a eu une grosse discussion autour de la possibilité d'utiliser n'importe quoi comme clef de tableaux, mais techniquement, cela semble poser un certain nombre de problèmes.

Au final, les dix jours qui viennent de s'écouler ont donc été plutôt intéressants, et j'espère que le langage va continuer d'évoluer à ce rythme durant les prochains mois.

Cette rétrospective est maintenant terminée, vous pouvez reprendre une activité normale.