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

Key: LPP-3784
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: -- --
Assignee: Mamye Kratt
Reporter: P T Withington
Votes: 0
Watchers: 0
Operations

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

Debugger needs to indicate when it has abbreviated an object.

Created: 26/Mar/07 11:24 AM   Updated: 27/Sep/07 08:55 AM
Component/s: Debugger
Affects Version/s: 4.0.0
Fix Version/s: RingDing (4.1)

Time Tracking:
Not Specified

Severity: Minor
Fixed in Change#: 4,559
Runtime: N/A
Fix in hand: True


 Description  « Hide
Antun is being fooled by the debugger when it prints an anonymous object. You can't tell that the debugger has only printed some of the fields of the object[

> On Mar 14, 2007, at 8:32 AM, P T Withington wrote:
>
>> On 2007-03-13, at 18:01 EDT, Antun Karlovac wrote:
>>
>>> Can someone explain what canvas.datasets *should* be? It gives me
>>> two conflicting responses. I found an earlier email thread
>>> between Tucker and Adam saying that canvas.datasets *might* be
>>> deprecated at some point.
>>
>> I think this was prompted by the fact that datasets are named in
>> so many places it is easy to leak them. Do you need to have a
>> list of all your datasets?
>>
>>> I have two datasets in the canvas, and a number nested elsewhere
>>> in my application. In the debugger, I type:
>>>
>>> LZX> canvas.datasets
>>>
>>> ... and I get the following response:
>>>
>>> «Object#7| {canvas_two_ds: LzDataset :canvas_two_ds,
>>> canvas_one_ds: LzDataset :canvas_one_ds}»
>>
>> What happens if you inspect this in the debugger (click on it)?
>> Also try `Debug.showInternalProperties = true` and inspecting. I
>> think you may be being fooled by the debugger printing an
>> abbreviated representation of the object. You have to inspect the
>> object to see all its members.
>>


 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
P T Withington - 01/Apr/07 04:37 AM
r4559 | ptw | 2007-04-01 07:36:19 -0400 (Sun, 01 Apr 2007) | 26 lines
Changed paths:
   M /openlaszlo/branches/legals/WEB-INF/lps/lfc/debugger/platform/dhtml/LzDebug.js
   M /openlaszlo/branches/legals/WEB-INF/lps/lfc/debugger/platform/swf/LzDebug.as

Change 20070326-ptw-b by ptw@dueling-banjos.local on 2007-03-26 15:26:58 EDT
    in /Users/ptw/OpenLaszlo/legals-1
    for http://svn.openlaszlo.org/openlaszlo/branches/legals

Summary: Debugger indicates when it is abbreviating an object

Bugs Fixed:
LPP-3784 'Debugger needs to indicate when it has abbreviated an object.'

Technical Reviewer: hminsky (Message-ID: <8c61fad60704010429t46d1c9afj5e8a9c93b57e56df@mail.gmail.com>)
QA Reviewer: antun (pending)
Doc Reviewer: jsundman (pending)

Documentation:
When the debugger prints an object, it tries to print a concise
description of the object -- if the object has a name or id, it will
try to use that name. For anonymous objects, it will print some of
the properties of the object (if not all the properties are printed,
it will print `...` to indicate the elision). If you want details of
the object, you should inspect the object, but note that even
inspection does not show methods or inherited properties.

Tests:
    IWFM

P T Withington - 01/Apr/07 05:04 AM
Verification: Load tests/data/local-data.lzx, notice that when you evaluate canvas.datasets, you now see `...`, showing that some elements have not been displayed. Turning on `Debug.showInternalProperties` and inspecting reveals that the local datasets have (somewhat bizarre) internal names, which is why they are not diplayed:

lzx> canvas.datasets
{gdata: LzDataset :gdata, ...}
lzx> Debug.showInternalProperties=true
true
lzx> Debug.inspect({gdata: LzDataset :gdata, ...})
«Object#9| {gdata: LzDataset :gdata, ...}» {
__U1.localdata: <localdata/>
__U2.lds: <lds/>
__U3.lds: <lds><foo>bar</foo></lds>
__U4.lds: «lz.dataset| <lds><persons><person id=\"1\"><firstName>Dan</firstName><lastName>McGowan</lastName><modifyDate>3/25/05</modifyDate><address id=\"1\" code=\"ML\"><line1>2210 North 184th Street</line1><line2/><city>Shoreline</city></address></person><p...»
__U5.lds: «lz.dataset| <lds><persons><person id=\"1\"><firstName>Dan</firstName><lastName>McGowan</lastName><modifyDate>3/25/05</modifyDate><address id=\"1\" code=\"ML\"><line1>2210 North 184th Street</line1><line2/><city>Shoreline</city></address></person><p...»
__U6.lds: «lz.dataset| <lds><persons><person id=\"1\"><firstName>Dan</firstName><lastName>McGowan</lastName><modifyDate>3/25/05</modifyDate><address id=\"1\" code=\"ML\"><line1>2210 North 184th Street</line1><line2/><city>Shoreline</city></address></person><p...»
__U7.localdata: <localdata/>
__U8.localdata: <localdata/>
__U9.localdata: <localdata/>
gdata: #gdata
}
{gdata: LzDataset :gdata, ...}
lzx>