On Sat, Jan 30, 2016 at 6:34 PM, Andrea Faulds <a...@ajf.me> wrote:

> Hi everyone,
>
> The vote on the OpenSSL AEAD RFC[1] has made me question our current RFC
> process again. Under the Voting RFC[2], "Language changes" (in practice,
> changes to syntax and semantics) require at least a 2/3 majority to pass
> when they come to a vote, whereas changes that don't fall under that
> category require a mere plurality of more Yes votes than No votes, aka
> "50%+1".
>
> The stated justification for the 2/3 requirement is that such changes are
> more permanent and shouldn't be arbitrary. However, there's no
> justification given for why other RFCs *shouldn't* receive the same level
> of scrutiny.
>
> Consider that the language, in practice, is not simply the syntax and
> semantics specified by the language specification and implemented by the
> Zend Engine or HHVM. PHP's bundled extensions are also an important part of
> PHP which define the language: an implementation of PHP which lacked them
> would not be very useful for running real PHP applications, and it is only
> with considerable difficulty that you could write PHP code without them. In
> fact, certain key primitive operations on PHP's built-in datatypes are only
> exposed through functions in ext/standard! And yet, RFC votes on changes to
> the extensions are held to a lesser standard than changes to the syntax.
>
> Another thing to consider is the types of changes that RFCs propose. These
> are usually used for changes that should not simply get in through
> consensus around a pull request. This can range from simply adding new
> functions, to making backwards-incompatible changes. These are not
> decisions to be taken lightly.
>
> Finally, I think that a proposal that is good enough will have no trouble
> achieving a 2/3 majority anyway. In practice, many RFCs pass by unanimous
> vote!
>
> So, would there be support for raising the passing threshold for
> non-"language changes" to 2/3? At the very least, I think we should have
> this for backwards-incompatible changes. If there's enough support, I'll
> write an RFC, though I'll have to figure out how exactly to change the
> rules. (Can the voting RFC be amended by another RFC? The RFC process isn't
> a good fit for procedural things like this.)
>
> Thanks!
>

I'm definitely in favor of requiring a 2/3 majority in all cases. An RFC
that passes with 51:50 votes is clearly not an RFC that a consensus exists
on. On the contrary, it indicates a very controversial change which
requires further deliberation.

In the end, this change will not have significant impact on how many RFCs
we accept. The last time I looked into this, the vast majority of RFCs that
passed at all, also passed with 2/3 majority. This will only filter out a
few controversial cases.

Furthermore requiring a consistent quota for all RFCs will avoid the
inevitable bickering that seems to spring up with many "major" RFCs, about
whether or not a 2/3 vote is required in a particular instance. For RFCs
that are significant, but not clear language changes (like the PHP 7 naming
RFC, or the phpng RFC, or the int size RFC), there's always a dozen or two
mails in the discussion devoted to this most important of questions.

Thanks,
Nikita

Reply via email to