]> git.mjollnir.org Git - moodle.git/commitdiff
MDL-18577 drop enums support - step1: transforming all enums to nomal varchar + preve...
authorstronk7 <stronk7>
Mon, 27 Apr 2009 20:29:01 +0000 (20:29 +0000)
committerstronk7 <stronk7>
Mon, 27 Apr 2009 20:29:01 +0000 (20:29 +0000)
14 files changed:
enrol/authorize/db/install.xml
enrol/authorize/db/upgrade.php
enrol/authorize/version.php
lang/en_utf8/error.php
lib/db/install.xml
lib/db/upgrade.php
lib/ddl/database_manager.php
mod/forum/db/install.xml
mod/forum/db/upgrade.php
mod/forum/version.php
mod/wiki/db/install.xml
mod/wiki/db/upgrade.php
mod/wiki/version.php
version.php

index f559023bb1784100c6282b12db6b0f23775aa06e..54e643eef1888fca2573ce7e435ad826cb542d46 100644 (file)
@@ -7,7 +7,7 @@
     <TABLE NAME="enrol_authorize" COMMENT="Holds all known information about authorize.net transactions" NEXT="enrol_authorize_refunds">
       <FIELDS>
         <FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" SEQUENCE="true" ENUM="false" NEXT="paymentmethod"/>
-        <FIELD NAME="paymentmethod" TYPE="char" LENGTH="6" NOTNULL="true" DEFAULT="cc" SEQUENCE="false" ENUM="true" ENUMVALUES="'cc', 'echeck'" PREVIOUS="id" NEXT="refundinfo"/>
+        <FIELD NAME="paymentmethod" TYPE="char" LENGTH="6" NOTNULL="true" DEFAULT="cc" SEQUENCE="false" ENUM="false" PREVIOUS="id" NEXT="refundinfo"/>
         <FIELD NAME="refundinfo" TYPE="int" LENGTH="4" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="paymentmethod" NEXT="ccname"/>
         <FIELD NAME="ccname" TYPE="char" LENGTH="255" NOTNULL="true" SEQUENCE="false" ENUM="false" PREVIOUS="refundinfo" NEXT="courseid"/>
         <FIELD NAME="courseid" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="ccname" NEXT="userid"/>
index 64a75bbb09d1a72d67d69a80003bee3b647ea802..4966fe9efbce568dda54f3d91cce7d06874f95bd 100644 (file)
@@ -74,6 +74,17 @@ function xmldb_enrol_authorize_upgrade($oldversion) {
         $dbman->add_index($table, $index);
     }
 
+    /// Dropping all enums/check contraints from core. MDL-18577
+    if ($result && $oldversion < 2009042700) {
+
+    /// Changing list of values (enum) of field paymentmethod on table enrol_authorize to none
+        $table = new xmldb_table('enrol_authorize');
+        $field = new xmldb_field('paymentmethod', XMLDB_TYPE_CHAR, '6', null, XMLDB_NOTNULL, null, null, null, 'cc', 'id');
+
+    /// Launch change of list of values for field paymentmethod
+        $dbman->change_field_enum($table, $field);
+    }
+
     return $result;
 }
 
index 13afaaaa2190990025135901dfaf6fda8e72e83f..d5270fd7d1aa0c47b485c4754d93ee070701e75e 100755 (executable)
@@ -1,6 +1,6 @@
 <?php // $Id$
 
-$plugin->version  = 2008092700;
+$plugin->version  = 2009042700;
 $plugin->requires = 2007101507;
 
 ?>
index 2afdc6d16c3af7c15bd0a20a6955892fd53ed002..3c09409f385dc84d9d6306a1857d99aee62601aa 100644 (file)
@@ -195,6 +195,7 @@ $string['ddlfieldnotexist'] = 'Field \"$a->fieldname\" does not exist in table \
 $string['ddltablealreadyexists'] = 'Table \"$a\" already exists';
 $string['ddltablenotexist'] = 'Table \"$a\" does not exist';
 $string['ddlunknownerror'] = 'Unknown DDL library error';
