Progress of SQL database back-end06 Aug 2006

Tuomas Suutari is working on a Google Summer Of Code for adding an SQL backend to KPhotoAlbum, and I asked him to provide all of us with a progress report, so here it is.

I just merged changes from my developing branch to actual KPhotoAlbum source code tree (i.e. trunk). This means that now there is already some kind of alpha version of the SQL back-end in KPhotoAlbum.

Currently it's capable of storing almost all the information that the XML back-end does. Only member maps are not yet saved. But code for that is almost ready.

Next stage is to get error handling work, so when connection to database server fails, back-end does something more reasonable than just crashes. And also optimize few database calls to be more SQL friendly. (This is because currently many parts in the code assume that database is in fast memory, which leads to quite different approach than with SQL storage.) Then some kind of configuration dialog has to be done, so user can type username and password to server somewhere.

So there is still some work to do, but things seem promising. Though still some more testing of the back-end has to be done after the SoC project, but you'll get the SQL support eventually.

KPhotoAlbum news feed05 Aug 2006

KPhotoAlbum's news section can now be monitored through your favorite RSS reader, simply point it to, or in case it don't understand the first.

Google Summer of Code Project on KPhotoAlbum24 May 2006

Yesterday the google summer of code projects was chosen, and I'm happy to announce that Tuomas Suutari (thsuut AT utu DOT fi) was elected to work on KPhotoAlbum. Here is his description of the project:

As you maybe already know, currently KPhotoAlbum stores its data in an XML file. This file is read into memory on start up, and is written to disk when saving.

Jesper suggested on the KPhotoAlbum mailing list that someone would add support for SQL database back-end as a Google Summer of Code project. He has already made a proof of concept implementation for making the back end pluggable.

When I got that mail, I immediately realized that this would be a cool project for me, because I use KPhotoAlbum regularly and love programming.

Adding possibility to save image database into SQL database could provide at least following improvements:

  • scale better for large photo collections (uses less memory)
  • make KPhotoAlbum start and close faster (no loading/saving of the XML file)
  • add possibility to access the database by multiple users at the same time

The last bullet is really the biggest improvement to many users, who might want multiple people to tag the set of images at the same time, and perhaps allow for adding information from say a web interface.

KPhotoAlbum 2.2 is released08 May 2006

Finally I got KPhotoAlbum 2.2 out of the door (actually it is already a couple a weeks ago now - yeah I've been busy). The new version contains two major improvements: (1) Much improved support for EXIF, including capability to search your images based on EXIF info. (2) A much improved thumbnail viewer which allows you to resize the thumbnails to any size simply by dragging with the middle mouse button.

The following is a list of features added since 2.1:

  • Added a checkbox to the annotation dialog offering to remove annotations. Thanks for Robert L Krawitz for patch with this feature.
  • The datebar now has an explicit button for canceling selection.
  • Drasticly improved performance of deleting images. Thanks for Robert L Krawitz for his analysis of the problem.
  • Its now possible to select whether the newest or the oldest thumbnail should be shown first.
  • Completely reimplemented the thumbnail view, to solve a huge amount of issues with QIconView.
  • Added an EXIF dialog (available from the browser), plus the possibilities to see EXIF tags in the viewer. Set of EXIF tokens shown is configurable in the settings dialog.
  • Searches using the description field are now case insensitive.
  • Added a Exif dialog to the context menu in the browser.
  • KPhotoAlbum now stores its thumbnails in ~/.thumbnails complying with many other applications.
  • Added an option to save the index.xml file in a compressed format, this speeds up loading the xml file by approximate a factor 2.
  • KPhotoAlbum does now offer to save numbered backups of the index.xml file: index.xml~0001~, index.xml~0002~ etc. In addition this file can be zipped to preserve disk space.

The following is a list of important bug fixes since 2.1:

  • Inaccurate times now survives a visit to the annotation dialog.
  • Member maps wasn't correctly renamed when renaming a category.
  • Fixed crash when annotation dialog was up, and the datebar got a mouse move event. Thanks to Martin Hoeller for finding this crash.
  • Fixed bug where limited images on the date bar followed by a limiting images from the browser, and then unlimiting from the browser resulted in only items in the scope of the datebar selection being shown on the datebar.
  • Restart slideshow timer when user manually moves to a new image.

Finally, since the previous KPhotoAlbum release (back in the days when it was called KimDaBa), I've worked very hard on trying to add an SQL backend. This required rather a lot of restructuring of KPhotoAlbum. Unfortunately I had to give up on the task before it was finished, as it simply ate me up from the inside. The good news is that all the changes is still in there, and it seems like we might get a Google Summer of Code project for making the darn thing work.

Message Freeze18 Mar 2006

KPhotoAlbum just entered message freeze today, and is planned to be released on Monday April 10th.

Getting ready for release11 Mar 2006

It has been a very long time ago since the last release, and a lot of good things are in there now. So now is now, I've started release procedure as of today, expect a release within the next two month.