Change 20100419-hqm-0 by [email protected] on 2010-04-19 18:06:15 EDT
    in /Users/hqm/openlaszlo/trunk1
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: fixes for swf10 incremental compilation

New Features:

Bugs Fixed: LPP-8911 fix swf10 incremental mode

Technical Reviewer: ptw
QA Reviewer: max
Doc Reviewer: (pending)

Documentation:

Release Notes:

Overview:
    
Makes it possible to do faster rebuilds of the LFC. 

+ Refactored the code that names the temp as3 files working dir,  so that
"lzsc" can locate it.

+ Conditionalized a cache in GenericVisitor, so it would not get used when 
the scache is disabled.

Details:

WEB-INF/lps/server/src/org/openlaszlo/sc/SWF9External.java:

+ For incremental compiling, we need to make the directory where the
intermediate .as files go be a known location.

Made createCompilationWorkDir() callable externally (to allow calling from lzsc)


WEB-INF/lps/server/src/org/openlaszlo/sc/lzsc.java:
+ create new "persist" flag, to run the top level interactive read
loop, independent of "incremental" flag.

+ put tmp as3 working directory in a known location, so we can reuse
it for incremental recompile

WEB-INF/lps/server/src/org/openlaszlo/sc/GenericVisitor.java:
+ don't use Compiler.CachedParses, if compiler.scache.enabled is false



And here are some changes that I forgot in last changeset, to make
Locale-independent string comparsions
WEB-INF/lps/server/src/org/openlaszlo/sc/CommonGenerator.java
WEB-INF/lps/server/src/org/openlaszlo/sc/Compiler.java
WEB-INF/lps/server/src/org/openlaszlo/sc/JavascriptCompressor.java
WEB-INF/lps/server/src/org/openlaszlo/sc/GenericVisitor.java
WEB-INF/lps/server/src/org/openlaszlo/servlets/responders/ResponderSETCACHESIZE.java
WEB-INF/lps/server/src/org/openlaszlo/servlets/LZServlet.java

+ use our own version of equalsIgnoreCase


Tests:

Compile the LFC incrementally, using the flags below:

[Note: Right now incremental compilation for the LFC only works
properly when compiling with "debug" or "backtrace" options. This is
because only in debug mode are source filename annotations added to
the javascript, which is needed to check source file modification
times against the last time the corresponding as3 file was written.]

You can compile the debug mode LFC incrementally fastest with these args

# do this first to initialize  initial the intermediate as3 files properly
# with the desired compilation options (e.g., debug )
./buildlfcdebug --runtime=swf10

# then do this to get incremental mode
./buildlfcdebug --runtime=swf10 --incremental --persist




Files:
M       WEB-INF/lps/server/src/org/openlaszlo/sc/SWF9External.java
M       WEB-INF/lps/server/src/org/openlaszlo/sc/CommonGenerator.java
M       WEB-INF/lps/server/src/org/openlaszlo/sc/Compiler.java
M       WEB-INF/lps/server/src/org/openlaszlo/sc/lzsc.java
M       WEB-INF/lps/server/src/org/openlaszlo/sc/JavascriptCompressor.java
M       WEB-INF/lps/server/src/org/openlaszlo/sc/GenericVisitor.java
M       
WEB-INF/lps/server/src/org/openlaszlo/servlets/responders/ResponderSETCACHESIZE.java
M       WEB-INF/lps/server/src/org/openlaszlo/servlets/LZServlet.java

Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20100419-hqm-0.tar

Reply via email to