Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:119518 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 71112 invoked from network); 9 Feb 2023 22:09:41 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 9 Feb 2023 22:09:41 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 95D9B1804B1 for ; Thu, 9 Feb 2023 14:09:40 -0800 (PST) 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, T_SCC_BODY_TEXT_LINE 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-vs1-f54.google.com (mail-vs1-f54.google.com [209.85.217.54]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Thu, 9 Feb 2023 14:09:40 -0800 (PST) Received: by mail-vs1-f54.google.com with SMTP id d66so3698983vsd.9 for ; Thu, 09 Feb 2023 14:09:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=ukhypQOUlYV4mKkMGEmpkyIRCmLKBuvmeK2hVRyEEAg=; b=nezNkZfaoHDl6RdE/0Z9X1XI3wKAQJU6SDbENMAqNMs/C7CMNSiMGUJNqWraF44ooo cEHUvoWNl4jQBmWn0i6H/uHUZUgSTyIm4qi40GocCjlIndo16ylEUWxgtpZUNwCMbXl8 LMVtABCDYaSD+uMucWy9rhYG7xJaGSKuoLV37CgC07zxWWYm9ijauFHX0T3kMSSo+C/X XC/LF6SrtrfmbqAxThvBMl9ugUtewkSu+ejLJDIvCMXicvvkAEOfkeDyVD0kajb73Kvf qiHoVDjHQk1rhCQ4IkBKJz6fiYPpLEk2nONW7uc6wCxNubP8a1jJycptmWlFlea0acTm 5LsQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ukhypQOUlYV4mKkMGEmpkyIRCmLKBuvmeK2hVRyEEAg=; b=KjNxa4ymK+CxX0mxoa/q531K6AYqg4SczTpSRhX3FJFutYOCwWhA3iLYubnzJ+pv1b gGBXkTx2Koq2AjoavmiKZY7SIN8tEXZxH98JfwRP75vNutcOyVULbyril+kYtmIWNF3s pxzL78E8Q0fQjYDjtCI7sv/9B743EAJ9t5dlnYyBDCmrQPohADrtWm0CcXjdunNKBOv/ WAGyZGG2/E5xNAKhMGKQdyw4Rpeb3snR5L5bkWEy43747/scjeFVzlMf9wyA9J5kdwD7 lm4MEczIF+2VAxbnP13NOsUwn5p6Qb6Ef+5w7P0h8+ZKBYDc4ZDZbUSoglNuzQ5fO9jc DKZg== X-Gm-Message-State: AO0yUKVYAMp51YhG7BkNusjJDvv5ZgmiHDZx5hxLYN0lJ8NHO4E8biKh lxQ3aIduwQQNs/VdOLMQgcG3q+Zhxu6Y8mFtOS4= X-Google-Smtp-Source: AK7set/cdkon/SvKwqH6IkoVW1Y1xHR9OEmYewtLOyCRH5o6XD2tUPUBcG/4OHBshAmnH5QP/4teusehYQLgokD0IRI= X-Received: by 2002:a05:6102:53c4:b0:3f0:8af8:6a78 with SMTP id bs4-20020a05610253c400b003f08af86a78mr2774527vsb.55.1675980579368; Thu, 09 Feb 2023 14:09:39 -0800 (PST) MIME-Version: 1.0 References: <1cb213ea-ff7d-c4b2-5345-fadbc5953c94@bastelstu.be> In-Reply-To: Date: Thu, 9 Feb 2023 16:09:28 -0600 Message-ID: To: Max Kellermann Cc: internals@lists.php.net Content-Type: multipart/alternative; boundary="00000000000015774705f44ba39c" Subject: Re: [PHP-DEV] [VOTE] include cleanup From: mweierophinney@gmail.com ("Matthew Weier O'Phinney") --00000000000015774705f44ba39c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Feb 9, 2023 at 1:33 PM Max Kellermann wrote: > On 2023/02/09 19:04, Tim D=C3=BCsterhus wrote: > > However based on the discussion of the RFC I believe that voters may ha= ve > > assumed that a "No" means "A cleanup is not allowed", because several > > participants expressed an active aversion to a cleanup during the > > discussion. As for myself I've certainly had that understanding when > casting > > my vote. > > Voting "NO" means no change - and currently, cleanup is not allowed, > which you can see from the fact that all of my code cleanups were > either rejected or reverted. > That's a poor interpretation of what happened. As Tim alluded, the current status quo is that cleanup is allowed on a case-by-case basis. The particular cases resulting from your PRs were rejected, but this doesn't mean all cases will be. I'm not directly involved in maintenance, but my take on the scenario was that these were rejected and reverted because they caused breakage, whether that was in compiling a spare PHP build, or in extensions that were assuming that using certain headers would slurp in everything they needed. This breakage was unacceptable without an RFC. I saw chatter from a number of folks after the changes were merged about builds no longer compiling; considering the stability of the php-src tree, inability to build will always be a source of alarm. What needs clarification in the RFC you've presented is that a "No" vote means "no change to current processes". Personally, I'd halt the current vote, make the change, and re-start the vote at this point to ensure everyone voting is clear on that point. > > Disallowing a clean-up would require 33% of votes, whereas allowing > > clean-up would require 66% of votes. The status quo "decide on a > > case by case basis" would no longer be legal even without a clear > > agreement. > > It is indeed unfortunate that a supermajority is required for all > primary votes, because in this case, requiring only a simple majority > would be favorable IMO. > A supermajority is required on any change that would lead to backwards incompatibility for either end-users or extension writers. Your proposal is something that would do the latter. Sure a simple majority is ALWAYS more favorable, but the hurdle exists to ensure that everyone pay attention to the BC implications when they vote. > It is not clear whether the current rule is "decide on a case by case > basis"; it has been argued that my code cleanup shall be > rejected/reverted because that would make merging branches harder. > > - If that alone is reason enough to reject/revert a code cleanup > change, then this applies to all kinds of code cleanup, and no code > cleanup is currently allowed. -> "case by case" doesn't count. > > - If that alone is NOT reason enough to reject/revert a code cleanup, > then more reasons need to be brought forward to hold my code > cleanups off. > As I pointed out earlier, the changes previously merged led to breakages when compiling the project. How is that not enough? And dumping a huge bunch of PRs with such changes without first discussing it with maintainers means a lot of effort reviewing =E2=80=94 why are your proposed changes mor= e important than any of the other work the various maintainers are doing? This is why they asked for an RFC; something of this magnitude needs discussion, because it impacts everybody already touching the project, the people most familiar with it. The other point that has been brought up multiple times is that it introduces breaking changes for extension maintainers. Should these extensions be relying on one or more "god" headers instead of the specific headers for the symbols they use? Probably not. Will forcing the issue without giving them a chance to review and understand the changes, and have a roadmap for when and how those changes occur be a net positive? No; it will cause a lot of busy work for a lot of people, almost all of whom are volunteers and most of whom would rather be building out user-requested features or fixing user-reported bugs. I'm unsure why that's unclear or not enough for you. --=20 Matthew Weier O'Phinney mweierophinney@gmail.com https://mwop.net/ he/him --00000000000015774705f44ba39c--