wxVenus

bzr get http://philwilson.org/code/wxvenus

wxVenus is, at the moment, a desktop tool for browsing the cache that a local Venus installation creates when it runs. It is written in wxPython and is dependent on lxml.

wxVenus

It is also the first Python program of greater than ten lines that I’ve ever written, and given that we’ve already established I am very bad at it, the code quality is very low.

The long-term intention is to provide a cross-platform desktop tool which uses either a local or remote Venus installation as its aggregator and data source. At the moment I am using Lighthouse to track progress, but the free account doesn’t let me expose my tickets publically (although I will use the API to do this) I’ve moved to Google code because Lighthouse was closed and my local Trac install was slower than you could possibly imagine.

Really this is a lesson in Bazaar, Python, wxWidgets and XML parsing. Hopefully I will end up with a tool I can use. So far I’m learning a lot 🙂

Published by

3 thoughts on “wxVenus”

  1. I can vouch for the ‘cross-platform’ part – it works for me on Windows, after a small amount of tinkering. Screenshot here: http://blog.ciarang.com/posts/venus-cache-browser/

    I did notice that it’s very slow when moving from one feed to another, which may well have something to do with me pointing it at a Venus cache on a different machine via a Windows file share. (Almost the ‘remote’ part?) Anyway, if I had to guess, I’d say unbuffered file reading, but I haven’t had time to look.

  2. Excellent stuff! Not sure why you had to change the planet_http_status to http_status – it seems to work on my machine. I’ll check when I get home.

    Improving performance is high on my list, but given my weak Python and the fact that I want to keep it XML native as far as possible, it might take some time 🙂

    The “remote” part will probably one or more of:

    a) atom.xml output from a remote Venus installation

    b) Atom-over-XMPP (messaging)

    c) XMPP pub/sub

Leave a Reply

Your email address will not be published. Required fields are marked *