[General] Most Significant Defect

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

[General] Most Significant Defect

Philip Weaver
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 


Reply | Threaded
Open this post in threaded view
|

[General] Most Significant Defect

Philip Weaver
Once the contents of Main.js is placed inside window.onload and everything
loads reliably. This seems pretty obvious now.

On Thu, Apr 2, 2009@10:12 AM, Philip Weaver <[hidden email]> wrote:

> in Main.js, documentHasSerializedMorphs will occasionally return false when
> a document clearly has serialized morphs.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://livelykernel.sunlabs.com/pipermail/general/attachments/20090403/5820ae84/attachment.html