[General] Most Significant Defect

Philip Weaver philmaker at gmail.com
Thu Apr 2 17:12:21 CEST 2009


The most significant defect I've seen is that, in
Main.js, documentHasSerializedMorphs will occasionally return false when a
document clearly has serialized morphs. I mostly see this problem when in
the wiki but it's probably not exclusive to the wiki. It's been difficult to
troubleshoot this issue in the wiki however no I'm beginning to try pointing
to my own main and config. This issue probably has something to do with
timing and using(lively.lang.Execution).run but I'm not certain.

I've seen some other issues which I've worked around. I don't need any help
with these but I'm just mentioning them.

One issue was that after saving a world on my hosted server
subsequently every world would hang on load. This could have something to do
with my hosted Apache and WebDav configurations. However, once I removed
references to Examples.js (removed Scratch.js too) every world began to load
again. It's possible that simply the act of saving to WebDav via my
filesystem could have reset WebDav and that removing Examples.js
and Scratch.js was just a coincidence. I was happy to have it finally
working and I haven't revisited. The point of this is that sometime I or we
need to created simpler starter files for Main.js, file.xhtml, and
defaultconfig.js

Another issue I was seeing was local. I was developing a set of pages which
linked among themselves. It was basically unusable because in Safari every
other load the world would freeze - importWorldContents was being called
before the preamble. I finally clued in to disable my cache in Safari. I
solved this issue permanently by overriding Loader.loadJs to always append a
timestamp to script.src and it does work even with caching on.

Loader.loadJs = function(url, onLoadCb, embedSerializable) {
 if (document.getElementById(url)) return;
var script = document.createElement('script');
script.id = url;
script.type = 'text/javascript';
if (Config.disableScriptCaching) {
var date = new Date();
script.src = url + '?' + date.getTime();
} else {
script.src = url;
}
var node = document.getElementsByTagName(embedSerializable ? "defs" :
"script")[0];
if (onLoadCb) script.onload = onLoadCb;
node.appendChild(script);
};

Sincerely,
Philip
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://livelykernel.sunlabs.com/pipermail/general/attachments/20090402/01ae0d55/attachment.html 




More information about the lively-kernel mailing list