r7073 | ptw | 2007-10-31 17:59:32 -0400 (Wed, 31 Oct 2007) | 7 lines
Changed paths:
    M /openlaszlo/branches/wafflecone

Change 20071031-ptw-r by [EMAIL PROTECTED] on 2007-10-31  
17:57:19 EDT
     in /Users/ptw/OpenLaszlo/jujube
     for http://svn.openlaszlo.org/openlaszlo/branches/wafflecone

Summary:  svnmerge merge -r6484,6520 -M -S 
http://svn.openlaszlo.org/openlaszlo/trunk

On 2007-10-31, at 15:41 EDT, Max Carlson wrote:

> Please remember to update the svnmerge state in wafflecone if you  
> didn't use it to do the merge - so we don't get confused later and  
> re-merge. Thanks!
>
> [EMAIL PROTECTED] wrote:
>> Author: ptw
>> Date: 2007-10-31 12:36:00 -0700 (Wed, 31 Oct 2007)
>> New Revision: 7065
>> Modified:
>>   openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/ 
>> LzBacktrace.lzs
>>   openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/LzDebug.lzs
>>   openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/platform/ 
>> dhtml/kernel.js
>>   openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/views/ 
>> LaszloCanvas.lzs
>> Log:
>> Change 20071031-ptw-w by [EMAIL PROTECTED] on 2007-10-31  
>> 15:21:33 EDT
>>    in /Users/ptw/OpenLaszlo/jujube
>>    for http://svn.openlaszlo.org/openlaszlo/branches/wafflecone
>> Summary: Merge Debug.bugReport to cranberry
>> New Features:
>>    The `bugReport` method of the Debugger can be used to create a
>>    report suitable for copy/pasting into a bug report.
>> Bugs Fixed:
>> LPP-4719 'Provide a way to output relevant debug info to copy/paste  
>> into mail'
>> Technical Reviewer: ben (Message-Id: <[EMAIL PROTECTED] 
>> >)
>> QA Reviewer: frisco (pending)
>> Doc Reviewer: jsundman (Message-Id: <[EMAIL PROTECTED] 
>> >)
>> Documentation:
>>    The `bugReport` method of the Debugger can be used to create a
>>    report suitable for copy/pasting into a bug report.  To use it,
>>    enable backtraces and debugging, then inspect the error message
>>    that you believe reveals a bug, then invoke `Debug.bugReport()` in
>>    the debugger.  Copy and paste the output of that call into your
>>    bug report.
>> Details:
>>    Merged r6484 and r6520 from trunk
>> Tests:
>>    Inspection
>> Modified: openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/ 
>> LzBacktrace.lzs
>> ===================================================================
>> --- openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/ 
>> LzBacktrace.lzs      2007-10-31 18:39:25 UTC (rev 7064)
>> +++ openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/ 
>> LzBacktrace.lzs      2007-10-31 19:36:00 UTC (rev 7065)
>> @@ -149,6 +149,21 @@
>>   }
>>  /**
>> +  * Map over a backtraces frames
>> +  * @param fn:Function the function to call on each frame
>> +  * @param limit:Maximum number of frames to map
>> +  * +  * @access private
>> +  */
>> +LzBacktrace.prototype.map = function(fn, limit) {
>> +  if (! (fn instanceof Function)) { return; }
>> +  if (! limit) { limit = this.length; }
>> +  for (var i = this.length - 1; (i >= 0) && (limit > 0); i--,  
>> limit--) {
>> +    fn(this[i]);
>> +  }
>> +}
>> +
>> +/**
>>   * Convert a backtrace to a string
>>   * @param printer:Function the function to print the backtrace
>>   * functions with.  Defaults to Debug.__String
>> Modified: openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/ 
>> LzDebug.lzs
>> ===================================================================
>> --- openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/ 
>> LzDebug.lzs  2007-10-31 18:39:25 UTC (rev 7064)
>> +++ openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/ 
>> LzDebug.lzs  2007-10-31 19:36:00 UTC (rev 7065)
>> @@ -73,6 +73,12 @@
>>   */
>> Debug.showInternalProperties = false;
>> +/** Any amendments to the environment for debug evaluator, initially
>> +  * just _, __, and ___.  Could put things like write, format,  
>> inspect.
>> +  * @access private
>> +  */
>> +Debug.environment = {};
>> +
>> /**
>>   * Display version info
>>   */
>> @@ -366,7 +372,95 @@
>>   */
>> Debug.ObjectForID = function (id) {
>>   return this.id_to_object_table[id];
>> +};
>> +
>> +/**
>> + * Format information about an error suitably for reporting a bug
>> + *
>> + * This method can be used to create a report suitable for
>> + * copy/pasting into a bug report.  To use it, enable backtraces and
>> + * debugging, inspect the error message that you believe reveals a
>> + * bug, then invoke `Debug.bugReport()` in the debugger.  Copy and
>> + * paste the output of that call into your bug report.
>> + *
>> + * @param error: An error message or ID.  Defaults to the last error
>> + * that was inspected.
>> + * @param Boolean verbose: If true, each frame
>> + * argument in the backtrace will be inspected.  Defaults to the  
>> value
>> + * of Debug.showInternalProperties.
>> + *
>> + * @note By inspecting an error message (by clicking on it), the  
>> error
>> + * message will be assigned to the Debug environment variable `_`.
>> + * Thus to enable a verbose report (which will detail all  
>> arguments of
>> + * each frame, as opposed to just the `this` argument), invoke as
>> + * `Debug.bugReport(_, true)`.
>> + */
>> +Debug.bugReport = function (error, verbose) {
>> +  // Default values
>> +  switch (arguments.length) {
>> +    case 0:
>> +    with (global) {
>> +      with (this.environment) {
>> +        error = _;
>> +      }
>> +    }
>> +    case 1:
>> +    verbose = this.showInternalProperties;
>> +  }
>> +  if (typeof(error) == 'number') {
>> +    error = this.ObjectForID(error);
>> +  }
>> +  if (! (error instanceof LzSourceMessage)) {
>> +    Debug.error("You must provide an error to report.  Please  
>> inspect an error message and try again.")
>> +    return;
>> +  }
>> +  if (! (('backtrace' in error) && (error.backtrace instanceof  
>> LzBacktrace))) {
>> +    Debug.error("Backtraces must be on to report a bug.  Please  
>> enable backtracing and try again.");
>> +    return;
>> +  }
>> +  var inspected = [];
>> +  function inspect (obj, verbose) {
>> +    var id = verbose && Debug.IDForObject(obj);
>> +    if (id && (! (id in inspected))) {
>> +      inspected[id] = obj;
>> +    }
>> +    return obj;
>> +  }
>> +
>> +  Debug.format("Please copy the following information into your  
>> bug report:\n\n---START OF BUG REPORT---\n\nLPS VERSION INFORMATION: 
>> \n");
>> +  Debug.versionInfo();
>> +  Debug.format("\nERROR MESSAGE: %s", error);
>> +  Debug.format("\nERROR BACKTRACE:");
>> +  error.backtrace.map(
>> +    function (frame) {
>> +      Debug.format("\n%w", frame);
>> +      Debug.format("\n  this: %#w", inspect(frame['this'], true));
>> +      var args = frame.arguments;
>> +      for (var i = 0; i < args.length; i++) {
>> +        Debug.format("\n  arg %2d: %#w", i, inspect(args[i],  
>> verbose));
>> +      }
>> +    });
>> +  if (inspected.length > 0) {
>> +    Debug.format("\n\nOBJECT DETAILS:");
>> +    var keys = [];
>> +    // Present the object's in ID-order so they are easier to find.
>> +    for (var id in inspected) {
>> +      keys.push(id);
>> +    }
>> +    keys.sort(function (a, b) {
>> +        var al = parseInt(a);
>> +        var bl = parseInt(b);
>> +        return (al > bl) - (al < bl);
>> +      });
>> +    for (var i = 0; i < keys.length; i++) {
>> +      var obj = inspected[keys[i]];
>> +      Debug.format("\n");
>> +      // Thus copy/paste will not get the 'hotlink' markup
>> +      Debug.inspect(obj);
>> +      Debug.format("\n");
>> +    }
>> +  }
>> +  Debug.format("\n---END OF BUG REPORT---\n");
>> }
>>  -
>> Modified: openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/ 
>> platform/dhtml/kernel.js
>> ===================================================================
>> --- openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/ 
>> platform/dhtml/kernel.js     2007-10-31 18:39:25 UTC (rev 7064)
>> +++ openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/ 
>> platform/dhtml/kernel.js     2007-10-31 19:36:00 UTC (rev 7065)
>> @@ -191,12 +191,6 @@
>>   this.displayResult(this.inspect(obj));
>> }
>> -/** Any amendments to the environment for debug evaluator, initially
>> -  * just _, __, and ___.  Could put things like write, format,  
>> inspect.
>> -  * @access private
>> -  */
>> -Debug.environment = {};
>> -
>> /**
>>   * @access private
>>   */
>> Modified: openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/views/ 
>> LaszloCanvas.lzs
>> ===================================================================
>> --- openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/views/ 
>> LaszloCanvas.lzs     2007-10-31 18:39:25 UTC (rev 7064)
>> +++ openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/views/ 
>> LaszloCanvas.lzs     2007-10-31 19:36:00 UTC (rev 7065)
>> @@ -568,7 +568,7 @@
>>     'Build: ' + canvas.lpsbuild + '\n' +
>>     'Date: ' + canvas.lpsbuilddate + '\n' +
>>     'Target: ' + canvas.runtime + '\n' +
>> -    'Runtime:' + LzBrowser.getVersion() + '\n');
>> +    'Runtime: ' + LzBrowser.getVersion() + '\n');
>> }
>>  /**
>> _______________________________________________
>> Laszlo-checkins mailing list
>> [email protected]
>> http://www.openlaszlo.org/mailman/listinfo/laszlo-checkins
>
> -- 
> Regards,
> Max Carlson
> OpenLaszlo.org


_______________________________________________
Laszlo-checkins mailing list
[email protected]
http://www.openlaszlo.org/mailman/listinfo/laszlo-checkins

Reply via email to