History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: LPP-4719
Type: Improvement Improvement
Status: Closed Closed
Resolution: Fixed
Priority: P1 P1
Assignee: Unassigned
Reporter: P T Withington
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
OpenLaszlo

Provide a way to output relevant debug info to copy/paste into mail

Created: 13/Sep/07 05:18 AM   Updated: 05/Feb/08 04:05 PM
Component/s: Debugger
Affects Version/s: 4.0.5WaffleCone
Fix Version/s: RingDing (4.1), Cranberry

Time Tracking:
Not Specified

Severity: Minor
Fixed in Change#: 6,484
Runtime: N/A
Fix in hand: False


 Description  « Hide
There should be a simple way to output all the relevant information from an error message textually so that it can be copy/pasted into a bug report.

 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
P T Withington - 14/Sep/07 05:09 PM
r6484 | ptw | 2007-09-14 20:07:43 -0400 (Fri, 14 Sep 2007) | 112 lines
Changed paths:
   M /openlaszlo/branches/legals/WEB-INF/lps/lfc/debugger/LzBacktrace.lzs
   M /openlaszlo/branches/legals/WEB-INF/lps/lfc/debugger/LzDebug.lzs
   M /openlaszlo/branches/legals/WEB-INF/lps/lfc/debugger/platform/dhtml/kernel.js
   M /openlaszlo/branches/legals/WEB-INF/lps/lfc/views/LaszloCanvas.lzs

Change 20070913-ptw-P by ptw@dueling-banjos.local on 2007-09-13 08:34:45 EDT
    in /Users/ptw/OpenLaszlo/legals-test
    for http://svn.openlaszlo.org/openlaszlo/branches/legals

Summary: Add Debug.bugReport

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: <73D84A53-259B-41B3-84C3-6F85AAB1C394@laszlosystems.com>)
QA Reviewer: frisco (pending)
Doc Reviewer: jsundman (Message-Id: <177ADEE2-B8B6-4359-BA64-29BB327D5F38@laszlosystems.com>)

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:
    LzDebug: Move environment from platform to here. Add bugReport
    that outputs versionInfo, the backtrace from the last inspected
    error, and inspects all the `this` objects in the backtrace.

    LzBacktrace: Add an interface to map over the frames of a backtrace.

    LaszloCanvas: Fix a type-oh in versionInfoString

