Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:119532 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 90404 invoked from network); 13 Feb 2023 00:58:55 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 13 Feb 2023 00:58:55 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 346FC1801FD for ; Sun, 12 Feb 2023 16:58:52 -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=-1.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,FREEMAIL_REPLY, HTML_MESSAGE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL, 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-pj1-f50.google.com (mail-pj1-f50.google.com [209.85.216.50]) (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 ; Sun, 12 Feb 2023 16:58:51 -0800 (PST) Received: by mail-pj1-f50.google.com with SMTP id mg23so3871485pjb.0 for ; Sun, 12 Feb 2023 16:58:51 -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=YIj/yNZgQwt13w6sgbI2mb+cr4rW9smqGK3EwG7/13k=; b=WpLj0iAt7f7bTGnyuCvQ8PkYovQiunW+exeXy71CUDPQpd7oc6qxXybWWdm4qhR/YP Tsu7heNXMNEh9nKi1silpqVgKQ2u7Pe35nPBktgvkDi2CqntYLVoJGyZ39mBOC2UQOef 0ntQ4NeAv/HhBPCShKslF/qZpZz0ZAYpUqBDc8PYMKt6zinMAyLrKzNAoIF1I6tCRSYe 5lhu/f+XTeuV/rcgzutyQND5NN+9mxUf3ZhvmwPGvpfGMIOcbWh7QiUwz2zOkQFUHmiA jo6JXbNqoTCdMZI1V02JNZ8vU1KmeLeNnh7ILkXuxkSdA9zLrvVlOpU/LgZjR2ciPnJi IDhw== 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=YIj/yNZgQwt13w6sgbI2mb+cr4rW9smqGK3EwG7/13k=; b=L+3c+dSww+pZr2A8dQuwCdysl0ICwA1RwyEzbWvn9hGiv7XXE1yFg0n8cNIeMzkOs7 BltYX8IUI3Ut6ny8nnqg7Gdvzo8+S65wBAhObitmQ8n5msjow6ATvPPr8h1SQXIcnOEZ hGFQxyz3y+t2aygHDxhaAm6AtRE2/xKP9g9eO8wvdJSUT4g08bdeH4y1aJE8bwpzktjI SQkidx4BCLZD28VJuBWxix50Wp8/Ndt2ZolgviXCctOFt5tFJkcxo+YTWTmRMOOi2O/k 7/p3G3f3GLYn6pi/KzdLho/v4xZS76qatLv+rb002wDZd5F4MUysHYF5kLmbStyX2G4M NnVA== X-Gm-Message-State: AO0yUKUCKH68PdnFSOLIel56VX0nWu2cXFAv8DkBOtjAgruW5WK273qG HniTKlnknFhKlr+EQQ/cIVtEaSoZp1arTVfuPg4= X-Google-Smtp-Source: AK7set+Jgid0wtt8Xe38VBDRfyHbFJmpdDsXAUEhDu0whLezmg1lDFmTCb8ewF01T3ayLOWc6jaJVWnpIb3SXZUx1Bg= X-Received: by 2002:a17:90a:4315:b0:230:ea54:fc31 with SMTP id q21-20020a17090a431500b00230ea54fc31mr3780857pjg.25.1676249930554; Sun, 12 Feb 2023 16:58:50 -0800 (PST) MIME-Version: 1.0 References: <1cb213ea-ff7d-c4b2-5345-fadbc5953c94@bastelstu.be> In-Reply-To: Date: Mon, 13 Feb 2023 00:58:39 +0000 Message-ID: To: "Matthew Weier O'Phinney" Cc: Max Kellermann , internals@lists.php.net Content-Type: multipart/alternative; boundary="000000000000aa63b905f48a591a" Subject: Re: [PHP-DEV] [VOTE] include cleanup From: george.banyard@gmail.com ("G. P. B.") --000000000000aa63b905f48a591a Content-Type: text/plain; charset="UTF-8" On Thu, 9 Feb 2023 at 22:09, Matthew Weier O'Phinney < mweierophinney@gmail.com> wrote: > 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. > > [...] > > 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 [...]. > 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. > > -- > Matthew Weier O'Phinney > mweierophinney@gmail.com > https://mwop.net/ > he/him > I'm going to ignore Max's subpar behaviour and frustration in the aftermath of this. However, as the reviewer of these PRs, they did NOT completely break the build, I was working on php-src and compiling master without ANY issues during the weekend after landing the changes. The *only* build being broken was the DTrace build, which would have been fixed by a follow-up PR. We have had completely broken builds for longer days due to some other random changes, and we didn't revert them but fixed them as a follow-up. We still, for over 6 months now, have a "broken" ASAN build due to phpdbg messing up the analyser and crashing the test runner on 8.2 and master, something that multiple core devs, me included, need to work around by monkey patching the run-test.php file. These changes were initially agreed upon and multiple people were in favour, even by Dmitry. I will also say, that I spend a significant amount of time reviewing those PRs, and I would have continued, as I think they are beneficial to the project. But my opinion and the work I put into the reviews is apparently worthless. Therefore, I maintain that, IMHO, these commits should not have been reverted. The unique complaint, that should be addressed to me, is in how I merged the PRs in that I didn't squash them. The fact external extensions were broken and that we should add all relevant headers to php.h is a fair complaint and would have been fixed quite easily in a single commit and did not affect anyone effectively at this stage because we are, checks notes, 6 months at minimum before the first alpha builds of PHP 8.3 are released. The only reason they were reverted is that Dmitry demanded them as they broke the DTrace build, which he is apparently the only one to use and is not tested on CI, a failure of the project's CI infrastructure. As I previously complained, the RFC process for this kind of change is completely inadequate and demonstrates that the PHP project has a massive issue with governance and how to handle cases like this. As a final note, if the complaint had been made by anyone else other than Dmitry, I doubt these changes would have been reverted, and can we please stop pretending otherwise. Sincerely, George P. Banyard --000000000000aa63b905f48a591a--