[storm] Moving Storm Forward

James Henstridge james.henstridge at canonical.com
Mon Jun 8 07:34:43 BST 2009


Hi everyone,

Last week, a number of the Canonical Storm developers met at the
Ubuntu Developer Summit and had a few informal discussions about Storm
and how to improve the development process.  Below are some of my
thoughts coming from those discussions.

= Get More People Working on Trunk =

If someone were to look at the revisions in Storm's trunk, they'd see
that pretty much all the recent commits come from Canonical employees.
 However, if they looked at the other branches registered on
Launchpad, it is clear that there are a number of long lived feature
branches containing significant contribution from the community.  The
prominent ones are:

 * twisted-integration
 * Oracle support
 * Microsoft SQL Server support

While the current state of affairs might be workable for their current
users, I think it would be beneficial to try and get them merged to
trunk ASAP.  Some benefits of merging the branches include:

1. Make things easier for users who need features from more than one
of these branches.  From bug and branch activity on Launchpad, it is
clear that at least one person (Drew Smathers) has been using Oracle
together with twisted-integration.

2. Easier handling of bug fixes.  If a developer working on the Oracle
or MS-SQL branches, there is probably a temptation to fix unrelated
bugs on those feature branches since they will be immediately useful
to what they are working on.  Fixing the bug on trunk would require
waiting for the fix to get merged and then attempting to merge trunk
into the feature branch.  If the delta between trunk and what the
developer is working on is small, then there shouldn't be much
disadvantage to fixing things on trunk.

3. Easier to take advantage of features/bug fixes from trunk.  This is
related to the previous one: if the branch a developer is using has
diverged significantly from trunk, then it will be difficult for them
to merge changes from trunk.

Of course, there are some problems to overcome in merging Oracle and
MS-SQL support.  I am currently able to run tests for all supported DB
backends on my machine when committing to trunk, but that will be
difficult with these two due to licensing and ties to Windows for
MS-SQL.  Perhaps a buildbot instance might be the answer, if we can
get appropriate slaves set up.

Another issue is test coverage for the new backends.  If they don't
currently pass all the tests, might it be appropriate to merge them
anyway and work out a process where we can ratchet down the set of
failures to zero post merge?

= Reviews =

Changes make their way to trunk through Launchpad's code review
system.  A list of branches waiting for review is available here:

    https://code.launchpad.net/storm/+activereviews

While most review work is being done by the core Storm team at the
moment, I'd welcome others to help out.  Even if you don't have a deep
knowledge of Storm, a general knowledge of Python programming can
often be enough to see things the original developer missed.

= IRC Meetings =

Gustavo mentioned this on the mailing list a few months back, but we
haven't actually organised it.  It'd be helpful to have a regular IRC
meeting to discuss the development of Storm.  I think it'd be good to
aim for a monthly meeting at least initially, but we could do it more
frequently if we feel it is necessary.

The meeting need not be too long: if there isn't much to discuss, then
the meeting can end quickly.  This would be open

Picking a time might be a bit tricky, given that we're a
geographically dispersed team with people in America (North and
South), Europe and Australia, but hopefully we can find a time that
works.


Comments are welcome, as are further suggestions to improve our
development process.

James.



More information about the storm mailing list