On Thursday 02 February 2012 12:52:38 =?ISO-8859-1?Q?Andr=E9?= Somers wrote: > I think there are plenty of implementations doing this already. Take a > look at QxtLogger for instance. It can be used with the output handler > just fine, but it also allows more finegrained access with more than > four levels. It also supports multiple outputs. > I see no need to make all this part of Qt *now*, especially not of core. > The very existence of external libraries that integrate with the current > structure shows that it is exendable enough.
Well, Qxt and kdelibs are entire frameworks on top of Qt, but this makes the lib code very inconsistent, and not every little app wants to link to a big framework, especially for something as small as debug output handling. I want to get rid of KDE's kDebug so that there is less difference between "a Qt-based library" and "a KDE-based library". The last hurdle for that is: 1) showing more information (file, line, method, process name and PID) in the default message handler, probably based on env vars (easy to add now that QMessageLogContext has the necessary information). 2) support for debug areas. QLog's way of defining areas looks very nice, but it should be integrated with qDebug, as discussed previously. Again, this is about standardizing the debug statements in all qt-based libs, it doesn't prevent external loggers handling for the output in customized ways in specific apps or frameworks. In fact, because of the lack of debug areas, Qt code itself can't leave a single debug statement uncommented. Parts of Qt are full of #ifdefs to disable debug output by default. This could be done much better by registering an area and asking for it to be disabled by default. Then people could enable debugging from e.g. qsslsocket or QNAM or qimagereader without recompiling Qt [qdbus has a custom solution for this, $QDBUS_DEBUG, showing that is really a need for this]. I think this clearly shows there is a need for something better in QtCore. Extra code in external libraries doesn't solve this core issue. -- David Faure | david.fa...@kdab.com | KDE/Qt Senior Software Engineer KDAB (France) S.A.S., a KDAB Group company Tel. France +33 (0)4 90 84 08 53, Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-independent software solutions _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development