Not a bad idea.  I will file an improvement request.

On 2007-08-29, at 19:58 EDT, Henry Minsky wrote:

That's fine. I suppose we could support it as an attribute on the
<debug> tag for
convenience at some point.

On 8/29/07, P T Withington <[EMAIL PROTECTED]> wrote:
The default is 'ALL'.  If you want to override that, you could say:

<script when="immediate">
   Debug.messageLevel = 'WARNING';
</script>

Are you suggesting there should be something more user friendly?

On 2007-08-29, at 19:39 EDT, Henry Minsky wrote:

What's the mechanism that users should use to set the debug log level
in their app when debugging?

On 8/29/07, P T Withington <[EMAIL PROTECTED]> wrote:
Change 20070828-ptw-t by [EMAIL PROTECTED] on 2007-08-28
16:56:02 EDT
     in /Users/ptw/OpenLaszlo/wafflecone-2
     for http://svn.openlaszlo.org/openlaszlo/branches/wafflecone

Summary: Implement Debug.messageLevel, downgrade deprecated warnings
to info, heuristicate file/line info in Debug messages

Bugs Fixed:
LPP-4597 'turn debugger warnings for non-fatal issues into INFO'
LPP-4549 'runtime warnings should include file references, line
#s' (partial)
LPP-4478 'Richedittext: WARNING: __LZgetNodes: p is null in
LzDatapointer' (partial)
LPP-4450 'improve LFC warnings for xpath query on empty
datapath' (partial)
LPP-4551 'debugger warnings emitted from a private LFC
function' (partial)
LPP-4592 'basedatacombobox-based components with selectfirst="false"
emits Debugger warnings' (partial)
LPP-4464 'setVisible(null) warning, but it is never called' (partial)

Technical Reviewer: max (pending)
QA Reviewer: enw (pending)

Documentation:
     In debug mode the compiler annotates every LzNode object with
the
file/line where the object was created. If a node object is one
     of the arguments to a Debug message, the debugger will use the
node object's file/line information when printing the message to
     the console.  [This is obviously not as accurate as we would
like,
     but it at least gives the programmer a hint as to where the
     problem may lie.]

     Debug.messageLevel is one of (from lowest to highest) 'ALL',
'DEBUG', 'INFO', 'WARNING', 'ERROR'; defaults to 'ALL'. Setting
     it to a particular level will suppress all messages of a lower
     level.

     All deprecation messages have been changed from 'WARNING' to
'INFO'. By setting Debug.messageLevel to 'WARNING', deprecation
     messages will be suppressed.

     All API warnings that are new in 4.x have been changed from
     'WARNING' to 'INFO'.  By setting Debug.messageLevel to
'WARNING',
     deprecation messages will be suppressed.

Details:
     LzSprite, LzNode, LaszloView, LzAnimatorGroup, LzDatapointer,
LzDataset, LzDatapath, Class: Change all deprecated warnings to
     use Debug.deprecated, or in custom cases Debug.info.

     UserClass: Refine the warning that explains why <class
name="xxx">
     will not be defined as a global if there is already a global
value
     of the same name in the underlying runtime.  Change the
warning to
     an info message.

     LzMessage: Update frames to skip to match the current
     implementation of backtrace.  Heuristicate file/lineno from
     message arguments.  Add Debug.deprecated that handles common
     deprecation messages.

     LzDebug, kernel.as, kernel.js:  Implement Debug.messageLevel.

     LzBacktrace: Add a pretty type name.

     NodeModel: Annotate nodes with their creation file and line.

Tests:
     swf and dhtml smokecheck.

     In smokecheck, the last two warnings now say:

     WARNING: regression.lzl:730: serialize: p is null in
LzDatapointer name: bad
     WARNING: regression.lzl:744: setNodeAttribute: p is null in
LzDatapointer name: dp

     Which indeed are the locations of the erroneous datapointers.

Files:
M      WEB-INF/lps/lfc/kernel/swf/LzSprite.as
M      WEB-INF/lps/lfc/debugger/LzMessage.lzs
M      WEB-INF/lps/lfc/debugger/LzDebug.lzs
M      WEB-INF/lps/lfc/debugger/platform/swf/kernel.as
M      WEB-INF/lps/lfc/debugger/platform/dhtml/kernel.js
M      WEB-INF/lps/lfc/debugger/LzBacktrace.lzs
M      WEB-INF/lps/lfc/core/LzNode.lzs
M      WEB-INF/lps/lfc/core/UserClass.lzs
M      WEB-INF/lps/lfc/views/LaszloView.lzs
M      WEB-INF/lps/lfc/controllers/LzAnimatorGroup.lzs
M      WEB-INF/lps/lfc/data/LzDatapointer.lzs
M      WEB-INF/lps/lfc/data/LzDataset.lzs
M      WEB-INF/lps/lfc/data/LzDatapath.lzs
M      WEB-INF/lps/lfc/compiler/Class.lzs
M WEB-INF/lps/server/src/org/openlaszlo/compiler/ NodeModel.java

Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20070828- ptw-
t.tar



--
Henry Minsky
Software Architect
[EMAIL PROTECTED]




--
Henry Minsky
Software Architect
[EMAIL PROTECTED]

Reply via email to