Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:115823 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 5956 invoked from network); 25 Aug 2021 16:55:46 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 25 Aug 2021 16:55:46 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 6A8DF1804BD for ; Wed, 25 Aug 2021 10:30:01 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,HTML_MESSAGE, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Wed, 25 Aug 2021 10:30:00 -0700 (PDT) Received: by mail-ej1-f47.google.com with SMTP id x11so198777ejv.0 for ; Wed, 25 Aug 2021 10:30:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=qg3C+oPdACLjLY8QB6Ukz4aqjK++1Zb8n49O470RCLU=; b=jbJKWl5p7DnbJjkyIYK4IQAwNDqoSBxknUDSu/OtDb9RmLawf96DaGD+TvSe0UZCFl 9ViTS3xUuy6u6L7e0sO8aKTY8q300palGcvCRL86PXTO+XoS1yCjlT3qL28vN7r+MafW 9qk/o1lnM83bJ8xfwoU/R0651Uffe9onTIe0ANpRov1VxKo3SX0glyHxGY8FFzVFqJOg sLsxbwtyiZjQIvsXWdDK06F+PBEjsefwF2e7S91xSPOebEHqoPAoPw2n/kM+DNqhcNvF HM6zaw4P9kZThv5sOV/u61PKUjTsjTcHvMnTuRmCkJHHeWhEj9Is/VUlfTX0GhBAhtdO Yk8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=qg3C+oPdACLjLY8QB6Ukz4aqjK++1Zb8n49O470RCLU=; b=RCJKXzmsNFFlrTV5kAbB+xUI/ezMbhT250Fnwd1JE+19+J9Za3zsyR87byAJKFyw6q L+KaF5uY8bQVUQsdw0uox6RdaKZhMFU+v1IFNBKHChqpFSQdExUSkXn+mcJTROgS5wX4 eoJ+XsQnbNNeAxIbqqwTQGHGg933snnXb5nOyRf7/ChyEWs0LTex1U5eSsdYVQ0ylaXO 4Tzj12U50aBSAhkKqhRM+ha4vFQNqwOfV82BkRbtOjGIgZRLtrHaSk34wszdO8czqj2u sq9438mkNrm91ZkM+PN4sW3RTR3lN9cx6JLnrgUSy/YTkLyRal8JFpvCKyYRfMAVeblh p2sQ== X-Gm-Message-State: AOAM530tqlAiynvAbheo6zhL8wMzH/bNzssTb2wu9lgb2iQjan+vRGDm /rjh5xUxPeJJuGavEPcMLQ7UbyC4iebpR8hbGC8= X-Google-Smtp-Source: ABdhPJy3WeJ83n/yLr4KTlrkD1WR5ZEuKKJwJFYL7mdopFgAfc5O8RMiCpq9Pgo/VAR1t79E/LIrLmSEkR9N1LcQStI= X-Received: by 2002:a17:906:c246:: with SMTP id bl6mr48256165ejb.80.1629912596353; Wed, 25 Aug 2021 10:29:56 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Date: Wed, 25 Aug 2021 19:29:44 +0200 Message-ID: To: Pierre Joye Cc: Deleu , PHP internals Content-Type: multipart/alternative; boundary="0000000000005218e405ca659929" Subject: Re: [PHP-DEV] Guidelines for RFC post feature-freeze From: nicolas.grekas+php@gmail.com (Nicolas Grekas) --0000000000005218e405ca659929 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Le mar. 24 ao=C3=BBt 2021 =C3=A0 08:09, Pierre Joye = a =C3=A9crit : > Hi Marco, > > On Tue, Aug 24, 2021 at 3:49 AM Deleu wrote: > > > > Hello everyone! > > > > We recently had the Nullable Intersection Types RFC process in an > > unconventional way starting a new RFC post feature freeze. If memory > serves > > me right, another similar incident happened with the Attributes RFC whi= ch > > had a syntax that could not be implemented without a secondary RFC [1] > and > > went through a secondary RFC which proposed a different syntax [2]. > > > > [1] https://wiki.php.net/rfc/namespaced_names_as_token > > [2] https://wiki.php.net/rfc/attributes_v2 > > > > I would like to gather opinion on a potential Policy RFC that would > define > > some guidelines for such a process. As Nikita pointed out [3], the > ability > > to refine new features is both important for the developer and > undocumented > > for the PHP Project. > > > > In order to not be empty-handed, I started a gist that can be seen as t= he > > starting point for this discussion, available at > > https://gist.github.com/deleugpn/9d0e285f13f0b4fdcfc1d650b20c3105. > > > > Generally speaking, I'm first looking for feedback on whether this is > > something that deserves attention and an RFC or is it so rare that it's > > fine to leave it unchanged. If there is interest in moving forward, I > would > > then also be interested in suggestions on things that should be > > included/excluded in the RFC. > > It is a very good text, thank you! > > It is also much needed, generally speaking. What I would add is about > what is allowed to begin with. I would rather restrict to fixes only. > > The other issue, which is the one Nicolas suffered from, incomplete > addition to begin with. Incomplete in the sense of, "We add feature A, > but behaviors A1 and A2 are not supported and can be done later". > > Many additions went through while being incomplete. It was documented > so in the RFC but it does not make it a good thing. Many of them are > indeed much needed and related to features (some) PHP users have been > waiting for. Are they critical enough for the PHP usage to allow them > in while knowing it is not complete? For almost all recent RFCS > related to syntax, arguments/return types or properties, I don't think > it justifies being added while being incomplete. It is not critical > enough to the larger user base. It makes migration paths harder as > well. > > A library or framework (main users of most of these features) may or > may not implement the given addition, requiring say 8.1, and yet again > require 8.2 and redo the implementation to support (hopefully) the > full features. > > This is a path I dislike, I may have a different view on the big > picture, however I do think we rushed too many of these features too > early. A vote does not solve this problem given the limited amount of > votes we can see. > Thanks for writing this Pierre, I wholeheartedly agree with this. This was the fundamental trigger to my RFC: trying to make intersection types closer to general usefulness *in*my*opinion*! (I don't want to reopen the topic :) ) I would welcome a new RFC to clarify what is allowed during the feature freeze. As I wrote in another thread, my opinion is that anything that is not yet released should be re-discussable until either beta or RC stage, at least for simple changes (I wouldn't have submitted my RFC if the patch wasn't trivial from a technical pov.) WIth the current feature freeze schedule, I realize that there is little to no room for userland to play with a feature-full binary before it's too late to give feedback. I experienced this when I was objected that the RFC was 4 months old already. I can't keep up with testing all RFCs. But if there is a clear window where such feedback is welcomed, I would happily use it. I think others would too. Nicolas --0000000000005218e405ca659929--