>
> On Mon, 16 Aug 2021 at 10:04, Nikita Popov <nikita....@gmail.com> wrote:
>
>> On Mon, Aug 16, 2021 at 9:45 AM Joe Watkins <krak...@gmail.com> wrote:
>>
>>> Morning all,
>>>
>>> The initial RFC was clear that nullability was not supported, however
>>> that
>>> doesn't seem to be have widely understood.
>>>
>>> When I said we should move forward I did imagine that there was some
>>> consensus about the syntax we should use if we were to support
>>> nullability.
>>>
>>
>> Based on the vote, it looks like there's a pretty clear consensus on
>> (X&Y)|null :)
>>
>>
>>> As this conversation has progressed it has become clear that we don't
>>> have
>>> that consensus, and many people are just not comfortable trying to build
>>> consensus this late in the cycle.
>>>
>>> The RFC is not passing currently so I don't think we actually need to do
>>> anything, except prepare to deploy the feature that was voted in, pure
>>> intersections.
>>>
>>> The RFC should be allowed to complete, it's gathering important data.
>>>
>>> In the end, I'm not as happy to make an exception as I was when the
>>> discussion started.
>>
>>
>> FWIW I think that if we granted an exception for this once, we shouldn't
>> go back on it. Maybe there should have been some discussion among RMs about
>> this, but I think your agreement was interpreted (at least by me and
>> presumably Nicolas) as it being fine to go forward with this RFC from a
>> release management perspective. Now that the vote is underway, people can
>> take the fact that this is targeting 8.1 into consideration in their choice
>> -- I suspect that a lot of the "no" votes here are specifically due to
>> that, not because they generally dislike support for nullable intersection
>> types.
>>
>> As a meta note, I think it's important that we're open to minor changes
>> to new features during the pre-release phase -- it's purpose is not just
>> implementation stability. In fact, we can fix implementation bugs anytime,
>> but usually can't do the same with design issues. (Of course, in this
>> particular case the proposed change is backwards-compatible, so there is no
>> strict requirement to make a change before the stable release.)
>>
>> Regards,
>> Nikita
>>
>
Morning Nikita, all,
>
> The exception was granted to ratify consensus that I thought we had - and
> that one of the two primary votes on the current RFC seems to support.
>
> However, the RFC we got was something that contained multiple primary
> votes - we must consider the first two votes primary, we don't want to
> choose syntax on a 50% majority.
>
> At the moment it looks like we don't have a consensus that adding
> nullability (at this late stage) is important.
>
> I too think it's important to be flexible in this stage of the cycle, but
> I look at the opposition to making this change now and that degrades my
> confidence that making the change this late even if it does pass is a good
> idea.
>
> Cheers
> Joe
>

What a mess! I feel so disappointed by the lack of clarity of the processes
here.

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!? This should have been discussed before between release managers.
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?!? 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.

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. ¯\_(ツ)_/¯

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.

Please advise (release managers mainly I suppose, since you're the only
ones having some sort of official authority here).

Nicolas

Reply via email to