[Koha-devel] Version numbering & updating

Paul POULAIN paul.poulain at free.fr
Fri Aug 10 10:59:31 CEST 2007


Hello world,

with Koha 3.0 we will have a new web installer, that can take care of 
database updating.
hdl has added a Version systempref, that contains the database version.
for instance there is a <kohaversion> number in the koha.xml file.

When a user authentify itself, Koha checks that kohaversion and Version 
are the same, otherwise, the user is automatically redirected to the web 
installer for database update.

I think we can improve a little the behaviour (mainly for libLime & us : 
it will be an improvement only on a multi-koha setup). I would suggest 
to move the <kohaversion> in the code itself.
Thus, when you install a new version, all your database will 
automatically go to update the 1st time the user logs in, on each 
virtual host / library.

How can we handle database updates during development stages ?
If I add a systempref, of a column, how to have LibLime and other devs 
handle that ?
I suggest that version could be a long number, like in Perl :
N.SSTTVVV :
N is 3 (until it becomes 4 ;-) )
SS is the version number (00 for instance)
TT is the 3rd level version number (00 for instance too)
VVV is the developper subrelease number.

An example, based on koha 2.2.9 (but I propose this method for Koha 3.0 
only, of course)
We are currently in Koha 2.0209001
I add a column to the table items, it's called mycolumn, it's a date.

I will add to updatedatabase :
if ($DBversion < 2.0209002) {
    $dbh->do("BEGIN TRANSACTION");
    $dbh->do("ALTER TABLE `items` ADD `mycolumn` DATE NOT NULL");
    $DBversion = 2.0209002;  
    $dbh->do("UPDATE systempref set value=$DBversion where 
parameter='Version'");
    $dbh->do("COMMIT");
}

Once it is in the public code, every developper will automatically be 
redirected to the updatedatabase page, without having to take care of 
what I have commited ;-)

What do you think of this idea ?

-- 
Paul POULAIN et Henri Damien LAURENT
Consultants indépendants en logiciels libres et bibliothéconomie (http://www.koha-fr.org)
Tel : 04 91 31 45 19 






More information about the Koha-devel mailing list