sugarbot's aim is to provide testing and automation facilities for the OLPC Project's Sugar GUI. The project must first identify and evaluate possible implementation options, and then implement the best choice. Although it has a Sugar focus, sugarbot should be easily extensible to other Python-based GUI's.

Monday, August 18, 2008

Finalizing...

I am trying to get the final screencast properly edited and dubbed, and will be putting the 0.01 package online soon. It has been quite the day for me, as Murphy's Law would have it, everything decided to go more then slightly haywire when I decided to record video :-\

Wednesday, August 13, 2008

Combo boxes working, wrapping up

Got the combo-boxes working the way I want them to. I realized that convenience-handling for each and every Widget type is not something that is [1] perhaps not entirely necessary and [2] certainly not entirely necessary right this instant. With that in mind, I'll be wrapping up/documenting the code for an initial 0.1 release on Friday.

I'll be working on another screencast that will demonstrate integration with buildbot, automated launching of sugarbot and Sugar, as well as the new Python scripting abilities. Overall, I'm very pleased with where I am right now.

It's been a lot of fun developing for GSoC/the Python Org/One Laptop Per Child, and I'm sad to see the summer come to an end (less free time to work on it) in the next few weeks. Hopefully I'll be able to keep my motivation up to keep development going.

Once I have the GSoC-final screencast up, I plan on publishing it to all of the mailing lists. Thanks to Grig and Titus for providing me with guidance and advice throughout the summer, you guys are really great. Also, thanks to those of you on the mailing lists and IRC channels that also provided tips, insight, and advice that made those obscure API problems so much simpler.

Zach

Monday, August 11, 2008

ComboBox'es

Working on select capability of ComboBox and similar widgets tonight. It isn't a problem in itself, but trying to keep the code as flexible and clean as possible is making it into a problem.

Tuesday, August 5, 2008

Cleaning up logging functionality

Cleaning up a bit of the logging functionality on the RPC-server side of stuff. Most of it has to do with better correlation of individual clients with given status messages. A small side-effect of this is that pinpointing errors should be easier.


Old Output:

sbRpcServer : INFO     Listening on port 54321
sbRpcServer : INFO Kill: True Restart: True
sbRpcServer : INFO Added script sbpython_script.py [Activity Calculate]
sbRpcServer : INFO Serving script sbpython_script.py to client Zach
sbRpcServer : ERROR sugarbot client disconnected prematurely.
sbRpcServer : ERROR Reason: Execution failed: Traceback (most recent call last):
File "/home/zach/Activities/sugarbot.activity/sbexecutionengine.py", line 92, in executePy
sugarbot_main(self.widgets)
File "[string]", line 7, in sugarbot_main
AssertionError


New Output:

sbRpcServer : INFO     Listening on port 54321
sbRpcServer : INFO Kill: True Restart: True
sbRpcServer : INFO Added script sbpython_script.py [Activity Calculate]
Zach : INFO Starting sbpython_script.py
Zach : INFO Success (sbpython_script.py)
Zach : INFO Disconnected [1\1\1]
Zach : INFO Starting script sbpython_script.py
Zach : ERROR Execution failed:
Traceback (most recent call last):
File "/home/zach/Activities/sugarbot.activity/sbexecutionengine.py", line 92, in executePy
sugarbot_main(self.widgets)
File "Sugarbot Script: 'sbpython_script.py'", line 7, in sugarbot_main
AssertionError

Zach : INFO Disconnected [0\1\1]

Hurricane

Supposedly there's a decent-sized tropical storm/hurricane coming through right now, but it just looks like a bunch of regular old rain. Anyways, campus is shut down today, so I get some time to work on Sugarbot.

Next Tuesday I fly back out to the [Government Agency] to take my polygraph tests again.

Monday, August 4, 2008

With the half-hour runs, everything is still running fine with Buildbot.

Update: Looks like there were about 30 half-hour runs of Buildbot that went by just fine. I don't know why it was crashing at the 6-hour mark and thereafter. Must have been something weird.

Sunday, August 3, 2008

DBUS problem time-related?

I changed the buildbot master.cfg to have the slave run every minute... so far I've got 10 runs in a row without issues. However, the last time buildbot was started (using the same SVN revision) it ran correctly the first time, then DBUS went crazy when it ran again 6 hours later.

I'll change it to 30 minutes and see how it fares overnight.

Hmm.

DBUS Flaking Out

It looks like DBUS starts flaking out after a few runs inside of buildbot. No idea what's causing the issue, as the trace doesn't involve my code at all.

ERROR:dbus.proxies:Introspect error on org.laptop.ActivityRegistry:/org/laptop/ActivityRegistry:
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include:
the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout
expired, or the network connection was broken.
DEBUG:dbus.proxies:Executing introspect queue due to error
Traceback (most recent call last):
File "/usr/share/sugar/shell/view/Shell.py", line 98, in _start_journal_idle
if registry.get_activity('org.laptop.JournalActivity'):
File "/usr/lib/python2.5/site-packages/sugar/activity/registry.py", line 114, in get_activity
info_dict = self._registry.GetActivity(service_name)
File "/var/lib/python-support/python2.5/dbus/proxies.py", line 68, in __call__
return self._proxy_method(*args, **keywords)
File "/var/lib/python-support/python2.5/dbus/proxies.py", line 140, in __call__
**keywords)
File "/var/lib/python-support/python2.5/dbus/connection.py", line 607, in call_blocking
message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include:
the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout
expired, or the network connection was broken.
ERROR:dbus.proxies:Introspect error on org.laptop.Clipboard:/org/laptop/Clipboard: dbus.exceptions.DBusException:
org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not
send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network
connection was broken.
DEBUG:dbus.proxies:Executing introspect queue due to error
ERROR:root:Error getting activities async: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible
causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the
reply timeout expired, or the network connection was broken.

Saturday, August 2, 2008

Latest Changes

When Buildbot is allowed to run for an extended period of time (read: more than a few runs), I get a pretty cryptic error message (if you have the slightest clue what this means, please do tell):
/bin/sh: /usr/share/sugar/shell/sugarbot-launcher.py: Host is down
Buildbot is now available here: http://zachriggle.is-a-geek.org:8010/