CVS update: /cowiki/htdocs/

[email protected] 2 Apr 2005 06:39:47 -0000
Newsgroups gmane.comp.php.cowiki.cvs
Message-ID <[email protected]>
User: dgorski 
Date: 05/04/01 22:39:47

Modified:
 /cowiki/htdocs/
  version.php

Log:
 D11N

File Changes:

Directory: /cowiki/htdocs/
==========================

File [changed]: version.php
Url: http://cowiki.tigris.org/source/browse/cowiki/htdocs/version.php?r1=1.118&r2=1.119
Delta lines:  +103 -43
----------------------
--- version.php	23 Mar 2005 22:32:16 -0000	1.118
+++ version.php	2 Apr 2005 06:39:47 -0000	1.119
@@ -2,7 +2,7 @@
 
 /**
  *
- * $Id: version.php,v 1.118 2005/03/23 22:32:16 dgorski Exp $
+ * $Id: version.php,v 1.119 2005/04/02 06:39:47 dgorski Exp $
  *
  * This file is part of coWiki. coWiki is free software under the terms of
  * the GNU General Public License (GPL). Read the LICENSE file. If you did
@@ -16,12 +16,12 @@
  * @author     Daniel T. Gorski, <[email protected]>
  * @copyright  (C) Daniel T. Gorski, {@link http://www.develnet.org}
  * @license    http://www.gnu.org/licenses/gpl.html
- * @version    $Revision: 1.118 $
+ * @version    $Revision: 1.119 $
  *
  */
 
 /**
- * This file is subject to change for each release
+ * This file is subject to change for each release!
  *
  * @package  htdocs
  * @access   public
@@ -30,76 +30,106 @@
  * @since    coWiki 0.3.0
  */
 
-    // This value has to be set to '0' (zero) for a stable version release.
+    // IMPORTANT: This value has to be set to '0' (zero) for a stable
+    // version release. Setting it this to zero would avoid output of
+    // embarrassing and security related errors to coWiki users. While
+    // development this value shoud be set E_ALL (better E_ALL | E_STRICT)
+    // to find possible sources of errors, warnings and notices.
     error_reporting(E_ALL); // !!
 
     // --------------------------------------------------------------------
 
     /**
-     * Required PHP interpreter version
+     * Required PHP interpreter version. Determines the PHP interpreter
+     * version that is required to run this software. If your interpreter
+     * is e.g. older that the required version, coWiki or its installer
+     * will fail. 
      */
     define('COWIKI_REQUIRED_PHP_VERSION', '5.0.2');
 
     /**
-     * Plugin interface version
+     * Plugin interface version. coWiki consists of plugins and needs
+     * this value to determine the plugin API version that it can handle.
      */
     define('COWIKI_PLUGIN_INTERFACE_VERSION', 1);
 
     /**
-     * Configuration file version
+     * Configuration file version. Significant changes in the configuration
+     * file may break coWiki. Hence your coWiki checks this value against
+     * the configuration file. If the required and given values mismatch
+     * and coWiki is not able to handle these differences, your coWiki will
+     * halt with an error. 
      */
     define('COWIKI_CONFIG_FILE_VERSION', 1);
 
     /**
-     * Naming, version & release date
+     * This is a simple name mapping for internal use of this software.
      */
     define('COWIKI_NAME', 'coWiki');
 
     /**
-     * Additional software subname string
+     * Additional software subname string. As well as in other royal
+     * circles, this software has an additional subname.
      */
     define('COWIKI_SUBNAME', 'web collaboration tool');
 
     /**
-     * Major software version
+     * Definition of the software version release. A software release
+     * version string consists of a MAJOR.MINOR.MICRO string - and if
+     * necessary of an additional PATCH or RELEASE CANDIDATE string. PATCH
+     * is used while coWiki is developed and usually is defined as '-dev'.
+     *
+     *   Two basic cases has to respected:
+     *
+     *   1) Stable releases always have a COWIKI_RELEASE_NAME defined and
+     *      COWIKI_VERSION_PATCH is emtpy!
+     *
+     *   2) While in development the COWIKI_VERSION_PATCH is usually
+     *      defined as '-dev' (or release candidate 'RC' plus a number) and
+     *      the COWIKI_RELEASE_NAME constant is empty!
      */
     define('COWIKI_VERSION_MAJOR', '0');
-
-    /**
-     * Minor software version
-     */
     define('COWIKI_VERSION_MINOR', '4');
-
-    /**
-     * Micro software version
-     */
     define('COWIKI_VERSION_MICRO', '0');
