Friday, February 17, 2006

Athena Tracebacks


A branch by idnar for Athena landed a few days ago. I just noticed some output on a testing server which shows it off pretty nicely:


2006/02/17 20:07 EST [HTTPChannel,13,66.92.68.248] Traceback (most recent call last):
File "", line 0, in

--- <exception caught here> ---
File "", line 0, in

File "https://<hostname>/private/jsmodule/Divmod.Runtime", line 39, in ()

File "https://<hostname>/private/jsmodule/Divmod", line 135, in ([object Object])

File "", line 0, in apply([object Object],[object Array])

File "https://<hostname>/private/jsmodule/Divmod.Defer", line 137, in callback([object Object],[object Object])

File "https://<hostname>/private/jsmodule/Divmod", line 135, in ([object Object])

File "", line 0, in apply([object Object],[object Array])

File "https://<hostname>/private/jsmodule/Divmod.Defer", line 134, in _startRunCallbacks([object Object],[object Object])

File "https://<hostname>/private/jsmodule/Divmod", line 135, in ()

File "", line 0, in apply([object Object],[object Array])

File "https://<hostname>/private/jsmodule/Divmod.Defer", line 108, in _runCallbacks([object Object])

File "", line 0, in apply(null,[object Array])

File "https://<hostname>/private/jsmodule/Nevow.Athena", line 259, in ([object Object])

File "", line 0, in apply(null,[object Array])

File "https://<hostname>/private/jsmodule/Nevow.Athena", line 191, in ("Nevow.Athena.callByAthenaID","s2c0",[object Array])

File "", line 0, in apply(null,[object Array])

File "https://<hostname>/private/jsmodule/Nevow.Athena", line 608, in (16,"setStatus",[object Array])

File "https://<hostname>/private/jsmodule/Nevow.Athena", line 600, in (16)

File "", line 0, in Error("0 nodes with athena id 16")

nevow.athena.JSException: Error: 0 nodes with athena id 16

Next step, source lines....

Tuesday, February 7, 2006

Athena Update


I wrote the beginning of a tutorial for Athena last weekend. I started on a similar piece for writing tests for Athena apps, but haven't gotten anywhere interesting yet. This latter will cover nit in some detail when it is finished, which might be this weekend (but don't hold your breath).




Also on the Athena front, I added a minor feature yesterday, client-side notifyOnDisconnect, the purpose of which you can likely guess. The first thing Glyph and I did with it was add a default handler for that event which makes it extremely obvious to the user that the connection has gone away.




The logging/debug console is also a bit nicer now that it doesn't spew 100 copies of every message. ;) And if you haven't taken a look at the new admin REPL in Mantissa SVN, you probably should. This will likely work its way backwards into Nevow as a generic terminal-esque or text-editing widget of some sort.