+$string['ddlunsupportedenums'] = 'Field \"$a\" contains enum info. Enums support has been dropped in Moodle 2.0. Please modify your code to avoid them completely. If you are already using them, please use \$dbman->change_field_enum(\$table, \$field); in your upgrade scripts to drop them ASAP';
 $string['ddlxmlfileerror'] = 'XML database file errors found';
 $string['dmlreadexception'] = 'Error reading from database';
 $string['dmlwriteexception'] = 'Error writing to database';
index afe17d3e6cb95169c249a5cc92f362f7cb68e5e6..5d2a59deb228af0e6e5bfe7ae15bdd012a446272 100644 (file)
         <FIELD NAME="courseid" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="id" NEXT="timeend"/>
         <FIELD NAME="timeend" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="courseid" NEXT="roleid"/>
         <FIELD NAME="roleid" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="id of role for the aggregates" PREVIOUS="timeend" NEXT="stattype"/>
-        <FIELD NAME="stattype" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="activity" SEQUENCE="false" ENUM="true" ENUMVALUES="'enrolments', 'activity', 'logins'" COMMENT="type of stat" PREVIOUS="roleid" NEXT="stat1"/>
+        <FIELD NAME="stattype" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="activity" SEQUENCE="false" ENUM="false" COMMENT="type of stat" PREVIOUS="roleid" NEXT="stat1"/>
         <FIELD NAME="stat1" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="stat1. usually used for reads" PREVIOUS="stattype" NEXT="stat2"/>
         <FIELD NAME="stat2" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="stat2. usually used for writes." PREVIOUS="stat1"/>
       </FIELDS>
         <FIELD NAME="courseid" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="id" NEXT="timeend"/>
         <FIELD NAME="timeend" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="courseid" NEXT="roleid"/>
         <FIELD NAME="roleid" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="id of role for the aggregates" PREVIOUS="timeend" NEXT="stattype"/>
-        <FIELD NAME="stattype" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="activity" SEQUENCE="false" ENUM="true" ENUMVALUES="'enrolments', 'activity', 'logins'" COMMENT="type of stat" PREVIOUS="roleid" NEXT="stat1"/>
+        <FIELD NAME="stattype" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="activity" SEQUENCE="false" ENUM="false" COMMENT="type of stat" PREVIOUS="roleid" NEXT="stat1"/>
         <FIELD NAME="stat1" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="stat1. usually used for reads" PREVIOUS="stattype" NEXT="stat2"/>
         <FIELD NAME="stat2" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="stat2. usually used for writes." PREVIOUS="stat1"/>
       </FIELDS>
         <FIELD NAME="courseid" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="id" NEXT="timeend"/>
         <FIELD NAME="timeend" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="courseid" NEXT="roleid"/>
         <FIELD NAME="roleid" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="id of role for the aggregates" PREVIOUS="timeend" NEXT="stattype"/>
-        <FIELD NAME="stattype" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="activity" SEQUENCE="false" ENUM="true" ENUMVALUES="'enrolments', 'activity', 'logins'" COMMENT="type of stat" PREVIOUS="roleid" NEXT="stat1"/>
+        <FIELD NAME="stattype" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="activity" SEQUENCE="false" ENUM="false" COMMENT="type of stat" PREVIOUS="roleid" NEXT="stat1"/>
         <FIELD NAME="stat1" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="stat1. usually used for reads" PREVIOUS="stattype" NEXT="stat2"/>
         <FIELD NAME="stat2" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="stat2. usually used for writes." PREVIOUS="stat1"/>
       </FIELDS>
         <FIELD NAME="rating" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="uniquehash" NEXT="format"/>
         <FIELD NAME="format" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="rating" NEXT="attachment"/>
         <FIELD NAME="attachment" TYPE="char" LENGTH="100" NOTNULL="false" SEQUENCE="false" ENUM="false" COMMENT="attachment" PREVIOUS="format" NEXT="publishstate"/>
-        <FIELD NAME="publishstate" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="draft" SEQUENCE="false" ENUM="true" ENUMVALUES="'draft', 'site', 'public'" PREVIOUS="attachment" NEXT="lastmodified"/>
+        <FIELD NAME="publishstate" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="draft" SEQUENCE="false" ENUM="false" PREVIOUS="attachment" NEXT="lastmodified"/>
         <FIELD NAME="lastmodified" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="publishstate" NEXT="created"/>
         <FIELD NAME="created" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="lastmodified" NEXT="usermodified"/>
         <FIELD NAME="usermodified" TYPE="int" LENGTH="10" NOTNULL="false" UNSIGNED="true" SEQUENCE="false" ENUM="false" PREVIOUS="created"/>
       </INDEXES>
     </TABLE>
   </TABLES>
