approved! sorry I didn't get the publish flag logic right the last time!
On Tue, Dec 15, 2009 at 4:11 PM, P T Withington <[email protected]> wrote: > [Henry, can you have a look at this. It fixes some spurious warnings that > Maynard is seeing and tries to make the names of anonymous classes more > sensible. I'd like to get this in so we can branch.] > > Change 20091211-ptw-z by [email protected] on 2009-12-11 17:24:36 EST > in /Users/ptw/OpenLaszlo/trunk > for http://svn.openlaszlo.org/openlaszlo/trunk > > Summary: Move (debug only) displayName from instance to class > > Bugs Fixed: LPP-8665 Class/displayName conflicts with existing applications > > Technical Reviewer: hminksy (pending) > QA Reviewer: mdemmon (pending) > > Overview: > I incorrectly put displayName on the instance not on the class in > r15320. While investigating that, I discovered that interstitials > were incorrectly being installed as valid tags. Eventually I > ended up having to touch a whole lot of stuff to get class > (constructor) names to appear as I want them: > > For a simple tag that adds a mixin: > > <view with="mix"> > > The class will have exactly that name (but you will not be able to > look it up in `lz`, because it is not a real tag. > > For a tag that adds methods, thus requiring an "instance class": > > <view> > <method ... /> > </view> > > The class name will be: > > <anonymous extends="view"> > > Again, not entered into `lz`, it is not a tag. > > Finally, if you have both mixins and methods: > > <view with="mix"> > <method ... /> > </view> > > The class name will reflect that: > > <anonymous extends="view" with="mix"> > > All of this information goes away in non-debug builds. These > classes will all have short (unique) names, for compactness. > > Details: > > smoke/debugger: Add some tests that verify that constructor names > are as expected and do not collide with instance values. > > LzDebug, LzFormatter: Move the stringEscape method from the > debugger to the formatter for more consistent output with and > without the debugger. > > swf/LzDebug, dhtml/LzDebug: functionName: Remove obsolete > 'classname' and 'name' processing. > > swf9/LzDebug: functionName: look for 'displayName' before the > qualified name. > > LzText: Ensure the output of the formatter is HTML-escaped before > inserting, so `LzText/format("<this is a test>")` doesn't > disappear. > > LzMessage: The only purpose of the version of xmlEscape here is > to prevent angle brackets from being misinterpreted as markup. > Simplify to that task (and eliminate the bug that formatted text > with newlines behaved differently in dhtml than in swf). > > ViewCompiler: anonymous instance classes should not be entered in > the schema class table, or published as tags. > > ViewSchema: by default, classes are entered in both the schema > class table and published as tags. > > ClassModel: interstitials are entered in the schema class table > but not published as tags. Since anonymous classes are no longer > inserted in the DOM, we can't compute a path for them for > debugging -- have to rely on file/line instead. Store the base > class and mixin names on anonymous and interstitial classes so we > can compute a sensible name for the debugger. > > Tests: > I added a test to smoke/debugger.lzl that verifies that > constructor names are as expected and do not collide with instance > values. > > Files: > M test/smoke/debugger.lzl > M WEB-INF/lps/lfc/debugger/LzDebug.lzs > M WEB-INF/lps/lfc/debugger/platform/swf/LzDebug.as > M WEB-INF/lps/lfc/debugger/platform/dhtml/LzDebug.js > M WEB-INF/lps/lfc/debugger/platform/swf9/LzDebug.as > M WEB-INF/lps/lfc/views/LzText.lzs > M WEB-INF/lps/lfc/compiler/LzFormatter.lzs > M WEB-INF/lps/lfc/compiler/LzMessage.lzs > M WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewCompiler.java > M WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewSchema.java > M WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassModel.java > > Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20091211-ptw-z.tar > > _______________________________________________ > Laszlo-reviews mailing list > [email protected] > http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews > -- Henry Minsky Software Architect [email protected]
_______________________________________________ Laszlo-reviews mailing list [email protected] http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews
