Several notable news items on the Xdebug front lately. As many of us know, Xdebug is a remote debugger and profiler for PHP applications, including Drupal. Many IDE's support Xdebug, such as ActiveState's Komodo, and Eclipse with PHP's extension.
However, not all developers like those GUI front ends for various reasons. I even prefer using vim with Xdebug.
So, there has been efforts to make a cross platform Xdebug client that can be used regardless of the IDE one prefers.
Xdebug Front End
First, in 2007, Derick Rethans, author of Xdebug, mentored Adam Harvey to write an Xdebug as part of Google's Summer of Code that would be cross platform, using wxWidgets for a GUI tool. The result was known as Dubnium. Last I checked, it was not mature enough to use.
Web based Profiler for Xdebug
Earlier this year, there was Webgrind, which does the profiler part only for Xdebug, a la Kcachegrind, for those who do not run KDE, nor want to run it under macports on MacOS/X.
Another Web based profiler
Then there is a Google Summer of Code for 2008 for another web based profiler for Xdebug.
Spectator: A XUL Xdebug front end
And today, I noticed Spectator, which is a XUL application that is an Xdebug front end for debugging. I tried it with Drupal on Kubuntu 8.04, and it does work as advertised.
All I had to do was:
svn checkout http://spectator.googlecode.com/svn/trunk/ spectator cd spectator ./spectator.sh
Then in a browser append the ?XDEBUG_SESSION_START=1 string to the URL and you will be in business!
What it does not do is to show values of variables under cursor, like vim does with Xdebug (and all mature IDEs). The current local variables are shown in a side window on the right.
It would be nicer if it had syntax highlighting too.
Conclusions
All in all, we are seeing a lot of advancements here. They are not unified, but they are encouraging nonetheless.
Comments
Elvis McNeely (not verified)
I am somewhat new to
Tue, 2008/06/03 - 09:24I am somewhat new to debugging (from a Drupal perspective - lots of functions and files involved) so xdebug has proven to be a useful tool from that perspective.
Since I am working on a Windows machine, some of the tools to read xdebug output files won't work for me. I really like "webgrind" (fast, friendly, intuitive) but it lacks one feature I looking for in an app: flow charts or a textual flow of what function calls what and on down the line.
Hopefully more apps or the current ones will be expanded for Windows. If you run into an app with this feature feel free to ping me.
Thanks for sharing...
Richard BF (not verified)
MacCallGrind
Mon, 2008/09/29 - 20:46You might also be interested in a Mac app I wrote for xdebug callgrind profiling, coincidentally on the same day you wrote your post. :-) http://www.maccallgrind.com
Anonymous (not verified)
don't forget wincachegrind
Fri, 2008/10/17 - 10:42In windows, I am using wincachegrind from http://sourceforge.net/projects/wincachegrind. Development has stopped but it works fine with output of current version of Xdebug
Rgds