Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:114343 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 4250 invoked from network); 10 May 2021 15:03:42 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 10 May 2021 15:03:42 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 9F487180508 for ; Mon, 10 May 2021 08:11:15 -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-Virus: No X-Envelope-From: Received: from mail-lf1-f43.google.com (mail-lf1-f43.google.com [209.85.167.43]) (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 ; Mon, 10 May 2021 08:11:15 -0700 (PDT) Received: by mail-lf1-f43.google.com with SMTP id a2so2868649lfc.9 for ; Mon, 10 May 2021 08:11:15 -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=TCd35Thhlcy9nGWVLxsgb1MF+gxUqFRXfjIcRbUpWok=; b=rQEsVfOVJNbGdY1xOF/guCMurRU0HT+MCap9JNVylfRmKGBMw+s5MA0FpgCkQIm75F Uf2DyywiB1Bt8feNHXZzPhzdBvvqrD9HWWjxor4AOUQi57Yhy3rMqVB98tzZ8DezuUFC l9tM/FIC8hAYIkDmY15REtru1ItLX2ScZUCP4mGGglaMKx1tUE0sOgAP4I533Y6uUjIZ 9fk2AFX1Yvn72Zv4sh39fICxhLcSBwxC45+J8q66TGvEkhjYwovAydbaXxbCXTmtnVxp sBAM6UJJKIrqiwgqbxlSPn70iyX7QMmaS62P3F2Ul5zKePyz0FjW5AUk+VItrDKcF0J+ WhVw== 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=TCd35Thhlcy9nGWVLxsgb1MF+gxUqFRXfjIcRbUpWok=; b=mtDdhwWVT1WqWJXZVvYl7hBAeUlMyUsYSlElVG71WRHUV8ghpzOZWrXUMJ13tr7eqN jVmKqNY7KBB/KI0B1qV53WnRdTg4wVejdNt8dKNK2LfoezSrNSKK6CiXW7/QxPDNz52I oVUUS0p68/IvFhnpD/aMeyDt+UrnRTOE0InCuyu49MFDW4Ocif82M/d9v40Z7RHQsAEd RY86jU5B5buyc/Bh7JCArrGf2tK6rtvZ3hvweHksqYd4XWV3W2FUT2T7EyzKw2Y1Nqkh mHBCEXEfw0Y8DjK5qaRkCILp4oBk82Fz8dpGE+ZZBSZ0fHvzsiB0S7+u+sBvEVb/xAFo IFRA== X-Gm-Message-State: AOAM530iYieRVbvxpoGoycRcJaWm88PRhDFpWs5exGQd2qMmKMQD+3tU eCjbVgF8EMaJFhSkOFFbRNXsB8NsPzQxHSSfax4= X-Google-Smtp-Source: ABdhPJwS3KSlIP0LSdmHff0ntdBd5p9QhqmJssjlv9DoGEMvtaDdrhp7IpowhNFXgEEYcrFRt1NhM0u4fGbKjiz98P0= X-Received: by 2002:a19:48d3:: with SMTP id v202mr17028169lfa.315.1620659471294; Mon, 10 May 2021 08:11:11 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Date: Mon, 10 May 2021 17:10:54 +0200 Message-ID: To: Dan Ackroyd Cc: Rowan Tommins , Joe Watkins , Internals Content-Type: multipart/alternative; boundary="00000000000016e07905c1fb305a" Subject: Re: [PHP-DEV] Re: Bugsnet From: nikita.ppv@gmail.com (Nikita Popov) --00000000000016e07905c1fb305a Content-Type: text/plain; charset="UTF-8" On Mon, May 10, 2021 at 3:29 PM Dan Ackroyd wrote: > Hi Joe, > > > We have a spam problem on bugsnet > > I would snarkily say "maybe accept the PRs from people wanting to work > on it?", but I realise that ignores the underlying problem, that PHP > lacks people. And particularly lacks people who can dedicate time to > understanding, reviewing and saying no to things. > Yes, I think this is something people often don't get: It's not just a matter of finding someone who can implement a change, but also someone who is willing to review it, and someone who can perform necessary infrastructure changes, such as server configuration changes or database migrations. The last part is where things commonly fail. Even if the plan is to move to a different platform, I'd like to take > the time to document what is lacking about bugs.php.net currently. > Please can someone turn on issues for php/web-bugs? > Ha, this is a great illustration. You do realize that the bug tracker for bugs.php.net is bugs.php.net? Under the "General issues - PHP.net Website problem" category, I believe. However, bugs.php.net is really not suitable for the kind of use you have in mind. And this also extends to other areas. For example, for php-src we sometimes use https://github.com/php/php-tasks/issues to track and coordinate certain changes, because bugs.php.net is very inconvenient for that purpose. So, here's my 2c on the proposal. Let me start with issues I see with bugs.php.net: * bugs.php.net is regularly semi-down (slow to the point of being unusable). Either Derick or myself regularly restart the server to recover it. I don't believe anyone ever looked into the cause. * There is a lot of linkspam, and it's getting worse. I delete a few comments ever day. On some days it's just a few, on some days it's dozens. This is something that *can* likely be addressed, but may degrade user experience further, e.g. with recaptcha, which is notoriously finicky. * Next to linkspam, we unfortunately also suffer from hostile user comments from one Reindl Harald. This user is banned from the mailing list and our GitHub organization, but we are not able to effectively ban him from bugs.php.net, because it requires no form of authentication whatsoever. You can enter an arbitrary email. I think many people don't appreciate it, but this is actually a ***really big problem***. This user is consistently and routinely very rude to bug reports, which hurts the overall reputation of the PHP project. While it should be clear that he does not represent the PHP project, it still remains a fact that that if you submit a bug on bugs.php.net, you are quite likely to get some insults thrown at you. This is not great. * I think to resolve the previous point (and linkspam as well), we need to require authentication on bugs.php.net, which would further degrade user experience. As part of the git.php.net/master.php.net incident response, we also discussed whether we could move bugs.php.net to authenticate using GitHub, now that all PHP contributors need to be part of the PHP GitHub organization. I think if we wanted to retain bugs.php.net, we'd have to pursue something in this direction, with all users required to authenticate through GitHub. * For me personally, as a developer with a php.net account, bugs.php.net is actually a somewhat okay system. I think the main people suffering from it are bug reporters not affiliated with php.net. One reason is that there's no good way to manage your reported bugs -- the only thing you get is a per-bug (!) password to edit it later, bug you can't track bugs you reported or similar. * Bug reports are submitted with incorrect categories very often. I can't really blame the reporters for that, because there's a *lot* of them, and they're grouped, so it's really not easy to find the right one (even for me). This is common to the point that I would consider the inability of the reporter to specify category/label on GitHub a feature rather than a bug -- this is something that should be done by someone during triage, who is familiar with the available categories/labels. * bugs.php.net does not support checkboxes or edits to the bug description, which makes it completely unsuitable for tracking issues and any kind of coordination works (this is part of the reason why the php-tasks tracker exists). * bugs.php.net does not support labels -- only top-level categorization. For example, we can't mark bugs as "probably easy" or "good first issue" to give newbies something to chew on. GitHub issues address most of these concerns, and are tightly integrated with the pull request workflow. GitHub issues is not the most advanced bug tracker out there, but the unfortunate truth is that it's still much better than bugs.php.net. Some thoughts on how our usage would look like: * As was already mentioned, there's no support for security issues, so we'd retain bugs.php.net for that purpose, at least for the time being. * Categories are translated to labels and applied during triage. As mentioned before, I believe it's advantageous that the triager adds them and not the reporter. Our inflow of new bugs is also low enough that I don't think triage would be an undue burden. The labels could be fairly similar to the current categories (mostly one per extension), though we also have a good bit more flexibility, because we are not limited by a single category per issue. An issue can be both ext-gmp and buildsystem for a build-system issue in ext/gmp, not just one of them. * It's worth noting that issues are per-repository, which means that documentation issues will now live in the doc repo(s), and PECL issues in the PECL repos. php-src will only have issues relating to php-src specifically. This is great. * The minimum minor PHP version affected should probably also be specified through a label -- I don't personally search issues by version, but other people (cmb?) might. If search by version is not common, we can have this information only in the issue description. The operating system can be a label as well, though we should only add that if the issue is actually OS-specific -- this is pretty rare. * One somewhat annoying GitHub limitation is that "saved replies" are per-account, not per-repo or per-organization. This means that someone doing a lot of bug triage would have to explicitly configure these. (I personally don't use the canned replies on bugs.php.net, but I know other people do.) * I don't think any other functionality provided by bugs.php.net is useful, in particular: a) I pretty much never look at bug votes -- though GitHub has thumbs-up, thumbs-down as an equivalent there. b) I have not once made use of the "Reproduced - Same Version - Same OS" information. c) Pull request association is handled automatically by GitHub. d) Patch upload is no longer supported -- this is great. We should probably disable that even if we keep bugs.php.net, because patches submitted as anything but pull requests are almost certainly going to get ignored. e) Did I miss anything else that bugs.php.net does? Finally, switching to GitHub issues makes the bug tracker more user-friendly. This will likely result in a larger number of reports, both legitimate and bogus. Previous comments focussed on the downside of that (we will need to close more support-style tickets), but there's also the upside that it's easier to get people involved with PHP. PHP has something of a reputation of being unapproachable to new contributors, and the bug tracker is one part of that (the other parts being the internals mailing list and the codebase :P) TL;DR Yes, I do think switching from bugs.php.net to GitHub issues would be beneficial for the project. Details on how to do that need to be ironed out, but I think the direction is the right one. Regards, Nikita --00000000000016e07905c1fb305a--