Tests:
    Invoking Debug.bugReport after inspecting an assertion failure in
    smokecheck yields the following output:

    lzx> Debug.bugReport()
    Please copy the following information into your bug report:

    ---START OF BUG REPORT---

    LPS VERSION INFORMATION:
    URL: http://dueling-banjos.local:8080/legals-test/test/smoke/simple.lzx?lzt=swf&debug=true&lzr=swf7&lzbacktrace=true
    Version: 4.0.x.0
    Release: Latest
    Build: 6483 /Users/ptw/OpenLaszlo/legals-test
    Date: 2007-09-14T19:59:36-0400
    Target: swf7
    Runtime: 9.45

    ERROR MESSAGE: ERROR @lzunit-test.lzl#609: undefined object does not have a property '[]'

    ERROR BACKTRACE:
    testUndefinedErrors @lzunit-test.lzl#606
      this: ????????????????????????????????????????????
    runTest @lzunit/lzunit.lzx#668
      this: ????????????????????????????????????????????
      arg 0: 'testUndefinedErrors'
    run @lzunit/lzunit.lzx#632
      this: ????????????????????????????????????????????
      arg 0: ?????????????????????????????????????????????????
      arg 1: 'testUndefinedErrors'
    runNextTest @lzunit/lzunit.lzx#1148
      this: ?????????????????????????
      arg 0: 2942
    execute @lfc/events/LaszloEvents.lzs#95
      this: ????????????????????????????????????????
      arg 0: 2942
    removeCallIdleDelegates @lfc/services/LzIdle.lzs#67
      this: ????????????????????????
      arg 0: 2942
    sendEvent @lfc/events/LaszloEvents.lzs#437
      this: ???????????????????????????
      arg 0: 2942
    __idleupdate @lfc/services/LzIdle.lzs#103
      this: ??????????????????????
      arg 0: 2942
    kernel/LzIdleKernel.lzs#29/16 @lfc/kernel/LzIdleKernel.lzs#32
      this: ??????????

    OBJECT DETAILS:
    ???????????????????????????????????????????? {
    _dbg_filename: 'simple.lzx'
    _dbg_lineno: 16
    _instanceAttrs: <a href="asfunction:_root.$modules.lz.Debug.displayObj,161"><font color="#0000ff">{..., _dbg_lineno: 16, _dbg_filename: simple.lzx}</font></a>
    _instanceChildren: null
    addedToParent: true
    constructor: <a href="asfunction:_root.$modules.lz.Debug.displayObj,162"><font color="#0000ff">lz.IntentionalErrors</font></a>
    debugWrite: false
    devnull: ??????????
    expectedError: null
    expectedErrors: 1
    immediateparent: <a href="asfunction:_root.$modules.lz.Debug.displayObj,145"><font color="#0000ff">TestSuite</font></a>
    isinited: true
    mask: <a href="asfunction:_root.$modules.lz.Debug.displayObj,163"><font color="#0000ff">This is the canvas</font></a>
    name: 'IntentionalErrors'
    nodeLevel: 2
    parent: <a href="asfunction:_root.$modules.lz.Debug.displayObj,145"><font color="#0000ff">TestSuite</font></a>
    resourceheight: 0
    resourcewidth: 0
    result: <a href="asfunction:_root.$modules.lz.Debug.displayObj,142"><font color="#0000ff">Tests: 448 Failures: 0 Errors: 0</font></a>
    sprite: <a href="asfunction:_root.$modules.lz.Debug.displayObj,164"><font color="#0000ff">LzSprite for IntentionalErrors name: IntentionalErrors </font></a>
    }

    [...]

    ---END OF BUG REPORT---
    lzx>


P T Withington - 19/Sep/07 12:20 PM
r6520 | ptw | 2007-09-19 12:56:48 -0400 (Wed, 19 Sep 2007) | 13 lines
Changed paths:
   M /openlaszlo/trunk/WEB-INF/lps/lfc/debugger/LzDebug.lzs

Change 20070918-ptw-k by ptw@dueling-banjos.local on 2007-09-18 18:21:53 EDT
    in /Users/ptw/OpenLaszlo/ringding
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: Tweak output of Debug.bugReport

Details:
    Use Debug.inspect, not inspectInternal so the 'hotlink' markup is hidden.

Tests:
    IWFM


P T Withington - 31/Oct/07 11:37 AM
r7065 | ptw | 2007-10-31 15:36:00 -0400 (Wed, 31 Oct 2007) | 32 lines
Changed paths:
   M /openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/LzBacktrace.lzs
   M /openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/LzDebug.lzs
   M /openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/platform/dhtml/kernel.js
   M /openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/views/LaszloCanvas.lzs

Change 20071031-ptw-w by ptw@dueling-banjos.local 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: <73D84A53-259B-41B3-84C3-6F85AAB1C394@laszlosystems.com>)
QA Reviewer: frisco (pending)
Doc Reviewer: jsundman (Message-Id: <177ADEE2-B8B6-4359-BA64-29BB327D5F38@laszlosystems.com>)

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


Mamye Kratt - 13/Nov/07 11:36 AM
(wafflecone branch build r7137 - cranberry RC)
Fixed

Mamye Kratt - 13/Nov/07 11:36 AM
test trunk

Mamye Kratt - 05/Feb/08 04:05 PM
(trunk 4 build r7961)
Produced a bug report using Debug.bugReport() in swf and used the button to produce a report in dhtml.