Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:70292 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 74559 invoked from network); 22 Nov 2013 20:07:56 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 22 Nov 2013 20:07:56 -0000 Authentication-Results: pb1.pair.com smtp.mail=pjsturgeon@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=pjsturgeon@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.217.172 as permitted sender) X-PHP-List-Original-Sender: pjsturgeon@gmail.com X-Host-Fingerprint: 209.85.217.172 mail-lb0-f172.google.com Received: from [209.85.217.172] ([209.85.217.172:33595] helo=mail-lb0-f172.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 4E/7E-28674-A99BF825 for ; Fri, 22 Nov 2013 15:07:55 -0500 Received: by mail-lb0-f172.google.com with SMTP id z5so1374325lbh.3 for ; Fri, 22 Nov 2013 12:07:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=JdORoaqTpN6R0TD2XTeLaE2k6dwnhVr65xodu/PfcRM=; b=eMvpUMnBhuPydWylo68VZZEDbI4bxZBT7C/pCrLbxWH/cY0XaEk+d3l9zEpRNOEq4M XU5J5yTSYF3v9LbhMp5RibBq4UJrWOGhfyT/s2r7/70aox4/6eQHfh6bBL6IrOEnSPQv pUBaufQjSgqdp9WdWJ1tDKglxgvbAxvexdyZk1T0IxPjhmnMLuKeWhw4n0X9LyUiUG1r ePlPSkzUarAxascxftDL7bE67XRQKuZpZQ1z+KM1iHMCZPRqoO+1P4Yn6EngPx7q0MmC bIBwKHcEVayVJNQeb0Pv5GiFF4GYJ+39gvtqzDMzGy0iX/jML9KZiLJ9uJ8qZoPiqvVE J8dw== MIME-Version: 1.0 X-Received: by 10.152.19.2 with SMTP id a2mr11136923lae.2.1385150870950; Fri, 22 Nov 2013 12:07:50 -0800 (PST) Received: by 10.114.217.231 with HTTP; Fri, 22 Nov 2013 12:07:50 -0800 (PST) In-Reply-To: <528FB31B.6020409@ajf.me> References: <4E.7B.51208.63ACD825@pb1.pair.com> <528E1AF6.9050201@php.net> <528E4093.5000503@gmail.com> <528F197B.7040802@hoa-project.net> <528FB31B.6020409@ajf.me> Date: Fri, 22 Nov 2013 15:07:50 -0500 Message-ID: To: "internals@lists.php.net" Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] RFC: phpdbg From: pjsturgeon@gmail.com (Philip Sturgeon) It definitely seems the PHPDBG site and RFC both need work to explain the purpose of this tool to a larger audience than the select few who are currently excited about it, and I have offered to help get that sorted out over the next few days. (Thanks for reaching out Joe). The first issue seems to be "Why not just use XDebug". Sure, these are both for debugging but XDebug works in a very different way. For starters xdebug is meant to "latch on" to the existing engine and provide debugging information and breakpoints for analysis. It also provides remote config tools for sending those breakpoint responses to another server so you can have a nice shiny Mac GUI working with a remote SSH server. That is all lovely, but not what this tool is trying to do - which is provide a new SAPI to run your code through for debugging. From the ground up it is built and designed to do this, instead of hooking into other bits of another engine. XDebug allows you to run your code through Apache/Nginx and get this data back, PHPDBG asks you to run your code through a different SAPI which can get you the same data but in a much more efficient and internally less complicated way. So which should people use? Probably both. Should they both exist? Certainly. Which should be merged into the core? The one designed as a SAPI and not as a module. Not 100% sure what you'd use PHPDBG for? Even if you do not use it yourself it could be used by frameworks like Laravel/Symfony to create awesome console servers, REPLs, etc that are considerably more powerful than the tools currently available due to limitations in the existing SAPs. If you try creating a REPL in pure PHP right now you're going to cry, but PHPDBG would make that easier. All in all, having this SAPI distributed to all PHP developers wether they like it or not (or wether they know what it is or not) is hugely beneficial - and has no BC issues whatsoever. Also by keeping XDebug as a module which has to be intentionally installed by people that want it, there is the hopeful chance that people will continue to avoid accidentally installing it into production - which is bad for a bevy of reasons. http://nikic.github.io/2012/01/19/Careful-XDebug-can-skew-your-performance-= numbers.html http://stackoverflow.com/questions/3522182/will-enabling-xdebug-on-a-produc= tion-server-make-php-slower On Fri, Nov 22, 2013 at 2:40 PM, Andrea Faulds wrote: > > > On 22/11/13 08:44, Ivan Enderlin @ Hoa wrote: >> >> >> And please, with all my respect and without considering xdebug here, >> stop using the =93de-facto [standard]=94 expression. A tool is not good >> because it is the only one to be in the place :-). >> > > Nothing wrong with saying it's the de facto standard. It is the de facto > standard, though that doesn't make it good. Maybe that's what you meant. > > Anyhow, I'd love for phpdbg to be included in PHP. Along with the CLI > server, it'd make PHP a lot more developer-friendly :) > > -- > Andrea Faulds > http://ajf.me/ > > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php >