[cairo] Device offset rework status, and what it needs from here

Carl Worth cworth at cworth.org
Thu May 4 02:47:18 PDT 2006

On Sat, 29 Apr 2006 21:48:05 +0200, Christian Biesinger wrote:
> So, I tried your device-offset branch today, and noticed that two tests 
> are failing even for the image backend. Is that known? In particular:
> text-pattern-image-argb32 [25]: FAIL
> text-pattern-image-rgb24 [25]:  FAIL
> linear-gradient-image-argb32 [25]:      FAIL
> linear-gradient-image-rgb24 [25]:       FAIL

Yes, this is known. It's just one of those subtle gradient changes
though. And since we don't have any precise specification for
gradients I think that's fine.

I've got a subsequent commit that cleans up these failures.

In fact, tonight I just rebuilt the entire device-offset branch by
liberally cherry-picking, combining a few related commits that had
gotten spread out, and also folding in some "undo silly mistake"
commits. I also rebased the entire thing onto the current master.

One "problem" with rebasing a feature branch like this onto the tip is
that it naturally ends up as just a linear series of commits, so its
no longer evident in the commit history where the branch begins and
where the branch ends.

For this branch, I really wanted those endpoints to be evident. The
reason is that there is an awful lot of fumbling around during the
branch while Vlad and I tried to figure out how to make this stuff
work. This leads to massive test suite regressions during the
branch. As such, if anyone ends up exploring the history, (such as
git-bisect), and lands in the middle of this branch with its test
suite failures, I'd like to make it easy for them to skip past that
junk if desired.

One approach to doing that would be to just make a single mega-commit
for the entire branch work. But that would actually destroy a lot of
history that might be valuable.

The compromise I came up with was to do the mega-commit and to also do
the branch and merge it into the mega-commit result, (which is
identical). I think this makes the history quite pleasant to read, and
hopefully it won't confuse things like git-bisect. Before the
mega-commit, I first committed the new device-offset testing stuff, so
that immediately before and after the mega-commit, the entire test
suite passes[*].

So, anyway, now finally, the biggest and longest-outstanding mozilla
patch is now merged into cairo. The rest should all go a lot quicker

Note: anyone that had done development off the old device-offset
branches will need to rebase or cherry-pick their development onto the
new master line now. This should be very straightforward as I don't
anticipate any bad conflicts to appear.


[*] Well, there were some pre-existing failures. But before and after
the mega-patch the results of the test suite are the same.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/cairo/attachments/20060504/0c070f49/attachment.pgp

More information about the cairo mailing list