Community
Participate
Working Groups
Qooxdoo logging is made up of at least 9 classes. Its debatable if we need all of those, especially in the build-variant. In theory we wouldn't need them at all, as all modern browser support console.log in one way or another. Only older IE might need a pop-window as logger.
In most cases, logging calls are done using the MLogging Mixin, which is easy to replace. But there are three other methods: - qx.log.Logger.ROOT_LOGGER is used by Class.js ans StyleSheet.js - qx.log.Logger.getClassLogger(...).debug is used by Exchange.js and Widget.js - qx.log.Logger.deprecatedMethodWarning is used by 7 classes total. Also, BoxSizing.js uses "qx.log.Logger.warn", which is probably a mistake since that method does not exist.
I missed qx.core.Log which seems to be a subset of the Firebug-lite implementation.
Created attachment 181166 [details] empty implementation of Logger.js Loading this file instead of the original Logger.js, allowes to safely remove these classes from the client: qx.core.Log qx.log.DefaultFilter qx.log.Filter qx.Log.EventProcessor qx.log.appender.Abstract qx.log.appender.FireBug qx.log.appender.Native qx.log.appender.Window This could be used for the build-variant only, while still using the original classes for the debug-variant. Alternatively, all of these classes could be removed for good with a slim implementation of Logger.js that logs directly to the console, if it exsits. Optionally, this implementation could support log-level, and logging to a popup-window if no console exists. (I personally don't think there is any need for log-level, but there seems to be no way around a pop-window for IE6.)
Ah, "qx.dev.StackTrace" could probably also be removed. (I didn't try it though.)
We agreed to remove the entire qooxdoo logging, including the printStackTrace implementation.
Fixed in CVS HEAD. After some consideration i decided to leave a very thing implementation of the api in Object.js in case some custom-widget developer are still using it. It can be removed at any time, no RAP code is using it.
Yeah :)