-</XMLDB>
\ No newline at end of file
+</XMLDB>
index 8e5cc3d2e7770ac30a3e0e8c61973d7ac5f15593..bcda99f8337c0600ecdce612b1c940d60e683585 100644 (file)
@@ -1667,6 +1667,41 @@ WHERE gradeitemid IS NOT NULL AND grademax IS NOT NULL");
         upgrade_main_savepoint($result, 2009042600);
     }
 
+    /// Dropping all enums/check contraints from core. MDL-18577
+    if ($result && $oldversion < 2009042700) {
+
+    /// Changing list of values (enum) of field stattype on table stats_daily to none
+        $table = new xmldb_table('stats_daily');
+        $field = new xmldb_field('stattype', XMLDB_TYPE_CHAR, '20', null, XMLDB_NOTNULL, null, null, null, 'activity', 'roleid');
+
+    /// Launch change of list of values for field stattype
+        $dbman->change_field_enum($table, $field);
+
+    /// Changing list of values (enum) of field stattype on table stats_weekly to none
+        $table = new xmldb_table('stats_weekly');
+        $field = new xmldb_field('stattype', XMLDB_TYPE_CHAR, '20', null, XMLDB_NOTNULL, null, null, null, 'activity', 'roleid');
+
+    /// Launch change of list of values for field stattype
+        $dbman->change_field_enum($table, $field);
+
+    /// Changing list of values (enum) of field stattype on table stats_monthly to none
+        $table = new xmldb_table('stats_monthly');
+        $field = new xmldb_field('stattype', XMLDB_TYPE_CHAR, '20', null, XMLDB_NOTNULL, null, null, null, 'activity', 'roleid');
+
+    /// Launch change of list of values for field stattype
+        $dbman->change_field_enum($table, $field);
+
+    /// Changing list of values (enum) of field publishstate on table post to none
+        $table = new xmldb_table('post');
+        $field = new xmldb_field('publishstate', XMLDB_TYPE_CHAR, '20', null, XMLDB_NOTNULL, null, null, null, 'draft', 'attachment');
+
+    /// Launch change of list of values for field publishstate
+        $dbman->change_field_enum($table, $field);
+
+    /// Main savepoint reached
+        upgrade_main_savepoint($result, 2009042700);
+    }
+
     return $result;
 }
 
index b048f8d148b0b6db98ed94a3cc465eeef0a87756..fc5a849a915f2e63f34053f3e55209aa72ddffe7 100644 (file)
@@ -468,6 +468,14 @@ class database_manager {
             throw new ddl_exception('ddltablealreadyexists', $xmldb_table->getName());
         }
 
+    /// Iterate over all fields in table, finding any attempt to add one field with enum info, throw exception
+        $xmldb_fields = $xmldb_table->getFields();
+        foreach ($xmldb_fields as $xmldb_field) {
+            if ($xmldb_field->getEnum()) {
+                throw new ddl_exception('ddlunsupportedenums', $xmldb_table->getName() . '->' . $xmldb_field->getName());
+            }
+        }
+
         if (!$sqlarr = $this->generator->getCreateTableSQL($xmldb_table)) {
             throw new ddl_exception('ddlunknownerror', null, 'table create sql not generated');
         }
@@ -493,6 +501,14 @@ class database_manager {
             $this->drop_temp_table($xmldb_table);
         }
 
+    /// Iterate over all fields in table, finding any attempt to add one field with enum info, throw exception
+        $xmldb_fields = $xmldb_table->getFields();
+        foreach ($xmldb_fields as $xmldb_field) {
+            if ($xmldb_field->getEnum()) {
+                throw new ddl_exception('ddlunsupportedenums', $xmldb_table->getName() . '->' . $xmldb_field->getName());
+            }
+        }
+
         if (!$sqlarr = $this->generator->getCreateTempTableSQL($xmldb_table)) {
             throw new ddl_exception('ddlunknownerror', null, 'temp table create sql not generated');
         }
@@ -583,6 +599,11 @@ class database_manager {
                       ' cannot be added. Not null fields added to non empty tables require default value. Create skipped');
         }
 
