Web Services in Gossip

I haven’t done much on Gossip in a while. Been rather preoccupied with Tracker recently.

Today I managed to add a feature which uses the text under the mouse pointer to search with Google, Wikipedia and Youtube. Right now those are just hard coded, but I had in mind, to make it configurable.

Web Services

Maintainer 0.6

Over the past month or so I have had a few contributions to the maintainer python script I started writing a while back to help maintainers with the laborious tasks carried out during a release.

Lucas Rocha sent me a great patch for including the help manual translators to the release note generated.

Xavier Claessens is using the script for his Empathy releases and added support for getting the project website (and adding it to the release note) and making it possible to run the “install-module” script on master.gnome.org.

So thanks to both for their contributions!

I decided to add support for generating the email you send so all you have to do is literally click “Send”. It saves a lot of time and works quite nicely.

Try it out:

Gossip TELEPATHY branch merged to TRUNK

Finally, Gossip now has the TELEPATHY branch work available on trunk after Xavier Claessens merged the two tonight.

You can see the full announcement here:

I would especially like to thank:

  • Xavier Claessens
  • Eitan Isaacson
  • Raphael Slinckx
  • Sjoerd Simons

They have all worked very hard to help make this happen and of course thank you to the Telepathy team for their support along the way.

Here is a glimpse of what is currently available (bear in mind the interface is generated and needs some love 🙂

Gossip Group Chat Hacking

I added browsing capability so you can view a list of chat rooms on the server of your choice:

I have also spent some time recently improving the whole group chat experience, well, mostly the joining part and overall management of it. Now for example, ALL status information is shown in the window not in some popup dialog or some window. This is a much nicer approach I think. I have also added the ability to reconnect in certain scenarios too:

This should all be available in the new release some time this week.

Maintainer Python Script 0.3

I have spent some time taking the feedback from people on my earlier post I have had today and putting it into the script. The main things that have updated are:

  • Provide a default plain text and HTML template for release notes.
  • Retrieving the description from Bugzilla for a product and using that in the release note (if the default template is used).
  • Add the md5sum of the tarballs in the release note.
  • For po/ChangeLog, accept the language updater’s name to be included in brackets so it isn’t always the commiter’s name used (same as ChangeLog).

I have also provided some information on the site about formatting to make sure the scripts work for you. Most of which people should be doing already.

You can get Maintainer 0.3 here

Maintainer Python Script

With all the releases of Gossip that I have been doing recently, I decided I wasn’t really happy with the current tools available to get translation updates and the whole process of getting bugs fixed and updating the NEWS file. Plus Tim had also mentioned that it was one of many things that take up so much time when releasing projects like GTK+. I can only imagine how long it must take Matthias each release.

So I started to write a tool to make life that little more easier. It is not finished, but it is a start. Some of the current features include:

  • Show updated translations
  • Show fixed bugs
  • Show a summary of bugs fixed and their description
  • Create a release note for sending out announcements

I have been using it with Gossip the last few releases and I have tested it with glib and gtk+ and it works OK – see what you think:

Go to the project page here.

Flower Power & Instant Messaging

Busy busy bee, that’s me 🙂

Chelsea Flower Show ’06

Recently I attended the Chelsea Flower Show for the second time and it didn’t disappoint, I took plenty of eye candy for all to enjoy and you can find it at the usual hot spot (http://www.curlybeast.net). One of my favourites has to be this aqualegia, most spectacular:

Gossip 0.11.1

Over the last 2 or 3 weeks Gossip has really had some work put into it and I would like to take this opportunity to thank Eitan Isaacson for the patches he sent in to get avatar support up and running – it r0cks! Looking good Jeff 😉

During this time we have also spent time fixing some of the little things and adding general polish to make it sparkle, this has meant that Richard has upgraded his status from party hacker to real hacker!

Thanks again to all that has helped with the latest release, it is appreciated and your patches most welcome!

Oh – and I am in the middle of moving house at the moment too, woohoo, busy busy busy!

Glib Threadpools & Canon EOS 350D

GLib Threadpools

I have spent some time working on Glib recently to get sorting functionality working in async queues so that thread pools can be sorted by a user specified function. The main reason for this work was to remove the *very* old thread pool code that GnomeVFS was using (which was duplicated to some extent in gthreadpool.c).

I also added support threads to exit when they have been idle in the thread pool for a duration customisable by the application. This is an optimisation that was wanted to save resources on the Nokia 770.

Canon EOS 350D

OK, so for a while now I have been using an Olympus C460ZdelSol which is nothing special and I wanted to upgrade it to something more powerful, so I decided to get the Canon EOS 350D. I spent most the holidays with the laptop, manual and camera playing with the settings and understanding how it works. Now I think I will read it again 🙂

Hacking Gossip

Gossip Updates: I have spent some time scratching a few of those itches with regards to the Gossip user interfaces recently. Most notably the group chat join dialog and the status presets dialog:

I have been looking for an excuse to try out the new GtkCellRendererCombo and thought this might be a good exercise for the reader. This is not the final cut, still needs some work…

As for the “Join Group Chat” dialog, I have been thinking long and hard about the best way to do it and really am still not happy with what I came up with.

The result is not a much different from what Mikael originally had it is just a little cleaner and smarter. This is what I came up with:

So basically these are the things we might do in the future[*] and things that we currently support:

– Join a group chat favourite
– Join multiple group chat favourites *
– Add/Edit/Delete a favourite
– Browse chat rooms *

What would be really nice is if you could do all this on one dialog. Typically applications tend to have a list on one window somewhere and another dialog to add or edit entries on the list. While this might be OK, I can’t help but think it there must be a way to use the same entries (for Server, Room, etc) when joining a custom group chat too. If you use a GtkTreeView to show favourites or possibly a list of rooms on a server (when browsing) then how do you fit a set of entries to join into a custom group chat on the same window? Perhaps that is a separate dialog?

The whole point is, from a usability perspective, how do we best present this to the user?

New GPU & Gossip Transports

New Graphics Card
After putting up with my old GeForce Ti4800 for some time now and given the advent of games like Half Life and Doom 3, I have bought myself a new Galaxy GeForce 6600 GT from Overclockers UK. The most important thing for me is the noise reduction. My current card can be heard from the next room with the doors open and is the only noisy fan in my Shuttle.

Notice Of Marriage
Tuesday my good lady and I visited the local civil registrar to declare our notice of marriage. So now we are all geared up for our big day (which should be) Saturday August 27th. Thankfully, the registrar confirmed for me that everything I have to say will be repeated after her 🙂

Interestingly, when you declare your intent to marry it is put up on a notice board for 15 days – this is for people to object if they have reason to.

Gossip Transports & GnomeMeeting
Gossip’s HEAD branch now has the worst of Micke’s and my code since we merged both our branches in on the weekend 🙂

The transports seem to be shaping up nicely though, hopefully now that it is on HEAD it will get tested more and we can determin problems early ready for 0.9.

Julien PUYDT has also spent a lot of time working on patches to get GnomeMeeting operational via Gossip. Bad timing with the recent merge and everything, but it should get into Gossip sooner or later.