Hi Nicolas, Le jeu. 19 août 2021 à 12:25, Nicolas Grekas <nicolas.gre...@gmail.com> a écrit :
> What a mess! I feel so disappointed by the lack of clarity of the > processes here. > You aren't alone and it is challenging to make that kind of decision. I would have been more confident saying it's ok if the process and feature freeze was clear about the fact that even syntax changes are allowed a couple of days before a RC1 provided that it touches a new feature. > The RFC was granted a "go" by a release manager, but suddenly, in the > middle of the vote, another release manager raised an objection to this > grant!? > I'm sorry for the timing and I was also not aware of it. > This should have been discussed before between release managers. > Agreed! That would have been ideal. > Also, this "go" is now apparently revoked based on the partial results of > the vote. This is obviously interfering with the vote itself! I'm not > blaming any individuals, but some processes should clarify how this is > supposed to work. At least please coordinate together on such topics! 🙏 > > The processes also lack clarity about what the feature freeze is supposed > to mean. We're having a metadiscussion about whether this RFC can target > 8.1 or not, and many ppl stated that they would vote against it not because > they don't want nullability, but because they don't want it in 8.1, or > because they feel it's too late for 8.1. I can't blame them for that, but > what is "feature freeze" supposed to mean if we aren't allowed to discuss, > alter, or even revert not-yet-released features?!? > I share with you the lack of clarity. Commenting on the various aspects of feature freeze (personal pov): - discuss: discussing shouldn't be prevented in any way, never. - alter: that is the most touchy part as alteration might be about very various levels: edge cases, implementation details, conceptual ones, syntax,... In a feature freeze, I would only consider minor changes that wouldn't have influenced the way people would have voted the RFC. That would exclude any conceptual changes as well as syntax ones. - revert: if there are evidence that something that has been voted "yes" really brings unforeseen challenges and provided that a majority would recognize something that has been accepted should better be reverted, I think we must be open to revert the introduction of a new feature: better not having a new (buggy?) feature than a solid one later. In the case of your new RFC: I rather see it as another feature on top of a new one that even requires syntax changes. It may prove that the original one was not rock-solid enough but it may also be seen as an extension of it. > This should be shielded by some consensus on what is allowed during the > feature freeze. On my side: anything that is not yet released should be > re-discussable until either beta or RC stage. If we choose to go with beta, > we should give more time between the start of the feature freeze and the > first beta, precisely to fix what happened to this RFC, aka to give a > window for the community (me here) to play with the soon-to-be features and > give feedback. > Either extra time, or having a way to influence the schedule of the releases. For now, we work with a fixed schedule and don't know (at least: me) how strict we must stick to it. The fixed schedule of the releases is what makes me more comfortable with the idea of reverting a new feature rather than extending the scope of one. > Based on the partial results of the vote, we could conclude that the > consensus is to 1. not allow nullability and 2. force bracket around > (X&Y)|null. I can't read this as anything else than ppl voting not on the > RFC, but on this metadiscussion about the feature freeze + some fear that > we might put ourselves in a corner with the syntax. > > The RFC should be allowed to complete, it's gathering important data. >> > > Because of what I just wrote about, I don't think we can rely on any data > here. The discussion should be rebooted from scratch for me. Apparently, we > need the full syntax for composite types to decide for the syntax for > nullable intersection types. ¯\_(ツ)_/¯ > I also think that we can't rely on the data for the reason you mention even if I intended to vote "no" on the feature, not on the targeted version of PHP, I may be the exception there. > Now, I don't know what to do. The vote started and is not looking good for > the proposal. Some will say that I didn't want to see it fail if I withdraw > it. But honestly, with all those interferences, I'm not sure the conditions > are met to have a fair vote. > I understand you Nicolas. Let me and the other RMs have a chat about that so that we explore all the possible options > Please advise (release managers mainly I suppose, since you're the only > ones having some sort of official authority here). > > Nicolas > Cheers, Patrick