Status update, 2011-11-01

3 views
Skip to first unread message

Iain McGinniss

unread,
Nov 1, 2011, 2:57:15 PM11/1/11
to belay-r...@googlegroups.com
Welcome to the weekly status update for the belay research team.

Last week, we completed the following tasks:
- Where possible, we use the browser provided crypto APIs to generate the UUIDs for capabilities. The window.crypto.getRandomValues() function should provide higher quality random numbers than the usual Math.random() calls, which is important to making capability UUIDs hard to guess.
- The protocol for launching belay enabled web app instances has been redesigned and reimplemented, producing what we hope is a much more consistent and easy to understand flow. Dead code related to the old method is still being removed, once this is complete we should be able to publish documentation explaining how the new launch process works.
- The initial bootstrap required to pass capabilities through a newly instantiated capability tunnel, which used to involve a peculiar entity known as the "radish server", has now been cleaned up to avoid confusion.
- Selenium functional tests are now available, by running the run_tests.sh script in the root of the repository. More functional tests will be added in due course, they have already been incredibly useful in ensuring we haven't broken the world with the aggressive refactoring of application launch.
- The Jasmine JS tests, which were neglected for some time, have been resurrected and fixed. They are now run as part of run_tests.sh, so we are actively using and paying attention to these tests again.
- We are also running more general validation and static analysis scripts over our source code, and will begin fixing issues reported by these tools as part of our drive towards production strength code.

The coming week, we plan to:
- Finish cleaning up the belay station and communication infrastructure (belay-frame.html, belay-port.js, belay-client.js and shared-worker.js).
- Change the way that "suggestions" (the list of known instances for a domain) are provided by the station. At present the station pushes all suggestions to the shared worker, which must remember all these options. We wish to change this so that the suggestions are pulled directly from the station as required, which should reduce the amount of stuff that the shared worker needs to do (by putting the responsibility in the right place).
- Update our documentation, to reflect recent changes. Serve static reference documentation for the Javascript and Python APIs in some form on the belay research site.
- More selenium tests, to cover the drag-drop behaviour of caps between buzzer, emote and the station.

Until next time,
Iain McGinniss | Intern | iain...@google.com | 412-736-7803


Reply all
Reply to author
Forward
0 new messages