Wiki » History » Revision 18

« Previous | Revision 18/102 (diff) | Next »
Yannick Warnier, 15/04/2010 22:15

Chamilo 1.8 extra info

Report bugs

How to report bugs

Interface/pedagogical decisions


Management of Tools and sessions


Course Tutor




Coding conventions

Setup tricks

UTF-8 install

Release process

  • Try not to officially announce a release on a Monday or a Friday. Monday is the day the most people will come to you about something that doesn't work so you will be busy answering them, plus you might still be recovering from that crazy week-end. Friday doesn't give you any chance to fix something in a hurry if you missed something out.
  • Make sure the correct version number is used in:
    • the upgrade/install script main/install/index.php ($new_version = ...)
    • the various readmes, installation guides, ...
    • update (only on stable releases)
  • Don't forget to commit the latest language files from DLTT before checking out (export) the cvs code to create the release package. '''Do not''' first create the release package from cvs and then add the DLTT, this will cause problems (having a release tag that doesn't include new language files is one of them).
  • For every unstable release changing the database structure, update the main database's version, making sure to use the full version of Dokeos + a suffix of "." and the latest hg commit:
    update settings_current set value = '' WHERE variable = 'dokeos_database_version';
  • Remove the tests/ directory from the release package. This is a development directory and should not be in the final package as it represents a HIGH SECURITY RISK.
  • When releasing test or alpha versions without working upgrade procedure, disable the upgrade button in the installer.
  • Update the list of changed files in the release notes

Mercurial Instructions

You have to be sure that you have the tip version of mercurial (no pending commits, merge)
Updating just in case our local repository


  • hg tag -m "tagging 1.8.6 code - creating alpha 1" -u jmontoya CHAMILO_1_8_6_ALPHA_1
  • You can also delete a tag if you wish
  • hg tag --remove tagname
  • After that you MUST do '''hg push''' to send you changes to the main repository
  • To check if everything is fine you can execute "hg tags" to see the current dokeos tags
  • When creating the code archive, make sure the archive unpacks in a directory which includes the version number. This will help to avoid to overwrite other Chamilo installations when unpacking. To do that, you should do something like this:
cd /tmp
hg clone -r CHAMILO_1_8_6_ALPHA_1 chamilo-1.8.6-alpha
rm -rf chamilo-1.8.6-alpha/tests/ chamilo-1.8.6-alpha/searchdb/ chamilo-1.8.6-alpha/.hg*
zip -r -9 chamilo-1.8.6-alpha/
tar zcf chamilo-1.8.6-alpha.tar.gz chamilo-1.8.6-alpha/


*Upload zip to Google code server (make sure permissions are alright), preferably in zip AND tar.gz format
*Generata an MD5 SUM of the archives, and add them on the website's download pages (copy the files generated by the following commands to the same place as the archives)

md5sum >>
gpg -a --sign -o

*Update version in (only on stable releases) - make sure it doesn't contain unnecessary blank spaces
*Update this public wiki's versions pages

You can upload the archive to Google from the command line, by using the Python upload script located here:

You will need to give it +x permission and launch it in a way similar to this one:
./ -p chamilo -u youraccount -w yourpassword -s "Chamilo 1.8.7 Alpha 2" -l Featured,Type-Archive,OpSys-All


Updated by Yannick Warnier almost 10 years ago · 18 revisions