Approved for QA!

Regards,
Max Carlson
OpenLaszlo.org

On 7/9/10 9:00 AM, P T Withington wrote:
Change 20100708-ptw-9 by [email protected] on 2010-07-08 20:39:17 EDT
     in /Users/ptw/OpenLaszlo/trunk
     for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: Process autoincludes on un-transformed source

Bugs Fixed:  LPP-8738 autoincludes broken by mixi implementation

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

Overview:

     We call getLibraries 3 (!) times in compiling a file.  We should
     only need to call it once, since the set of libraries is
     determined by the source LZX.  The LZX mixin implementation
     actually transforms the DOM to create the expected semantics,
     which resulted in the auto-include mechanism finding different
     references (and losing the source references) because it was
     invoked on the transformed source.  This change caches the
     libraries found by the `updateRootSchema` call and reuses them for
     the `handleAutoincludes` call.

     I did not address the 3rd call `computePropertiesAndGlobals` in
     this change to reduce the risks.  We may want to try this in a
     separate change as an improvement to the compiler.

Details:

     ClassCompiler:  Remove unused local, noticed in passing.

     TopLevelCompiler:  Always compute the autoincludes, there is no
     need for the conditional; this lets us get the correct list of
     libraries and cache them for use in `handleAutoincludes`.

     CompilationEnvironment:  Add slots for caching the libraries and
     explanations.

     Compiler:  Cache the libraries and explanations discovered by
     `updateRootSchema`.

Tests:
     lztest, smoke, css and mixin tests, selection of demos

Files:
M       WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassCompiler.java
M       WEB-INF/lps/server/src/org/openlaszlo/compiler/ToplevelCompiler.java
M       
WEB-INF/lps/server/src/org/openlaszlo/compiler/CompilationEnvironment.java
M       WEB-INF/lps/server/src/org/openlaszlo/compiler/Compiler.java

Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20100708-ptw-9.tar

Reply via email to