Version 1, last updated by Digitalxero at Apr 10 02:54 2010 UTC
Development Procedures
Development process
This is a step by step guide on how the process of development in OpenRPG goes. It is intended for current / potential developers who are new to Mercurial
All commits only go to the dev cloned branch
All new features go only to the default named branch (HEAD in SVN/CVS terms)
All bug fixes get committed to the oldest named branch that we support and which it appears the process to apply a bug fix goes like this;
- hg up -C oldest supported release that has the bug (eg hg up -C 1.8.0)
- modify code till bug is fixed
- hg commit -m "Fixes bug##"
- hg up -C next release up (eg hg up -C 1.8.1)
- hg merge last release (eg hg merge 1.8.0)
- hg commit -m "merged in fix for bug##"
- repeat 4, 5 & 6 until you have merged the fix into the default branch
- Note I add an initial step of cloning my development repository and naming the clone bug## so if it takes me more then a day to fix I remember what I was working on and it does not dirty my standard repository until the fix is done and I push it back in. I do the same thing for features, clone my main repository and name the clone Feature## and do all work on it there Also this lets me work on many different bugs and features at the same time while keeping my commits clean and related only to the particular bug / feature that cloned branch is for
Once we have fixed a bug we can push the code to the rc cloned branch so willing users can test out the bug fix
Once have have fixed all the bugs and added all the features tagged for the current release cycle we do;
- hg branch next release
- update orpg_version.py with the new version info
- hg commit -m "Release #.#.#"
- hg up -C default
- hg merge next release
- hg commit -m "merged in the new release branch"
- Follow the testing procedures outlined for the current development release
- Follow bug fix procedure for any fixes that need to be made to pass all tests
- once all tests pass on as many platforms as the devs can test on do hg push url for the rc cloned branch and notify users the next release is ready for wider testing
Start working on the features scheduled for the next release
Once we have heard from the users willing to test (or one month if no one is willing) we do hg clone url to rc branch then hg push url for the stable branch from our clean _rc clone which triggers the update system to start nagging users to upgrade to the new version and gets bug fixes into their current version.
This process is intended and designed to ensure maximum stability in each release of OpenRPG, as such it may be modified at any time to reflect the current work flow followed by the development Team.