Changes between Version 18 and Version 19 of QtWebKitReleases

Mar 4, 2011 9:19:29 AM (13 years ago)
Ademar Reis

misc fixes + a section about the qtwebkit/tools used for release-management


  • QtWebKitReleases

    v18 v19  
    6666  * The patch has a ChangeLog entry;
    6767  * The changes are public and live on a gitorious branch, rebased with the targeted release;
    68   * Patches that affect the API:
    69     * A unit test included needs to be included;
    70     * The API needs to be private, unless there's a concensus that the API is final, reviewed and will land unchanged in the trunk;
    7168  * Patches that affect WebCore should have a layout test included, although this is not mandatory;
    7269  * At least one WebKit reviewer signs off on the patch and no other reviewer objects;
    73   * The bug is linked from it's corresponding JIRA item at;
    74   * The bug is marked to block the tracker bug for patches pending trunk inclusion:
     70  * The bug is marked to block the tracker bug for patches pending trunk inclusion:;
     71  * Any exception has to be first discussed in the public mailing list;
    7673After the release we have to make a concentrated effort in reducing the number of exceptional patches, by reviewing the changes in the bugs that the tracker bug ([ 32653]) depends on.
     75== Tools to help on cherry-picking and weekly releasing ==
     77The process for cherry-picking changes from trunk to a stable branch is semi-automated. To keep things working as expected, some care must be taken when commiting changes there. Below are the basic steps and the commands involved:
     79  * Clone the [ qtwebkit git/svn mirror] and keep it up to date;
     80  * Downloand and setup [ qtwebkit/tools] (change PATH and PYTHONPATH as necessary);
     81  * Check [wiki:UsingGitWithWebKit] for valuable tips and tricks;
     82  * From the branch where you want to cherry-pick a change ({{{git new-workdir}}} is your friend), run {{{}}} (see {{{--help}}}). This script will parse bugzilla, ask for cherry-picks, add comments and remove bugs from their trackers;
     83  * If there's a conflict, the script will abort. In that case:
     84    * Solve the conflict ({{{git status, git rm, git add}}}, patch the files manually, etc -- your choice);
     85    * Commit the changes, '''keeping the original changelog from the original git commit;'''
     86    * Run the script again, it'll detect the new commit and continue as expected.
     87  * Make sure the build is not broken and run some basic tests (build, run QtTestBrowser, the API tests -- your choice) '''before letting the script add a comment to bugzilla''' (so that if there's something broken, you can fix it and {{{git commit --amend}}} the changes before a reference is added to bugzilla;
     88  * Avoid adding extra commits in the branch, always prefer cherry-picks to keep cross references with what's in trunk.
     90To create release notes reports (similiar to the ones posted weekly in the [ QtWebKit Developer Journal]), run the {{{}}} (see {{{--help}}}). Usually it looks like this:
     93  $ --commits <previous-tag> --email ';'
     96Don't forget to tag the repository (and {{{git push --tags}}}) before making an announcement.
    7898== Proposal for release testing ==