| This file documents various "processes" that are used by Valgrind |
| developers for development and release activities. |
| This file contains one section for each process. |
| A summary of each process is given here. Each process is described |
| more in details afterwards. |
| |
| |
| * Update of the NEWS file: NEWS describes fixed bugs and new features. |
| It is updated and committed together with the code fixing the bug/implementing |
| the feature. |
| |
| * Major release production: |
| See docs/internals/release-HOWTO.txt (currently a bit out of date) |
| |
| * Minor/correction release production: TBD |
| |
| |
| Processes detailed descriptions: |
| |
| Update of the NEWS file. |
| ======================== |
| The NEWS file gives for each release: |
| - the list of fixed bugs, |
| - a short description of each functional change, |
| - a short description of each technical change impacting the users. |
| |
| The update of the NEWS file should be committed together with the |
| code change (or as part of the last committed change) that fixes the |
| bug or implements the new feature/technical change. |
| The documentation (e.g. user manual) should also be committed as part of |
| the code change. |
| |
| Fixing a bug |
| ------------ |
| When fixing a bug, add a line in the 'FIXED BUGS' section of |
| the NEWS file. Keep the list of bugs sorted by bugzilla entry number. |
| |
| Once you have commit the change, update the bug status in bugzilla, |
| adding in the comment the revision number of the commit fixing the bug. |
| |
| If a bug is not entered in bugzilla (not encouraged), use "n-i-bz" |
| and add the bug line at the end of the bug list. |
| |
| The file docs/internals/X_Y_BUGSTATUS.txt (where X_Y is the last |
| major release e.g. 3_9) contains information/statuses for some bugs. |
| If a bug is fixed, remove the (possible) bug info from this file. |
| |
| Implementing a change |
| --------------------- |
| When implementing a functional or 'user impacting' technical change, |
| add a short description of the change in the relevant sub-section |
| (e.g. TOOL CHANGES, PLATFORM CHANGES, ...). |
| |
| |
| Some special cases: |
| ------------------- |
| Some bugs or changes only touch the VEX SVN repository, so it is not |
| possible to commit the NEWS change together with the code changes. |
| In such a case, first commit the VEX change. Then just after, commit |
| the NEWS change. In the bugzilla status, reference (at least) the Valgrind |
| revision number. |
| |
| Some changes or bug fixes are very big and might be implemented over |
| a significant period. In such a case, update the NEWS as part of the |
| final commit. |
| If relevant, you might already update the NEWS file as part of |
| earlier commits, using the word 'PARTIAL' to indicate that the change or |
| bug fix is not complete yet. |
| |
| Some bugs are reported more than once in bugzilla. |
| Also document in NEWS that such duplicated bugs have been fixed, using a line |
| such as: |
| 308333 == 307106 |
| to indicate that the bug 308333 is a duplicate of 307106, and was thus |
| fixed in the commit that fixed 307106. |
| Change also the status of the duplicated bug in bugzilla, |
| indicating in the comment the commit revision that fixed the 'master bug'. |
| |
| |
| |
| Minor/correction release: |
| ========================= |
| Describe here how to do changes and bug fixed in a minor (correction) release |
| and how/when to merge the branch to the trunk. |
| |
| Proposal to be discussed: |
| When a bug is fixed on the branch, the NEWS file is updated on the branch |
| (i.e. a 3.9.1 section is created if needed). |
| |
| When often to merge the branch to trunk ? |
| after each fix ? |
| just after the correction release is produced ? |
| |
| How is the branch merged to the trunk ? |