+    /// Detect any attempt to add one field with enum info, throw exception
+        if ($xmldb_field->getEnum()) {
+            throw new ddl_exception('ddlunsupportedenums', $xmldb_table->getName() . '->' . $xmldb_field->getName());
+        }
+
         if (!$sqlarr = $this->generator->getAddFieldSQL($xmldb_table, $xmldb_field)) {
             throw new ddl_exception('ddlunknownerror', null, 'addfield sql not generated');
         }
@@ -689,11 +710,7 @@ class database_manager {
 
     /// If enum is defined, we're going to create it, check it doesn't exist.
         if ($xmldb_field->getEnum()) {
-            if ($this->check_constraint_exists($xmldb_table, $xmldb_field)) {
-                debugging('Enum for ' . $xmldb_table->getName() . '->' . $xmldb_field->getName() .
-                          ' already exists. Create skipped', DEBUG_DEVELOPER);
-                return; //Enum exists, nothing to do
-            }
+            throw new ddl_exception('ddlunsupportedenums', $xmldb_table->getName() . '->' . $xmldb_field->getName());
         } else { /// Else, we're going to drop it, check it exists
             if (!$this->check_constraint_exists($xmldb_table, $xmldb_field)) {
                 debugging('Enum for ' . $xmldb_table->getName() . '->' . $xmldb_field->getName() .
index d07b8e5c2ffb3843e1eabda1df0fd149e9697d0e..29d53f62e331c9989938f50f5d7e344cd1bbbbfb 100644 (file)
@@ -8,7 +8,7 @@
       <FIELDS>
         <FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" SEQUENCE="true" ENUM="false" NEXT="course"/>
         <FIELD NAME="course" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="id" NEXT="type"/>
-        <FIELD NAME="type" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="general" SEQUENCE="false" ENUM="true" ENUMVALUES="'single', 'news', 'general', 'social', 'eachuser', 'teacher', 'qanda'" PREVIOUS="course" NEXT="name"/>
+        <FIELD NAME="type" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="general" SEQUENCE="false" ENUM="false" PREVIOUS="course" NEXT="name"/>
         <FIELD NAME="name" TYPE="char" LENGTH="255" NOTNULL="true" SEQUENCE="false" ENUM="false" PREVIOUS="type" NEXT="intro"/>
         <FIELD NAME="intro" TYPE="text" LENGTH="small" NOTNULL="true" SEQUENCE="false" ENUM="false" PREVIOUS="name" NEXT="introformat"/>
         <FIELD NAME="introformat" TYPE="int" LENGTH="4" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="text format of intro field" PREVIOUS="intro" NEXT="assessed"/>
       </INDEXES>
     </TABLE>
   </TABLES>
-</XMLDB>
\ No newline at end of file
+</XMLDB>
index 8a1e4a5842e3372bed44c6382f5c5ac4c18c099b..9aa009d9f53885ffcc669392dfbefbd1858624ee 100644 (file)
@@ -241,6 +241,20 @@ function xmldb_forum_upgrade($oldversion) {
         upgrade_mod_savepoint($result, 2009042004, 'forum');
     }
 
+    /// Dropping all enums/check contraints from core. MDL-18577
+    if ($result && $oldversion < 2009042700) {
+
+    /// Changing list of values (enum) of field type on table forum to none
+        $table = new xmldb_table('forum');
+        $field = new xmldb_field('type', XMLDB_TYPE_CHAR, '20', null, XMLDB_NOTNULL, null, null, null, 'general', 'course');
+
+    /// Launch change of list of values for field type
+        $dbman->change_field_enum($table, $field);
+
+    /// forum savepoint reached
+        upgrade_mod_savepoint($result, 2009042700, 'forum');
+    }
+
     return $result;
 }
 
index 11567b9981e2dc313ac1bea7638d72c393a26db2..20aab4ba68326981ad01bc541160dadc621764ca 100644 (file)
@@ -5,7 +5,7 @@
 //  This fragment is called by /admin/index.php
 ////////////////////////////////////////////////////////////////////////////////
 
-$module->version  = 2009042004;
+$module->version  = 2009042700;
 $module->requires = 2009041700;  // Requires this Moodle version
 $module->cron     = 60;
 
index 21095d0a8ef1672a40b1be08722a8e50e2d4f1f5..d079818edbef3a447f0f11294ece31b387813a3d 100644 (file)
@@ -12,7 +12,7 @@
         <FIELD NAME="intro" TYPE="text" LENGTH="small" NOTNULL="true" SEQUENCE="false" ENUM="false" PREVIOUS="name" NEXT="introformat"/>
         <FIELD NAME="introformat" TYPE="int" LENGTH="4" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" COMMENT="intro text field format" PREVIOUS="intro" NEXT="pagename"/>
         <FIELD NAME="pagename" TYPE="char" LENGTH="255" NOTNULL="true" SEQUENCE="false" ENUM="false" PREVIOUS="introformat" NEXT="wtype"/>
-        <FIELD NAME="wtype" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="group" SEQUENCE="false" ENUM="true" ENUMVALUES="'teacher', 'group', 'student'" PREVIOUS="pagename" NEXT="ewikiprinttitle"/>
+        <FIELD NAME="wtype" TYPE="char" LENGTH="20" NOTNULL="true" DEFAULT="group" SEQUENCE="false" ENUM="false" PREVIOUS="pagename" NEXT="ewikiprinttitle"/>
         <FIELD NAME="ewikiprinttitle" TYPE="int" LENGTH="4" NOTNULL="true" UNSIGNED="true" DEFAULT="1" SEQUENCE="false" ENUM="false" PREVIOUS="wtype" NEXT="htmlmode"/>
         <FIELD NAME="htmlmode" TYPE="int" LENGTH="4" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="ewikiprinttitle" NEXT="ewikiacceptbinary"/>
         <FIELD NAME="ewikiacceptbinary" TYPE="int" LENGTH="4" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="htmlmode" NEXT="disablecamelcase"/>
@@ -95,4 +95,4 @@
       </INDEXES>
     </TABLE>
   </TABLES>
-</XMLDB>
\ No newline at end of file
+</XMLDB>
index 0120a1aa5835cc5d78a928ebcca94d8413fab16b..37663d5e432924a11652589494dbd6b0c0b657ef 100644 (file)
@@ -54,6 +54,20 @@ function xmldb_wiki_upgrade($oldversion) {
         upgrade_mod_savepoint($result, 2009042001, 'wiki');
     }
 
+/// Dropping all enums/check contraints from core. MDL-18577
+    if ($result && $oldversion < 2009042700) {
+
+    /// Changing list of values (enum) of field wtype on table wiki to none
+        $table = new xmldb_table('wiki');
+        $field = new xmldb_field('wtype', XMLDB_TYPE_CHAR, '20', null, XMLDB_NOTNULL, null, null, null, 'group', 'pagename');
+
+    /// Launch change of list of values for field wtype
+        $dbman->change_field_enum($table, $field);
+
+    /// wiki savepoint reached
+        upgrade_mod_savepoint($result, 2009042700, 'wiki');
+    }
+
     return $result;
 }
 
index a452a7e55e88505013e4040a694ebdcbfd207130..70bca1d4e0b4dfb0d3e83e0bbaf5274043e3ba78 100644 (file)
@@ -5,7 +5,7 @@
 ///  This fragment is called by moodle_needs_upgrading() and /admin/index.php
 /////////////////////////////////////////////////////////////////////////////////
 
-$module->version  = 2009042001;  // The current module version (Date: YYYYMMDDXX)
+$module->version  = 2009042700;  // The current module version (Date: YYYYMMDDXX)
 $module->requires = 2009041700;  // The current module version (Date: YYYYMMDDXX)
 $module->cron     = 3600;        // Period for cron to check this module (secs)
 
index 6e9adc9ab874a1129ff724ecef8270497ceba0b5..1969f6e7299acce7f13c4fdd50d8e4d4570e539d 100644 (file)
@@ -6,7 +6,7 @@
 // This is compared against the values stored in the database to determine
 // whether upgrades should be performed (see lib/db/*.php)
 
-    $version = 2009042600;  // YYYYMMDD   = date of the last version bump
+    $version = 2009042700;  // YYYYMMDD   = date of the last version bump
                             //         XX = daily increments
 
     $release = '2.0 dev (Build: 20090427)';  // Human-friendly version name