Re: [Phpgroupware-cvs] [18946] drop externals - core is a module in its own right

Maât <[email protected]> Sun, 28 Sep 2008 14:13:15 +0200
Newsgroups gmane.comp.web.phpgroupware.devel
Message-ID <[email protected]>
Dave Hall a écrit :
> Revision: 18946
>           http://svn.sv.gnu.org/viewvc/?view=rev&root=phpgroupware&revision=18946
> Author:   skwashd
> Date:     2008-09-28 11:55:32 +0000 (Sun, 28 Sep 2008)
>
> Log Message:
> -----------
> drop externals - core is a module in its own right
>
> Property Changed:
> ----------------
>     core/trunk/
>
>
> Property changes on: core/trunk
> ___________________________________________________________________
> Name: svn:externals
>    - addressbook http://svn.savannah.gnu.org/svn/phpgroupware/modules/addressbook/trunk
> admin http://svn.savannah.gnu.org/svn/phpgroupware/modules/admin/trunk
> calendar http://svn.savannah.gnu.org/svn/phpgroupware/modules/calendar/trunk
> developer_tools http://svn.savannah.gnu.org/svn/phpgroupware/modules/developer_tools/trunk
> ged http://svn.savannah.gnu.org/svn/phpgroupware/modules/ged/trunk
> hrm http://svn.savannah.gnu.org/svn/phpgroupware/modules/hrm/trunk
> manual http://svn.savannah.gnu.org/svn/phpgroupware/modules/manual/trunk
> news_admin http://svn.savannah.gnu.org/svn/phpgroupware/modules/news_admin/trunk
> notes http://svn.savannah.gnu.org/svn/phpgroupware/modules/notes/trunk
> phpgwapi http://svn.savannah.gnu.org/svn/phpgroupware/modules/phpgwapi/trunk
> preferences http://svn.savannah.gnu.org/svn/phpgroupware/modules/preferences/trunk
> property http://svn.savannah.gnu.org/svn/phpgroupware/modules/property/trunk
> setup http://svn.savannah.gnu.org/svn/phpgroupware/modules/setup/trunk
> syncml http://svn.savannah.gnu.org/svn/phpgroupware/modules/syncml/trunk
> syncml-server http://svn.savannah.gnu.org/svn/phpgroupware/modules/syncml-server/trunk
> todo http://svn.savannah.gnu.org/svn/phpgroupware/modules/todo/trunk
> wiki http://svn.savannah.gnu.org/svn/phpgroupware/modules/wiki/trunk
>
>
>    + 
>   
rhaaaa !

dave ! stop this and learn how to use subversion before doing more harm !

Each module here has it's own version ! that's how phpgroupware 
architecture is thought from the beginning

Example with calendar :

you have a setup dir with inside the specific version of calendar and 
the rules to move from a version to an other :

calendar/setup/setup.inc.php :


        $setup_info['calendar']['name']    = 'calendar';
        $setup_info['calendar']['version'] = '0.9.18.002';
        $setup_info['calendar']['app_order'] = 3;
        $setup_info['calendar']['enable']  = 1;
        $setup_info['calendar']['app_group']    = 'office';

and in calednar/setup/tables_update.inc.php you have things like that :

        $test[] = '0.9.10pre27';
        function calendar_upgrade0_9_10pre27()
        {
                $GLOBALS['setup_info']['calendar']['currentver'] = 
'0.9.10pre28';
                return $GLOBALS['setup_info']['calendar']['currentver'];
        }
        $test[] = '0.9.10pre28';
        function calendar_upgrade0_9_10pre28()
        {
                $GLOBALS['setup_info']['calendar']['currentver'] = '0.9.10';
                return $GLOBALS['setup_info']['calendar']['currentver'];
        }

this allow to move from a version to an other

=> each module leaves it's own life and have it's own version and 
phpgroupware brings all together


with a trunk/tags/branches for each module (wether core or not) you will 
be able to have tags for each calendar version

with a big hardcoded core with everything inside you will loose this ability

from quality and source control management this is awful !

svn:externals are a far less ugly approach for project management

what we agreed before was wether some apps would be considered core or 
not core : what you are doing is pure nonsense !

appart a few specific dirs (if they exist)  without this setup/* system 
all these modules need to have a specific versionning life

WHAT YOU ARE DOING IS STUPID :