Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:128656 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by lists.php.net (Postfix) with ESMTPS id 3229F1A00BC for ; Mon, 8 Sep 2025 15:14:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1757344409; bh=h9VinCfPBLGl484T94x6Sx9WGQZUvt4gRLvw2viRW2Q=; h=Date:From:To:In-Reply-To:References:Subject:From; b=Ju7eOuHNJ0e2JPXb6ENSdr4f7bkYyRIuKr6ZBn2UlaQwIwOpzkWrZMZPQCW1OHe72 HL4omVNdc2Q69hd/XpRW2zjhciSIf1QC4QzXytcmWK09NJo/XIXL48erLcNtghrlau JDzLShO2SYrpvym4VkVKIk9t5wyOdvkTnIWH8CB2UH5h7rd8NH8EFBR7ENNc+INgM2 kJv/p237vG1JG45AFw6tLYqFKsWr9hKwM4pAlJh2INPL1J9JgI0TH8UYVAktSOWcz+ 6Wctylf+jTMk4wcR2tFYp3bbY0N1R2Tlv2ivakrEGb2N+9j7gAvcjtvHcZSzgBTrxu NjmwMhNjCi1Rw== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 3C34B180066 for ; Mon, 8 Sep 2025 15:13:28 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_MISSING,RCVD_IN_DNSWL_LOW, SPF_HELO_PASS,SPF_NONE autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: No X-Envelope-From: Received: from fhigh-a2-smtp.messagingengine.com (fhigh-a2-smtp.messagingengine.com [103.168.172.153]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Mon, 8 Sep 2025 15:13:27 +0000 (UTC) Received: from phl-compute-10.internal (phl-compute-10.internal [10.202.2.50]) by mailfhigh.phl.internal (Postfix) with ESMTP id DD2F614000F2 for ; Mon, 8 Sep 2025 11:14:54 -0400 (EDT) Received: from phl-imap-02 ([10.202.2.81]) by phl-compute-10.internal (MEProxy); Mon, 08 Sep 2025 11:14:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= garfieldtech.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to; s=fm1; t=1757344494; x=1757430894; bh=52CjNov2L7KZBAghlAOiG N0/Wv7j1PQ1tmxg3DyRtrM=; b=kD9ZaxMZ0lqc9C9+MFl7bgF/QPbhzkLnomYTc tK+MSby7LEulsyMFQVvWCErLNhawMmtM+lRbLFaTtgGiy0KyGsWZAmyMMSiIw3yq pbNQ5ZL7J80HriSBJ/FI4QAple/LtTGkjZ5M5Xl2kVjwpTm4r3ZN9ntOL22orJBB 0LpNCN6vc8xSNUtWWU6ewBWJIhaQ0NCmVcPvbcEjr0Ysv3S7tlBWPXjdLIXEXLK0 9D37f6Wp0gmaFM27uKziU2U4wyfliMdwWg1UHqjnxnmGbkRktm9Gxqv6XMbVtGdk ITIx3f7zpEJMsG2yDr3ed00rb7dPFQhNuVbMENoWS6XxIfnKA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; t=1757344494; x=1757430894; bh=5 2CjNov2L7KZBAghlAOiGN0/Wv7j1PQ1tmxg3DyRtrM=; b=ahn1sTPiVAIulGHx3 tzGVblyTKflwrYlCLhp8a4Bc1cJ522puij04OB/z9lkZI+vN9dgAQ6AOwh7RH4Be 9cA6wQn9KEWwqqClWaAPNF/hYVO16rwFdg06L3fLYJiGLU1/kmH07Aid8R9vSlZX 6Tun3zeM78BRZd5XZVlBK1QKV4yGGy2GqwiFmdVUPOPgZtsCi3qwMJELHMIImCHK v48Zuf5SKjtVMHEBTT2KUGx45sQHbWWhz7xBD2LXKhl2N0W13oHoZGDQDL6gADES 9AgmSuTwws2Xu1MJgpONqB2e1zABkZh1kXzBechxa8Ox+94N4SxEPekeHwzU/mSc OMauw== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggddujeekiecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr ihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjug hrpefoggffhffvkfgjfhfutgfgsehtqhertdertdejnecuhfhrohhmpedfnfgrrhhrhicu ifgrrhhfihgvlhgufdcuoehlrghrrhihsehgrghrfhhivghlughtvggthhdrtghomheqne cuggftrfgrthhtvghrnhepheejfeevgfefudetffffvdehiedukeeifeelvedvudeigfek hedvveehffdvgeetnecuffhomhgrihhnpehgihhthhhusgdrtghomhenucevlhhushhtvg hrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehlrghrrhihsehgrghrfhhi vghlughtvggthhdrtghomhdpnhgspghrtghpthhtohepuddpmhhouggvpehsmhhtphhouh htpdhrtghpthhtohepihhnthgvrhhnrghlsheslhhishhtshdrphhhphdrnhgvth X-ME-Proxy: Feedback-ID: i8414410d:Fastmail Received: by mailuser.phl.internal (Postfix, from userid 501) id 749D2700065; Mon, 8 Sep 2025 11:14:54 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface Precedence: list list-help: list-post: List-Id: x-ms-reactions: disallow MIME-Version: 1.0 X-ThreadId: Afi_xSa239nk Date: Mon, 08 Sep 2025 10:14:09 -0500 To: "php internals" Message-ID: In-Reply-To: <4b809fc105b2cb53992dedde44cf6bc8@bastelstu.be> References: <53cdbf5b-7c6e-4ba1-9987-332634cab527@bastelstu.be> <4624748F-0C62-4E3C-81D0-5CDC56FEC55F@nicksdot.dev> <68c44ae3-8e1b-419d-9c30-906b9c2d5a81@app.fastmail.com> <0f32efec-b6c9-4ec0-96bf-297da722aaf1@bastelstu.be> <4b809fc105b2cb53992dedde44cf6bc8@bastelstu.be> Subject: Re: [PHP-DEV] [RFC] Clarify discussion and voting period rules Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable From: larry@garfieldtech.com ("Larry Garfield") On Mon, Sep 8, 2025, at 9:20 AM, Tim D=C3=BCsterhus wrote: > Hi > > Am 2025-09-05 18:58, schrieb Larry Garfield: >> Proposed language, to turn the whole thing around: >>=20 >> ----- >>=20 >> An RFC author MAY start a vote at any time, provided that: >>=20 >> * It has been at least two weeks since the last major change. >> * It has been at least one week since the last minor change. >> * There has been at least one post of any kind in the discussion thre= ad=20 >> within the last 6 weeks. >> * The author has posted an intent to open the vote at least 48 hours=20 >> prior. (This post is the only one that does not count toward the "la= st=20 >> 6 weeks" rule.) >> * There is no ongoing relevant and substantive discussion still=20 >> happening in the thread. The author may determine what qualifies as=20 >> relevant and substantive, but SHOULD be liberal in interpreting that. >>=20 >> ----- > > Thank you. That would likely require breaking up the existing structur= e=20 > oh =E2=80=9CDiscussion Phase=E2=80=9D and =E2=80=9CVoting Phase=E2=80=9D= a little to incorporate this=20 > cleanly. It would basically make the entire =E2=80=9CDiscussion Phase=E2= =80=9D section=20 > obsolete, which is quite large of a change that I'll need to think abo= ut=20 > a little more. > > Perhaps the latest changes already make the language a little less=20 > awkward? It's an improvement, but I think it can still be improved further. It's= still very verbose, and not in ways that I feel are necessary. Would you be OK with me PR-ing a restructure to try and clarify further,= including the text above? (I used to be the documentation lead for a former employer, was a journa= list for a few years, and wrote most of the bylaws for FIG. I think I'm= reasonably good with words.) >> (The final point is to help avoid the hecklers veto problem. If peop= le=20 >> are just talking in circles, or there's a tangent discussion still=20 >> going that doesn't matter to this RFC, those shouldn't count. > > I have just incorporated a suggestion from Ilija to soften the languag= e=20 > a little:=20 > https://github.com/php/policies/pull/23/commits/2d022476e647ab12ac7816= 73597fec2ad87cba82 > >> I am also still not 100% convinced this level of formal-time-extensio= n=20 >> is necessary. There are always RFCs introduced late in the cycle tha= t=20 >> run up into freeze. That will happen no matter what we do; they may=20 >> even be going for a few months before getting there. But if consensu= s=20 >> is finally reached 13 days before the last day to start a vote to mak= e=20 >> the freeze deadline, and everyone seemingly agrees with the final=20 >> change, it seems silly to say "whelp, sorry, you should have posted t= he=20 >> last update 12 hours earlier, now we all have to wait an extra year f= or=20 >> the thing we finally agreed on." > > I believe a clear and objectively measurable rules are necessary to=20 > treat everyone fairly. If 13.5 days are acceptable, are 13 days also=20 > acceptable? What about 12.5 days? Where do we draw the line? As I said elsewhere, if we were an organization with that level of forma= lity and structure, I'd likely agree. But this project has actively rej= ected even a modicum of structure or "enforcement" ability, so it seems = incongruous to have highly pedantic scheduling but loosey-goosey everyth= ing else. >> The one place I think it would matter is when the vote closes, since=20 >> that's a hard-cutoff for someone to vote or change a vote. For that,=20 >> IMO the best solution is technical: Update the voting widget to both=20 >> have an auto-close time, and show the start and auto-close time on th= e=20 >> wiki page. The vote closes when the widget says it does. Presumably=20 >> it would be easy for it to default to the exact same time as the star= t=20 >> stamp, and then... I don't care about leap seconds or daylight saving= s=20 >> time. It ends in ~2 weeks, automatically, and the exact time is righ= t=20 >> there on the page. Plan accordingly. > > The voting widget already has support for an automated closing (an=20 > example is in the template). But it would certainly make sense to also=20 > show that within the widget itself. I'll see if I can send a PR to do=20 > that. I still believe that formalizing when the vote may *start* makes=20 > sense. And of course, the RFC author needs to accurately calculate the=20 > end date still. Personally I just round to the next half hour to be we= ll=20 > over 2 weeks and to get a nice round time. I've seen others simply use=20 > the next UTC midnight after 14 days. > > Best regards > Tim D=C3=BCsterhus I would strongly recommend we make using the auto-closer mandatory, then= . I don't think I've ever used it as I didn't know it was available, bu= t I'd much rather we all use that and simplify things. Also, I think this is new: > If issues with an accepted RFC are noticed during implementation, an e= rrata section explaining the necessary changes SHOULD be added. We should include guidance on what level of changes are acceptable and w= hich would require a new RFC, or even possibly unaccepting an RFC. As examples: 1. Attributes went through 2-3 extra votes to fiddle with the syntax aft= er the initial RFC. 2. Hooks had a follow-up RFC to approve a non-syntax change to error han= dling, in the name of performance. 3. Pipes had a non-RFC syntax change to handle the unexpected parsing is= sue with arrow functions. I'd argue that #3 was a larger change than #2, yet #2 had an RFC and #3 = we decided did not need one. (Not suggesting any of the above was wrong= , they're just examples to show we're not currently consistent.) I would recommend we give this decision-making to the RMs. If a change = needs to be made post-vote, the RMs are empowered to decide if it needs = a follow-up RFC, follow-up informal discussion, or "just do it, it's fin= e." (All of the above should still be included in Errata, of course.) --Larry Garfield