Chromium Mac moving to Skia
Hi WebKit, In an effort to make the Chromium port more consistent across platforms, we're moving the Chromium Mac port from CoreGraphics to Skia. This should mostly have little effect on the rest of the WebKit community, but you'll be seeing some patches shortly that shuffle a bunch of test expectations around so that we can make the transition carefully and avoid regressions. Specifically, we're planing to do the following: 1) Move the chromium-mac and chromium-mac-leopard results directories to chromium-mac-cg and chromium-mac-cg-leopard, respectively. This will let use keep both CG and Skia results during the transition so that we can compare them and avoid regressions. 2) Introduce MACCG modifies for test_expectations. This will let use have separate expectations for CG and Skia. 3) Introduce new chromium-mac and chromium-mac-leopard results directories, which will correspond to the new Skia configuration. 4) Move the Chromium Mac builders on build.webkit.org over to using the Skia configuration. Two of these steps will generate somewhat large svn update steps. I'd like to thank you in advance for being patient with us as we make this transition. If you have any questions or concerns, please feel to respond to this thread or to ask Cary or myself. Thanks again, Adam
I suggest you pain the bikeshed MAC_CG instead of MACCG. The brains our children's children will thank me. -eric On Tue, Aug 16, 2011 at 11:31 AM, Adam Barth <abarth@webkit.org> wrote:
Hi WebKit,
In an effort to make the Chromium port more consistent across platforms, we're moving the Chromium Mac port from CoreGraphics to Skia. This should mostly have little effect on the rest of the WebKit community, but you'll be seeing some patches shortly that shuffle a bunch of test expectations around so that we can make the transition carefully and avoid regressions. Specifically, we're planing to do the following:
1) Move the chromium-mac and chromium-mac-leopard results directories to chromium-mac-cg and chromium-mac-cg-leopard, respectively. This will let use keep both CG and Skia results during the transition so that we can compare them and avoid regressions. 2) Introduce MACCG modifies for test_expectations. This will let use have separate expectations for CG and Skia. 3) Introduce new chromium-mac and chromium-mac-leopard results directories, which will correspond to the new Skia configuration. 4) Move the Chromium Mac builders on build.webkit.org over to using the Skia configuration.
Two of these steps will generate somewhat large svn update steps. I'd like to thank you in advance for being patient with us as we make this transition. If you have any questions or concerns, please feel to respond to this thread or to ask Cary or myself.
Thanks again, Adam _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Sure. Hopefully the transition won't take that long! On Tue, Aug 16, 2011 at 11:58 AM, Eric Seidel <eric@webkit.org> wrote:
I suggest you pain the bikeshed MAC_CG instead of MACCG. The brains our children's children will thank me.
-eric
On Tue, Aug 16, 2011 at 11:31 AM, Adam Barth <abarth@webkit.org> wrote:
Hi WebKit,
In an effort to make the Chromium port more consistent across platforms, we're moving the Chromium Mac port from CoreGraphics to Skia. This should mostly have little effect on the rest of the WebKit community, but you'll be seeing some patches shortly that shuffle a bunch of test expectations around so that we can make the transition carefully and avoid regressions. Specifically, we're planing to do the following:
1) Move the chromium-mac and chromium-mac-leopard results directories to chromium-mac-cg and chromium-mac-cg-leopard, respectively. This will let use keep both CG and Skia results during the transition so that we can compare them and avoid regressions. 2) Introduce MACCG modifies for test_expectations. This will let use have separate expectations for CG and Skia. 3) Introduce new chromium-mac and chromium-mac-leopard results directories, which will correspond to the new Skia configuration. 4) Move the Chromium Mac builders on build.webkit.org over to using the Skia configuration.
Two of these steps will generate somewhat large svn update steps. I'd like to thank you in advance for being patient with us as we make this transition. If you have any questions or concerns, please feel to respond to this thread or to ask Cary or myself.
Thanks again, Adam _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
On Aug 16, 2011, at 11:31 AM, Adam Barth wrote:
Hi WebKit,
In an effort to make the Chromium port more consistent across platforms, we're moving the Chromium Mac port from CoreGraphics to Skia. This should mostly have little effect on the rest of the WebKit community, but you'll be seeing some patches shortly that shuffle a bunch of test expectations around so that we can make the transition carefully and avoid regressions. Specifically, we're planing to do the following:
1) Move the chromium-mac and chromium-mac-leopard results directories to chromium-mac-cg and chromium-mac-cg-leopard, respectively. This will let use keep both CG and Skia results during the transition so that we can compare them and avoid regressions.
How long would you expect to keep both around? Currently half the platform results directories are Chromium, comprising a third of the LayoutTests/platform directory and a quarter of all of LayoutTests. These results directories also tend to change far more frequently than others. I am worried about the long-term impact of adding even more Chromium results, since svn update times are already very high and typically spend a large proportion of their time updating Chromium expectations. Do you have an estimate of the impact on checkout times? Regards, Maciej
On Tue, Aug 16, 2011 at 2:06 PM, Maciej Stachowiak <mjs@apple.com> wrote:
On Aug 16, 2011, at 11:31 AM, Adam Barth wrote:
Hi WebKit,
In an effort to make the Chromium port more consistent across platforms, we're moving the Chromium Mac port from CoreGraphics to Skia. This should mostly have little effect on the rest of the WebKit community, but you'll be seeing some patches shortly that shuffle a bunch of test expectations around so that we can make the transition carefully and avoid regressions. Specifically, we're planing to do the following:
1) Move the chromium-mac and chromium-mac-leopard results directories to chromium-mac-cg and chromium-mac-cg-leopard, respectively. This will let use keep both CG and Skia results during the transition so that we can compare them and avoid regressions.
How long would you expect to keep both around?
That depends on the quality of the Skia configuration, but hopefully on the order of a month. Having the CG results preserves the option of continuing to ship the CG configuration. Once the Chromium project doesn't need that option any more, we can remove the CG baselines.
Currently half the platform results directories are Chromium, comprising a third of the LayoutTests/platform directory and a quarter of all of LayoutTests. These results directories also tend to change far more frequently than others. I am worried about the long-term impact of adding even more Chromium results, since svn update times are already very high and typically spend a large proportion of their time updating Chromium expectations. Do you have an estimate of the impact on checkout times?
The net result of this process should be fewer files overall for the Chromium expectations because more results can be shared between the various platforms Chromium runs on. I do not have an estimate on the impact on checkout times, either for the transition or for after the CG results are removed. Another approach is to teach update-webkit how to create a partial checkout that contains only those result directories that the developer is using. For example, if you're working on the apple-mac-leopard port, you'd only need platform/mac, platform/mac-snowlepard, and platform/mac-leopard and wouldn't need any of the Win, GTK, Qt, or Chromium expected results. Adam
On Tue, Aug 16, 2011 at 11:31 AM, Adam Barth <abarth@webkit.org> wrote:
Hi WebKit,
In an effort to make the Chromium port more consistent across platforms, we're moving the Chromium Mac port from CoreGraphics to Skia. This should mostly have little effect on the rest of the WebKit community, but you'll be seeing some patches shortly that shuffle a bunch of test expectations around so that we can make the transition carefully and avoid regressions. Specifically, we're planing to do the following:
1) Move the chromium-mac and chromium-mac-leopard results directories to chromium-mac-cg and chromium-mac-cg-leopard, respectively. This will let use keep both CG and Skia results during the transition so that we can compare them and avoid regressions.
^^^ Turns out I had this backwards. It supposed to be chromium-cg-mac. Adam
2) Introduce MACCG modifies for test_expectations. This will let use have separate expectations for CG and Skia. 3) Introduce new chromium-mac and chromium-mac-leopard results directories, which will correspond to the new Skia configuration. 4) Move the Chromium Mac builders on build.webkit.org over to using the Skia configuration.
Two of these steps will generate somewhat large svn update steps. I'd like to thank you in advance for being patient with us as we make this transition. If you have any questions or concerns, please feel to respond to this thread or to ask Cary or myself.
Thanks again, Adam
To update this thread: On Tue, Aug 16, 2011 at 11:31 AM, Adam Barth <abarth@webkit.org> wrote:
Hi WebKit,
In an effort to make the Chromium port more consistent across platforms, we're moving the Chromium Mac port from CoreGraphics to Skia. This should mostly have little effect on the rest of the WebKit community, but you'll be seeing some patches shortly that shuffle a bunch of test expectations around so that we can make the transition carefully and avoid regressions. Specifically, we're planing to do the following:
1) Move the chromium-mac and chromium-mac-leopard results directories to chromium-mac-cg and chromium-mac-cg-leopard, respectively. This will let use keep both CG and Skia results during the transition so that we can compare them and avoid regressions. 2) Introduce MACCG modifies for test_expectations. This will let use have separate expectations for CG and Skia. 3) Introduce new chromium-mac and chromium-mac-leopard results directories, which will correspond to the new Skia configuration.
^^^ We've completed these three steps. We're now waiting for the the Chromium infrastructure folks to bring up some Skia testing bots so we can populate these new directories with Skia results. Moving the chromium-mac result directories caused more of a disruption that I expected in that it apparently broke the git WebKit mirror. I'd like to apologize for the disruption. We've done SVN server-side moves before, so I'm not entirely sure why this one caused a problem. If any git experts understand what went wrong and can tell me how to avoid this problem in the future, I would be very appreciative. The only other large single operation in this process is when we delete the CG results. Hopefully that won't trigger the same issue. Thank you again for your patience. Adam
4) Move the Chromium Mac builders on build.webkit.org over to using the Skia configuration.
Two of these steps will generate somewhat large svn update steps. I'd like to thank you in advance for being patient with us as we make this transition. If you have any questions or concerns, please feel to respond to this thread or to ask Cary or myself.
Thanks again, Adam
On Aug 18, 2011, at 12:24 PM, Adam Barth wrote:
Moving the chromium-mac result directories caused more of a disruption that I expected in that it apparently broke the git WebKit mirror. I'd like to apologize for the disruption. We've done SVN server-side moves before, so I'm not entirely sure why this one caused a problem. If any git experts understand what went wrong and can tell me how to avoid this problem in the future, I would be very appreciative.
The only other large single operation in this process is when we delete the CG results. Hopefully that won't trigger the same issue.
I'm not sure of the root cause of the failure. We updated the installed version of git, ran "git svn revert -r 93166" and then ran "git svn fetch" manually to fix the repository. Dave
To keep everyone updated, here's the latest from Elliot. The one-sentence summary is that Chromium Mac will be flipping the switch to Skia tomorrow. We'll probably want to keep both sets of baselines for a couple weeks to make sure the Skia transition sticks, but then we should be able to remove the CoreGraphics image baselines for Chromium Mac. (I've added some notes inline.) Adam ---------- Forwarded message ---------- From: Elliot Poger <epoger@chromium.org> Date: Wed, Sep 21, 2011 at 3:07 PM Subject: [chromium-dev] Chromium-on-Mac changing from Core Graphics to Skia tomorrow To: Chromium-dev <chromium-dev@chromium.org> Sometime in the next 24-48 hours, I plan to commit a Chromium change that will change the default value of "use_skia" on Mac from 0 to 1. This will cause the default graphics layer on Chromium-for-Mac from Apple's Core Graphics to our Skia library. We already use Skia by default for Windows and Linux; this change will bring Mac in line with those other platforms. If you run into any problems with this, please let me know... and you can set use_skia=0 to get the old functionality back (at least until we are satisfied that Skia is stable and happy). Additional notes for those who are interested: (links will work for Googlers only, sorry about that) This change will cause the accelerated canvas path to be enabled by default on the Mac. We have been running the chromium.webkit buildbots against both Skia and CG for a couple of weeks now. As of Wednesday afternoon, the Skia bots have been as green as the CG ones. (We have marked a lot of tests as known-to-fail to greenify these tests; the vast majority of the failures just indicate baselines that need to be regenerated, but there may be a few real errors lurking in there... we already corrected some, but there may be more.) http://goto.google.com/skia-webkit-canaries [abarth] http://tinyurl.com/3wdaoqf http://goto.google.com/cg-webkit-canaries [abarth] http://tinyurl.com/3mf9le7 I have a subset of the Chromium buildbots running locally, which I have been using to compare results with Skia vs CG. They haven't been running as long as the chromium.webkit buildbots above, but so far so good... http://goto.google.com/skia-chromium-bots http://goto.google.com/cg-chromium-bots [abarth] These don't appear to be visible on the public web. There are further details about the transition process at http://goto.google.com/SkiaWebkitStatus [abarth] This document doesn't appear to be public, probably because it contains release dates. On Tue, Aug 16, 2011 at 11:31 AM, Adam Barth <abarth@webkit.org> wrote:
Hi WebKit,
In an effort to make the Chromium port more consistent across platforms, we're moving the Chromium Mac port from CoreGraphics to Skia. This should mostly have little effect on the rest of the WebKit community, but you'll be seeing some patches shortly that shuffle a bunch of test expectations around so that we can make the transition carefully and avoid regressions. Specifically, we're planing to do the following:
1) Move the chromium-mac and chromium-mac-leopard results directories to chromium-mac-cg and chromium-mac-cg-leopard, respectively. This will let use keep both CG and Skia results during the transition so that we can compare them and avoid regressions. 2) Introduce MACCG modifies for test_expectations. This will let use have separate expectations for CG and Skia. 3) Introduce new chromium-mac and chromium-mac-leopard results directories, which will correspond to the new Skia configuration. 4) Move the Chromium Mac builders on build.webkit.org over to using the Skia configuration.
Two of these steps will generate somewhat large svn update steps. I'd like to thank you in advance for being patient with us as we make this transition. If you have any questions or concerns, please feel to respond to this thread or to ask Cary or myself.
Thanks again, Adam
participants (4)
-
Adam Barth
-
David Kilzer
-
Eric Seidel
-
Maciej Stachowiak