-
-    /**
-     * Software version patch
-     */
     define('COWIKI_VERSION_PATCH', '-dev');
-
-    /**
-     * Software release version
-     */
     define('COWIKI_RELEASE_NAME', '');
 
     /**
-     * Software build (full) date
+     * The full date of the current software build. This is a human
+     * readable, full date that must be changed after a fix or enhancement.
+     * That means, that this value might change daily. It needs to be
+     * changed by the developers after a commit, as it is necessary for
+     * the installer/setup routines to determine the chronological order
+     * of updates: everytime you fix or add something to coWiki with
+     * possible side effects on the setup installer, this value must be
+     * changed accordingly to the current date.
+     *
+     * Besides this, it is a good practice to update this date regularly to
+     * ease the work of the developers. Please do not forget to add your
+     * changes to the ChangeLog file too.
      */
-    define('COWIKI_VERSION_DATE', 'March 23 2005');
+    define('COWIKI_VERSION_DATE', 'April 02 2005');
+    
 
 
-    // --- Do not change from here ----------------------------------------
+    // === STOP - NO WAY! - DO NOT CHANGE FROM HERE =======================
 
     /**
-     * Software build (unix timestamp) date
+     * Software build (unix timestamp) date. The unix time stamp defined by
+     * COWIKI_VERSION_STAMP is required to distinguish different coWiki
+     * versions and is created from the human readable COWIKI_VERSION_DATE
+     * as defined above.
+     *
+     * The value of COWIKI_VERSION_STAMP is an integer value and might look
+     * like e.g. 1111532400 
      */
     define('COWIKI_VERSION_STAMP', strtotime(COWIKI_VERSION_DATE));
 
     /**
-     * Complete software version string
+     * Complete software version string. It consists of the major, minor
+     * and micro version (x.x.x) plus the patch level or release candiate
+     * number (RC), if given. A possible result might look like '1.2.3',
+     * '1.2.3-dev' or '1.2.3RC1'
      */
     define('COWIKI_VERSION', COWIKI_VERSION_MAJOR . '.'
                              . COWIKI_VERSION_MINOR . '.'
@@ -107,23 +137,53 @@
                              . COWIKI_VERSION_PATCH);
 
     /**
-     * Complete software name string
+     * Complete software name string. This string consists of the name
+     * of this software plus its version. Depending on if it is a
+     * development version or a stable version or a release canditate (RC)
+     * as defined above with COWIKI_VERSION_PATCH, this might look like:
+     * 
+     *    * 'coWiki 1.2.3-dev'
+     *    * 'coWiki 0.1.2'
+     *    * 'coWiki 3.2.1RC4'
+     *
+     * The release name like (Hydrogen, Helium, etc.) for a stable version
+     * is NOT included here.
      */
     define('COWIKI_FULL_NAME', COWIKI_NAME . ' ' .COWIKI_VERSION);
 
     /**
-     * Complete software name string and build version
+     * COWIKI_RELEASE is the definition of the release name for a stable
+     * version, or date of an interim development version. Depending on
+     * the state of the software, stable or development, the value will
+     * look like
+     *   
+     *   * 'April 02 2005'            (E.g. date for a development version)
+     *   * 'The name of the release'  (For a stable release defined above)
      */
     if (COWIKI_RELEASE_NAME == '') {
-        $sStr = ' (' . COWIKI_VERSION_DATE. ')';
+        define('COWIKI_RELEASE', COWIKI_VERSION_DATE);
     } else {
-        $sStr = ' (' . COWIKI_RELEASE_NAME . ')';
+        define('COWIKI_RELEASE', COWIKI_RELEASE_NAME);
     }
 
-    define('COWIKI_FULL_IDENT', COWIKI_NAME . ' ' . COWIKI_VERSION . $sStr);
+    /**
+     * COWIKI_FULL_IDENT defines the complete name of the software with
+     * its name, version and release name. For a stable release this might
+     * look like:
+     *
+     *   * 'coWiki 0.3.4 (Boron)'
+     *
+     * For a development version it will look like:
+     *
+     *   * 'coWiki 0.4.0-dev (April 02 2005)'
+     */
+    define(
+        'COWIKI_FULL_IDENT',
+         COWIKI_NAME . ' ' . COWIKI_VERSION . ' (' . COWIKI_RELEASE . ')'
+    );
 
     /**
-     * The URL of the home of this software
+     * The URL of the home of this software.
      */
     define('COWIKI_HOME', 'http://www.cowiki.org');