Yeah, I remember seeing that a while ago when looking at LZO
compilation for webtop - so I don't think the caching behavior is new.
It would be good to get to the bottom of this, but since there's a
workaround, it's technically a P1...
On Mar 6, 2010, at 12:47 PM, Henry Minsky <[email protected]>
wrote:
There is some kind of very sticky state or caching happening with
the lzo.
if you compile the test case, and then compile the window.lzx file
as an lzo,
the app doesn't use it, even if you clear the server cache and
browser caches.
And likewise if you compile the test case when there is an lzo, and
delete the lzo,
then recompiling the app doesn't see that either. The LPS servlet
needs to be undeployed
and redeployed to pick up the change...
2010/3/6 Henry Minsky <[email protected]>
Hmm, yeah I see those errors now too, looking...
On Sat, Mar 6, 2010 at 2:50 PM, Max Carlson <[email protected]>
wrote:
The classroot test works for me, but binary library test:
$ lzc -c lps/components/lz/window.lzx
<canvas width="100%" height="80%" debug="true">
<include href="lz/window.lzx"/>
<window>
<text>I am a window</text>
</window>
</canvas>
returns in dhtml:
ERROR @base/componentmanager.lzx≈42: TypeError: lz[fclass_$0] is not
a constructor
swf8:
ERROR @base/componentmanager.lzx≈52: undefined object does not have
a property 'reset'
swf10:
ERROR @base/componentmanager.lzx≈42: TypeError: Error #1007: Instant
iation attempted on a non-constructor.
I didn't try these without your change though.
On 3/5/10 2:42 PM, Henry Minsky wrote:
Change 20100305-hqm-O by [email protected] on 2010-03-05 17:26:12 EST
in /Users/hqm/openlaszlo/trunk
for http://svn.openlaszlo.org/openlaszlo/trunk
Summary: fix for error when compiling binary library from lps
components
New Features:
Bugs Fixed: LPP-8802
Technical Reviewer: ptw
QA Reviewer: max
Doc Reviewer: (pending)
Documentation:
Release Notes:
Overview:
+ don't use 'force' arg when ensuring that a parent classmodel is
compiled in NodeModel.asMap
+ Move the call to assignClassroot to the emitClassDeclaration method
on ClassModel, and don't call it for anonymous (instance) classes. We
only support use of 'classroot' in real<class> definitions, not in
automatically generated anonymous classes.
Details:
Tests:
smokecheck in swf, swf10, dhtml
ant lztest
+ binary library test:
"lzc -c lps/components/lz/window.lzx" compiles without error now ,
and this example works
<canvas width="100%" height="80%" debug="true">
<include href="lz/window.lzx"/>
<window>
<text>I am a window</text>
</window>
</canvas>
+ classroot test:
case below behaves same in both cases (classroot should now be
undefined in both cases)
<canvas width="100%" height="80%" debug="true">
<view id="foo" oninit="Debug.write('I am an anon class now!')">
<view>
<handler name="oninit">
Debug.write('foo classroot', classroot);
</handler>
</view>
</view>
<view id="bar">
<view>
<handler name="oninit">
Debug.write('bar classroot', classroot);
</handler>
</view>
</view>
</canvas>
Files:
M WEB-INF/lps/server/src/org/openlaszlo/compiler/NodeModel.java
M WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassModel.java
Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20100305-hqm-O.tar
--
Regards,
Max Carlson
OpenLaszlo.org
--
Henry Minsky
Software Architect
[email protected]
--
Henry Minsky
Software Architect
[email protected]
_______________________________________________
Laszlo-reviews mailing list
[email protected]
http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews