Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 How to land Skia changes that change Blink layout test results | |
| 2 ============================================================== | |
| 3 | |
| 4 Changes that affect a small number of layout test results | |
| 5 --------------------------------------------------------- | |
| 6 Changes affecting fewer than ~20 layout tests can be rebaselined without special | |
| 7 coordination with the Blink gardener using these steps: | |
| 8 | |
| 9 ### Rebaseline Layout Tests | |
| 10 | |
| 11 #### First create a Chromium bug: | |
| 12 * Go to (http://crbug.com) | |
| 13 Make sure you’re logged in with your Chromium credentials | |
| 14 * Click “New Issue” | |
| 15 * Summary: “Skia image rebaseline” | |
| 16 * Description: List DEPS roll #, helpful message about what changed \(e\.g\., | |
| 17 “Changes to how lighting is scaled in Skia revision ###### changed the following | |
| 18 images:”\), & layout tests affected | |
| 19 * You should copy the list of affected from stdio of the failing bot | |
| 20 * Status: Assigned | |
| 21 * Owner: fmalita@ | |
| 22 * cc: reed@, bsalomon@, robertphillips@ & developer responsible for changes | |
| 23 * Labels: OS\-All & Cr\-Blink\-LayoutTests | |
| 24 | |
| 25 #### Edit skia/skia\_test\_expectations\.txt | |
| 26 * Add # comment about what has changed \(I usually paraphrase the crbug text\) | |
| 27 * Add line\(s\) like this after the comment: | |
| 28 crbug\.com/<bug\#youjustcreated> foo/bar/test\-name\.html \[ ImageOnlyFailure \] | |
| 29 | |
| 30 #### Commit the changes and fire off new try bots | |
| 31 You usually only need to fire off the layout bots. | |
|
bungeman-skia
2015/02/18 15:58:36
This is good as far as it goes, I suppose, but it'
| |
| 32 | |
| 33 | |
| 34 Changes that affect a large number of test results | |
| 35 -------------------------------------------------- | |
| 36 Where a 'large number' or 'many' means more than about 20. | |
| 37 Follow the instructions below: | |
| 38 | |
| 39 In the following the term 'code suppression' means a build flag \(a\.k\.a\. defi ne\). | |
| 40 Such code suppressions should be given a name with the form SK\_IGNORE\_xxx\_FIX . | |
| 41 | |
| 42 There are dependency revisions which must be updated in this | |
| 43 process. Updating a dependency revision is called a 'roll'. | |
| 44 There are two different rolls which concern this process, each of which happens | |
| 45 via an Auto Roll Bot multiple times per day, and can also be done manually: | |
| 46 | |
| 47 * Skia roll into Chromium. See | |
| 48 (https://chromium.googlesource.com/chromium/src/+log/master/DEPS) and search for | |
| 49 skia\-deps\-roller. | |
| 50 * Blink roll into Chromium. See | |
| 51 (https://chromium.googlesource.com/chromium/src/+log/master/DEPS) and search for | |
| 52 blink\-deps\-roller. | |
| 53 | |
| 54 ### Setup | |
| 55 #### Code suppression does not yet exist \- Direct method | |
| 56 1. Make a change in Skia which will change many Blink layout tests. | |
| 57 2. Put the change behind a code suppression. | |
| 58 3. Check in the change to the Skia repository. | |
| 59 4. Manually roll Skia or append the autoroll with the code suppression to | |
| 60 Chromium's 'skia/skia\_common\.gypi' | |
| 61 5. Add code suppression to Blink's 'public/blink\_skia\_config\.gyp'. | |
| 62 6. Wait for Blink roll into Chromium. | |
| 63 7. Remove code suppression from Chromium's 'skia/skia\_common\.gypi'. | |
| 64 | |
| 65 #### Code suppression does not yet exist \- Alternate method | |
| 66 1. Add code suppression to Blink's 'public/blink\_skia\_config\.gyp' before maki ng code | |
| 67 changes in Skia. | |
| 68 2. Make a change in Skia which will change many Blink layout tests. | |
| 69 3. Put the change behind a code suppression. | |
| 70 4. Wait for Blink roll into Chromium. | |
| 71 5. Check in the change to the Skia repository. | |
| 72 6. Wait for Skia roll into Chromium. | |
| 73 | |
| 74 #### Code suppression exists in header | |
| 75 1. Remove code suppression from header file in Chromium and add code suppression to | |
| 76 Chromium's 'skia/skia\_common\.gypi'. | |
| 77 The code suppression cannot be in a header file and a defined in a gyp file at t he | |
| 78 same time or a multiple definition warning will be treated as an error and break | |
| 79 the Chromium build. | |
| 80 2. Add code suppression to Blink's 'public/blink\_skia\_config\.gyp'. | |
| 81 3. Wait for Blink roll into Chromium. | |
| 82 4. Remove code suppression from Chromium's 'skia/skia\_common\.gypi'. | |
| 83 | |
| 84 ### Rebaseline | |
|
bungeman-skia
2015/02/18 15:58:36
This is more or less right (I think this section w
| |
| 85 1. Choose a time when the Blink tree is likely to be quiet. Avoid PST afternoons in | |
| 86 particular. The bigger the change, the more important this is. Regardless, | |
| 87 determine who the Blink gardener is and notify them. You will be making the | |
| 88 Chromium\.WebKit tree very red for an extended period, and the gardener needs to | |
| 89 know that they are not expected to fix it. | |
| 90 2. Remove code suppression from Blink's public/blink\_skia\_config\.gyp. It is | |
| 91 recommended, but not essential, that you prepare new baselines for at least one | |
| 92 platform to commit when you commit the blink\_skia\_config\.gyp change, although only | |
| 93 try this if you are familiar with new\-run\-webkit\-tests and the parameters for | |
| 94 controlling baseline generation. Mark the change as an unreviewed Skia build cha nge. | |
| 95 3. Rebaseline like any Blink rebaseline. Be careful with tests that are already | |
| 96 failing or flakey. These may or may not need to be rebaselined and flakey tests | |
| 97 should not be removed from TestExpectations regardless. In such cases revert the | |
| 98 TestExpectations changes before committing. | |
| 99 4. If you are not the one handling the cleanup step, please open a Skia Issue of the | |
| 100 form | |
| 101 Title: "Remove code suppression SK\_IGNORE\_xxx\_FIX\." | |
| 102 Comment: "Code suppression SK\_IGNORE\_xxx\_FIX rebaselined with Blink revision | |
| 103 123456\." and assign it to the individual responsible for the cleanup step. | |
| 104 | |
| 105 ### Cleanup | |
| 106 1. Wait for Blink roll into Chromium, so that Chromium is using the new Skia cod e | |
| 107 and new Blink baselines. | |
| 108 2. Remove the now unused old code from Skia and any defines which were introduce d | |
| 109 to suppress the new code. | |
| 110 3. Check in the cleanup change to the Skia repository. | |
| 111 4. Wait for Skia roll into Chromium. | |
| 112 | |
| OLD | NEW |