Development

Revision 7 as of 2011-05-25 13:50:16

Clear message

Please share your favourite tips and tricks here.

Release

  • our release process

  • if a fix gets merged,
    • mark bug as 'fix committed'
    • assign to whoever fixed it
    • milestone to current milestone

Schema changes

  • if a fix needs changes to the database models, please use the bug tag schema-change

  • when writing migration scripts, make sure you use python-django-south 0.6, if necessary set up a lucid chroot (DebootstrapChroot)

  • to test migrations, test them back and forth:

    ./manage.py migrate <app>; ./manage.py migrate <app> zero
  • because we set the database table name in the teams models (we shouldn't have done that, but it's too late to fix it), you might have to use the following runes in migrations scripts to make them work:

    db.current_orm.models['teams'] = db.current_orm.models['teams.team']

How to fix a bug ?

Here are the steps to follow :

  • Get a copy of the main branch :
    • $ bzr branch lp:loco-directory fix.<bug_id>

  • Make your changes to fix that bug.
  • Once you've done, run the following commands :
    • $ bzr add
    • $ bzr commit --fixes lp:<bug_id> , then write what you have done on the text-editor.

    • $ bzr push lp:~<you-lp-id>/loco-directory/fix.<bug_id>

    • $ bzr launchpad-open
    • Once the browser window appears, click on "Propose for merging" and wait for someone from the LD devs to review it.

Using Virtualenv

Virtualenv will let you setup a working environment for loco-directory that will not conflict with your system-wide environment. This is the best way to work on LD locally if you're running something other than Ubuntu 10.04 (Lucid).

  1. cd {branch root}
  2. virtualenv --python=/usr/bin/python2.3 .env
  3. source .env/bin/activate
  4. pip install Django==1.1.1
  5. pip install South==0.6

Hint: Run "deactivate" to leave the virtualenv


CategoryLoco