Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:99997 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 80931 invoked from network); 21 Jul 2017 16:12:33 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 21 Jul 2017 16:12:33 -0000 Authentication-Results: pb1.pair.com smtp.mail=kalle.php@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=kalle.php@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.214.50 as permitted sender) X-PHP-List-Original-Sender: kalle.php@gmail.com X-Host-Fingerprint: 209.85.214.50 mail-it0-f50.google.com Received: from [209.85.214.50] ([209.85.214.50:38852] helo=mail-it0-f50.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 87/A5-02884-DE722795 for ; Fri, 21 Jul 2017 12:12:30 -0400 Received: by mail-it0-f50.google.com with SMTP id h199so9519722ith.1 for ; Fri, 21 Jul 2017 09:12:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=9nIo7KUEYsMmzUWOE+BN8VWzBPz5SQ7HRcf/NgSvIwE=; b=PuNekDciv4/OBlcrsAeieCM2gvpNyFrXVBgPgqnvi2HMAL0rpZeXOvPMhv8vdp/po4 uVHQhxaPhwGWPX/z4AR1+Muta6UgoPQw2wIiLpYyWgs+E1/mRvIgUPELDqxR+XncZa1v 3hjYAfAJuP5HA8Aml8wPbx8nCoedkNB+qn5b6zydLxg0dW5xyGPwKhBHgisnI5dVrWrP Oy+mPB2lcG8xHbnLLOt2896lA/zgJSvmTnl3meNfewswx6iRi0JuXnGda6LonC46axdp nufZMnSZNqCVV+bDjM2gNfFev4JNbLj1+SiRmVIqmYrEJ7gZxH/reb1o/Vzk31436mVi Bjdg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=9nIo7KUEYsMmzUWOE+BN8VWzBPz5SQ7HRcf/NgSvIwE=; b=WJPz0umyl48BrmKbPoTgL3uN7B+7SByxdNYpBTLGSfOCGNn2u9TbPYPsmBJKeOvEtP vTJodIx5j5Csrov3WLM50Yo3RSau8vWj7esSqjMTFliyvWJXZCqdC2iE5MDiguanmNF/ 9o+zpr965emrBjB4jLLutJYwczV0slDulfh+p+ZrU+ymkQIOB4bDf4qQJ3hSJQ51hHNU 0E7De1tuQLbEwoZXI+7rWloRqosjQ4ztTEuzDxbWlE18g25HVYvl1QKgWMx/ArMm48H6 F/83RTawCsqGF5aPqCQh9cpxQzPFN9FCw+Slm4hJUi4TARiiDQbtpOfIxAjD2EbllTZB zzPg== X-Gm-Message-State: AIVw1117HWnXRkz/nXpfnlwB6pgCeM8FIXoeaGABVbjy/xzvGUwWfyMP N9acx/q95yJJdpYa9YyiSjtFCXe7tQ== X-Received: by 10.36.173.102 with SMTP id a38mr7176060itj.134.1500653546115; Fri, 21 Jul 2017 09:12:26 -0700 (PDT) MIME-Version: 1.0 Sender: kalle.php@gmail.com Received: by 10.107.168.144 with HTTP; Fri, 21 Jul 2017 09:12:25 -0700 (PDT) In-Reply-To: References: <1500551058.16819.47.camel@schlueters.de> <1500584492.16819.71.camel@schlueters.de> Date: Fri, 21 Jul 2017 18:12:25 +0200 X-Google-Sender-Auth: yFqTeib4Oc99CSYStpkkQ_XM5VU Message-ID: To: Mathias Grimm Cc: =?UTF-8?Q?Johannes_Schl=C3=BCter?= , Sara Golemon , Niklas Keller , PHP Internals Content-Type: text/plain; charset="UTF-8" Subject: Re: [PHP-DEV] bugs.php.net website From: kalle@php.net (Kalle Sommer Nielsen) Hi Mathias 2017-07-21 0:39 GMT+02:00 Mathias Grimm : > Do we have a pre-approved list of libs that we could use? > For example phpunit. I can't imagine doing it without using that. > What licenses are approved? > MIT, BSD? Most functionality that a bug tracker should do, can and imho should be implemented in native PHP fairly flawlessly. The only place I can see that could benefit from a library, if even is github integration, and even that is done by webhooks which is fairly easy to implement on its own. Bugsweb already depend on some PEAR packages, and I for one think those dependencies should be eliminated, a standard PHP build should be all thats needed to implement a bug tracker that fit the needs with that of PHP. I don't think personally the usage of phpunit is worth it, bugsweb is so specific to the PHP project, and it should continue to be so and that is such a minority that would ever run the test suite so the time spend implementing is better spend in other places, but that is my personal opinion. > Regarding the code: > - Is there any restrictions? > - Could it be a MVC? What is too complex? I don't think any of PHP.net's infrastructure should run on an MVC and we should follow what Rasmus has been advocating at many conferences over the last years. The front controller is the browser, it does all the routing we need, instead of adding another layer of complexity when we already know that we wish to display "bug.php", if we want some pretty links, then we can simply just put in some RewriteRule[s], but thats about it. > I am just trying to understand the mindset a bit as I come from a different > background and try to come up with something that might be good for > everybody. The mindset at php.net, or the PHP project in general is very simple and basic and it should continue to be so. The language itself is extremely powerful out of the box as is. Even though the codebase is from the early PHP4 days, there is nothing wrong with using objects or anything at all. A class to handle comments would be much more beneficial as the bug tracker, even more with github integration, would benefit highly from that as there are many of the same operations that can be encapsulated in an object vs using procedural functions. What should be disencouraged in the current code base is the mess with global variables and states, which objects to a good extend solves. > My background is pretty much into object oriented style, SOLID principles > (to some extend), however, in the end I want to build something stable, > testable, simple for a child to understand, and, that can be extended and > last for the long time. Thats what everybody always want :) > > I've been thinking about this thing since yesterday (initially was php.net) > and If I am to approach the bugs.php.net I think I would write an API > first, leaving the frontend to be done by somebody else as the frontend is > not what I like to do on my free time. > > I am not assuming I would do the whole API alone as other people might be > interested in joining, although I wouldn't mind doing it by myself, but > then time is a factor I can't overcome that easy. I think the bugsweb, if updated, should be a website as it is now, however it should implement some webhooks to allow integration with things like git commit hooks that we already have now, people.php.net, and github. What we need is a website that fits our own needs and infrastructure, as we are not making a general purpose bug reporting system. The code is open and freely available and can be adapted to other projects own needs (like MySQL: http://bugs.mysql.com/ is running a fork of bugsweb), but that should be about it, extremely simple and straight forward. > I would like to come up with a basic MVP that we could iterate until at > least someone is happy :) > For the MVP my idea is to keep functionality exactly the same as > introducing new features will make us not ship it ever. > First create a rock-solid base and then add features. > > So, for that I need to know the hard limits, the DOs and DON'Ts to set some > boundaries. As for DON'T's, the main ones would be as I wrote about: - No global variables mess, a global variable for database access shared across procedural functions are perfectly fine tho, and same for others on a case by case basis - No need to implement third party libraries for things essentially possible in native PHP. We should be neutral, if we use some library, it can be interpreted as PHP.net favors this or that PHP based project - No need to overcomplex code by using practices such as MVCs, we got the browser as our front controller. We can create abstractions for commonly used operations, such as comments, bug reports and authentication objects Yes I realize that we, the PHP project on many points still can be considered this odd and special gentlemans club, but most of these points and procedures has been what we always have done, it is not that I don't see a reason to change things around now, but that is another and larger discussion that the project as a whole should decide if needs changing or not. I hope you aren't disencouraged but all of this, and even though it is very different from the background you come from and in the end you just want to contribute, you will still continue to push a new bug tracker though. I wouldn't mind joining in on this as a now senior contributor for PHP. -- regards, Kalle Sommer Nielsen kalle@php.net