Are you sure your comment for "DefaultPresentationType" is valid, c.f. with "LzDataElementMixin#setAttr" where any non-string input produces a debug-warning (maybe it should just perform implicit string-coercion as in as3 instead of the warning...). And I think you shouldn't take the changes in LzDataAttrBind (at least yet), because all data-classes have this loose distinction between `null` and `undefined` and if you just change it in one place, it's likely it could break other things or create an inconsistent state. And finally, these "memoization comparison" bugs are a general issue we should fix, even base functions like "setAttribute" (with its magic third argument) have got this bug. How about creating a task to do some clean-up in the LFC?

On 1/15/2009 7:40 PM, P T Withington wrote:
Change 20090115-ptw-u by [email protected] on 2009-01-15 07:57:16 EST
    in /Users/ptw/OpenLaszlo/trunk
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: Improve presentation types

Bugs Fixed: LPP-7622 StringPresentationType required

Technical Reviewer: [email protected] (pending)
QA Reviewer: max (pending)

Details:
    regression: Revert changes of r10414 that now show up as errors
    due to untyped attributes correctly getting databound to
    expressions.

    presentation-types: Add more tests

    LzSprite: Change Debug.write to Debut.error

    LzNode: Reinstitute DefaultPresentationType (which is just a
    straight pass-through, for backward compatibility).  Fix yet
    another memoization bug due to using equality rather than
    identity.

    PresentationTypes: Clean up comments, indentation, whitespace.
    Ensure all presentation types have both accept and present methods
    (note that static methods are not inherited).  Add
    DefaultPresentationType for backward compatibility.  Rewrite
    ExpressionPresentationType to match Adam's 'Laszlo XML DOM Data
    Type Strictness - RFC'.

    LzDataAttrBind: Remove coercion of undefined to null, fix another
    memoization comparison.

Tests:
    smokecheck, allcomponents example in debug no longer signals error

Files:
M      test/smoke/regression.lzl
M      test/smoke/presentation-types.lzl
M      WEB-INF/lps/lfc/kernel/swf/LzSprite.as
M      WEB-INF/lps/lfc/core/LzNode.lzs
M      WEB-INF/lps/lfc/core/PresentationTypes.lzs
M      WEB-INF/lps/lfc/data/LzDataAttrBind.lzs

Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20090115-ptw-u.tar


Reply via email to