[cairo-commit] Branch '1.0' - 5 commits - autogen.sh ChangeLog doc/public .gitignore Makefile.am test/Makefile.am

Behdad Esfahbod behdad at kemper.freedesktop.org
Wed Mar 15 08:10:01 PST 2006


 .gitignore            |    1 
 ChangeLog             |11320 --------------------------------------------------
 Makefile.am           |   39 
 autogen.sh            |    2 
 doc/public/.gitignore |    1 
 test/Makefile.am      |    3 
 6 files changed, 45 insertions(+), 11321 deletions(-)

New commits:
diff-tree 9cfa638ba0c959204bd65bfb43dd9d7caed5154f (from 393000021c2e082d4b3c235939009a90035b0daf)
Author: Behdad Esfahbod <behdad at home.(none)>
Date:   Wed Mar 15 11:04:56 2006 -0500

    Add new ref images.

diff --git a/test/Makefile.am b/test/Makefile.am
index a713890..28e513a 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -121,6 +121,8 @@ self-copy-ref.png			\
 self-intersecting-ref.png		\
 scale-source-surface-paint-ref.png	\
 set-source-ref.png			\
+show-glyphs-many-ref.png		\
+show-glyphs-many-rgb24-ref.png		\
 show-text-current-point-ref.png		\
 source-clip-ref.png			\
 source-surface-scale-paint-ref.png	\
@@ -129,6 +131,7 @@ text-antialias-gray-ref.png		\
 text-antialias-none-ref.png		\
 text-antialias-subpixel-ref.png		\
 text-pattern-ref.png			\
+text-rotate-ref.png			\
 transforms-ref.png			\
 translate-show-surface-ref.png		\
 trap-clip-ref.png			\
diff-tree 393000021c2e082d4b3c235939009a90035b0daf (from d415ea9b6026b3f8597201604bbcdab124705faf)
Author: Behdad Esfahbod <behdad at home.(none)>
Date:   Wed Mar 15 10:59:59 2006 -0500

    Add make bits to autogenerate ChangeLog

diff --git a/.gitignore b/.gitignore
index aaa9f03..ebcd093 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+ChangeLog
 Makefile
 Makefile.in
 aclocal.m4
diff --git a/Makefile.am b/Makefile.am
index 7d7cb58..0caacb7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -11,6 +11,21 @@ EXTRA_DIST = \
 	COPYING-LGPL-2.1 \
 	COPYING-MPL-1.1 \
 	cairo.pc.in
+MAINTAINERCLEANFILES = \
+	$(srcdir)/INSTALL \
+	$(srcdir)/aclocal.m4 \
+	$(srcdir)/autoscan.log \
+	$(srcdir)/compile \
+	$(srcdir)/config.guess \
+	$(srcdir)/config.h.in \
+	$(srcdir)/config.sub \
+	$(srcdir)/configure.scan \
+	$(srcdir)/depcomp \
+	$(srcdir)/install-sh \
+	$(srcdir)/ltmain.sh \
+	$(srcdir)/missing \
+	$(srcdir)/mkinstalldirs \
+	`find "$(srcdir)" -type f -name Makefile.in -print`
 
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = cairo.pc
@@ -20,6 +35,30 @@ check-valgrind: all
 
 DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc
 
+# Creating ChangeLog from git log:
+
+MAINTAINERCLEANFILES += ChangeLog
+
+EXTRA_DIST += ChangeLog
+
+ChangeLog: $(srcdir)/ChangeLog
+
+$(srcdir)/ChangeLog:
+	@if test -d "$(srcdir)/.git"; then \
+	  (cd "$(srcdir)" && \
+	  ./missing --run git-log) | fmt --split-only > $@.tmp \
+	  && mv -f $@.tmp $@ \
+	  || ($(RM) $@.tmp; \
+	      echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
+	      (test -f $@ || echo git-log is required to generate this file >> $@)); \
+	else \
+	  test -f $@ || \
+	  (echo A git checkout and git-log is required to generate ChangeLog >&2 && \
+	  echo A git checkout and git-log is required to generate this file >> $@); \
+	fi
+
+.PHONY: ChangeLog $(srcdir)/ChangeLog
+
 # Some custom targets to make it easier to release things.
 # Use either:
 #		make release-check
diff-tree d415ea9b6026b3f8597201604bbcdab124705faf (from 286cfe2c9ea308a99ff48dcd33708f686e0fc7b8)
Author: Behdad Esfahbod <behdad at home.(none)>
Date:   Wed Mar 15 10:33:36 2006 -0500

    Shhhh.....

diff --git a/doc/public/.gitignore b/doc/public/.gitignore
index bd6996b..fa0e847 100644
--- a/doc/public/.gitignore
+++ b/doc/public/.gitignore
@@ -15,3 +15,4 @@ html
 xml
 version.xml
 *~
+*.bak
diff-tree 286cfe2c9ea308a99ff48dcd33708f686e0fc7b8 (from 35d7810f7bb43dd72675207a2f4d379a76c34e5f)
Author: Carl Worth <cworth at cworth.org>
Date:   Fri Feb 24 09:18:17 2006 -0800

    autogen.sh: Pass --foreign option to automake so that it doesn't
    complain that ChangeLog does not exist.
    (cherry picked from d0e02a948e83e3b1b330c9cb0aa4930b42bf485c commit)

diff --git a/autogen.sh b/autogen.sh
index 88ad4f7..57bf601 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -7,7 +7,7 @@ PACKAGE=cairo
 LIBTOOLIZE=${LIBTOOLIZE-libtoolize}
 LIBTOOLIZE_FLAGS="--copy --force"
 AUTOHEADER=${AUTOHEADER-autoheader}
-AUTOMAKE_FLAGS="--add-missing"
+AUTOMAKE_FLAGS="--add-missing --foreign"
 AUTOCONF=${AUTOCONF-autoconf}
 
 # automake 1.8 requires autoconf 2.58
diff-tree 35d7810f7bb43dd72675207a2f4d379a76c34e5f (from ff33ddb8f864a48c17c45746fb6bbbcf70216288)
Author: Behdad Esfahbod <behdad at home.(none)>
Date:   Wed Mar 15 10:31:43 2006 -0500

    Remove ChangeLog here too.  We'll generate it using git log.

diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644
index baa8b8f..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1,11320 +0,0 @@
-2005-12-07  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Use more portable shell syntax, ('test =' rather
-	than 'test =='). Thanks to Richard Lloyd and Klaus Heinz. Closes
-	bug #4823.
-
-2005-12-07  Carl Worth  <cworth at cworth.org>
-
-	* src/pixman-remap.h: Remove duplicate definitions of
-	pixman_color_to_pixel and pixman_composite.
-
-2005-11-21  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Add reminder to fix all memory leaks (as determined by
-	the test suite) before release 1.2.0.
-
-2005-11-21  Carl Worth  <cworth at cworth.org>
-  
-	* src/pixman-remap.h: Remove duplicate definitions of
-	pixman_color_to_pixel and pixman_composite.
-
-2005-11-18  Carl Worth  <cworth at cworth.org>
-
-	* src/pixman-remap.h: Remove spurios INT_ prefixes which break the
-	build with very recent binutils.
-
-2005-10-12  T Rowley  <tim.rowley at gmail.com>
-
-	Reviewed by: cworth
-
-	* src/cairo-clip.c (_cairo_clip_intersect_mask):  Intersect clip
-	region with target surface so we don't waste time and memory.
-
-2005-10-10  T Rowley  <tim.rowley at gmail.com>
-
-        * src/cairo-atsui-font.c (_cairo_atsui_font_glyph_path):
-	Apply proper transform to generated paths.
-
-2005-10-08  Carl Worth  <cworth at cworth.org>
-
-        * configure.in: Fix typo leading to truncated error message
-        (Christian Biesinger <cbiesinger at web.de>).
-
-2005-10-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xlib-surface.c: (_draw_image_surface): Add missing
-	initialization for ximage.xoffset.
-
-2005-10-04  Anders Carlsson  <andersca at imendio.com>
-
-	* configure.in: Invoke PKG_PROG_PKG_CONFIG so $PKG_CONFIG
-	will be set early on.
-
-2005-10-03  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-win32-surface.c: (DllMain): Add missing initialization
-	for _global_image_glyph_cache_mutex (Vladimir Vukicevic
-	<vladimirv at gmail.com>).
-
-2005-10-03  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Increment CAIRO_VERSION to 1.0.3 after tagging
-	RELEASE_1_0_2.
-
-2005-10-03  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Increment CAIRO_VERSION to 1.0.2 and libtool
-	versioning to 4:3:2.
-
-	* NEWS: Add notes for the 1.0.2 release.
-
-2005-09-30  Bertram Felgenhauer  <int-e at gmx.de>
-
-	reviewed by: keithp
-
-	* src/cairo-hull.c (_cairo_hull_create): simplify id
-	initialisation of last patch
-
-	reviewed by: cworth
-
-	* src/cairo-hull.c (_cairo_hull_create),
-	(_cairo_hull_vertex_compare): Using a pointer comparison as the
-	fallback total order was wrong - these pointers are not stable.
-	So we introduce our own total order instead. (#4599)
-
-2005-09-28  T Rowley  <tim.rowley at gmail.com>
-
-        * src/cairo-atsui-font.c (_cairo_atsui_font_text_to_glyphs):
-        Use _cairo_utf8_to_utf16 for character conversion.
-
-2005-09-28  T Rowley  <tim.rowley at gmail.com>
-
-	Bug #4612, reviewed by cworth.
-	
-	* src/cairo-win32-font.c (_cairo_win32_scaled_font_glyph_bbox):
-	Add cast so that sign conversion doesn't alter comparison.
-
-2005-09-27  T Rowley  <tim.rowley at gmail.com>
-
-	Bug #4602, reviewed by cworth.
-	
-	* src/cairo-win32-surface.c (_create_dc_and_bitmap):
-	Avoid creating size-0 bitmap, which fails.
-
-2005-09-27  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Note that bug #4409 (Dashes are missing initial caps)
-	is now fixed.
-
-	* src/cairo-path-stroke.c: (_cairo_stroker_add_cap),
-	(_cairo_stroker_add_leading_cap),
-	(_cairo_stroker_add_trailing_cap),
-	(_cairo_stroker_add_caps): Move face-flipping from inside
-	_cairo_stroker_add_caps to new _cairo_stroker_add_leading_cap
-	variant of _cairo_stoker_add_cap.
-
-	* src/cairo-path-stroke.c: (_cairo_stroker_line_to_dashed): Change
-	to call _cairo_stroker_add_leading_cap or
-	_cairo_stroker_add_trailing_cap as appropriate.
-
-	* test/Makefile.am (XFAIL_TESTS): 
-	* test/dash-caps-joins-ref.png:
-	* test/dash-caps-joins.c: (main): Remove dash-caps-joins from the
-	XFAIL list and add reference image.
-
-2005-09-27  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/caps-joins-ref.png:
-	* test/caps-joins.c: (make_path), (draw), (main):
-	* test/dash-caps-joins.c: (make_path), (draw), (main): Add two
-	test cases. One for caps and joins (passes), and one for dashed
-	caps and joins, (fails, see bug #4409).
-
-2005-09-26  Carl Worth  <cworth at cworth.org>
-
-	Backported from HEAD:
-	2005-09-07  Carl Worth  <cworth at cworth.org>
-  
-	Portability improvements for win32 thanks to Hans Breuer
-	<hans at breuer.org>:
-	
-	* pixman/src/pixman.h: Defined sized-integer types when under the
-	influence of _MSC_VER and without stdint.h.
-	
-	* src/cairoint.h: Use #error which is more portable than #warning,
-	(and more indicative of where we want to be before the next
-	release).
-
-2005-09-26  Carl Worth  <cworth at cworth.org>
-
-	Backported from HEAD:
-	2005-08-31  Owen Taylor  <otaylor at redhat.com>
-
-	* test/cairo-test.c: Protect inclusion of fontconfig.h
-	with HAVE_FCFINI.
-
-	* test/nil-surface.c: Remove stray cairo-ft.h include.
-
-	* test/nil-surface.c: Include stddef.h for NULL.
-
-	* test/create-from-png-stream.c (draw): Open the file "rb".
-
-2005-09-26  Tor Lillqvist  <tml at novell.com>
-
-	* src/cairo-win32-font.c (_win32_scaled_font_get_scaled_hfont),
-	(_win32_scaled_font_get_unscaled_hfont): Set LOGFONT::lfHeight
-	negative. A negative lfHeight means "em height" which is what we
-	want, and matches how other toolkits interpret font sizes on
-	Win32. (Positive lfHeight means "cell height".) (#4593)
-	(_cairo_win32_scaled_font_init_glyph_metrics): If
-	GetGlyphOutlineW() fails, set metrics to zero. (#3927, Hans
-	Breuer) (Don't print error message, as this might occur frequently
-	with a misconfigured Pango 1.10.0.)
-
-2005-09-20  T Rowley  <tim.rowley at gmail.com>
-
-        * src/cairo-atsui-font.c (_cairo_atsui_font_show_glyphs):
-        Pass scratch space instead of NULL for image_extra to
-        acquire/release_dest_image.
-
-2005-09-19  Carl Worth  <cworth at cworth.org>
-
-        * src/cairo-xlib-surface.c: (_create_a8_picture): Avoid attempting
-        to create a size-0 Pixmap, (to prevent the associated X
-        error). This actually showed up when the clip region is
-        empty. Thanks to Radek Doulík for the bug report.
-
-        * test/Makefile.am:
-        * test/clip-all.c: (main): Remove clip-all from the XFAIL list
-        since it works now.
-
-2005-09-19  Carl Worth  <cworth at cworth.org>
-
-        Originally: 2005-09-19  Hans Breuer  <hans at breuer.org>
-
-        * src/cairoint.h : win32 specific definitions for
-        CAIRO_MUTEX_DECLARE, CAIRO_MUTEX_LOCK etc. [not based on win32
-        mutex but critical sections]
-
-        * src/cairo-win32-surface.c : add DllMain() to do global,
-        single-threaded 'mutex' (de)initialization. No ifdefs needed, some
-        variables would simply not be used when the respective backend
-        would not be compiled in.
-
-2005-09-18  Billy Biggs  <vektor at dumbterm.net>
-
-	Bug #4414, reviewed by otaylor, cworth.
-
-	* configure.in: Remove -msse from the MMX CFLAGS as it causes
-	gcc to emit SSE instructions, however the detection code only
-	checks for processors supporting MMX and does not require SSE.
-	Fix the MMX test to only check for MMX intrinsics and not the
-	SSE intrinsics.
-
-2005-09-16  Carl Worth  <cworth at cworth.org>
-
-        Tested by: John Ellson
-        Closes bug #4408
-        https://bugs.freedesktop.org/show_bug.cgi?id=4408
-
-        * src/cairo-path-stroke.c: (_cairo_stroker_curve_to_dashed),
-        (_cairo_path_fixed_stroke_to_traps): Add support for dashed
-        splines. (The antialiasing quality isn't perfect, but at least the
-        curves are dashed now).
-
-2005-09-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ft-font.c: (_cairo_ft_scaled_font_text_to_glyphs):
-	Expand locking to include all modification of cairo_scaled_font
-	and related objects.
-
-2005-09-13  Carl Worth  <cworth at cworth.org>
-
-	* test/pthread-show-text.c: (start), (main): Adjust parameters to
-	stress things a bit more, (better exposing another locking bug).
-
-2005-09-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-scaled-font.c: (cairo_scaled_font_reference),
-	(cairo_scaled_font_destroy): Expand locking to encapsulate any
-	modification to the reference count of a scaled font, rather than
-	just modifcations of the scaled_font_map, since scaled fonts are
-	shared between threads.
-
-2005-09-13  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.h: Add documentation for cairo_test functions.
-	
-	* test/cairo-test.c: (cairo_test_init), (cairo_test_expecting):
-	Abstract log fie creation into cairo_test_init for use by tests
-	that don't use cairo_test().
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/pthread-show-text.c: (start), (main): Add new test for bug
-	#4299 as reported by Alexey Shabalin.
-
-2005-09-12  Carl Worth  <cworth at cworth.org>
-
-	Fix for bug #4401 as reported by Tim Mooney:
-
-	* configure.in: Don't bother checking for sincos function.
-	
-	* src/cairo-matrix.c: (cairo_matrix_init_rotate): Don't use sincos
-	function since it is apparently buggy on some platforms, (Tru64 at
-	least).
-
-2005-09-01  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.h: Add includes to get sized-integer types such
-	as uint32_t.
-	
-	* test/filter-nearest-offset.c: (draw):
-	* test/mask-ctm.c: (draw):
-	* test/mask-surface-ctm.c: (draw):
-	* test/move-to-show-surface.c: (draw):
-	* test/paint-with-alpha.c: (draw):
-	* test/scale-source-surface-paint.c: (draw):
-	* test/set-source.c: (draw):
-	* test/source-surface-scale-paint.c: (draw):
-	* test/translate-show-surface.c: (draw): Fix declaration of image
-	data array to be uint32_t rather than unsigned long. Fixes four
-	out of the remaining five failures in bug #4245.
-
-2005-08-31  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c: (create_xlib_surface): Add call to
-	XSynchronize, (the expected clip-all failure isn't occuring
-	without it for some reason).
-	
-	* test/clip-all.c: (main): Note reason for expected failure.
-
-2005-08-31  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_get_image_surface) 
-	(_draw_image_surface): Handle displays which don't match
-	the local endianness by byteswapping on GetImage/PutImage.
-	(#4321, reported by Sjoerd Simons)
-
-2005-08-31  Carl Worth  <cworth at cworth.org>
-
-	* INSTALL: Add note to use ./autogen.sh instead of ./configure
-	when working with source from cvs.
-
-2005-08-31  Carl Worth  <cworth at cworth.org>
-
-	* test/get-and-set.c: Fix test to not try to set a non-invertible
-	matrix. (We'd gotten away with this due to round-off error on many
-	systems). Fixes one out of six failures in bug #4245.
-
-2005-08-31  Carl Worth  <cworth at cworth.org>
-
-	* AUTHORS: Add Radek Doulík.
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/clip-all.c: (draw), (main): Add test exposing a BadValue
-	(0-size pixmap) bug in cairo-xlib-surface when everything is
-	clipped away (thanks to Radek Doulík <rodo at novell.com>).
-
-2005-08-30  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal):
-	Liberalize the ServerVendor check so that we can handle
-	the Mandriva vendor string. (#4298, Frederic Crozat)
-
-2005-08-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-pattern.c (_cairo_pattern_acquire_surface_for_gradient): 
-	Use a 8xN rather than a 1xN strip for a vertical gradient. This
-	is much more tolerant of slow compositing code, and is worth some
-	extra expense computing the gradient. (#4263, found in test case
-	from Richard Stellingwerff)
-
-2005-08-27  Owen Taylor  <otaylor at redhat.com>
-
-	reviewed by: cworth
-
-	* src/cairo-traps.c (_cairo_traps_extract_region): Make the 
-	check for rectangular trapezoids simpler and more accurate.
-	(#4220, found using test case from Richard Stellingwerff)
-	
-2005-08-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal): 
-	Make the vendor string check for XFree86 more liberal, to deal
-	with older versions of gentoo that modified it in a different
-	way. (#4231, fix from Billy Biggs)
-
-2005-08-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairoint.h: Undef MIN/MAX before defining them in case
-	some system header happens to define them. (#4196, Christian
-	Biesinger)
-
-2005-08-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-image-surface.c (cairo_image_surface_create)
-	(cairo_image_surface_create_for_data): Fix docs not to talk about
-	%NULL returns. (#4271, Duncan Coutts.)
-
-2005-08-25  Tor Lillqvist  <tml at novell.com>
-
-	* Makefile.am (developer_zip_file): Include the documentation, too.
-
-2005-08-24  Billy Biggs  <vektor at dumbterm.net>
-
-	* doc/public/tmpl/cairo-font-options.sgml:
-	* doc/public/tmpl/cairo-font.sgml:
-	* doc/public/tmpl/cairo-ft.sgml:
-	* doc/public/tmpl/cairo-glitz.sgml:
-	* doc/public/tmpl/cairo-image.sgml:
-	* doc/public/tmpl/cairo-matrix.sgml:
-	* doc/public/tmpl/cairo-paths.sgml:
-	* doc/public/tmpl/cairo-pattern.sgml:
-	* doc/public/tmpl/cairo-pdf.sgml:
-	* doc/public/tmpl/cairo-png.sgml:
-	* doc/public/tmpl/cairo-ps.sgml:
-	* doc/public/tmpl/cairo-quartz.sgml:
-	* doc/public/tmpl/cairo-scaled-font.sgml:
-	* doc/public/tmpl/cairo-status.sgml:
-	* doc/public/tmpl/cairo-surface.sgml:
-	* doc/public/tmpl/cairo-text.sgml:
-	* doc/public/tmpl/cairo-transforms.sgml:
-	* doc/public/tmpl/cairo-types.sgml:
-	* doc/public/tmpl/cairo-version.sgml:
-	* doc/public/tmpl/cairo-win32-fonts.sgml:
-	* doc/public/tmpl/cairo-win32.sgml:
-	* doc/public/tmpl/cairo-xcb-xrender.sgml:
-	* doc/public/tmpl/cairo-xcb.sgml:
-	* doc/public/tmpl/cairo-xlib.sgml:
-	* doc/public/tmpl/cairo.sgml: Update formatting of the title
-	and short description, as this actually changes how the TOC
-	appears in devhelp.
-
-2005-08-24  Bertram Felgenhauer  <int-e at gmx.de>
-
-	* Makefile.am (.PHONY): add docs-publish as a phony target
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Increment CAIRO_VERSION to 1.0.1 after tagging
-	RELEASE_1_0_0.
-	
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Increment CAIRO_VERSION to 1.0.0 and libtool
-	versioning to 4:2:2.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* NEWS: Fix typos. Add CAIRO_STATUS_INVALID_DASH.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* README: Unabbreviate "eg." to "for example,".
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* PORTING_GUIDE: Update name from "0.5 porting guide" to "1.0
-	porting guide."
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-	
-	* README: Some text cleanups from Øyvind Kolås.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-
-	* AUTHORS: Add Amaury Jacquot.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* RELEASING: Fix typo.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* AUTHORS:
-	* README: Fix typos.
-
-2005-08-24  Tor Lillqvist  <tml at novell.com>
-
-	* src/Makefile.am (cairo.def): Drop PDF and PS backend and FT font
-	API from Win32 DLL entry points for now.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* README: Fix typos.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* README: Move glitz into the experimental list.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* INSTALL: Put glitz in the experimental section.
-
-	* configure.in: Give glitz the experimental treatment, (disable it
-	by default.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* INSTALL: Add some more detailed build instructions.
-
-2005-08-24  Billy Biggs  <vektor at dumbterm.net>
-
-	* src/cairo.c (cairo_text_extents), (cairo_glyph_extents),
-	(cairo_show_text): Fix some minor typos in the doc.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Disable ATSUI by default as well.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* BUGS: Add pointer to http://bugs.freedesktop.org.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* README: Add more detailed notes on what is required to compile
-	cairo on Mac OS X or win32.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* Makefile.am:
-	* RELEASING: Change upload directory from snapshots to releases
-	now thatwe're doing stable releases of cairo.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Give PostScript and PDF backends the experimental
-	treatment, disabling them by default.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* NEWS: Add notes for 1.0 release. Thanks to Owen Taylor.
-	
-	* README: Note that PS and PDF backends are experimental.
-	
-	* ROADMAP: Note the progress that has been completed so that 1.0
-	is ready now.
-
-2005-08-24  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: cworth
-
-	* src/cairo-ps-surface.c:
-	(_cairo_ps_surface_create_for_stream_internal),
-	(cairo_ps_surface_set_dpi), (color_is_translucent),
-	(pattern_is_translucent), (emit_image), (_ps_output_composite),
-	(_ps_output_fill_rectangles), (_ps_output_composite_trapezoids),
-	(_ps_output_path_move_to), (_ps_output_path_line_to),
-	(_ps_output_path_curve_to), (_ps_output_intersect_clip_path),
-	(_ps_output_show_glyphs), (_ps_output_fill_path),
-	(_cairo_ps_surface_render_page):
-	
-	Use new device_x_scale/device_y_scale surface fields
-	to set the device coordinate space to the nominal pixels.
-
-	Treat more alpha values as translucent (up to 0.999)
-
-	Fix emit_image to actually use a temporary image
-	when necessary.
-
-	Change PS coordinate space to match cairo (top-down),
-	adjust PS output to use new space.
-
-	Find more cases where PS output was not supported and
-	fall back to image surface.
-
-2005-08-24  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: cworth
-
-	* src/cairo-meta-surface.c: (_cairo_meta_surface_replay):
-	_cairo_surface_show_glyphs may return UNSUPPORTED in which
-	case a call to scaled_font->backend->show_glyphs is needed.
-
-2005-08-24  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: cworth
-
-	* src/cairo-gstate-private.h:
-	* src/cairo-gstate.c: (_cairo_gstate_init),
-	(_cairo_gstate_apply_device_transform),
-	(_cairo_gstate_apply_device_inverse_transform),
-	(_cairo_gstate_get_matrix), (_cairo_gstate_set_matrix),
-	(_cairo_gstate_identity_matrix), (_cairo_gstate_user_to_backend),
-	(_cairo_gstate_backend_to_user):
-	* src/cairo-surface.c: (_cairo_surface_init),
-	(cairo_surface_set_device_offset):
-	* src/cairoint.h:
-	Add device_x_scale and device_y_scale to
-	surface so that the coordinate system seen
-	by the backend can differ from the nominal
-	device coordinate space used by the application.
-	
-	Useful for printer backends where the device
-	coordinate space should be in pixels while the
-	user visible device space is in points.
-
-	There is no API to set these values; the backends
-	using this functionality should do that themselves
-	before the first cairo_t is created.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c: (cairo_show_text): Fix cairo_show_text to advance
-	the current point. Add documentation for cairo_show_text.
-	
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/show-text-current-point-ref.png:
-	* test/show-text-current-point.c: (draw), (main): Add test to
-	verify that the current-point-advancing behavior of
-	cairo_show_text is working.
-
-	* BUGS: Remove bug about cairo_show_text not advancing the current
-	point.
-
-2005-08-24  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c (cairo_new_path, cairo_move_to, cairo_line_to,
-	cairo_curve_to, cairo_arc, cairo_rel_move_to, cairo_rel_line_to,
-	cairo_rel_curve_to, cairo_rectangle, cairo_close_path): Update
-	documentation for most path construction functions. Add discussion
-	of the effects on the current point to all functions. Rephrase the
-	wording of the relative functions. Big rewrite of cairo_arc
-	description. Add discussion of join not caps to cairo_close_path.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Minor doc edit.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* doc/public/tmpl/cairo-matrix.sgml: Minor doc edits.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* doc/public/tmpl/cairo-matrix.sgml:
-	* doc/public/tmpl/cairo-status.sgml:
-	* doc/public/tmpl/cairo-types.sgml:
-	* doc/public/tmpl/cairo.sgml: Prefer cairo over Cairo when not at
-	the beginning of a sentence.
-
-2005-08-23  Billy Biggs  <vektor at dumbterm.net>
-
-	* doc/public/tmpl/cairo-image.sgml: Add a long description.
-	* doc/public/tmpl/cairo.sgml: Fix a typo.
-	* src/cairo-font.c: Document the return value of
-	cairo_scaled_font_reference().
-	* src/cairo-xlib-surface.c: Document the width and height
-	parameters of cairo_xlib_surface_set_drawable().
-
-2005-08-23  Billy Biggs  <vektor at dumbterm.net>
-
-	* src/cairo.c: Document the rest of the path functions (except the
-	two text ones, which should coordinate with their corresponding
-	non-path versions).
-	* doc/public/cairo-sections.txt:
-	* doc/public/tmpl/cairo-paths.sgml:
-	* doc/public/tmpl/cairo-text.sgml: Minor shuffling.
-
-2005-08-23  Kristian Høgsberg  <krh at redhat.com>
-
-	* AUTHORS: 
-	* README: More minor edits.
-
-2005-08-23  Billy Biggs  <vektor at dumbterm.net>
-
-	* README: Minor edits.
-
-2005-08-23  Billy Biggs  <vektor at dumbterm.net>
-
-	* doc/public/tmpl/cairo-matrix.sgml: Update the long description
-	of cairo_matrix_t to match the current sources.
-	* doc/public/tmpl/cairo-paths.sgml: Add cairo_path_data_t.
-	* src/cairo-ft-font.c:
-	* src/cairo-path-data.c:
-	* src/cairo-pattern.c:
-	* src/cairo.c:
-	* src/cairo.h: Some documentation updates and improvements.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* test/.valgrind-suppressions: Add suppression for uninitialized
-	data in fbBltOne.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* README: Big update in preparation for 1.0.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-	
-	* AUTHORS: Added several names to the AUTHORS file (since
-	2005-01-24):
-
-	Josh Aas <joshmoz at gmail.com>
-	Billy Biggs <vektor at dumbterm.net>
-	Damien Carbery <damien.carbery at sun.com>
-	Steve Chaplin <stevech1097 at yahoo.com.au>
-	Tomasz Cholewo <cholewo at ieee-cis.org>
-	John Ehresman <jpe at wingide.com>
-	Behdad Esfahbod <behdad at behdad.org>
-	Bertram Felgenhauer <int-e at gmx.de>
-	J. Ali Harlow <ali at avrc.city.ac.uk>
-	Adrian Johnson <ajohnson at redneon.com>
-	Michael Johnson <ahze at ahze.net>
-	Øyvind Kolås <pippin at freedesktop.org>
-	Martin Kretzschmar <martink at gnome.org>
-	Tor Lillqvist <tml at novell.com>
-	Luke-Jr <luke-jr at utopios.org>
-	Jeff Muizelaar <jeff at infidigm.net>
-	Peter Nilsson <c99pnn at cs.umu.se>
-	Geoff Norton <gnorton at customerdna.com>
-	Robert O'Callahan <rocallahan at novell.com>
-	Mike Owens <etc at filespanker.com>
-	Stuart Parmenter <pavlov at pavlov.net>
-	Tim Rowley <tim.rowley at gmail.com>
-	Jason Dorje Short <jdorje at users.sf.net>
-	Travis Spencer <tspencer at cs.pdx.edu>
-	Malcolm Tredinnick <malcolm at commsecure.com.au>
-
-2005-08-23  Billy Biggs  <vektor at dumbterm.net>
-
-	* doc/public/cairo-docs.xml: Experimental Quartz and XCB
-	backends removed from the public doc for now.
-
-2005-08-23  Owen Taylor  <otaylor at redhat.com>
-
-	* configure.in: Reverse the help text for --enable-xcb,
-	--enable-quartz.
-
-2005-08-23  Owen Taylor  <otaylor at redhat.com>
-
-	* configure.in: Disable XCB and Quartz backends unless
-	explicitely enabled. Add a big warning message if they
-	are enabled about bugs and API instability.
-
-2005-08-23  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-pattern.c (_cairo_pattern_calc_color_at_pixel):
-	Rip out all the code for doing anything other than linear
-	interpolation between color stops, instead of doing different
-	funky things based on pattern->filter. (#4184)
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-font.c: (cairo_font_face_reference),
-	(cairo_scaled_font_reference): Remove assert statements that
-	violate two intentional instances of ref_count == 0.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* test/text-pattern.c: (draw): Fix memory leak of pattern.
-
-2005-08-23  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-win32-font.c (_cairo_win32_scaled_font_show_glyphs):
-	Check for AlphaBlend() with GetProcAddress() to support older
-	compilation environments like MSVC 6. (Also fixes this portion
-	of the code to run on Win98 and Win95, but much of the rest
-	of cairo-win32-* won't work in that environment)
-	(#3926, Hans Breuer, Christian Biesinger, based on code 
-	originally from Mozilla)
-
-	* src/cairo-win32-private.h: Remove WINVER define, since it
-	was there only for AlphaBlend().
-
-2005-08-23  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c: Call _get_pattern_load_flags() 
-	on the resolved pattern, not the input pattern.
-	(Further fix from sunmoon1997)
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	Reviewed by: otaylor
-	Fixes bug #4198
-
-	* src/cairo-font.c: (cairo_font_face_reference),
-	(cairo_font_face_destroy), (cairo_scaled_font_reference),
-	(cairo_scaled_font_destroy):
-	* src/cairo-pattern.c: (cairo_pattern_reference),
-	(cairo_pattern_destroy):
-	* src/cairo-surface.c: (cairo_surface_reference),
-	(cairo_surface_destroy):
-	* src/cairo.c: (cairo_reference), (cairo_destroy):
-	Detect (by assert and crash) if users attempt to twice destroy or
-	re-reference a destroyed object. The condition for detecting this
- 	case is a ref_count of 0.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h:
-	* src/cairoint.h: Move CAIRO_CONTENT_VALID and CAIRO_FORMAT_VALID
-	from the public cairo.h to the private cairoint.h where they
-	belong.
-
-2005-08-23  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c (_cairo_ft_scaled_font_show_glyphs): 
-	when creating the temporary mask, do glyph ADD mask, not 
-	(glyph IN source) ADD mask. Set the mask as having component
-	alpha when it's 4-channel.
-
-	* test/text-antialias-subpixel.c test/Makefile.am: No longer XFAIL.
-	
-	* test/text-antialias-gray.c test/text-antialias-subpixel.c
-	* test/text-antialias-none.c (draw): Don't turn off metrics
-	hinting, it doesn't make sense.
-
-	* test/text-antialias-*-ref.png: Update.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* CODING_STYLE: Revise the description of indentation and tabs to
-	be clear (I hope).
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* test/text-antialias-subpixel.c (draw): Clear to opaque white at
-	the beginning of the test so that the 0 alpha values in the
-	destination don't cause bizarre results.
-	(main): Note that only the image backend should fail now.
-
-	* test/text-antialias-subpixel-ref.png: Add new reference image.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* test/text-rotate-ref.png:
-	* test/text-rotate.c: (draw), (main): Add more comments on the
-	improved state of this bug. Commit a reference image generated
-	with cairo_text_path; cairo_fill. (We may not require getting this
-	exact result, but I think it is worth examining the differences
-	closely.)
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* Makefile.am: Add docs-publish target to build and push
-	documentation, (since our nightly server-side cron job is not
-	working right now).
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* BUGS:
-	* src/cairo-xlib-screen.c: Move comment about missing cleanup of
-	caches on XCloseDisplay from BUGS to a
-	_cairo_xlib_close_display. Also covered in bug #4120.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am:
-	* test/caps-sub-paths.c: (main): Remove caps-sub-paths from the
-	XFAIL list since it is fixed now.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	Fix for bug #4205:
-
-	* src/cairo-path-stroke.c: (_cairo_stroker_add_caps):
-	(_cairo_path_fixed_stroke_to_traps): Abstract the cap-addition
-	code from the end of the stroke operation into a new
-	_cairo_stroker_add_caps function.
-
-	* src/cairo-path-stroke.c: (_cairo_stroker_move_to): Call the new
-	_cairo_stroker_add_caps at the beginning of every move_to so that
-	we get caps on every subpath and not just the last one.
-
-2005-08-23  Billy Biggs  <vektor at dumbterm.net>
-
-	* src/Makefile.am: Add libpixman.la to the libcairo_la_DEPENDENCIES
-	line so that changes to pixman get picked up.
-
-2005-08-23  Owen Taylor  <otaylor at redhat.com>
-
-	Some fixes for warnings from sparse (Part of #4208, 
-	Kjartan Maraas)
-
-	* test/cairo-test.c (create_xlib_surface): Use NULL, not 0.
-
-	* src/cairo-matrix.c (_cairo_matrix_transformed_circle_major_axis):
-	Fix C99'ism of mixed code and declarations.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* BUGS: caps only added to last subpath: COVERED by
-	test/caps-sub-paths and bug #4205.
-
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* test/caps-sub-paths.c: Use the expect_failure variant of
-	cairo_test so that make check prints the reason this test fails.
-	
-2005-08-23  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/caps-sub-paths-ref.png:
-	* test/caps-sub-paths.c: (draw), (main): Add test to demonstrate
-	bug #4205, missing caps on all but last sub-path in a complex
-	path.
-
-2005-08-22  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c (cairo_create): Remove discussion of the BAD_NESTING
-	restriction from the documentation of cairo_create. No such
-	restriction exists anymore.
-
-2005-08-22  Carl Worth  <cworth at cworth.org>
-
-	Fix for bug #4192:
-
-	* src/cairo-ft-font.c: (_font_map_release_face_lock_held): New
-	function to handle both calling FT_Done_Face on unscaled->face and
-	decrementing font_map->num_open_faces.
-
-	* src/cairo-ft-font.c:
-	(_cairo_ft_unscaled_font_map_destroy),
-	(_cairo_ft_unscaled_font_destroy),
-	(_cairo_ft_unscaled_font_lock_face): Call new
-	_font_map_release_face_lock_held as approporiate.
-
-	* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_map_destroy):
-	Assert that (font_map->num_open_faces == 0) when we're done, to
-	help guarantee the bug is fixed.
-
-	* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_fini): Don't call
-	FT_Done_Face anymore, instead assert that (unscaled->face == NULL)
-	by the time this function is called.
-
-	* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_init),
-	(_cairo_ft_unscaled_font_set_scale): Prefer TRUE/FALSE as values
-	for cairo_bool_t have_scale.
-
-2005-08-22  Billy Biggs  <vektor at dumbterm.net>
-
-	* doc/public/Makefile.am: Add version.xml to content_files
-	so it will be copied to the right place for DESTDIR builds.
-
-2005-08-22  Billy Biggs  <vektor at dumbterm.net>
-
-	* doc/public/cairo-docs.xml:
-	* doc/public/cairo-sections.txt: Rework the index for the
-	reference manual.
-
-	* doc/public/tmpl/cairo-font-options.sgml:
-	* doc/public/tmpl/cairo-font.sgml:
-	* doc/public/tmpl/cairo-ft.sgml:
-	* doc/public/tmpl/cairo-glitz.sgml:
-	* doc/public/tmpl/cairo-image.sgml:
-	* doc/public/tmpl/cairo-matrix.sgml:
-	* doc/public/tmpl/cairo-paths.sgml:
-	* doc/public/tmpl/cairo-pattern.sgml:
-	* doc/public/tmpl/cairo-pdf.sgml:
-	* doc/public/tmpl/cairo-png.sgml:
-	* doc/public/tmpl/cairo-ps.sgml:
-	* doc/public/tmpl/cairo-quartz.sgml:
-	* doc/public/tmpl/cairo-scaled-font.sgml:
-	* doc/public/tmpl/cairo-status.sgml:
-	* doc/public/tmpl/cairo-surface.sgml:
-	* doc/public/tmpl/cairo-text.sgml:
-	* doc/public/tmpl/cairo-transforms.sgml:
-	* doc/public/tmpl/cairo-types.sgml:
-	* doc/public/tmpl/cairo-version.sgml:
-	* doc/public/tmpl/cairo-win32-fonts.sgml:
-	* doc/public/tmpl/cairo-win32.sgml:
-	* doc/public/tmpl/cairo-xcb-xrender.sgml:
-	* doc/public/tmpl/cairo-xcb.sgml:
-	* doc/public/tmpl/cairo-xlib.sgml:
-	* doc/public/tmpl/cairo.sgml: Update descriptions and add new
-	files for added sections.
-
-2005-08-22  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c: Make cairo_ft_unscaled_font_backend static.
-
-	* src/cairo-gstate.c (_cairo_gstate_fini): Add missing static.
-
-	* src/cairo-pattern.c (_cairo_pattern_init_gradient): 
-	* src/cairo-ps-surface.c (_cairo_ps_surface_finish): 
-	* src/cairo-xlib-surface.c (_get_image_surface): Use
-	NULL, not 0.
-
-	* src/cairo-font.c (_cairo_lock,unlock,get_global_image_glyph_cache): 
-	Use void in the definition of void functions, not ().
-
-	* src/cairo-pattern.c: Make non-exported 
-	cairo_pattern_nil_* static.
-
-2005-08-22  Carl Worth  <cworth at cworth.org>
-
-	* BUGS: ref_counts will go negative: COVERED by
-	https://bugs.freedesktop.org/show_bug.cgi?id=4198
-
-2005-08-22  Carl Worth  <cworth at cworth.org>
-
-	* BUGS: Remove several entries in an effort to obsolete the BUGS
-	file in favor of bugzilla and cairo/test. Specifically:
-
-	cairo_image_surface_create should clear image: NOTABUG. The user
-	  can clear if desired, and cairo clearing unconditionally would
-	  be performance overhead).
-
-	cairo_clip is really slow: FIXED/COVERED. Since the time this
-	  entry was added we've got rectangular, pixel-alignend clipping
-	  optimized. And there's a bug in bugzilla
-	  (https://bugs.freedesktop.org/show_bug.cgi?id=4191) for
-	  optimizing IN.
-
-	self-intersecting path is wrong: COVERED by
-	  test/self-intersecting.c.
-
-	Cairo is crashing Xnest: NEEDINFO. Is this still happening? Xfake
-	  has been working quite well for a very long time now.
-
-	font-size="0" in SVG does bad things: FIXED.
-
-2005-08-22  Bertram Felgenhauer  <int-e at gmx.de>
-
-	* src/cairoint.h, src/cairo-matrix.c
-	(_cairo_matrix_compute_eigen_values): remove.
-
-2005-08-22  Bertram Felgenhauer  <int-e at gmx.de>
-
-	* src/cairo-arc.c (_arc_segments_needed): correct the calculation of
-	the error bound.
-
-2005-08-22  Bertram Felgenhauer  <int-e at gmx.de>
-
-	* src/cairo-pen.c (_cairo_pen_vertices_needed): use new function.
-	strip comment of derivation for major axis length.
-
-	* src/cairo-matrix.c (_cairo_matrix_transformed_circle_major_axis):
-	use _cairo_matrix_get_affine to retrieve matrix entries.
-
-	* src/cairoint.h, src/cairo-matrix.c
-	(_cairo_matrix_transformed_circle_major_axis): new function split out
-	of cairo-pen.c. UTF8-ify the comment that explains the calculation.
-
-2005-08-22  Bertram Felgenhauer  <int-e at gmx.de>
-
-	* src/cairo-pen.c (_cairo_pen_vertices_needed): use correctly
-	transposed version of the matrix and fix up the comments above
-	to use row vector notation.
-
-2005-08-22  Tor Lillqvist  <tml at novell.com>
-
-	* configure.in: Calculate LT_CURRENT_MINUS_AGE (which forms part
-	of the DLL name on Win32), and AC_SUBST it.
-
-	* Makefile.am: Add target "zips" to create zip file based
-	distribution for Win32.
-
-	* src/Makefile.am: Produce a cairo.def file for distribution by
-	preprocessing the relevant header files and grepping for
-	declarations of functions that start with cairo_. Works for now,
-	will have to modify later if necessary. Use the .def file when
-	linking on Win32.
-
-2005-08-22  Owen Taylor  <otaylor at redhat.com>
-
-	Support artificial bold fonts with FC_EMBOLDEN; patch
-	from Jackey Yang and sunmoon1997.
-
-	* configure.in: Check for FT_GlyphSlot_Embolden()
-
-	* src/cairo-ft-font.c: Call FT_GlyphSlot_Embolden for
-	fonts where FC_EMBOLDEN is set but that aren't bold.
-	Add another private flag for this.
-
-2005-08-22  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am (EXTRA_DIST): Fix typo that was causing make
-	dist to fail.
-
-2005-08-22  Owen Taylor  <otaylor at redhat.com>
-
-	* test/text-rotate.c (draw): Use floor(0.5+x) rather than
-	round(), which is C99. (David Hollenberg)
-
-2005-08-22  Owen Taylor  <otaylor at redhat.com>
-
-	* autogen.sh: Set LC_ALL=C rather than LANG and LC_NUMERIC to be
-	robust against whatever settings the user has. (Martin Dobias)
-
-2005-08-21  Billy Biggs  <vektor at dumbterm.net>
-
-	* src/cairo.c: (cairo_paint_with_alpha): Optimize away calls to
-	cairo_paint_with_alpha() if the alpha value given is <= 0.
-
-	* src/cairoint.h: Add a new macro CAIRO_ALPHA_IS_ZERO.
-
-2005-08-21  Billy Biggs  <vektor at dumbterm.net>
-
-	Fix for bug #4172:
-
-	* src/cairo-pattern.c: (_cairo_pattern_shader_gaussian),
-	(_cairo_image_data_set_linear), (_cairo_image_data_set_radial):
-	Use _cairo_fixed_to_double and _cairo_double_to_fixed when converting
-	between double and 16.16 fixed point.  These functions round nicely,
-	and solve some inconsistencies in rendering between my PPC and x86
-	machines.  Thanks to Owen Taylor for suggesting the fix.
-
-	* test/gradient-alpha-ref.png:
-	* test/linear-gradient-ref.png:
-	* test/text-pattern-ref.png: The above change does affect linear
-	gradients slightly, but it seems worth it.  Update the reference
-	images to follow.
-
-2005-08-21  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-surface.c (_cairo_surface_acquire_dest_image): Remove
-	stray doc sentence that wasn't meant to be committed.
-
-2005-08-21  Billy Biggs  <vektor at dumbterm.net>
-
-	Fix for bug #4165:
-
-	* src/cairo-hull.c: (_cairo_hull_vertex_compare): Use pointer
-	comparison for coincident points to ensure a well-defined
-	ordering, and avoid setting discard on both points.  This fixes
-	problems with my Mac's implementation of qsort.  Final patch by
-	Bertram Felgenhauer.
-
-	* test/clip-operator-ref.png:
-	* test/linear-gradient-ref.png:
-	* test/operator-clear-ref.png:
-	* test/operator-source-ref.png:
-	* test/unantialiased-shapes-ref.png:
-	* test/unbounded-operator-ref.png: Update reference images after
-	the change.
-
-2005-08-21  Owen Taylor  <otaylor at redhat.com>
-
-	* autogen.sh: Check automake-<ver> if automake isn't sufficiently
-	new. (#3593, Philip Van Hoof)
-	
-2005-08-21  Owen Taylor  <otaylor at redhat.com>
-
-	* autogen.sh: When invoked as, say, ../autogen.sh, switch to
-	the sourcedir to run the auto*. Based on corresponding code
-	in GTK+'s autogen.sh. (#3402, Thomas Fitzsimmons)
-
-	* gtk-doc.make: Update from gtk-doc CVS, bringing in some
-	minor output changes. (Eliminate the *** from the messages
-	that don't indicate errors.)
-
-	* doc/public/Makefile.am (EXTRA_DIST): Use += for EXTRA_DIST,
-	since gtk-doc.make already defines it.
-
-2005-08-21  Owen Taylor  <otaylor at redhat.com>
-
-	* configure.in: Check for FT_Load_Sfnt_Table and disable
-	the PDF/PS backends if not found. (#4144, Billy Biggs)
-
-2005-08-21  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-surface.c (_cairo_surface_clone_similar): Fix the
-	handling of backend->clone_similar == NULL. (#4161,
-	Christian Biesinger)
-	
-2005-08-21  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-surface.c: Improve the documentation of internal
-	functions. (Based on a patch from Christian Biesinger, #4162)
-
-2005-08-21  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal):
-	Recognize gentoo's (and maybe other distro's) modified
-	server vendor string, where extra text is added to the
-	upstream value. (#4068, reported by Doug Goldstein, others.
-	Patch from Mart Raudsepp)
-
-2005-08-21  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c (_cairo_ft_unscaled_font_create_glyph): 
-	Don't try to transform val->image when it is NULL.
-	(#4163, Mathias Hasselmann)
-
-2005-08-20  Carl Worth  <cworth at cworth.org>
-
-	Fix for bug #4142:
-
-	* test/cairo-test.c (create_xlib_surface): Disable xlib tests on X
-	servers without the Render, since they currently just crash
-	there. A better long-term fix would be to do some useful tests in
-	this case. Thanks to Tim Mooney.
-
-2005-08-20  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal): 
-	Include Xfree86-4.5 in the blacklist. (Reported by 
-	Andrew Benton)
-
-2005-08-20  Billy Biggs  <vektor at dumbterm.net>
-
-	Fix for bug #4096:
-
-	* src/cairo-png.c: (multiply_alpha), (premultiply_data): Improve
-	the performance of png reading by adding special cases for fully
-	transparent and fully opaque alpha, and using the standard
-	optimization for 8-bit division by 255.
-
-	* src/cairoint.h: Add an INLINE macro for gcc.
-
-2005-08-19  Carl Worth  <cworth at cworth.org>
-
-	From Bertram Felgenhauer <int-e at gmx.de>:
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/rectangle-rounding-error-ref.png:
-	* test/rectangle-rounding-error.c: (draw), (main):
-	Add regression test for bug #4137 (fixed earlier).
-
-2005-08-19  Billy Biggs  <vektor at dumbterm.net>
-
-	* test/pixman-rotate.c: No need to include cairo-pdf.h.
-
-2005-08-19  Carl Worth  <cworth at cworth.org>
-
-	Fix for bug #4137:
-
-	* src/cairo-fixed.c: (_cairo_fixed_from_double): Fix to round
-	properly.
-
-2005-08-19  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-pdf-surface.c (_cairo_pdf_surface_show_glyphs):
-	Ignore really small fonts, since size zero fonts give xpdf
-	fits. (#2938)
-
-2005-08-19  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-font.c: (_cairo_scaled_font_set_error): Fix to
-	actually test scaled_font->status instead of just having a comment
-	that claims to test it. Thanks to Behdad Esfahbod
-	<behdad at cs.toronto.edu>.
-
-2005-08-18  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_composite): We need
-	the call to fixup_unbounded when we optimize the RENDER operator
-	to XCopyArea as well.
-
-2005-08-19  Carl Worth  <cworth at cworth.org>
-
-	Fixes for a general problem of which bug #4094 was a specific
-	instance:
-
-	* src/cairo.c: (_cairo_set_error):
-	* src/cairo-font.c: (_cairo_scaled_font_set_error):
-	* src/cairo-pattern.c: (_cairo_pattern_set_error):
-	* src/cairo-surface.c: (_cairo_surface_set_error):
-	Don't change the status value if it already holds an error. This
-	avoids destroying "first error" information and also avoids
-	attempting to write read-only data, (eg. from nil objects).
-	
-	* src/cairo-font.c:	
-	(cairo_scaled_font_extents), (cairo_scaled_font_glyph_extents):
-	* src/cairo-pattern.c::	
-	(cairo_pattern_create_rgb), (cairo_pattern_create_rgba):
-	* src/cairo-surface.c:
-	(cairo_surface_flush), (cairo_surface_mark_dirty_rectangle),
-	(cairo_surface_set_device_offset):
-	* src/cairo-win32-font.c: (cairo_win32_scaled_font_select_font):
-	* src/cairo.c: (cairo_save), (cairo_restore),
-	(cairo_set_operator), (cairo_set_source_rgb),
-	(cairo_set_source_rgba), (cairo_set_source_surface),
-	(cairo_set_source), (cairo_set_tolerance), (cairo_set_antialias),
-	(cairo_set_fill_rule), (cairo_set_line_width),
-	(cairo_set_line_cap), (cairo_set_line_join), (cairo_set_dash),
-	(cairo_set_miter_limit), (cairo_translate), (cairo_scale),
-	(cairo_rotate), (cairo_transform), (cairo_set_matrix),
-	(cairo_identity_matrix), (cairo_user_to_device),
-	(cairo_user_to_device_distance), (cairo_device_to_user),
-	(cairo_device_to_user_distance), (cairo_new_path), (cairo_move_to),
-	(cairo_line_to), (cairo_curve_to), (cairo_arc),
-	(cairo_arc_negative), (cairo_rel_move_to), (cairo_rel_line_to),
-	(cairo_rel_curve_to), (cairo_rectangle), (cairo_close_path),
-	(cairo_paint), (cairo_paint_with_alpha), (cairo_mask),
-	(cairo_mask_surface), (cairo_stroke_preserve),
-	(cairo_fill_preserve), (cairo_copy_page), (cairo_show_page),
-	(cairo_in_stroke), (cairo_in_fill), (cairo_stroke_extents),
-	(cairo_fill_extents), (cairo_clip_preserve), (cairo_reset_clip),
-	(cairo_select_font_face), (cairo_get_font_face),
-	(cairo_font_extents), (cairo_set_font_face), (cairo_set_font_size),
-	(cairo_set_font_matrix), (cairo_set_font_options),
-	(cairo_text_extents), (cairo_glyph_extents), (cairo_show_text),
-	(cairo_show_glyphs), (cairo_text_path), (cairo_glyph_path),
-	(cairo_append_path):
-	Don't set an error on the same object if it is in an error state
-	to begin with, just return immediately. This is intended to reduce
-	(eventual) error prints to the first cause of an error for any
-	given object, instead of a continual spew.
-
-2005-08-19  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-ps-surface.c (cairo_ps_surface_set_dpi): Add this
-	missing fuction.
-
-	* src/cairo-pdf-surface.c (cairo_pdf_surface_create): Document
-	this funtion.
-
-2005-08-19  Carl Worth  <cworth at cworth.org>
-
-	Fix for bug #2729:
-
-	* src/cairo-gstate.c: (_cairo_gstate_set_dash): Adjust negative
-	offsets up to their equivalent positive value. Add error checking
-	for dash values, (must each be non-negative and must not be all
-	zero).
-
-	* src/cairo.c (cairo_set_dash): Add documentation.
-
-	* src/cairo.h:
-	* src/cairo.c: (cairo_status_to_string): Add new
-	CAIRO_STATUS_INVALID_DASH.
-
-	* test/.cvsignore:
-	* test/Makefile.am: Add dash-offfset-negative test from Owen.
-
-	* doc/public/tmpl/cairo.sgml: churn
-
-2005-08-19  Carl Worth  <cworth at cworth.org>
-
-	Fix for bug #3915:
-
-	* src/cairo-pattern.c: (_cairo_pattern_nil_for_status): Add new
-	NULL_POINTER nil pattern.
-
-	* src/cairo-pattern.c: (cairo_pattern_create_for_surface): Check
-	for surface == NULL and return a nil pattern.
-	
-	* test/nil-surface.c: (draw): Verify that the above fix works.
-
-2005-08-18  Carl Worth  <cworth at cworth.org>
-
-	Fix for bug #4088:
-
-	* src/cairo-pattern.c: (_cairo_pattern_nil_for_status):
-	New function to return the current nil pattern depending on the
-	status.
-	
-	* src/cairo-pattern.c: (cairo_pattern_create_for_surface):
-	* src/cairo-pattern.c: (_cairo_pattern_init_for_surface): Add
-	missing early bailout on surface->status with error propagation to
-	the pattern.
-
-	Related cleanups for cairo_pattern_t:
-
-	* src/cairo-pattern.c: (_cairo_gradient_pattern_init_copy): Don't
-	check other->status since this is a static function.
-
-	* src/cairo-pattern.c: (_cairo_pattern_init_copy): Add missing
-	early bailout on other->status.
-	
-	* src/cairo-pattern.c: (_cairo_pattern_fini): Cleanup identifier
-	names.
-
-	* src/cairo-pattern.c: (_cairo_pattern_create_solid),
-	(cairo_pattern_create_linear), (cairo_pattern_create_radial):
-	Track rename of nil patterns.
-	
-	* src/cairo-pattern.c: (cairo_pattern_set_matrix),
-	(cairo_pattern_set_filter),
-	(cairo_pattern_set_extend): Don't call _cairo_error for
-	pre-existing errors.
-
-	* src/cairo-pattern.c: (_cairo_pattern_acquire_surface): Take care
-	to initialize some fields to that _cairo_pattern_release_surface
-	will work even after an error.
-
-	* src/cairoint.h:
-	* src/cairo.c: (cairo_get_source): Track rename of
-	cairo_solid_pattern_nil to cairo_pattern_nil.
-	
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/nil-surface-ref.png:
-	* test/nil-surface.c: (draw), (main): New test to ensure that a
-	file-not-found error will propagate from a surface, through a
-	pattern, and onto a cairo_t.
-
-2005-08-18  Carl Worth  <cworth at cworth.org>
-
-	* test/.valgrind-suppressions: Suppress a pthread initialization
-	error now that tests are linked with -lpthread.
-
-2005-08-18  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-pattern.c: Fix documentation comment to use &amp; in
-	place of &.
-
-2005-08-18  Owen Taylor  <otaylor at redhat.com>
-
-	Reviewed by: krh
-
-	* configure.in: Fix tests to just disable FreeType if a too-old FreeType
-	is found, rather than erroring out. (#2298)
-
-2005-08-18  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_show_glyphs): Fix offset
-	passed in for source patterns. (#2333, Tim Rowley)
-
-	* test/text-pattern.c: Fix font to Vera Sans rather than "Sans"
-
-2005-08-18  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Update the roadmap. Remove difficulty rating from
-	completed tasks. Note that PostScript/PDF is (grudgingly) done as
-	far as 1.0 is concerned, but there is more work to completing this
-	that is slipped beyond 1.0. Note that the deadlock bug is fixed as
-	of 0.9.2. Update who is working on what for performance. Add some
-	new detail for post-1.0 PostScript/PDF work. Slip the overlapping
-	source/dest Render workaround past 1.0.
-
-2005-08-18  Owen Taylor  <otaylor at redhat.com>
-
-	* test/text-pattern.c: Add a test for bug #2333 (Tim Rowley)
-
-2005-08-17  Owen Taylor  <otaylor at redhat.com>
-	
-	* src/cairo-gstate.c: Implement new equations for CLEAR and SOURCE
-	CLEAR: (mask IN clip) ? 0 : dest
-	SOURCE: (mask IN clip) ? src : dest
-	That behave more like what people expect.
-
-	* src/cairo-gstate.c (_cairo_operator_bounded): CLEAR and SOURCE are 
-	now bounded.
-
-	* src/cairo-font.c (_cairo_ft_scaled_font_show_glyphs)
-	* src/cairo-surface.c (_cairo_surface_composite_trapezoids):
-	Assert that SOURCE and CLEAR aren't passed to these functions.
-
-	* src/cairo-surface.c (_cairo_surface_composite):
-	Assert that SOURCE and CLEAR aren't passed to these functions
-	when there is a mask.
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_composite)
-	* src/cairo-image-surface.c (_cairo_image_surface_composite): 
-	Do fixups for SOURCE and CLEAR as well as unbounded operators,
-	since in the absence of a mask, we need SOURCE to work 
-	correctly (don't care about CLEAR)
-
-	* src/cairo-ft-font.c (_transform_glyph_bitmap, _cairo_ft_font_show_glyphs)
-	Consistently use CLEAR/TRANSPARENT (source doesn't matter)
-	rather than SOURCE/TRANSPARENT when clearing rectangles.
-
-	* src/cairo-xlib-surface.c src/cairo-surface.c: Use 
-	IN rather than SOURCE as an example of an unbounded operator in
-	docs.
-
-	* test/unbounded-operator.c: Remove CLEAR/SOURCE columns since
-	they are no longer unbounded.
-
-	* test/operator-clear.c test/operator-source Makefile.am: Add
-	targetted tests of CLEAR/SOURCE.
-
-2005-08-18  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-quartz-surface.c
-	(_cairo_quartz_surface_acquire_source_image): Fix to not leak
-	surface->cgImage on out-of-memory (thanks to Josh Aas
-	<joshmoz at gmail.com>).
-
-2005-08-18  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-fixed.c: (_cairo_fixed_integer_ceil): Fix to not
-	right-shift a negative number when called with an argument of 0.
-
-2005-08-18  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c: (cairo_test_expecting): Disable
-	not-yet-implemented quartz stuff.
-
-2005-08-18  Billy Biggs  <vektor at dumbterm.net>
-
-	* doc/public/version.xml.in: Add an autoconf-generated version
-	file to advertise what cairo version the manual was generated
-	for.  Idea taken from the GTK+ documentation.
-
-	* doc/public/cairo-docs.xml: Include the version number, along
-	with the title, in a bookinfo section.
-
-	* doc/public/Makefile.am: Add the version.xml.in to the dist.
-
-	* doc/public/.cvsignore: Ignore version.xml.
-
-	* configure.in: Generate doc/public/version.xml.
-
-2005-08-18  Carl Worth  <cworth at cworth.org>
-
-	* Makefile.am: Clear setgid bit on regular files prior to tarring
-	up a release.
-
-2005-08-18  Kristian Høgsberg  <krh at redhat.com>
-
-	* configure.in: Fix typo in freetype configure check.
-
-2005-08-17  Kristian Høgsberg  <krh at redhat.com>
-
-	* configure.in: Try to use pkg-config to detect freetype2, then
-	fall back to the existing freetype-config based check.
-
-2005-08-17  Carl Worth  <cworth at cworth.org>
-
- 	Fixes for bug #4110:
-
-	* src/cairo-ft-font.c (_cairo_ft_unscaled_font_init): Don't call
-	_cairo_ft_unscaled_font_init_key in the from_face case, just clear
-	filename and id instead. Initialize unscaled->base first so that
-	initialization order matches the structure declaration order.
-
-	* src/cairo-cache.c (_cairo_hash_string): Fix to accept a NULL
-	string and hash it identically to a zero-length string.
-
-	* test/Makefile.am:
-	* test/ft-font-create-for-ft-face: Add a test that calls
-	cairo_ft_font_create_for_ft_face to demonstrate bug #4110.
-
-2005-08-16  Billy Biggs  <vektor at dumbterm.net>
-
-	* test/filter-nearest-offset.c: (draw): Fix the filter-nearest-offset
-	test to actually test CAIRO_FILTER_NEAREST.
-
-2005-08-16  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-region.c (_cairo_region_rectangle_extents) 
-	(_cairo_region_create_from_rectangle) src/cairoint.h: Split out
-	a couple of useful utility functions.
-
-	* src/cairo-clip.c src/cairo-gstate.c: Use them.
-
-	* src/cairo-surface.c (_cairo_surface_fill_region): Move code to
-	fill a pixman_region16_t to here.
-
-	* src/cairo-surface.c (_cairo_surface_fill_rectangle)
-	* src/cairo-surface.c (_cairo_surface_fill_rectangles): Document.
-
-	* src/cairo-gstate.c (_cairo_surface_clip_and_composite_trapezoids):
-	Use _cairo_surface_fill_region().
-
-	* src/cairo-surface.c (_cairo_surface_composite_fixup_unbounded):
-	Add a return status, use regions to simplify.
-
-	* src/cairoint.h
-	* src/cairo-image-surface.c (_cairo_image_surface_composite)
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_composite)
-	(_show_glyphs_fixup_unbounded): Handle the return value from
-	_cairo_surface_composite_fixup_unbounded().
-
-	* src/cairo-surface.c src/cairoint.h
-	(_cairo_surface_composite_shape_fixup_unbounded): Add a variant
-	of _cairo_surface_composite_fixup_unbounded() to avoid creating
-	a dummy cairo_surface_attributes_t.
-
-	* src/cairo-xlib-surface (_show_glyphs_fixup_unbounded):
-	Use _cairo_surface_composite_shape_fixup_unbounded().
-
-	* src/cairo-image-surface.c (_cairo_image_surface_composite_trapezoids)
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_composite_trapezoids):
-	Call _cairo_surface_composite_shape_fixup_unbounded(), since the source
-	might still be restricted, even though the mask is unbounded.
-
-	* src/cairo-gstate.c (_cairo_surface_clip_and_composite_trapezoids): 
-	Restore the rectangle optizations when drawing with unbounded 
-	operators by adding a clear for the extra area after drawing
-	the rectangles.
-
-2005-08-16  Billy Biggs  <vektor at dumbterm.net>
-
-	* configure.in: Add a check for the MMX intrinsics used by pixman.
-	gcc >= 3.4 is required.
- 
-2005-08-16  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h (CAIRO_PRINTF_FORMAT): Rename cairo_printf_format
-	to CAIRO_PRINTF_FORMAT. Fix syntax error in the case of an empty
-	definition. (Thanks to Vladimir Vukicevic).
-
-2005-08-14  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-ft-font.c (_cairo_ft_unscaled_font_lock_face): Zero
-	out 'entry', not 'unscaled' when evicting face from cache.
-
-2005-08-13  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-ps-surface.c: (_ps_output_fill_rectangles): Fix a
-	mismatch between printf arguments and format string (thanks to
-	Adrian Johnson).
-	
-	* src/cairoint.h (cairo_printf_format): Add macro to mark printf
-	like functions.
-
-2005-08-13  Owen Taylor  <otaylor at redhat.com>
-
-	* Makefile.am (DIST_SUBDIRS): Change docREEL back to doc.
-	(Found by Kjartan Maraas)
-
-2005-08-13  Carl Worth  <cworth at cworth.org>
-
-	* NEWS: Fix typo ('internal' should have been 'external').
-
-2005-08-13  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Increment CAIRO_VERSION to 0.9.3 after tagging
-	RELEASE_0_9_2.
-
-	* Makefile.am (release-publish): Slight rewording of announcement
-	email.
-
-2005-08-13  Carl Worth  <cworth at cworth.org>
-
-	* NEWS: Added notes for release 0.9.2.
-	
-	* configure.in: Increment CAIRO_VERSION to 0.9.2 and libtool
-	versioning to 3:1:1.
-
-	* RELEASING: Remove some more 'snapshot' language. Make it more
-	clear that the libtool versioning numbers need to be updated.
-
-2005-08-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-pattern.c: Fix unterminated comment that eliminated
-	cairo_pattern_add_color_stop_rgba.
-
-2005-08-13  Carl Worth  <cworth at cworth.org>
-
-	* NEWS: Add missing notes on soname and user-space locking for
-	cairo_set_source() to the 0.9.0 release notes.
-	
-	* src/cairo-pattern.c: Document cairo_pattern_add_color_stop_rgb,
-	cairo_pattern_add_color_stop_rgba, cairo_pattern_set_matrix, and
-	cairo_pattern_get_matrix.
-	
-	* src/cairo.c: Add note on user-space locking to the documentation
-	for cairo_set_source().
-
-2005-08-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Turn the mutex code back on. It looks like the
-	deadlocks have disappeared as of the cairo_scaled_font_map patch
-	from two days ago.
-	
-	* configure.in: Setup an automake conditional for the HAVE_PTHREAD
-	case.
-	
-	* test/Makefile.am: Link all tests with -lpthread if available, so
-	that we can get some testing of cairo with mutexes turned on.
-
-2005-08-13  Carl Worth  <cworth at cworth.org>
-
-	Minor, cosmetic changes:
-
-	* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_lock_face): Reowrd
-	comment to be more clear.
-
-	* src/cairo-ft-font.c: (_cairo_ft_scaled_font_create): Prefer
-	return of address of base field rather than cast.
-
-	* src/cairo-ft-font.c: (_cairo_ft_font_face_destroy): Whitespace
-	fix.
-
-2005-08-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_map_create),
-	(_cairo_ft_unscaled_font_init_key), (_cairo_ft_unscaled_font_init),
-	(_cairo_unscaled_font_is_ft), (_cairo_ft_unscaled_font_fini),
-	(_cairo_ft_unscaled_font_keys_equal),
-	(_cairo_ft_unscaled_font_create_from_face),
-	(_cairo_ft_unscaled_font_destroy): Shuffle functions around to put
-	them in a sane order within the file. There should be no
-	functional change here.
-
-2005-08-11  Carl Worth  <cworth at cworth.org>
-
-	Reviewed by: keithp
-
-	* src/cairoint.h: Add hash_entry field to cairo_scaled_font_t so
-	that it can be hashed.
-
-	* src/cairo-font.c: (_cairo_scaled_font_map_lock),
-	(_cairo_scaled_font_map_unlock), (_cairo_scaled_font_map_destroy),
-	(_cairo_scaled_font_init_key), (_cairo_scaled_font_keys_equal),
-	(_cairo_scaled_font_init), (_cairo_scaled_font_fini),
-	(cairo_scaled_font_create), (cairo_scaled_font_reference),
-	(cairo_scaled_font_destroy), (_cairo_font_reset_static_data):
-	Convert the font_face/matrix/ctm/options => cairo_scaled_font_t
-	mapping from a two-layer cairo-cache.c implementation to a single
-	cairo-hash.c implementation backed by a simple array for the
-	secondary cache.
-
-2005-08-13  Behdad Esfahbod  <behdad at behdad.org>
-
-	* src/cairo-path-data.c (_cairo_path_data_append_to_context):
-	Move checks for invalid number of points before the calls that
-	use the points.
-
-2005-08-13  Behdad Esfahbod  <behdad at behdad.org>
-
-	* src/cairo-color.c: Fix conversion to short, to get a uniform
-	range even for 0xffff.  In other words, a color component of
-	of (1.0 - epsilon) would convert to 0xffff, not 0xfffe.
-
-2005-08-13  Behdad Esfahbod  <behdad at behdad.org>
-
-	* RELEASING:
-	* Makefile.am: Generate sh1sum instead of md5sum.  Use gpg to
-	sign it.  You need gpg set up.
-
-2005-08-12  Carl Worth  <cworth at cworth.org>
-
-	* RELEASING:
-	* Makefile.am: Move tagging from an instruction in RELEASING to
-	an automated step at the end of release-publish.
-
-2005-08-13  Behdad Esfahbod  <behdad at behdad.org>
-
-	* Makefile.am (release-publish): Check that the micro component
-	of the version number is even.
-
-	* RELEASING: Fixed the pattern to find all public header files.
-
-2005-08-11  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-font.c (_cairo_toy_font_face_fini): Fix inverted sense
-	of assert statement which led to lots of unpleasant crashes.
-
-2005-08-08  Carl Worth  <cworth at cworth.org>
-
-	Reviewed by: keithp
-
-	* src/cairoint.h: Add hash_entry field to cairo_font_face_t so
-	that it can (optionally) be hashed.
-
-	* src/cairo-font.c: (_cairo_toy_font_face_hash_table_lock),
-	(_cairo_toy_font_face_hash_table_unlock),
-	(_cairo_toy_font_face_init_key), (_cairo_toy_font_face_init),
-	(_cairo_toy_font_face_fini), (_cairo_toy_font_face_keys_equal),
-	(_cairo_toy_font_face_create), (_cairo_toy_font_face_destroy),
-	(_cairo_toy_font_face_scaled_font_create),
-	(_cairo_font_reset_static_data): Complete the remainder of the
-	simple -> toy renaming. Convert the family/slant/weight ->
-	cairo_toy_font_face_t mapping to use cairo-hash.c rather
-	than cairo-cache.c.
-
-2005-08-11  Carl Worth  <cworth at cworth.org>
-
-	Reviewed by: keithp
-
-	* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_init),
-	(_cairo_ft_unscaled_font_init_key),
-	(_cairo_ft_unscaled_font_keys_equal),
-	(_cairo_ft_unscaled_font_fini),
-	(_cairo_ft_unscaled_font_map_destroy),
-	(_cairo_ft_unscaled_font_map_lock),
-	(_cairo_ft_unscaled_font_map_unlock),
-	(_cairo_ft_unscaled_font_map_create),
-	(_cairo_ft_unscaled_font_create_for_pattern), (_has_unlocked_face),
-	(_cairo_ft_unscaled_font_lock_face),
-	(_cairo_ft_unscaled_font_destroy),
-	(_cairo_ft_scaled_font_create_toy),
-	(cairo_ft_font_face_create_for_pattern),
-	(_cairo_ft_font_reset_static_data): 
-	Move implementation of filename/id => cairo_ft_unscaled_font_t
-	from cairo-cache.c to cairo-hash.c, with new
-	cairo_ft_unscaled_font_map.
-	
-	* src/cairoint.h: Add cairo_unscaled_font->hash_entry so that
-	unscaled fonts can live in hash tables.
-
-2005-08-08  Carl Worth  <cworth at cworth.org>
-
-	Reviewed by: otaylor
-
-	* src/cairoint.h: Re-order cairo_scaled_font->font_face parameter
-	to maintain the font_face,font_matrix,ctm,options order that
-	prevails throughout the implementation. Add font_face parameter to
-	_cairo_scaled_font_init.
-	
-	* src/cairoint.h:
-	* src/cairo-atsui-font.c: (_cairo_atsui_font_create_toy):
-	* src/cairo-win32-font.c: (_cairo_win32_scaled_font_create_toy):
-	* src/cairo-ft-font.c: (_cairo_ft_scaled_font_create_toy):
-	Remove const qualifier from toy_face parameter to creat_toy, as
-	these functions may reference the font face. Track addition of
-	font_face parameter to _cairo_scaled_font_init.
-
-	* src/cairo-font.c: (_cairo_inner_font_cache_create_entry),
-	(_cairo_scaled_font_init): Implement font_face parameter to
-	_cairo_scaled_font_init, moving the reference of the font_face
-	from _cairo_inner_font_cache_create_entry.
-
-	* src/cairo-ft-font.c: (_cairo_ft_scaled_font_create): Add a
-	font_face parameter in addition to the unscaled_font parameter.
-
-	* src/cairo-ft-font.c: (_cairo_ft_font_face_scaled_font_create):
-	Track new font_face parameter to _cairo_ft_scaled_font_create.
-
-	* src/cairo-ft-font.c: (_cairo_ft_font_face_create),
-	(cairo_ft_scaled_font_lock_face): Whitespace touchup.
-
-2005-08-10  Billy Biggs  <vektor at dumbterm.net>
-
-	* test/clip-operator-ref.png: Update to match the output from
-	libpixman.
-
-2005-08-10  Carl Worth  <cworth at cworth.org>
-
-	 Thanks to Olivier Andrieu:
-
-	* NEWS: Add mention of cairo_get_antialias. Fix to mention
-	cairo_surface_flush by its correct name, (rather than the
-	non-existent cairo_flush).
-
-2005-08-10  Carl Worth  <cworth at cworth.org>
-
-	* doc/public/cairo-docs.xml: Fix id to be cairo rather than
-	libglade. (Thanks to Christian Biesinger).
-
-2005-08-10  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: 
-	* src/cairo.c: (cairo_version), (cairo_version_string):
-	Augment existing CAIRO_VERSION_MAJOR/MINOR/MICRO and
-	CAIRO_VERSION_STRING with CAIRO_VERSION_ENCODE and CAIRO_VERSION.
-	Add functions for run-time access:
-
-		cairo_version
-		cairo_version_string
-
-2005-08-10  Carl Worth  <cworth at cworth.org>
-
-	From Travis Spencer <tspencer at cs.pdx.edu>:
-	
-	* src/cairo-xcb-surface.c:
-	(_cairo_xcb_surface_composite_trapezoids): Fix typo causing a
-	syntax error.
-
-2005-08-10  Keith Packard  <keithp at keithp.com>
-
-	* test/Makefile.am:
-	Place private include directives before CAIRO_CFLAGS in case
-	pixman remains installed in the system.
-
-2005-08-10  Carl Worth  <cworth at cworth.org>
-
-	From Keith Packard <keithp at keithp.com>,
-	
-	Build pixman internally as a private part of cairo, with suitable
-	name changes to avoid any visible pixman symbols in the cairo
-	library:
-
-	* Makefile.am: Descend into pixman.
-	
-	* cairo.pc.in: Drop libpixman from Requires.
-	
-	* configure.in: Don't check for libpixman. Check version of
-	pkg-config and use Requires.private instead of Requires in
-	cairo.pc if possible. Generate pixman Makefiles.
-	
-	* pixman/Makefile.am: Rip out release-publish target and
-	installation of libpixman.pc.
-	
-	* pixman/src/Makefile.am: Add pixman-remap.h. Drop libpixman.la
-	target.
-	
-	* pixman/src/icint.h: Fix to include "config.h" rather than
-	"../config.h"
-	
-	* pixman/src/pixman-remap.h: This is the cpp magic to rename all
-	pixman functions from the various fb, Fb, INT_pixman, pixman,
-	Render, _Render, or no prefix to _cairo_pixman_ prefixes.
-
-	* pixman/src/pixman.h: Include pixman-remap.h to get all the
-	cairo-internalized names.
-	
-	* src/Makefile.am:
-	* test/Makefile.am: Add -I$(top_srcdir)pixman/src to get at
-	pixman-remap.h.
-
-2005-08-10  Vladimir Vukicevic  <vladimir at pobox.com>
-
-	* src/cairo-glitz-surface.c: Additional fix for 0-width/0-height
-	glyphs.
-
-2005-08-10  Carl Worth  <cworth at cworth.org>
-
-	* Makefile.am:
-	* RELEASING: Change release instructions to indicate new odd-micro
-	version for in-progress development, and even-micro for released
-	versions. Do a bit of snapshot->release renaming.
-
-2005-08-10  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Change CAIRO_VERSION from 0.9.0-head to 0.9.1.
-
-	Patch from Behdad Esfahbod <behdad at behdad.org>:
-
-	* configure.in: Update to use AC_INIT and AM_INIT_AUTOMAKE in
-	recommended ways. Add support for substituting
-	CAIRO_VERSION_MAJOR/MINOR/MICRO into generated headers.
-	
-	* src/cairo-features.h.in: Add CAIRO_VERSION_MAJOR/MINOR/MICRO and
-	CAIRO_VERSION_STRING which are generated by configure.
-
-2005-08-10  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-path-data-private.h:
-	* src/cairoint.h: Add cairo_private to the few pieces of data that
-	were missing it.
-
-2005-08-09  Vladimir Vukicevic  <vladimir at pobox.com>
-
-	* src/cairo-glitz-surface.c: Don't crash on 0-width or 0-height
-	glyphs; also correctly initialize entry->key.base.memory with the
-	image cache image.
-
-	* src/cairo-xlib-surface.c (_xlib_glyphset_cache_create_entry):
-	Free allocated entry in case of error to avoid leaking memory.
-
-2005-08-09  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-arc-private.h:
-	* src/cairo-ft-private.h:
-	* src/cairo-meta-surface-private.h:
-	* src/cairoint.h: Add cairo_private to several function prototypes
-	that were missing it.
-
-2005-08-09  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Note that sane clipping is done now. Add release
-	versions for previously completed items.
-
-	* test/.cvsignore: Ignore unantialiased-shapes.
-
-2005-07-29  T Rowley  <tim.rowley at gmail.com>
-
-	* src/cairo-atsui-font.c (_cairo_atsui_font_create_toy):
-	Get cairo_toy_font_face_t type right.
-
-2005-08-09  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Add -head to CAIRO_VERSION after tagging with
-	RELEASE_0_9_0.
-
-2005-08-08  Carl Worth  <cworth at cworth.org>
-
-	* NEWS: Added notes for release 0.9.0.
-
-	* configure.in: Increment CAIRO_VERSION to 0.9.0. Increment
-	LT_CURRENT to 2 to mark the beginning of proper soname management.
-
-2005-08-08  Carl Worth  <cworth at cworth.org>
-
-	* src/Makefile.am (libcairo_la_SOURCES): Add missing cairo-debug.h
-	which was hold up make distcheck.
-
-2005-08-08  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am (EXTRA_DIST): Fix typo that was holding up make
-	distcheck from working.
-
-2005-08-08  Billy Biggs  <vektor at dumbterm.net>
-
-	* src/cairo-path-data-private.h: Declare _cairo_path_nil as extern.
-
-2005-08-08  Billy Biggs  <vektor at dumbterm.net>
-
-	reviewed by: cworth, otaylor
-
-	* src/cairo.c: (cairo_set_antialias), (cairo_get_antialias):
-	* src/cairo.h: Add a new API for disabling antialiasing of shapes
-	drawn by cairo.  This is a hint and is not supported by all backends.
-
-	* src/cairoint.h:
-	* src/cairo-gstate-private.h:
-	* src/cairo-gstate.c: (_cairo_gstate_init),
-	(_composite_traps_draw_func),
-	(_cairo_surface_clip_and_composite_trapezoids),
-	(_cairo_gstate_clip_and_composite_trapezoids),
-	(_cairo_gstate_clip), (_cairo_gstate_set_antialias),
-	(_cairo_gstate_get_antialias): Store the antialiasing mode in the
-	gstate and pass it to the backend for trapezoid rendering and for
-	clipping.
-
-	* src/cairo-clip-private.h:
-	* src/cairo-clip.c: (_cairo_clip_intersect_path),
-	(_cairo_clip_intersect_mask), (_cairo_clip_clip): Pass the
-	antialiasing parameter down to the backend where appropriate.
-
-	* src/cairo-surface.c: (_fallback_composite_trapezoids),
-	(_cairo_surface_composite_trapezoids), (_cairo_surface_reset_clip),
-	(_cairo_surface_intersect_clip_path),
-	(_cairo_surface_set_clip_path_recursive),
-	(_cairo_surface_set_clip_path): Pass the antialiasing parameter down
-	to the backend where appropriate.
-
-	* src/cairo-image-surface.c:
-	(_cairo_image_surface_composite_trapezoids): Add support for A1 format
-	trapezoid rendering, and remove the _create_mask_image function,
-	creating a temporary image from memory we allocate and clear.
-
-	* src/cairo-xcb-surface.c:
-	(_cairo_xcb_surface_composite_trapezoids): Support A1 masks to disable
-	antialiasing using the RENDER extension when requested.
-
-	* src/cairo-xlib-surface.c: (_create_trapezoid_mask),
-	(_cairo_xlib_surface_composite_trapezoids): Support A1 masks to disable
-	antialiasing using the RENDER extension when requested.
-
-	* src/cairo-meta-surface-private.h:
-	* src/cairo-meta-surface.c:
-	(_cairo_meta_surface_composite_trapezoids),
-	(_cairo_meta_surface_intersect_clip_path),
-	(_cairo_meta_surface_replay): Blindly pass through the antialising
-	parameter.
-
-	* src/cairo-glitz-surface.c:
-	(_cairo_glitz_surface_composite_trapezoids):
-	* src/cairo-pdf-surface.c:
-	(_cairo_pdf_surface_composite_trapezoids),
-	(_cairo_pdf_surface_intersect_clip_path): 
-	* src/cairo-ps-surface.c: (_cairo_ps_surface_composite_trapezoids),
-	(_cairo_ps_surface_intersect_clip_path),
-	(_ps_output_composite_trapezoids),
-	(_ps_output_intersect_clip_path): Add the antialiasing parameter but
-	don't support it.
-
-	* test/Makefile.am:
-	* test/unantialiased-shapes-ref.png:
-	* test/unantialiased-shapes.c: (big_star_path), (draw), (main):
-	Add a test case and a reference image from the latest libpixman.
-
-	* doc/public/tmpl/cairo-font.sgml:
-	* doc/public/tmpl/cairo.sgml:
-	* doc/public/cairo-sections.txt: Add the new antialiasing disabling API to
-	the docs.
-
-	* TODO: Update progress on a parameter to disable antialiasing.
-
-2005-08-08  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore: Ignore clip-operator and unbounded-operator.
-
-2005-08-08  Carl Worth  <cworth at cworth.org>
-
-	* RELEASING: Fix gnome-announce-list address.
-
-2005-08-08  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_xlib_glyphset_cache_destroy_entry): 
-	Don't free the glyph if the entry doesn't have a glyph.
-	(Maybe #3909, Carlos Garnacho Parro)
-
-2005-08-08  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c: (_cairo_operator_bounded): Add a return
-	value after ASSERT_NOT_REACHED to quiet an anxious compiler.
-
-2005-08-08  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-gstate.c: (_cairo_surface_clip_and_composite_trapezoids): 
-	Fix accidentally committed line.
-
-2005-08-08  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-surface.c (_cairo_surface_set_clip_path): Update doc
-	comment.
-
-2005-08-08  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-gstate.c (_cairo_operator_bounded): Add a function to test
-	whether a cairo_operator_t is bounded (does nothing for 0 src/mask)
-
-	* src/cairo-surface.c (_cairo_surface_composite_fixup_unbounded) cairoint.h:
-	Add a helper function to take clearing areas that are outside the source/mask
-	but are cleared by unbounded operations.
-
-	* src/cairo-image-surface.c (_cairo_image_surface_composite)
-	src/cairo-xlib-surface.c (_cairo_xlib_surface_composite): Use 
-	_cairo_surface_composite_fixup_unbounded() as needed.
-
-	* src/cairo-image-surface.c src/cairint.h: Keep track of whether the surface 
-	has a clip or not ... we need this for determining when we can bypass
-	an intermediate mask for composite_trapezoids().
-
-	* src/cairo-image-surface.c (_cairo_image_surface_composite_trapezoids):
-	Create an intermediate mask of the right size with pixman_add_trapezoids()
-	and composite that.
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_composite_trapezoids):
-	When rendering with an unbounded operator, create the intermediate mask
-	ourselves and render with ADD to that, then composite the result.
-
-	* src/cairo-ft-font.c (_cairo_ft_scaled_font_show_glyphs): Create an 
-	intermediate surface the size of the extents, render the glyphs to that
-	then composite the results.
-
-	* src/cairo-xlib-surface.c (glyphset_cache_entry_t): Add the size of the glyph
-
-	* src/cairo-xlib-surface.c (_show_glyphs_fixup_unbounded): Compute the size
-	of the glyph mask, then use _cairo_surface_composite_fixup_unbounded().
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_show_glyphs32): Use the right
-	mask format. (Unrelated bugfix)
-
-	* src/cairo-gstate.c (_cairo_gstate_clip_and_composite): New function taking
-	a drawing function as a parameter to encapsulate shared logic between
-	compositing trapezoid, glyphs, and masks.
-
-	* src/cairo-gstate.c (_cairo_gstate_mask, 
-	_cairo_surface_clip_and_composite_trapezoids, _cairo_gstate_show_glyphs):
-	Use _cairo_gstate_clip_and_composite(). Also fix extents computations for 
-	unbounded operators.
-	
-	* src/cairo-clip.c src/cairo-clip-private.h (_cairo_clip_combine_to_surface): 
-	Add the destination as an extra parameter to allow combining to an intermediate
-	surface.
-
-	* tests/unbounded-operator.c tests/Makefile.am: Add a test for the
-	operation of the 6 unbounded operators against different shapes.
-
-	* tests/clip-operator.c tests/Makefile.am: Add a test that tests
-	surface clipping with different shapes against all the operators.
-
-	* test/composite-integer-translate-over-repeat.c (draw): Make use OVER
-	like the name and description. With fixed semantics, SOURCE does something
-	different.
-
-2005-08-06  Carl Worth  <cworth at cworth.org>
-
-	* BUGS: Remove several bugs that have been fixed.
-	
-	* ROADMAP: Slip group support off of the 1.0 roadmap. Update
-	status of clipping work which otaylor is working on.
-	
-	* TODO: Update for progress on cairo_surface_mark_dirty
-	(committed), non-antialiased rendering (patch), cairo_arc_to
-	(patch), consistent error handling (committed), cairo_content_t
-	(committed). Remove details for some completed items.
-
-	* src/cairo-gstate.c (_cairo_gstate_set_font_face): Don't crash if
-	font_face is NULL, (this is a documented mechanism for returning
-	to the default font_face).
-
-2005-08-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c (cairo_get_font_face): Fix to return
-	&_cairo_font_face_nil instead of NULL on error.
-
-2005-08-06  Jeff Muizelaar  <jeff at infidigm.net>
-
-	* test/a8-mask.c: (main): Give reason for failure.
-
-2005-08-06  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-win32-font.c (_cairo_win32_scaled_font_show_glyphs): 
-	Remove a non-sensical XXX that crept in at some point; for
-	a solid color, there is no difference between premultiplied
-	and non-premultiplied colors.
-
-2005-08-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Add a hash_entry as the first member of
-	cairo_unscaled_font_t so that in can live in a hash table.
-
-	* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_init),
-	(_cairo_ft_unscaled_font_init_key),
-	(_cairo_ft_unscaled_font_keys_equal),
-	(_cairo_ft_unscaled_font_fini),
-	(_cairo_ft_unscaled_font_map_destroy),
-	(_cairo_ft_unscaled_font_map_lock),
-	(_cairo_ft_unscaled_font_map_unlock),
-	(_cairo_ft_unscaled_font_map_create),
-	(_cairo_ft_unscaled_font_create_for_pattern), (_has_unlocked_face),
-	(_cairo_ft_unscaled_font_lock_face),
-	(_cairo_ft_unscaled_font_destroy),
-	(_cairo_ft_scaled_font_create_toy),
-	(cairo_ft_font_face_create_for_pattern),
-	(_cairo_ft_font_reset_static_data): Rewrite the mapping from
-	filename/id -> cairo_ft_unscaled_font. The new version uses the
-	more appropriate cairo_hash_table_t rather than the awkward
-	cairo_cache_backend_t.
-
-2005-08-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ft-font.c: (_cairo_ft_scaled_font_create),
-	(_cairo_ft_scaled_font_create_toy),
-	(_cairo_ft_scaled_font_glyph_extents),
-	(_cairo_ft_font_face_scaled_font_create): Fix up some stale
-	comments. Rename _cairo_ft_scaled_font_create_for_unscaled to its
-	proper name of _cairo_ft_scaled_font_create (which is available
-	now that _cairo_ft_scaled_font_create_toy has its correct
-	name). Also prefer 'scaled_font' over 'f' as an identifier.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_init),
-	(_cairo_ft_unscaled_font_create_from_face),
-	(_cairo_ft_unscaled_font_create_from_filename): Unify
-	initialization for _cairo_ft_unscaled_font_create_from_face and
-	_cairo_ft_unscaled_font_create_from_filename through new
-	_cairo_ft_unscaled_font_init.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ft-font.c: (_cairo_ft_font_face_create): Rename
-	_ft_font_face_backend to be preoperly namespaced as
-	_cairo_ft_font_face_backend.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ft-font.c: (_cairo_ft_font_face_destroy),
-	(_cairo_ft_font_face_create): Rename cairo_ft_font_face->next_face
-	to next.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Include cairo-hash-private.h.
-
-	* src/Makefile.am (libcairo_la_SOURCES): Add cairo-hash.c and
-	cairo-hash-private.h since we're actually going to start using
-	them now.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c: (_cairo_gstate_set_font_face): Simplify the
-	implementation by taking advantage of the fact that destroy and
-	reference are safe for NULL, and that reference returns its
-	argument.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c: (_cairo_gstate_translate),
-	(_cairo_gstate_scale), (_cairo_gstate_rotate),
-	(_cairo_gstate_transform), (_cairo_gstate_set_matrix),
-	(_cairo_gstate_identity_matrix), (_cairo_gstate_unset_scaled_font),
-	(_cairo_gstate_set_font_size), (_cairo_gstate_set_font_matrix),
-	(_cairo_gstate_set_font_options),
-	(_cairo_gstate_ensure_scaled_font),
-	(_cairo_gstate_get_font_extents), (_cairo_gstate_text_to_glyphs),
-	(_cairo_gstate_set_font_face), (_cairo_gstate_glyph_extents),
-	(_cairo_gstate_show_glyphs), (_cairo_gstate_glyph_path):
-	Rename two functions:
-
-	_cairo_gstate_unset_font  -> _cairo_gstate_unset_scaled_font
-	_cairo_gstate_ensure_font -> _cairo_gstate_ensure_scaled_font
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Entagle the cairo_unscaled_font_t typedef.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Rename font_face_backend->create_font to
-	scaled_font_create. Group the scaled_font prototypes together. A
-	little more simple -> toy renaming.
-
-	* src/cairo-font.c: (_cairo_toy_font_face_create_from_cache_key),
-	(_cairo_toy_font_face_destroy),
-	(_cairo_toy_font_face_create):
-	* src/cairo-gstate.c: (_cairo_gstate_select_font_face),
-	(_cairo_gstate_ensure_font_face):
-	A little more simple -> toy renaming.
-
-	* src/cairo-font.c: (_cairo_toy_font_face_scaled_font_create),
-	(_cairo_inner_font_cache_create_entry):
-	* src/cairo-ft-font.c: (_cairo_ft_font_face_scaled_font_create):
-	* src/cairo-win32-font.c: (_cairo_win32_font_face_scaled_font_create):
-	Track rename of font_face_backend->scaled_font_create.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Rather gratuitous (though mostly harmless)
-	whitespace changes for font backend tables.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c: Document the implicit closing of sub-paths for
-	cairo_fill and cairo_fill_preserve.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Rename parameters to scalend_font_backend from
-	font to scaled_font.
-	
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Rename scaled_font_backend->destroy to the more
-	accurate fini, (since it frees only the dependent data within the
-	scaled_font and not the scaled_font itself).
-
-	* src/cairo-atsui-font.c: (_cairo_atsui_font_fini):
-	* src/cairo-font.c: (cairo_scaled_font_destroy):
-	* src/cairo-ft-font.c: (_cairo_ft_scaled_font_fini):
-	* src/cairo-win32-font.c: (_cairo_win32_scaled_font_fini):
-	Track rename of scaled_font_backend->fini.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Rename scaled_font_backend->create to
-	create_toy. Move declaration of cairo_simple_font_face_t from
-	cairo_font.c to cairoint.h and rename it
-	cairo_toy_font_face_t. Rework create_toy to accept a
-	cairo_toy_font_face_t rather than separate family, slant, and
-	weight.
-	
-	* src/cairo-atsui-font.c: (_cairo_atsui_font_create_toy):
-	* src/cairo-ft-font.c: (_cairo_ft_scaled_font_create_toy):
-	* src/cairo-win32-font.c: (_cairo_win32_scaled_font_create_toy):
-	Track change in create_toy interface.
-
-	* src/cairo-font.c: (_cairo_toy_font_face_create_from_cache_key),
-	(_cairo_simple_font_cache_create_entry),
-	(_cairo_simple_font_face_destroy),
-	(_cairo_simple_font_face_create_font):
-	Partial rename of simple->toy. It's not complete as this is a step
-	in the process of merging in a large patch of mine which actually
-	removes most of the affected code.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore: ignore a8-mask
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* test/a8-mask.c (draw): Patch memory leaks.
-
-2005-08-05  Jeff Muizelaar  <jeff at infidigm.net>
-
-	* test/Makefile.am:
-	* test/a8-mask-ref.png:
-	* test/a8-mask.c: (draw), (main):
-	Add a test case for CAIRO_FORMAT_A8 masks that fails with
-	libpixman.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* autogen.sh (automake_min_vers): Bump automake_min_vers up to 1.7
-	since we clearly don't work with 1.4 anymore.
-
-2005-08-05  Jeff Muizelaar  <jeff at infidigm.net>
-
-	* test/xlib-surface.c: (do_test): use the newly added
-	buffer_diff_noalpha for comparing buffers of
-	CAIRO_FORMAT_RGB24.
-
-2005-08-05  Jeff Muizelaar  <jeff at infidigm.net>
-
-	* test/buffer-diff.c: (buffer_diff_core), (buffer_diff),
-	(buffer_diff_noalpha):
-	* test/buffer-diff.h: rewrite buffer_diff to be endian safe
-	and add a new fuction buffer_diff_noalpha
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* doc/public/cairo-sections.txt: Remove CAIRO_BEGIN_DECLS and
-	CAIRO_END_DECLS which don't belong here.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* test/surface-finish-twice.c (draw): Remove unused variable.
-	
-2005-08-05  Carl Worth  <cworth at cworth.org>
-	
-	* doc/public/Makefile.am: Ignore cairo-clip-private.h.
-	
-	* doc/public/cairo-docs.xml: Drop non-existent cairo-atsui.xml.
-	
-	* src/cairo-font.c: Fix misnamed parameters in comment blocks.
-	
-	* test/cairo-test.c: Include config.h so HAVE_UNISTD_H gets
-	picked up as necessary.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* doc/public/Makefile.am (IGNORE_HFILES): Ignore
-	cairo-clip-private.h.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* doc/public/cairo-sections.txt: Add some missing declarations to
-	the appropriate sections.
-	
-	* doc/public/tmpl/cairo-font.sgml:
-	* doc/public/tmpl/cairo-surface.sgml:
-	* doc/public/tmpl/cairo-xlib.sgml:
-	* doc/public/tmpl/cairo.sgml: churn
-	
-	* src/cairo-path-data-private.h: Rename cairo_path_nil to
-	_cairo_path_nil since it may be exported, and tag it cairo_private
-	to try to avoid exporting it. Qualify it as const well.
-	
-	* src/cairo-path-data.c: (_cairo_path_data_create_real):
-	* src/cairo.c: (cairo_copy_path), (cairo_copy_path_flat):
-	Track new name of _cairo_path_nil and cast away the const as
-	required.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-arc.c:
-	* src/cairo-matrix.c: Remove include of math.h since cairoint.h
-	does it more carefully, (for annoying platforms for which just
-	including math.h without extra defines is not enough).
-
-	* src/cairo.c: Replace Cairo with cairo.
-	
-	* test/buffer-diff.c: Include config.h so HAVE_UNISTD_H gets
-	picked up as necessary.
-	
-	* test/cairo-test.c: Fix non-UTF-8 copyright symbol.
-
-2005-08-05  Carl Worth  <cworth at cworth.org>
-
-	Patch from John Ehresman <jpe at wingide.com> to aid win32
-	compilation:
-
-	* src/cairo-output-stream.c: Define snprintf as _snprintf when
-	under the influence of _MSC_VER.
-	
-	* test/read-png.c: (read_png_argb32):
-	* src/cairo-wideint.h: Define int32_t and friends as __int32 and
-	friends when under the influence of _MSC_VER.
-
-	* test/buffer-diff.c:
-	* test/cairo-test.c: Make include of unistd.h conditional on
-	HAVE_UNISTD_H.
-
-2005-08-05  Kristian Høgsberg  <krh at redhat.com>
-
-	Patch from Adrian Johnson <ajohnson at redneon.com>
-	
-	* src/cairo-font-subset.c (cairo_pdf_ft_font_write_glyf_table)
-	(cairo_pdf_ft_font_remap_composite_glyph): Remap composite glyps
-	to use subset font glyph indices.
-	
-2005-08-05  Kristian Høgsberg  <krh at redhat.com>
-
-	Reviewed by: otaylor
-
-	* src/Makefile.am:
-	* src/cairo-clip-private.h:
-	* src/cairo-clip.c: New files.  Move code for manipulating
-	cairo_clip_t out into cairo_clip_* functions and put them in
-	cairo-clip.c.
-	
-	* src/cairo-gstate-private.h:
-	* src/cairo-gstate.c: Rewrite to use new cairo_clip_t functions
-	for manipulating the clip state, change the
-	clip_and_composite_trapezoids call tree to use cairo_clip_t
-	instead of cairo_gstate_t.
-	
-	* src/cairo-meta-surface.c: Use new cairo_clip_t function to
-	maintain clip state while replaying.
-	
-	* src/cairo-path-fill.c: (_cairo_filler_init),
-	(_cairo_filler_curve_to), (_cairo_path_fixed_fill_to_traps): Pass
-	fill rule and tolerance directly, to break gstate dependency.
-	
-	* src/cairo-surface.c: (_cairo_surface_set_clip): New function.
-	Set the clip for a surface as specified by the cairo_clip_t.
-	
-	* src/cairo-traps.c: (_cairo_traps_translate): Move
-	translate_traps() from cairo-gstate.c to here and rename it.
-
-2005-08-04  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-font.c: (cairo_font_face_reference),
-	(_cairo_unscaled_font_reference), (cairo_scaled_font_reference):
-	* src/cairo-gstate.c: (_cairo_clip_path_reference):
-	* src/cairo-pattern.c: (cairo_pattern_reference):
-	* src/cairo-pdf-surface.c: (_cairo_pdf_document_reference):
-	* src/cairo-surface.c: (cairo_surface_reference):
-	* src/cairo.c: (cairo_reference):
-	* src/cairo.h:
-	* src/cairoint.h:
-	Change *_reference() functions to return the object being
-	referenced.
-
-2005-07-29  T Rowley  <tim.rowley at gmail.com>
-
-	Reviewed by: otaylor
-
-	* src/cairo-xlib-surface.c ( _categorize_composite_operation):
-	Check for render bug involving repeated patterns with a general
-	transform matrix.
-
-2005-08-04  Carl Worth  <cworth at cworth.org>
-
-	Originally 2005-07-13  Carl Worth  <cworth at cworth.org>
-
-	Reviewed by: otaylor
-
-	* src/cairo-ft-private.h: Export opaque cairo_ft_unscaled_font_t
-	and change _cairo_ft_unscaled_font_[un]lock_face to accept
-	cairo_ft_unscaled_font_t rather than cairo_unscaled_font_t.
-	
-	* src/cairo-font-subset.c: (_cairo_font_subset_create),
-	(cairo_pdf_ft_font_generate): Cast explicitly to
-	cairo_ft_unscaled_font_t to track change in prototype of
-	_cairo_ft_unscaled_font_[un]lock_face.
-
-	* src/cairo-ft-font.c: Lots of renaming to use consistent
-	namespacing:
-
-		ft_font_transform_t -> cairo_ft_font_transform_t
-		ft_font_face_t	    -> cairo_ft_font_face_t
-		ft_unscaled_font_t  -> cairo_ft_unscaled_font_t
-
-	Add missing _cairo prefix to many functions.
-	
-	Disambiguate _ft_scaled_font_create and
-	_cairo_ft_scaled_font_create by renaming the former to
-	_cairo_ft_scaled_font_create_for_unscaled.
-
-2005-08-03  Carl Worth  <cworth at cworth.org>
-
-	Fix for bug #3951:
-
-	* configure.in: Add new _CHECK_FUNCS_WITH_FLAGS to abstract out
-	the pain of temporarily setting flags for AC_CHECK_FUNCS. Use this
-	to check for the existence of FcFini.
-	
-	* test/cairo-test.c: (cairo_test_expecting): Make call to FcFini
-	conditional on HAVE_FCFINI.
-	
-	* test/text-cache-crash.c: (main): Remove stale comment about
-	cleaning up memory which is now handled by cairo-test.c.
-
-2005-08-01  Owen Taylor  <otaylor at redhat.com>
-
-	reviewed by: cworth
-
-	* src/cairo-gstate.c src/cairo-gstate-private.h: Store the
-	inverse CTM at the time of cairo_gstate_set_source() to 
-	"lock" the user space matrix.
-
-	* src/cairo-gstate.c: Move the source pattern transformation
-	to the outside of _cairo_gstate_clip_and_composite_trapezoids()
-	instead of doing it at the leaves.
-
-	* test/source-surface-scale-paint.c: Change size of output
-	surface for aesthetics.
-
-	* test/source-surface-scale-paint-ref.png: Updated to correspond
-	to the current definition.
-	
-	* test/Makefile.am (XFAIL_TESTS):
-	Remove source-surface-scale-paint.
-
-2005-08-01  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-debug.h: New public header file.
-
-	* src/cairo-debug.c: (cairo_debug_reset_static_data): New function
-	to reset all static data (eg. caches) to their initial state.
-	
-	* Makefile.am: Fix check-valgrind target to depend on the 'all'
-	target.
-	
-	* configure.in: Add check for a new, proposed, XrmFinalize
-	function.
-	
-	* src/Makefile.am: Add cairo-debug.c.
-	
-	* src/cairo.h:
-	* src/cairo-features.h.in: Move the definition of
-	CAIRO_BEGIN_DECLS to cairo-features.h so that it can be shared
-	between public header files, and so that it doesn't clutter
-	cairo.h
-
-	* src/cairoint.h:
-	* src/cairo-font.c: (_get_global_simple_cache),
-	(_get_outer_font_cache), (_get_inner_font_cache),
-	(_cairo_unlock_global_image_glyph_cache),
-	(_cairo_font_reset_static_data):
-	* src/cairo-ft-font.c: (_cairo_ft_font_reset_static_data):
-	* src/cairo-xlib-screen.c: (_cairo_xlib_close_display),
-	(_cairo_xlib_screen_info_reset),
-	(_cairo_xlib_screen_reset_static_data):
-	* src/cairo-xlib-surface.c: (_unlock_xlib_glyphset_caches),
-	(_destroy_glyphset_cache_recurse),
-	(_cairo_xlib_surface_reset_static_data): Implement
-	reset_static_data in all modules as required.
-
-	* test/xlib-surface.c: (main):
-	* test/cairo-test.h:
-	* test/cairo-test.c: (cairo_test_for_target),
-	(cairo_test_expecting): Call cairo_debug_reset_static_data and
-	FcFini so that we can have all tests be valgrind-clean with
-	respect to memory leaks and still-reachable data.
-
-2005-08-01  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo.h src/cairoint.h src/cairo-surface.c:
-	Add cairo_mark_dirty[_rectangle]() and cairo_flush() for
-
-	* src/cairo-win32-surface.c: Implement a cairo_flush()
-	that restores the original clip. Also restore the original
-	flush when a surface is finished.
-
-	* ROADMAP: Check off the item.
-
-2005-07-31  Billy Biggs  <vektor at dumbterm.net>
-
-	reviewed by: keithp
-
-	* src/cairo-ft-font.c: (_ft_unscaled_font_set_scale): Support
-	versions of freetype without exact FT_Bitmap_Size.x/y_ppem
-	values by using the pixel width and height values instead.
-
-	* configure.in: Add a check for FT_Bitmap_Size.y_ppem.
-
-2005-07-31  Billy Biggs  <vektor at dumbterm.net>
-
-	* src/cairo-quartz-surface.c: (cairo_quartz_surface_create):
-	Cast away the const on the nil surface to avoid a compiler warning.
-
-2005-07-31  Billy Biggs  <vektor at dumbterm.net>
-
-	* src/cairo-atsui-font.c: (_cairo_atsui_font_create): Pass the
-	options down to the scaled font object to keep things compiling.
-
-2005-07-30  Keith Packard  <keithp at keithp.com>
-
-	* src/cairo-wideint.c: (_cairo_int32x32_64_mul),
-	(_cairo_uint64_divrem), (_cairo_uint128_divrem):
-	* src/cairo-wideint.h:
-	
-	Replace wide integer divide algorithms with
-	trivial bit-at-a-time code. Original code was
-	of unclear provenance, this new code is
-	completely different.
-
-2005-07-29  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Remove completed 0.6 tasks. Add cairo_surface_flush to
-	the cairo_surface_mark_dirty task.
-
-2005-07-29  T Rowley  <tim.rowley at gmail.com>
-
-	* src/cairo-atsui-font.c ( _cairo_atsui_font_create):
-        src/cairo-quartz-surface.c (_cairo_quartz_surface_acquire_dest_image):
-	Minor updates to keep quartz backend limping along.
-
-2005-07-29  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-font.c src/cairo-ft-font.c src/cairo-win32-font.c
-	src/cairoint.h: Move the font options into the base 
-	cairo_scaled_font_t object so that we have them available
-	to use when we are removing a scaled font from the cache.
-	(http://bugzilla.gnome.org/show_bug.cgi?id=311299, 
-	Ali Akcaagac, Behdad Esfahbod)
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c: (_cairo_gstate_mask): Run the mask pattern
-	through the CTM in the same way as the source pattern. This fixes
-	the bug demonstrated by the mask-ctm and mask-surface-ctm tests so
-	they should no longer fail.
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/mask-ctm-ref.png:
-	* test/mask-ctm.c: (draw), (main):
-	* test/mask-surface-ctm-ref.png:
-	* test/mask-surface-ctm.c: (draw), (main): Add two new tests:
-		mask-ctm
-		mask-surface-ctm
-	  demonstrating that masks are not currently being modified by the
-	  CTM.
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* RELEASING: CC gnome-announce-list at gnome.org on cairo release
-	announcements.
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Add -head to CAIRO_VERSION after tagging with
-	SNAPSHOT_0_6_0.
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* NEWS: Added notes for snapshot 0.6.0
-	
-	* configure.in: Increment CAIRO_VERSION to 0.6.0
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ft-font.c: (_move_to), (_line_to), (_conic_to),
-	(_cubic_to): Remove const qualifiers that only make things happy
-	with a from-cvs version of freetype. Now we should be back to
-	being happy with a released version.
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-png.c (read_png): Add missing cast.
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am (EXTRA_DIST): Remove
-	text-antialias-subpixel-ref.png from the list since it doesn't
-	exist yet.
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* doc/public/tmpl/cairo.sgml: More doc/public/tmpl churn.
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-	
-	* test/Makefile.am (EXTRA_DIST): Add
-	text-antialias-{gray|none|subpixel}-ref.png so they get
-	distributed.
-
-2005-07-28  Dave Beckett  <Dave.Beckett at bristol.ac.uk>
-
-	* test/cairo-test.c (cairo_test_create_surface_from_png): Use
-	cairo_surface_status(image) instead of testing for NULL from
-	cairo_image_surface_create_from_png to enable testing when srcdir
-	!= builddir again.
-	
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Note that consistent error handling is done now.
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-image-surface.c: (cairo_image_surface_get_width),
-	(cairo_image_surface_get_height): Fix to call _cairo_error and
-	return 0 on surface-type mismatch.
-
-2005-07-28  Owen Taylor  <otaylor at redhat.com>
-
-	* configure.in Makefile.am: Skip tests/ directory if
-	libpng was disabled. (#3423, reported by Steve Chaplin)
-
-2005-07-28  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-png.c: (read_png),
-	(cairo_image_surface_create_from_png): Fix so that one of three
-	different error status values will be returned:
-
-		CAIRO_STATUS_NO_MEMORY
-		CAIRO_STATUS_FILE_NOT_FOUND
-		CAIRO_STATUS_READ_ERROR
-
-	* src/cairo.h:
-	* src/cairo.c: (cairo_status_to_string): Add new
-	CAIRO_STATUS_FILE_NOT_FOUND.
-
-	* src/cairoint.h:
-	* src/cairo-surface.c: Add new _cairo_surface_nil_read_error and
-	_cairo_surface_nil_file_not_found.
-
-	* test/create-from-png.c: (draw): Test the new FILE_NOT_FOUND
-	error.
-
-2005-07-28  Stuart Parmenter  <pavlov at pavlov.net>
-
-	* src/cairo-win32-font.c
-	* src/cairo-win32-surface.c
-	Use surface->base.status instead of just surface on
-	cairo_win32_surface_t *s
-
-2005-07-28  Owen Taylor  <otaylor at redhat.com>
-
-	* configure.in: Disable PS surface build if no freetype.
-
-2005-07-28  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-win32-font.c (_draw_glyphs_on_surface): Pass
-	-1 not 1 to RestoreDC to restore to the last SaveDC.
-	(#3905, Stuart Parmenter)
-
-2005-07-16  Owen Taylor  <otaylor at redhat.com>
-
-        Patch from Martin Kretzschmar <martink at gnome.org>, #3798
- 
- 	* src/cairo-xlib-surface.c (_get_image_surface): prevent
- 	sign-extension of masks.*_mask on 64bit architectures.
- 	
-	* src/cairo-xcb-surface.c (_get_image_surface): ditto.
-	
-2005-07-28  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-image-surface.c (_cairo_image_surface_acquire_source,dest_image) 
-	src/cairo-quartz-surface.c (_cairo_quartz_surface_acquire_dest_image)
-	src/cairo-xcb-surface.c (_cairo_xcb_surface_acquire_source,dest_image): 
-	src/cairo-xlib-surface.c (_cairo_xlib_surface_acquire_source,dest_image): 
-	Set image_extra to NULL to avoid purify warnings. (#3777, Stuart Parmenter)
-
-2005-07-27  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-path-data-private.h:
-	* src/cairo-path-data.c:
-	* src/cairo-pattern.c:
-	* src/cairo-surface.c:
-	Remove all create_in_error functions as they were just muddling up
-	the memory management semantics:
-
-		_cairo_path_data_create_in_error
-		_cairo_pattern_create_in_error
-		_cairo_surface_create_in_error
-
-	* src/cairo-gstate.c: (_cairo_gstate_mask),
-	(_composite_traps_intermediate_surface),
-	(_cairo_gstate_intersect_clip_mask), (_cairo_gstate_show_glyphs):
-
-	Don't bother with extra check of other->status to anticipate and
-	try to prevent cairo_surface_create_similar from returning through
-	cairo_surface_create_in_error.
-
-	* src/cairo-glitz-surface.c: (cairo_glitz_surface_create):
-	* src/cairo-image-surface.c: (cairo_image_surface_create),
-	(cairo_image_surface_create_for_data):
-	* src/cairo-png.c: (cairo_image_surface_create_from_png):
-	* src/cairo-surface.c: (_cairo_surface_create_similar_scratch),
-	(cairo_surface_create_similar),
-	(_cairo_surface_create_similar_solid):
-	* src/cairo-win32-surface.c: (_cairo_win32_surface_create_for_dc):
-	* src/cairo-xlib-surface.c: (cairo_xlib_surface_create):
-	* src/cairo.c: (cairo_get_source), (cairo_get_font_face):
-	(cairo_get_target), (cairo_copy_path), (cairo_copy_path_flat):
-
-	Just return &_cairo_surface|pattern|path_nil rather than
-	_cairo_surface|pattern|path_create_in_error.
-	
-	* src/cairo-ft-font.c:
-	* src/cairo-glitz-surface.c:
-	* src/cairo-gstate.c:
-	* src/cairo-pattern.c:
-	* src/cairo-ps-surface.c:
-	* src/cairo-win32-font.c:
-	* src/cairo-win32-surface.c:
-	* src/cairo-xcb-surface.c:
-	* src/cairo-xlib-surface.c:
-	After checking surface->status from a cairo_<foo>_surface_create
-	function, just return CAIRO_STATUS_NO_MEMORY since that's the only
-	error we'll get from one of these create functions.
-
-	* src/cairo-gstate.c: (_cairo_gstate_get_target):
-	Remove unnecessary check for gstate == NULL;
-
-	* src/cairo-pattern.c:
-	(_cairo_pattern_acquire_surface_for_gradient): Fix old check for
-	image == NULL instead of image->base.status.
-
-	* src/cairo-quartz-surface.c:
-	(_cairo_quartz_surface_acquire_source_image):
-
-	Add missing check of surface->image_base.status after creating
-	surface->image.
-	
-	* src/cairo-xcb-surface.c: (_cairo_xcb_surface_create_similar):
-	* src/cairo-xlib-surface.c: (_cairo_xlib_surface_create_similar):
-	Add missing check of surface->base.status after creating surface.
-
-2005-07-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-font.c src/cairoint.h: Define _cairo_font_face_nil.
-	(cairo_font_face_reference, cairo_font_face_destroy
-	cairo_font_face_set_user_data): Handle a nil font face.
-	(cairo_font_face_status): New function.
-
-	* src/cairo-font.c (_cairo_simple_font_face_create)
-	src/cairo-ft-font.c (cairo_ft_font_face_create_for_pattern): 
-	src/cairo-ft-font.c (cairo_ft_font_face_create_for_ft_face): 
-	src/cairo-win32-font.c (cairo_win32_font_face_create_for_logfontw):
-	Return _cairo_font_face_nil on out-of-memory.
-
-	* src/cairo-gstate.c (_cairo_gstate_select_font_face)
-	* src/cairo-gstate.c (_cairo_gstate_ensure_font_face): Check return 
-	of _cairo_simple_font_face_create().
-
-	* src/cairo-gstate.c (_cairo_gstate_set_font_face): Error out
-	if font_face has a status.
-
-	* src/cairo-surface.c (cairo_surface_set_user_data): Handle a nil
-	surface.
-
-2005-07-27  Owen Taylor  <otaylor at redhat.com>
-
-	* test/Makefile.am (XFAIL_TESTS): Remove
-	text-antialias-none which is now fixed.
-
-	* test/text-antialias-none.c (main): No longer xfail.
-
-2005-07-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-win32-font.c (_win32_scaled_font_create): 
-	* src/cairo-ft-font.c (_ft_scaled_font_create): Go back to 
-	returning NULL.
-	
-	* src/cairoint.h src/cairo-ft-font.c: Stop exporting
-	_cairo_scaled_font_nil, since we dont' need it publically
-	any more.
-
-	* src/cairo-surface.c (_cairo_surface_reset_clip): return
-	surface->status not status. (Fixes warning)
-
-2005-07-26  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Add CAIRO_STATUS_INVALID_CONTENT,
-	CAIRO_STATUS_INVALID_FORMAT, and CAIRO_STATUS_INVALID_VISUAL.
-
-	Change functions to return type of void:
-	
-		cairo_scaled_font_extents
-		cairo_surface_finish
-
-	Add new functions to query object status:
-
-		cairo_scaled_font_status
-		cairo_surface_status
-
-	* doc/public/tmpl/cairo.sgml:
-	* src/cairo-array.c:
-	* src/cairo-atsui-font.c:
-	* src/cairo-font.c:
-	* src/cairo-ft-font.c:
-	* src/cairo-glitz-surface.c:
-	* src/cairo-gstate.c:
-	* src/cairo-image-surface.c:
-	* src/cairo-meta-surface.c:
-	* src/cairo-path-data.c:
-	* src/cairo-pattern.c:
-	* src/cairo-pdf-surface.c:
-	* src/cairo-png.c:
-	* src/cairo-ps-surface.c:
-	* src/cairo-quartz-surface.c:
-	* src/cairo-surface.c:
-	* src/cairo-win32-font.c:
-	* src/cairo-win32-surface.c:
-	* src/cairo-xcb-surface.c:
-	* src/cairo-xlib-surface.c:
-	* src/cairo.c:
-	* src/cairoint.h: Implementation of new error handling scheme for
-	cairo_surface_t and cairo_scaled_font_t.
-
-	* test/surface-finish-twice.c: Track change in return value of
-	cairo_surface_finish.
-
-2005-07-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_get_font_options): 
-	Turn off antialiasing for rendering to alpha surfaces.
-
-2005-07-27  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Note that the XFAIL tests all need to be fixed before
-	1.0.
-	
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/text-antialias-gray-ref.png:
-	* test/text-antialias-gray.c: (draw), (main):
-	* test/text-antialias-none-ref.png:
-	* test/text-antialias-none.c: (draw), (main):
-	* test/text-antialias-subpixel.c: (draw), (main): Add three new
-	tests for testing the various antialiasing options for text
-	rendering.
-
-2005-07-27  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-png.c: (cairo_image_surface_create_from_png_stream):
-	Fix typo that caused cairo_image_surface_create_from_png_stream to
-	segfault. Closes bug #3863 (thanks to Steve Chaplin).
-	
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/create-from-png-stream-ref.png:
-	* test/create-from-png-stream.c:
-	* test/create-from-png.c: Add a test to actually call
-	cairo_image_surface_create_from_png_stream.
-
-2005-07-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_xlib_glyphset_cache_create_entry): Deal
-	with glyphs with entry->im->image NULL. (This can happen if fonts
-	have size-zero bitmaps for some characters, for example)
-	(http://bugzilla.gnome.org/show_bug.cgi?id=311709, Sangu Kim)
-
-2005-07-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c (_get_bitmap_surface): FreeType bitmaps may
-	only be padded out to 8-bit boundaries, not 32-bit boundaries.
-	(_render_glyph_bitmap): Fix sign error in using glyphslot->bitmap_left.
-
-2005-07-27 David Reveman <davidr at novell.com>
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_screen_from_visual): Trivial
-	fix for typo that caused infinite loop when using non-default visuals.
-
-2005-07-25  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-font.c:
-	* src/cairo-ft-font.c:
-	* src/cairo-glitz-surface.c:
-	* src/cairo-pdf-surface.c: Replace all occurences of refcount with
-	ref_count.
-
-	* doc/public/language-bindings.xml: Replace refcounted with
-	reference-counted.
-
-2005-07-25  Owen Taylor  <otaylor at redhat.com>
-
-	reviewed by: cworth
-
-	* src/cairo.[ch] src/cairo-gstate-private.h src/cairo-gstate.c
-	src/cairoint.c: Add cairo_{get,set}_font_options().
-
-	* doc/public/Makefile.am (IGNORE_HFILES): Add cairo-xlib-private.h
-
-	* doc/public/cairo-sections.txt: Update
-
-2005-07-24  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c (_render_glyph_outline): Fix size of allocated buffer
-	for vertical subpixel rendering. (Reported by Fryderyk Dziarmagowski,
-	http://bugzilla.gnome.org/show_bug.cgi?id=310935)
-	(_get_pattern_load_flags): Fix a problem where we were OR'ing multiple
-	FT_LOAD_* flags together.
-
-	* src/cairo-xlib-screen.c (_cairo_xlib_init_screen_font_options): Fix 
-	reversed check for subpixel or not.
-
-2005-07-23  Malcolm Tredinnick  <malcolm at commsecure.com.au>
-
-	* src/cairo-ft-font.c:
-	* src/cairo.h: Add some missing parameters for API docs.
-
-2005-07-23  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-private.h src/cairo-xlib-screen.c: Switch to using
-	Screen * not screen number to match surface code.
-
-	* src/cairo-xlib-screen.c: Get the screen info for the right screen
-	for the surface.
-	
-2005-07-22  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c: Protect against division by zero in various places.
-	(http://bugzilla.gnome.org/show_bug.cgi?id=311299, reported by Ali Akcaagac)
-	
-2005-07-22  Owen Taylor  <otaylor at redhat.com>
-
-	Patch from Tor Lillqvist  <tml at novell.com>
-
-	* src/cairo-win32-font.c: Define TT_PRIM_CSPLINE if it wasn't in
-	the headers.
-	(_get_system_quality): Add missing variable smoothing_type.
-
-2005-07-22  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Get the case right. It's cairo, not Cairo.
-
-2005-07-22  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Note that sub-pixel text rendering is done now.
-
-2005-07-21  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c: The FT_LOAD_TARGET_* flags aren't separate
-	bitfields, but rather an embedded subfield, so test with
-	FT_LOAD_TARGET_MODE (val->key.flags) == FT_RENDER_LCD, and similar.
-
-2005-07-21  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: cworth, otaylor
-
-	* src/cairo-ft-font.c: (_ft_font_cache_create_entry),
-	(_ft_unscaled_font_set_scale), (_native_byte_order_lsb),
-	(_get_bitmap_surface), (_render_glyph_outline),
-	(_render_glyph_bitmap), (_get_pattern_load_flags),
-	(_get_options_load_flags):
-	* src/cairo-xlib-surface.c: (cairo_xlib_surface_set_size),
-	(_native_byte_order_lsb), (_xlib_glyphset_cache_create_entry),
-	(_xlib_glyphset_cache_destroy_entry), (_get_glyphset_cache),
-	(_select_text_mask_format), (_cairo_xlib_surface_show_glyphs32),
-	(_cairo_xlib_surface_show_glyphs16),
-	(_cairo_xlib_surface_show_glyphs8):
-	* src/cairoint.h:
-
-	Add ARGB glyph support.
-	
-	Change Bi-level glyph support to use A1 format.
-	
-	Support bit/byte swapping of glyph image data in
-	the Xlib backend.
-
-2005-07-21  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ft.h:
-	* src/cairo-quartz.h: Whitespace fixes.
-
-2005-07-21  David Reveman  <davidr at novell.com>
-
-	* src/cairo-glitz-surface.c (_cairo_glitz_area_move_out): Check if
-	empty area.
-
-2005-07-21  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: otaylor, cworth
-
-	* ROADMAP:
-	* src/cairo-xlib-surface.c: (cairo_xlib_surface_set_drawable):
-	* src/cairo-xlib.h:
-	Add cairo_xlib_surface_set_drawable which changes the
-	target drawable for an xlib cairo_t to another which
-	shares the same format, screen and display.
-
-2005-07-21  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Note that cairo_font_options_t is done now.
-
-2005-07-13  Owen Taylor  <otaylor at redhat.com>
-
-	reviewed by: cworth
-
-	* src/cairo-font-options.c src/cairo.h src/cairoint.h
-	src/Makefile.am: Add an opaque cairo_font_options_t structure.
-
-	* src/cairo-font.c src/cairo.h src/cairoint.h: Add a 
-	cairo_font_options_t object to cairo_scaled_font_create().
-
-	* src/cairo-surface.c src/cairoint.h: Add virtualized
-	cairo_surface_get_font_options() to get the font options for
-	a surface.
-
-	* src/cairo-gstate.c: Adapt to cairo_scaled_font_create() change.
-
-	* src/cairo-pdf-surface.c: Add an implementation of
-	get_font_options() that turns off metrics hinting.
-	
-	* src/cairo-xlib-screen.c src/cairo-xlib-private.h: Add 
-	a "screen info" structure that holds (for now) information
-	about the default font options for the screen.
-
-	* src/cairo-xlib-surface.c: Implement get_font_options()
-
-	* src/cairo-ft-font.c src/cairo-ft.h: Add functions to apply
-	a cairo_font_options_t to a FcPattern or get the load flags
-	for a cairo_font_options_t.
-
-	* src/cairo-ft-font.c: Adapt to font options additions.
-	Add support for non-antialiased rendering of scalable fonts.
-	Add support for turning off metrics hinting.
-
-	* src/cairo-win32-font.c: Adapt to font options additions.
-
-	* doc/public/Makefile.am doc/public/cairo-sections.txt: Update.
-
-2005-07-21  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-glitz-surface.c:
-	(_cairo_glitz_pattern_release_surface),
-	(_cairo_glitz_pattern_acquire_surfaces),
-	(_cairo_glitz_surface_composite),
-	(_cairo_glitz_surface_composite_trapezoids),
-	(_cairo_glitz_surface_show_glyphs): Finally grepped through and
-	fixed up the last remaining calls to
-	cairo_pattern_release_surface.
-
-2005-07-21  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xcb-surface.c: (_cairo_xcb_surface_composite),
-	(_cairo_xcb_surface_composite_trapezoids): Fix yet another file
-	that I missed when I made the cairo_pattern_release_surface
-	change. You would think that I would have grepped for all uses of
-	this function by now.
-
-2005-07-21  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Mark cairo_xlib_surface_create as complete. Move
-	cairo_xlib_surface_set_drawable from 0.6 to 1.0 since it is an API
-	addition, not a change.
-
-2005-07-20  Carl Worth  <cworth at cworth.org>
-
-	reviewed by: keithp
-
-	* src/cairo.h (CAIRO_CONTENT_VALID): Fix macro to not consider
-	CAIRO_FORMAT_ARGB32 (==0) as a valid cairo_content_t.
-
-2005-07-20  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: otaylor
-
-	* src/cairo-xlib-surface.c: (_cairo_xlib_surface_create_similar),
-	(_cairo_xlib_surface_same_screen),
-	(_cairo_xlib_surface_clone_similar), (_surfaces_compatible),
-	(_categorize_composite_operation),
-	(_cairo_xlib_surface_create_internal),
-	(_cairo_xlib_screen_from_visual), (cairo_xlib_surface_create),
-	(cairo_xlib_surface_create_for_bitmap),
-	(cairo_xlib_surface_create_with_xrender_format):
-	* src/cairo-xlib-xrender.h:
-	* src/cairo-xlib.h:
-	* test/cairo-test.c: (create_xlib_surface):
-
-	Add Screen* arguments to:
-	
-		cairo_xlib_surface_create_with_xrender_format
-		cairo_xlib_surface_create_for_bitmap
-		
-	Required to correctly identify when two Xlib surfaces are
-	compatible with Core and Render rendering requests.
-
-	cairo_xlib_surface_create can determine the screen given
-	the required Visual *
-
-2005-07-20  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Move all API changes from 1.0 to 0.6. Other 1.0 API
-	issues are strictly additions.
-
-2005-07-18  Carl Worth  <cworth at cworth.org>
-
-	* test/.valgrind-suppressions: Add valgrind suppressions for
-	libpng/libz use of uninitialized data. There are clearly bugs here
-	that are not cairo's fault as zeroing the buffer before writing
-	the png image actually causes more errors(!). And, notably,
-	setting all the data to random bytes usually makes the errors go
-	away.
-	
-	* test/Makefile.am: Change the check-valgrind target to include
-	the .valgrind-suppresions file and to tee output into
-	valgrind.log.
-
-2005-07-18  Carl Worth  <cworth at cworth.org>
-
-	* test/.valgrind-suppressions: Add valgrind suppressions for
-	libpng/libz use of uninitialized data. There are clearly bugs here
-	that are not cairo's fault as zeroing the buffer before writing
-	the png image actually causes more errors(!). And, notably,
-	setting all the data to random bytes usually makes the errors go
-	away.
-	
-	* test/Makefile.am: Change the check-valgrind target to include
-	the .valgrind-suppresions file and to tee output into
-	valgrind.log.
-
-2005-07-18  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Add -head to CAIRO_VERSION after tagging with
-	SNAPSHOT_0_5_2.
-
-2005-07-18  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-quartz-surface.c:
-	(_cairo_quartz_surface_acquire_source_image),
-	(_cairo_quartz_surface_set_clip_region): Fix the quartz backend so
-	that it at least compiles again. This change is slipped in before
-	0.5.2 was pushed out and tagged.
-
-2005-07-18  Carl Worth  <cworth at cworth.org>
-
-	* NEWS: Added notes for snapshot 0.5.2
-
-	* configure.in: Increment CAIRO_VERSION to 0.5.2
-
-2005-07-18  Carl Worth  <cworth at cworth.org>
-
-	* test/composite-integer-translate-over-repeat.c (draw): Fix leak
-	of pattern.
-
-2005-07-18  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Note some progress.
-	
-	* test/cairo-test.h:
-	* test/cairo-test.c: (cairo_test_create_surface_from_png),
-	(cairo_test_create_pattern_from_png): New helper function to help
-	create an image surface from a PNG file, while taking the srcdir
-	environment variable into consideration. Rename the pattern
-	creating helper function to match.
-
-	* test/composite-integer-translate-over.c: (draw):
-	* test/composite-integer-translate-source.c: (draw): Use new
-	cairo_test_create_surface_from_png so that non-srcdir builds work.
-	
-	* test/mask.c: (set_image_pattern):
-	* test/trap-clip.c: (set_image_pattern): Track change in
-	cairo_test_create_pattern_from_png.
-
-2005-07-18  Carl Worth  <cworth at cworth.org>
-
-	* BUGS: Add note that Xlib caches need to be cleand up on close
-	of display.
-
-2005-07-15  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-font.c:
-	* src/cairo-surface.c: Remove cairo_private qualifier from .c
-	files, (we only need it in the .h files).
-
-2005-07-15  Vladimir Vukicevic  <vladimir at pobox.com>
-
-	* src/cairo-xlib-surface.c: (_cairo_xlib_surface_composite,
-	_recategorize_composite_repeat): Use XCopyArea when
-	possible, for optimization and bug workaround.
-
-	* test/composite-integer-translate-{source,over,over-repeat}.c:
-	Exercise XCopyArea, XRenderComposite, and XSetTile/XFillRectangle
-	paths for _cairo_xlib_surface_composite
-
-2005-07-15  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am: Add new check-valgrind target for running the
-	test suite under the influence of valgrind.
-	
-	* test/buffer-diff.c: (image_diff): Fix memory leak when reference
-	image is not found.
-
-2005-07-15  Carl Worth  <cworth at cworth.org>
-
-	* test/mask.c: (set_gradient_pattern), (set_image_pattern),
-	(draw): Fix a few memory leaks (missing cairo_pattern_destroy in 3
-	places).
-
-2005-07-15  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c: (_cairo_gstate_mask): Fix memory leak,
-	(missing _cairo_pattern_fini).
-
-2005-07-15  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c (cairo_test_for_target): Remove errant line of
-	code that was inadvertently committed recently.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* test/surface-finish-twice.c: (draw): Fix leak of surface.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-pdf-surface.c: (_cairo_pdf_surface_finish),
-	(_cairo_pdf_document_finish): Call _cairo_array_fini on the
-	several array objects to patch memory leaks.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xlib-surface.c: (_cairo_xlib_surface_composite),
-	(_cairo_xlib_surface_composite_trapezoids),
-	(_cairo_xlib_surface_show_glyphs): Eek. Yet _more_ fixups for
-	_cairo_pattern_release_surface missed earlier.
-
-2005-08-14  Stuart Parmenter  <pavlov at pavlov.net>
-
-	* src/cairo-win32-surface.c: (_cairo_win32_surface_fill_rectangles): 
-	blue and green values were swapped in the DO_SOURCE case.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c: (cairo_test_create_png_pattern): Rewrite to
-	use cairo_image_surface_create_from_png rather than custom
-	read_png_argb32. In addition to being simpler, this eliminates the
-	leak of the image data buffer.
-	
-	* test/trap-clip.c: (set_gradient_pattern), (set_image_pattern):
-	Add calls to cairo_pattern_destroy to close two memory leaks.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-pattern.c: (_cairo_pattern_acquire_surfaces): Fix up
-	one more call to _cairo_pattern_release_surface missed in the
-	previous commit.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-pattern.c: (_cairo_pattern_release_surface): Fix to
-	accept a cairo_pattern_t rather than a cairo_surface_t as the
-	primary argument.
-
-	* src/cairo-image-surface.c: (_cairo_image_surface_composite),
-	(_cairo_image_surface_composite_trapezoids): Track change in
-	_cairo_pattern_release_surface and also pass the appropriate
-	pattern for each acquired surface. The previous backend mismatch
-	was causing memory leaks.
-
-	* src/cairo-xlib-surface.c: (_get_image_surface): Remove stale
-	comment.
-
-	* test/xlib-surface.c: (main): Add missing fclose to keep valgrind
-	happy about memory leaks.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c: (cairo_test_expecting),
-	(cairo_test_expect_failure), (cairo_test): Make the per-backend
-	test results print XFAIL rather than FAIL for expected failures.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c: (cairo_test_real): Fix comment describing
-	test result. It's not enough that all tested backends are
-	successful. We also require that at least one backend is actually
-	tested.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c: (cairo_test_for_target), (cairo_test_real):
-	* test/cairo-test.h: Don't consider a test to fail if it can't
-	create a surface at all (eg. no X server is available). Instead
-	mark this backend as untested and only consider the overall test a
-	success if all tested backend are successful.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ps-surface.c: (pattern_is_translucent): Add missing
-	(putatively unreachable) return value.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-image-surface.c:
-	(_cairo_image_surface_set_clip_region): Remove the copying of the
-	region. This was a workaround for a missing copy bug in libpixman
-	that has since been fixed. So now it was just a memory leak.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-png.c (read_png): Patch memory leak of png_info
-	object.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-	
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/create-for-png-ref.png:
-	* test/create-for-png.c:
-	* test/create-from-png.c: (draw): Rename create-for-png test to
-	create-from-png to match the naming of the
-	cairo_image_surface_create_from_png function.
-
-2005-07-14  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c: (cleanup_xcb), (cleanup_xlib),
-	(cairo_test_for_target), (cairo_test_real): Patch a few memory
-	leaks.
-
-2005-07-13  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-meta-surface.c: (_cairo_meta_surface_replay): Use
-	the _cairo_surface_*() functions when replaying.
-	
-	* src/cairo-ps-surface.c: Fold the "locate fallbacks" pass into
-	the postscript output pass, and add a simple, first implementation
-	of image fallbacks.
-
-2005-07-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-font.c: (_cairo_simple_font_face_create_font): Rename
-	CAIRO_FONT_BACKEND_DEFAULT to the more accurate
-	CAIRO_SCALED_FONT_BACKEND_DEFAULT.
-
-2005-07-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ft-private.h:
-	* src/cairo-ft-font.c: (_cairo_unscaled_font_is_ft),
-	(_cairo_scaled_font_is_ft): New predicates to allow checking for
-	cairo_ft derivates of generic font type.
-
-	* src/cairo-ps-surface.c: (_cairo_ps_surface_get_font),
-	(_cairo_ps_surface_show_glyphs), (_ps_output_show_glyphs):
-	* src/cairo-pdf-surface.c: (_cairo_pdf_document_get_font),
-	(_cairo_pdf_surface_show_glyphs):
-	* src/cairo-font-subset.c: (_cairo_font_subset_create):
-	Add explicit checks for cairo_ft derivatives of generic fonts
-	rather than just blindly assuming that's what we get.
-
-2005-07-12  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-hash-private.h:
-	* src/cairo-hash.c:
-	(_cairo_hash_table_create): Remove destroy notifier. This
-	simplifies the implementation a bit, and no anticipated use of
-	cairo_hash_table_t in cairo needs the destroy notifier. Most uses
-	will be hash-backed object create/destroy functions.
-	
-	(_cairo_hash_table_destroy): Document that it is now a fatal
-	error to call _cairo_hash_table_destroy on a non-empty hash table.
-
-	(_cairo_hash_table_insert): Document that it is now a fatal
-	error to insert an entry with a key that matches an existing
-	entry.
-
-	(_cairo_hash_table_random_entry): Add predicate function so that
-	the user can select a random entry satisying the given predicate.
-
-	(_cairo_hash_table_remove): Change return type to void since
-	failure is really not possible here.
-
-2005-07-11  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Add cache lock deadlock problem to roadmap for 0.5.2.
-	Fix typo (cairo_ft_options_t -> cairo_font_options_t).
-	Add note that glyph measurement performance needs to improve.
-
-	* src/cairoint.h: Disable mutex locks, (making the caches
-	non-thread-safe again, just like they were in the last snapshot
-	and before).
-
-2005-07-11  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Note that the cairo_content_t work is done.
-	Note progress on cairo_meta_surface_t, ARGB text, and group
-	support.
-	Add recent API change proposals (cairo_ft_options_t,
-	cairo_xlib_surface_create needs to be screen aware, and
-	cairo_xlib_surface_set_drawable).
-
-	* src/cairo-arc.c (_arc_segments_needed): Note that this function
-	is computing an incorrect result.
-
-2005-07-08  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Give enum tags an underscore prefix to match the
-	style of the struct tags. Add new cairo_content_t and change
-	cairo_surface_create_similar to accept a cairo_content_t rather
-	than a cairo_format_t.
-
-	* src/cairoint.h:
-	* src/cairo-glitz-surface.c: (_cairo_glitz_surface_create_similar):
-	* src/cairo-image-surface.c: (_cairo_image_surface_create_similar):
-	* src/cairo-meta-surface.c: (_cairo_meta_surface_create_similar):
-	* src/cairo-pdf-surface.c: (_cairo_pdf_surface_create_similar):
-	* src/cairo-ps-surface.c: (_cairo_ps_surface_create_similar):
-	* src/cairo-quartz-surface.c: (_cairo_quartz_surface_create_similar):
-	* src/cairo-surface.c: (_cairo_surface_create_similar_scratch),
-	(cairo_surface_create_similar),
-	(_cairo_surface_create_similar_solid):
-	* src/cairo-win32-surface.c: (_cairo_win32_surface_create_similar),
-	(_cairo_win32_surface_get_subimage):
-	* src/cairo-xcb-surface.c: (_cairo_xcb_surface_create_similar),
-	(_cairo_xcb_surface_clone_similar):
-	* src/cairo-xlib-surface.c: (_cairo_xlib_surface_create_similar),
-	(_cairo_xlib_surface_clone_similar): Change surface backend
-	create_similar call to accept a cairo_content_t rather than a
-	cairo_format_t.
-	
-	* src/cairo-glitz-surface.c: (_glitz_format_from_content),
-	(_cairo_glitz_surface_clone_similar),
-	(_cairo_glitz_pattern_acquire_surface),
-	(_cairo_glitz_surface_fill_rectangles),
-	(_cairo_glitz_surface_composite_trapezoids):
-	* src/cairo-gstate.c: (_cairo_gstate_mask),
-	(_composite_traps_intermediate_surface),
-	(_cairo_gstate_intersect_clip_mask), (_cairo_gstate_show_glyphs):
-	* src/cairo-image-surface.c: (cairo_image_surface_create),
-	(cairo_image_surface_create_for_data),
-	(_cairo_format_from_content), (_cairo_content_from_format):
-	* src/cairo-pattern.c: (_cairo_pattern_acquire_surface_for_solid):
-	* src/cairo-ps-surface.c: (emit_image):
-	* test/mask.c: (mask_polygon), (draw):
-	* test/pixman-rotate.c: (draw):
-	* test/source-clip.c: (draw): Fix all calls into create_similar to
-	pass a cairo_content_t rather than a cairo_format_t.
-
-2005-07-07  Carl Worth  <cworth at cworth.org>
-
-	* CODING_STYLE: Add a missing word.
-	
-	* ROADMAP: Note that the BadMatch bug has been resolved.
-
-2005-07-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h:
-	* src/cairo.c: (cairo_status_to_string): Remove
-	CAIRO_STATUS_NO_TARGET_SURFAC and add CAIRO_STATUS_INVALID_STATUS.
-	
-	* src/cairo-gstate.c:
-	(_cairo_gstate_clip_and_composite_trapezoids),
-	(_cairo_gstate_copy_page), (_cairo_gstate_show_page): Don't check
-	for gstate->target == NULL anymore as the API now guarantees it
-	never occurs.
-	
-	* src/cairo.c: (cairo_append_path): Check that path->status is a
-	valid status value and cause an INVALID_STATUS error otherwise.
-
-	* test/path-data.c: (main): Test the new
-	CAIRO_STATUS_INVALID_STATUS error case in cairo_append_path.
-
-2005-07-06  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Require libpixman >= 0.1.5, (since 0.1.4 crashes
-	on some X servers).
-
-2005-07-05  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ps-surface.c: Disable the compilation of the
-	_ps_locate_fallbacks code which, inaddition to being broken,
-	appears to not currently be used.
-
-2005-07-04  David Reveman  <davidr at novell.com>
-
-	* configure.in: Require glitz >= 0.4.4.
-
-	* src/cairo-glitz-surface.c: Use frame buffer objects instead of
-	pbuffers for accelerated offscreen drawing.
-	(_cairo_glitz_pattern_acquire_surface): Minor improvement to gradient
-	pattern creation.
-
-2005-07-01  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-ps-surface.c: Rewrite postscript backend to generate
-	more interesting output than the current big-image implementation,
-	using meta surfaces for font subsetting and image fallbacks.
-	
-	* src/cairo-meta-surface.c: Remove obsolete comment.
-	
-	* src/cairoint.h:
-	* src/cairo-output-stream.c: Make a couple of stylistic changes
-	and add _cairo_output_stream_write_hex_string.
-	
-	* src/cairo-surface.c: Add _cairo_surface_intersect_clip_path so
-	we can replay path clipping.
-
-2005-07-01  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-meta-surface-private.h: 
-	* src/cairo-meta-surface.c: Add meta surface implementation.
-
-	* src/Makefile.am (libcairo_la_SOURCES): Add cairo-meta-surface.c
-	and cairo-meta-surface-private.h
-	
-2005-06-29  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-hash.c (_cairo_hash_table_resize): Remove debugging
-	printfs.
-
-2005-06-29  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-hash-private.h:
-	* src/cairo-hash.c (_cairo_hash_table_random_entry): Add
-	_cairo_hash_table_random_entry.
-
-	* src/cairo-hash.c: (_destroy_entry): Fix to update live_entries.
-
-	* src/cairo-hash.c: (_cairo_hash_table_lookup_internal): style
-	changes.
-
-	* src/cairo-hash.c (_cairo_hash_table_resize): Add code to shrink
-	table as well as to grow it.
-	
-	* src/cairo-hash.c (_cairo_hash_table_insert),
-	(_cairo_hash_table_remove): Call new version of resize so that
-	table will grow or shrink as needed on insert and remove.
-
-2005-06-29  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-hash-private.h:
-	* src/cairo-hash.c: (_cairo_hash_table_create), (_destroy_entry),
-	(_cairo_hash_table_destroy), (_cairo_hash_table_lookup_internal),
-	(_cairo_hash_table_resize), (_cairo_hash_table_lookup),
-	(_cairo_hash_table_insert), (_cairo_hash_table_remove),
-	(_cairo_hash_table_foreach): Rewrite hash table to use a single
-	cairo_hash_entry_t* rather than void *key and void *value. This is
-	slightly more painful to use, but lends itself to a more
-	memory-efficient implementation. Add documentation.
-
-2005-06-29  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-hash-private.h:
-	* src/cairo-hash.c: (_cairo_hash_table_create),
-	(_cairo_hash_table_destroy_entry), (_cairo_hash_table_destroy),
-	(_cairo_hash_table_lookup_internal), (_cairo_hash_table_resize),
-	(_cairo_hash_table_lookup), (_cairo_hash_table_insert),
-	(_cairo_hash_table_remove), (_cairo_hash_table_foreach): Rework
-	the cache code as a hast table with a much simpler interface, (no
-	object derviation is required to use it).
-	
-	* src/cairoint.h: Remove extraneous prototype for non-existent
-	_cairo_cache_reference.
-
-2005-06-28  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-pattern.c (cairo_pattern_create_rgb)
-	(cairo_pattern_create_rgba): New functions to create a
-	cairo_pattern_t corresponding to a solid color and a translucent
-	color respectively.  Document a few pattern functions.
-
-2005-06-28  T Rowley  <tim.rowley at gmail.com>
-
-	reviewed by: otaylor
-	
-	* src/cairo-win32-font.c (_cairo_win32_scaled_font_glyph_path):
-	Implement.
-
-2005-06-28  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal): Also
-	flag older XFree86 servers as buggy-repeat.
-
-2005-06-28  T Rowley  <tim.rowley at gmail.com>
-
-	* src/cairo-atsui-font.c (_cairo_atsui_font_text_to_glyphs):
-	Prevent crash on empty string.
-
-2005-06-25  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: cworth
-
-	* configure.in:
-	* src/cairo-cache.c: (_cairo_cache_shrink_to),
-	(_cairo_cache_lookup):
-	* src/cairo-font.c: (_lock_global_simple_cache),
-	(_unlock_global_simple_cache), (_lock_global_font_cache),
-	(_unlock_global_font_cache),
-	(_cairo_lock_global_image_glyph_cache),
-	(_cairo_unlock_global_image_glyph_cache),
-	(_cairo_get_global_image_glyph_cache):
-	* src/cairo-ft-font.c: (_lock_global_ft_cache),
-	(_unlock_global_ft_cache):
-	* src/cairo-xlib-surface.c: (_xlib_glyphset_cache_create_entry),
-	(_xlib_glyphset_cache_destroy_entry), (_lock_xlib_glyphset_caches),
-	(_unlock_xlib_glyphset_caches), (_get_glyphset_cache),
-	(_cairo_xlib_surface_show_glyphs):
-	* src/cairoint.h:
-	Provide locking macros, implement with pthreads.
-	
-	Add _cairo_cache_shrink_to which reduces cache memory usage
-	to a specified level.
-
-	Change global glyph and xlib glyphset caches behaviour to only
-	shrink cache on unlock.  This is done by telling the cache code to
-	never shrink (max_memory == 0), and then manually shrinking using
-	_cairo_cache_shrink_to from the unlock function.
-
-	Fix Carl's variable renaming mixing (cache = cache).
-
-2005-06-24  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c (_transform_glyph_bitmap): Add mostly
-	useless (other than perhaps 90-degree rotation) code for
-	transforming bitmap glyphs.
-
-2005-06-25  Carl Worth  <cworth at cworth.org>
-
-	From:		J. Ali Harlow" <ali at avrc.city.ac.uk>
-	Reviewed by:	Vladimir Vukicevic <vladimirv at gmail.com>
-
-	* test/Makefile.am:
-	* src/cairo-win32-surface.c: (_cairo_win32_surface_create_for_dc),
-	(_cairo_win32_surface_create_similar),
-	(_cairo_win32_surface_create_dib),
-	(_cairo_win32_surface_composite), (categorize_solid_dest_operator),
-	(_cairo_win32_surface_set_clip_region): Update win32 backend to
-	match current API, so it actually builds once again.
-
-2005-06-25  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-win32-surface.c: (_cairo_win32_surface_create_for_dc),
-	(_cairo_win32_surface_create_similar),
-	(_cairo_win32_surface_create_dib),
-	(_cairo_win32_surface_composite), (categorize_solid_dest_operator),
-	(_cairo_win32_surface_set_clip_region):
-	* test/Makefile.am:
-
-2005-06-24  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_create_glyph):
-	Remove stray character.
-
-2005-06-24  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xlib-surface.c: (_xlib_glyphset_cache_create_entry),
-	(_glyphset_cache_entry_reference),
-	(_xlib_glyphset_cache_destroy_entry), (_get_glyphset_cache),
-	(_cairo_xlib_surface_show_glyphs32),
-	(_cairo_xlib_surface_show_glyphs16),
-	(_cairo_xlib_surface_show_glyphs8),
-	(_cairo_xlib_surface_show_glyphs): Prefer descriptive variable
-	names over single-character names. Remove unneeded XGlpyhInfo
-	field from glyphset_cache_entry_t.
-
-2005-06-24  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c (_render_glyph_bitmap): Handle rendering
-	bitmap glyphslots as well as outline glyphslots.
-
-	* src/cairo-ft-font.c (_ft_unscaled_font_set_scale): When setting
-	the scale for a non-scalable font, use the nearest available
-	size (FreeType won't set the glyph metrics otherwise.)
-
-2005-06-23  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Add ARGB text to 1.0 roadmap.
-
-2005-05-17  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-png.c (write_png): Only unpremultiply ARGB32 data, 
-	do a simpler conversion for RGB24 data (fixes #2297)
-	Call png_write_info() *before* we set up the write conversion...
-	it doesn't work after.
-
-2005-06-23  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Add workaround for Render's overlapping source/dest bug
-	to the 0.5.2 roadmap.
-
-2005-06-22  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Update ROADMAP with some comments on 0.5.2.
-	Add link to BadMatch bug.
-
-	* src/cairo.c: Add documentation for cairo_set_source_surface and
-	fix some typos in other documentation blocks.
-
-2005-06-22  Øyvind Kolås  <pippin at freedesktop.org>
-
-	* doc/public/language-bindings.xml: spelling and whitespace fix.
-
-2005-06-21  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-pdf-surface.c: Split out font subsetting code from here,
-
-	* src/cairo-font-subset-private.h: 
-	* src/cairo-font-subset.c: and put it here.
-	
-2005-06-21  T Rowley  <tim.rowley at gmail.com>
-
-	* src/cairo-atsui-font.c: allow building against < 10.3 SDK.
-
-2005-06-20  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Add -head to CAIRO_VERSION after tagging with
-	SNAPSHOT_0_5_1.
-
-2005-06-20  Carl Worth  <cworth at cworth.org>
-
-	* Makefile.am: Force distcheck to enable gtk-doc.
-
-2005-06-20  Carl Worth  <cworth at cworth.org>
-
-	* NEWS: Added notes for snapshot 0.5.1
-
-	* configure.in: Increment CAIRO_VERSION to 0.5.1
-
-2005-06-20  Owen Taylor  <otaylor at redhat.com>
-
-	Workaround for https://bugs.freedesktop.org/show_bug.cgi?id=3566
-
-	* src/cairo-xlib-surface.c: Detect servers with a bug in 
-	repeating surfaces by checking vendor string and version.
-
-	* src/cairo-xlib-surface.c: For such surfaces either fall back to
-	an implementation with the core protocol or fall back to the image
-	backend.
-
-	* src/cairo-xlib-surface.c: Save clip rects when setting a
-	clip region on a surface so that we set the right clip for the
-	surface's GC if we create it later.
-
-2005-06-20  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-matrix.c: (_cairo_matrix_is_integer_translation):
-	Make out parameters optional. Style cleanup.
-
-2005-06-20  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-pattern.c: (_cairo_pattern_is_opaque_solid): Abstract
-	CAIRO_ALPHA_IS_OPAQUE out for general internal use.
-
-	* src/cairo.c: (cairo_paint_with_alpha): Optimize to defer to
-	cairo_paint if the alpha value is actually opaque.
-
-2005-06-20  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h:
-	* src/cairo-private.h:
-	* src/cairo.c: (_cairo_error), (cairo_create): Rip out
-	cairo_set_error_notfiy function as it is clear that it is not the
-	right approach.
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/error-notify.c: Remove error-notify test.
-
-2005-06-17  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xcb-surface.c (_get_image_surface): Remove references
-	to repeat and matrix fields that no longer exist.
-
-2005-06-17  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xcb-surface.c (_get_image_surface)
-	* src/cairo-xlib-surface.c (_get_image_surface): Fix 
-	width/height typo.
-
-2005-06-17  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-glitz-surface.c: (_cairo_glitz_surface_get_image):
-	* src/cairo-pattern.c: (cairo_pattern_create_for_surface):
-	* src/cairo-pdf-surface.c: (_cairo_pdf_surface_composite_pdf):
-	* src/cairo-surface.c: (_cairo_surface_init):
-	* src/cairo-xlib-surface.c: (_get_image_surface):
-	* src/cairoint.h: Remove matrix, filter and repeat from the
-	cairo_surface_t struct.
-
-2005-06-17  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c: (cairo_reference), (cairo_destroy): cairo_reference
-	and cairo_destroy shouldn't behave differently when cr->status
-	indicates an error. Fix this bug that just slipped back in.
-
-	* src/cairo.c: (cairo_restore): Remove useless conditional return
-	at the end of a void function.
-
-	* src/cairo.c: (cairo_get_source), (cairo_get_font_face),
-	(cairo_text_extents), (cairo_show_text), (cairo_text_path):
-	Fix so that after calling _cairo_error the most that any cairo
-	entry function ever does is return a previously computed value.
-
-2005-06-17  Kristian Høgsberg  <krh at redhat.com>
-
-	* TODO: Remove the path clipping entry from the list.
-
-2005-06-16  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-private.h: Reorder fields of cairo_private_t to match
-	initialization order.
-
-	* src/cairo.c: (_cairo_error): Call error_notify callback if set.
-	(cairo_create): Initialize error_notify callback to NULL.
-	(cairo_set_error_notify): New function to allow the user to set
-	an error notify callback.
-	
-	* src/cairo.h: New cairo_set_error_notify prototye.
-	
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/error-notify.c: (toggle_status), (do_test), (main): New
-	test for cairo_set_error_notify.
-
-2005-06-15  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Add CAIRO_STATUS_DESTROYED to TODO list.
-	
-	* ROADMAP: Note progress on consistent error handling.
-	
-	* src/cairo-surface.c: Fix typo in documentation comment for
-	_cairo_surface_get_current_clip_serial.
-
-2005-06-15  Owen Taylor  <otaylor at redhat.com>
-
-	* doc/public/Makefile.am (MKTMPL_OPTIONS): Remove --only-section-tmpl;
-	it doesn't really work currently :-(.
-
-2005-06-15  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-gstate.c (_cairo_gstate_clip_and_composite_trapezoids):
-	Use a clip region when rendering a non-solid pattern through
-	a rectangular path ... trapezoid rasterization is just too slow
-	to use that path when we aren't forced to do so.
-
-2005-06-15  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c: Track removal of cairo_status_string.
-	(cairo_test_for_target): And add missing parenthesis.
-
-2005-06-15  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Add cairo_finish to TODO list. Note that
-	cairo_satus_string has now been removed.
-
-2005-06-15  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h:
-	* src/cairo.c: Remove cairo_status_string function which can now
-	be replaced by:
-
-		cairo_status_to_string (cairo_status (cr));
-
-	This allows consistent handling of status values for things like
-	cairo_pattern_status where there is now
-	cairo_pattern_status_string function.
-
-2005-06-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c: (_cairo_error): Add _cairo_error so we have a
-	single function which all errors can pass through. This allows the
-	user to set a breakpoint on error and will allow us to augment
-	error handling later as necessary.
-
-	* src/cairo.c: (cairo_create), (cairo_reference),
-	(cairo_destroy), (cairo_save), (cairo_restore),
-	(cairo_set_operator), (cairo_set_source_rgb),
-	(cairo_set_source_rgba), (cairo_set_source_surface),
-	(cairo_set_source), (cairo_get_source), (cairo_set_tolerance),
-	(cairo_set_fill_rule), (cairo_set_line_width),
-	(cairo_set_line_cap), (cairo_set_line_join), (cairo_set_dash),
-	(cairo_set_miter_limit), (cairo_translate), (cairo_scale),
-	(cairo_rotate), (cairo_transform), (cairo_set_matrix),
-	(cairo_identity_matrix), (cairo_user_to_device),
-	(cairo_user_to_device_distance), (cairo_device_to_user),
-	(cairo_device_to_user_distance), (cairo_new_path), (cairo_move_to),
-	(cairo_line_to), (cairo_curve_to), (cairo_arc),
-	(cairo_arc_negative), (cairo_rel_move_to), (cairo_rel_line_to),
-	(cairo_rel_curve_to), (cairo_rectangle), (cairo_close_path),
-	(cairo_paint), (cairo_paint_with_alpha), (cairo_mask),
-	(cairo_mask_surface), (cairo_stroke_preserve),
-	(cairo_fill_preserve), (cairo_copy_page), (cairo_show_page),
-	(cairo_in_stroke), (cairo_in_fill), (cairo_stroke_extents),
-	(cairo_fill_extents), (cairo_clip_preserve), (cairo_reset_clip),
-	(cairo_select_font_face), (cairo_get_font_face),
-	(cairo_font_extents), (cairo_set_font_face), (cairo_set_font_size),
-	(cairo_set_font_matrix), (cairo_get_font_matrix),
-	(cairo_text_extents), (cairo_glyph_extents), (cairo_show_text),
-	(cairo_show_glyphs), (cairo_text_path), (cairo_glyph_path),
-	(cairo_get_operator), (cairo_get_tolerance),
-	(cairo_get_current_point), (cairo_get_fill_rule),
-	(cairo_get_line_width), (cairo_get_line_cap),
-	(cairo_get_line_join), (cairo_get_miter_limit), (cairo_get_matrix),
-	(cairo_get_target), (cairo_copy_path), (cairo_copy_path_flat),
-	(cairo_append_path), (cairo_status): Make all assignements to
-	cr->status go through the new _cairo_error function. Remove
-	CAIRO_CHECK_SANITY macro.
-
-2005-06-15  Carl Worth  <cworth at cworth.org>
-
-	* doc/public/cairo-sections.txt: Remove cairo-atsui section since
-	cairo-atsui.h is currently empty.
-	Add cairo_path_data_type_t and cairo_path_data_t.
-
-	* test/.cvsignore: Add pdf-clip and pdf-clip.pdf.
-
-2005-06-14  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-gstate-private.h:
-	* src/cairo-gstate.c: (_cairo_gstate_init),
-	(_cairo_gstate_init_copy), (_cairo_gstate_fini),
-	(_cairo_gstate_set_clip), (_composite_trap_region),
-	(_cairo_gstate_fill), (_cairo_gstate_reset_clip),
-	(_cairo_gstate_intersect_clip_path), (_cairo_clip_path_reference),
-	(_cairo_clip_path_destroy), (_cairo_gstate_intersect_clip_region),
-	(_cairo_gstate_intersect_clip_mask), (_cairo_gstate_clip):
-	* src/cairo-pdf-surface.c:
-	(_cairo_pdf_surface_create_for_document),
-	(_cairo_pdf_path_move_to), (_cairo_pdf_path_line_to),
-	(_cairo_pdf_path_close_path), (_cairo_pdf_surface_fill_path),
-	(_cairo_pdf_surface_intersect_clip_path),
-	(_cairo_pdf_document_add_page):
-	* src/cairo-surface.c: (_cairo_surface_get_clip_mode),
-	(_cairo_surface_fill_path), (_cairo_surface_reset_clip),
-	(_cairo_surface_set_clip_path_recursive),
-	(_cairo_surface_set_clip_path):
-	* src/cairoint.h: Implement path clipping and refactor
-	_cairo_gstate_clip() out in three different functions
-	corresponding to the three different clipping modes.
-	
-	* src/cairo-glitz-surface.c:
-	* src/cairo-ps-surface.c:
-	* src/cairo-win32-surface.c:
-	* src/cairo-xcb-surface.c:
-	* src/cairo-xlib-surface.c:
-	* src/cairo-image-surface.c:
-	* src/cairo-quartz-surface.c: Add NULL pointers for
-	intersect_clip_path.
-	
-	* test/Makefile.am:
-	* test/pdf-clip.c: New test case to exercise PDF clipping code.
-
-2005-06-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-glitz-surface.c: (_cairo_glitz_surface_create_similar),
-	(_cairo_glitz_surface_clone_similar),
-	(_cairo_glitz_pattern_acquire_surface),
-	(_cairo_glitz_surface_composite_trapezoids):
-	* src/cairo-image-surface.c: (_cairo_image_surface_create_similar):
-	* src/cairo-pdf-surface.c: (_cairo_pdf_surface_create_similar):
-	* src/cairo-ps-surface.c: (_cairo_ps_surface_create_similar):
-	* src/cairo-quartz-surface.c:
-	(_cairo_quartz_surface_create_similar):
-	* src/cairo-surface.c: (_cairo_surface_create_similar_scratch),
-	(_cairo_surface_create_similar_solid):
-	* src/cairo-win32-surface.c: (_cairo_win32_surface_create_similar),
-	(_cairo_win32_surface_get_subimage):
-	* src/cairo-xcb-surface.c: (_cairo_xcb_surface_create_similar),
-	(_cairo_xcb_surface_clone_similar):
-	* src/cairo-xlib-surface.c: (_cairo_xlib_surface_create_similar),
-	(_cairo_xlib_surface_clone_similar):
-	* src/cairoint.h: Remove Boolean 'drawable' parameter from the
-	create_similar surface backend function since nothing anywhere is
-	actually using this parameter.
-
-2005-06-14  T Rowley  <tim.rowley at gmail.com>
-
-	* src/cairo-win32-font.c: Correct extents for text with a general
-	tranform.
-
-2005-06-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Remove comment suggesting ambiguity of whether
-	cairo_get_target references the surface, (we decided as part of
-	the API shakeup that cairo functions returning pointers to
-	internal objects do not automatically take a reference).
-
-2005-06-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-pattern.c: (_cairo_pattern_create_in_error): Add new
-	_cairo_pattern_create_in_error.
-
-	* src/cairo.c: (cairo_get_source): Propagate error values from
-	cr->status to pattern->status.
-
-2005-06-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c (_cairo_set_source_solid),
-	(cairo_set_source_surface), (cairo_mask_surface): No longer need
-	to check for NULL after creating a pattern.
-
-	* src/cairo.c (cairo_set_source), (cairo_mask): Propagate status
-	errors from pattern->status to cr->status.
-	
-	Originally 2005-05-08  Owen Taylor  <otaylor at redhat.com>:
-	
-	* src/cairo-pattern.c src/cairoint.h: If allocation of pattern
-	objects fails, return special static nil pattern objects.
-	
-	* src/cairo-pattern.c: If adding a color stop fails to allocate
-	memory, set pattern->status. (And fix a memory leak.) Make public
-	functions return when pattern->status is set, (and no longer
-	return a cairo_status_t).
-
-	* src/cairo-pattern.c src/cairo.h doc/public/cairo-sections.txt:
-	Add cairo_pattern_status()
-
-	* src/cairo-gstate.c: Check the status of gstate->source and
-	of mask patterns passed in.
-
-2005-06-13  Carl Worth  <cworth at cworth.org>
-
-	Originally 2005-05-08  Owen Taylor  <otaylor at redhat.com>:
-
-	* src/cairo.c (cairo_create): If cairo_create() fails, return
-	a special static object, cairo_nil.
-
-	* src/cairo.c (cairo_reference): Don't return early if 
-	cr->status is set. cr->status should not affect reference
-	counting.
-
-	* src/cairo.c: (cairo_reference), (cairo_destroy): Ignore any
-	magic object with a reference count of -1.
-
-2005-06-13  Carl Worth  <cworth at cworth.org>
-
-	Originally 2005-06-02  Carl Worth  <cworth at cworth.org>:
-
-	* src/cairo.h: Add a status field to cairo_path_t.
-
-	* src/cairo.c:
-	(cairo_copy_path), (cairo_copy_path_flat): Add documentation for
-	the new approach for handling errors in these functions---always
-	returning a valid pointer with at least a status.
-	(cairo_append_path): Propagate path status errors to the
-	context. Add note to documentation on initializing path->status.
-
-	* src/cairo-path-data-private.h: Add missing cairo_private
-	qualifier to a couple functions.
-	
-	* src/cairo-path-data.c: (_cairo_path_data_create_real): Track new
-	status field in cairo_path_t.
-	(cairo_path_destroy): Don't destroy cairo_path_nil. Add
-	documentation.
-	(_cairo_path_data_create):
-	(_cairo_path_data_create_flat):
-	(_cairo_path_data_append_to_context): Add documentation.
-	(_cairo_path_data_create_in_error): New function to create a
-	placeholder cairo_path_t just to propagate a cairo_status_t error.
-
-2005-06-11  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-gstate.c: (_cairo_gstate_init,
-	_cairo_gstate_init_copy, _cairo_gstate_fini): Make these functions
-	static, which allows slightly less awkward error handling within
-	them.
-
-2005-06-10  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Provide font-backend-specific macros for
-	FONT_FAMILY_DEFAULT. Change CAIRO_FT_FONT_FAMILY_DEFAULT from
-	"serif" to "" to allow the actual default to come from the
-	system/user configuration.
-
-2005-06-10  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Pull the enum out from inside cairo_path_data_t and
-	give it a name of cairo_path_data_type_t. This allows C++ programs
-	to see the enum values. It also allows variables to be declared of
-	this type for manually constructing a cairo_path_t.
-
-2005-06-10  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Add 'consistent error handling' to 1.0 roadmap. (This
-	isn't new, we just forgot to list it here before).
-
-	* TODO: Big cleanup to remove finished items. Also, split the file
-	up to separate TODO items that affect the API from items that do
-	not.
-
-2005-06-10  Carl Worth  <cworth at cworth.org>
-
-	Originally: 2005-06-09  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-pdf-surface.c: (_cairo_pdf_surface_show_page):
-	* src/cairo-xcb-surface.c:
-	(_cairo_xcb_surface_acquire_source_image),
-	(_cairo_xcb_surface_acquire_dest_image):
-	* src/cairo-xlib-surface.c:
-	(_cairo_xlib_surface_acquire_source_image),
-	(_cairo_xlib_surface_acquire_dest_image): Rework occurrences
-	of 'if (status == CAIRO_STATUS_SUCCESS)' to use 'if (status)'
-	instead where trivial.
-
-2005-06-10  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-font.c:
-	* src/cairo-ft-font.c:
-	* src/cairo-glitz-surface.c:
-	* src/cairo-gstate.c:
-	* src/cairo-image-surface.c:
-	* src/cairo-pattern.c:
-	* src/cairo-pdf-surface.c:
-	* src/cairo-png.c:
-	* src/cairo-surface.c:
-	* src/cairo-win32-font.c:
-	* src/cairo-win32-surface.c:
-	* src/cairo-xcb-surface.c:
-	* src/cairo-xlib-surface.c: Remove STATUS_OK macro which was not
-	being used universally.
-
-2005-06-09  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Remove trailing comma from enum values which gcc
-	4.0 does not want to see (Luis Villa). Closes bug #3502.
-
-2005-06-09  Owen Taylor  <otaylor at redhat.com>
-
-	* test/Makefile.am (INCLUDES): Add 
-	-I$(top_builddir)/src for cairo-features.h (Tomasz Cholewo)
-	
-2005-06-07  Keith Packard  <keithp at keithp.com>
-
-	* src/cairo-pdf-surface.c: (_cairo_pdf_surface_show_glyphs):
-	Font matrix was output incorrectly; the implicit mirror-in-y
-	transformation was not computed correctly, missing a negation
-	of the 'xy' component.
-
-2005-06-02  Kristian Høgsberg  <krh at redhat.com>
- 
-	* src/cairo-gstate.c (_cairo_gstate_clip): When clipping, update
-	the clip surface to a new surface the size of the intersection of
-	the old clip surface and the extents of the new clip path.
-
-2005-06-03  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-font.c: (cairo_font_face_reference),
-	(cairo_font_face_destroy), (_cairo_simple_font_face_destroy),
-	(_cairo_unscaled_font_reference), (_cairo_unscaled_font_destroy),
-	(cairo_scaled_font_reference), (cairo_scaled_font_destroy):
-	* src/cairo-ft-font.c: (_ft_font_cache_destroy_cache),
-	(_cairo_ft_unscaled_font_destroy), (_ft_font_face_destroy):
-	* src/cairo-glitz-surface.c: (_cairo_glitz_area_destroy):
-	* src/cairo-path-data.c: (cairo_path_destroy):
-	* src/cairo-pdf-surface.c: (cairo_pdf_font_destroy),
-	(cairo_pdf_ft_font_destroy):
-	* src/cairo-win32-font.c: (_cairo_win32_scaled_font_destroy):
-	Allow NULL as a valid value for several objects. That is, calling
-	reference or destroy on these objects will simply do nothing,
-	successfully.
-
-	* src/cairo-atsui-font.c: (_cairo_atsui_font_destroy_font): Remove
-	extra whitespace.
-
-2005-06-03  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-cache.c: (_cairo_cache_init), (_cairo_cache_destroy):
-	Remove unused cache->refcount and _cairo_cache_reference().
-
-	* src/cairo-cache.c: (_cairo_cache_destroy): Remove gratuitous
-	nesting as recommended in CODING_STYLE.
-
-2005-06-03  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:	
-	* src/cairo-array.c: (_cairo_user_data_array_fini):
-	* src/cairo-font.c: (cairo_font_face_destroy):
-	* src/cairo-surface.c: (cairo_surface_destroy): Fix name of
-	_cairo_user_data_array_destroy to be _cairo_user_data_array_fini.
-
-2005-06-03  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-glitz-surface.c:
-	(_cairo_glitz_glyph_cache_create_entry),
-	(_cairo_glitz_glyph_cache_destroy_entry),
-	(_cairo_glitz_glyph_cache_destroy_cache),
-	(_cairo_glitz_surface_show_glyphs): Rename functions to match the
-	naming scheme used by cairo-cache.c and all other users of
-	it. Though it's quite likely that glitz had this right and now
-	everything could be changed to match it instead. I'll save that
-	for some day when we're cleaning up the cache code.
-
-2005-06-03  Carl Worth  <cworth at cworth.org>
-
-	* CODING_STYLE: Fix spelling errors.
-
-2005-06-03  Carl Worth  <cworth at cworth.org>
-
-	* CODING_STYLE: Fix Freudian unwrapped line in paragraph
-	describing why long lines should be wrapped.
-
-2005-06-03  Carl Worth  <cworth at cworth.org>
-
-	* CODING_STYLE: Add CODING_STYLE document to standardize on some
-	style issues.
-
-	* src/cairo-atsui-font.c:
-	* src/cairo-cache.c:
-	* src/cairo-ft-font.c:
-	* src/cairo-glitz-surface.c:
-	* src/cairo-gstate.c:
-	* src/cairo-matrix.c:
-	* src/cairo-pattern.c:
-	* src/cairo-pdf-surface.c:
-	* src/cairo-spline.c:
-	* src/cairo-wideint.c:
-	* src/cairo-win32-font.c:
-	* src/cairo-xlib-surface.c: Standardize brace handling around all
-	else clauses according to new CODING_STYLE guidelines.
-
-2005-06-03  Kristian Høgsberg  <krh at redhat.com>
-
-	Patch from Tomasz Cholewo <cholewo at ieee-cis.org>:
-
-	* src/cairo-pdf-surface.c: (cairo_pdf_ft_font_write_head_table),
-	(cairo_pdf_ft_font_generate): Store the index of the checksum
-	instead of a pointer to the location.
-
-2005-06-03  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-gstate.c:
-	* src/cairo.c: (_cairo_set_source_solid), (cairo_set_source_rgb),
-	(cairo_set_source_rgba): Move internal convenience up from
-	_cairo_gstate_set_source_solid to _cairo_set_source_solid so that
-	all set_source functions flow through cairo_set_source.
-
-2005-06-01  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c: (_cairo_gstate_init): Remove obsolete
-	_cairo_gstate_set_target_surface, folding its contents into
-	_cairo_gstate_init, most of which disappears due to constant
-	folding. Ensure that gstate->next is initialized even if
-	_cairo_pattern_create_solid fails.
-	
-	* src/cairo-xcb-surface.c: Remove unused
-	_cairo_xcb_surface_set_clip_region.
-
-2005-06-01  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-font.c:
-	* src/cairo-ft-font.c:
-	* src/cairo-glitz-surface.c:
-	* src/cairo-gstate.c:
-	* src/cairo-image-surface.c:
-	* src/cairo-pattern.c:
-	* src/cairo-pdf-surface.c:
-	* src/cairo-png.c:
-	* src/cairo-surface.c:
-	* src/cairo-win32-font.c:
-	* src/cairo-win32-surface.c:
-	* src/cairo-xcb-surface.c:
-	* src/cairo-xlib-surface.c: Rename CAIRO_OK to STATUS_OK. No
-	intended changes in functionality.
-
-2005-06-01  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate-private.h:
-	* src/cairo-gstate.c: Rename gstate->surface to gstate->target. No
-	intended changes in functionality.
-
-2005-06-01  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate-private.h:
-	* src/cairo-gstate.c: (_cairo_gstate_init): Remove unused fields
-	from cairo_gstate_t, (font_family, font_slant,
-	font_weight). Reorder fields to match between declaration and
-	initialization and to put the most problematic fields (surface and
-	source) at the end. No intended changes in functionality.
-
-2005-06-01  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am (XFAIL_TESTS): Add self-intersecting to the
-	list of expected failures.
-
-2005-06-01  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/self-intersecting-ref.png:
-	* test/self-intersecting.c: (draw), (main): Add self-intersecting
-	test which demonstrates the long-standing bug with stroking
-	self-intersecting paths.
-
-2005-06-01  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c (_cairo_gstate_get_clip_extents): Fix bug in
-	converting box to rectangle that left clip_rect.height
-	uninitialized, (leading to unpredictable, intermittent test
-	failures).
-
-2005-05-31  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h:
-	* src/cairo.c: (cairo_status_to_string), (cairo_status_string):
-	Add new function cairo_status_to_string an reimplement
-	cairo_status_string in terms of the new function.
-
-2005-05-27  Olivier Andrieu  <oliv__a at users.sourceforge.net>
-
-	* src/cairo-path-data.c (_cpdc_curve_to_flatten),
-	(_cpdp_curve_to_flatten) : Fix memory leak
-
-2005-05-26  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: krh, otaylor, cworth
-
-	Replace nesting-only surface clipping with gstate contained
-	serial-number tracked clipping sets that are loaded into the surface
-	on demand just before each rendering operation.  This permits
-	multiple cairo_t contexts to reference a surface without
-	regard to ordering of operations among the contexts.
-
-	Also in this patch is a change to the xlib surface that
-	creates two separate Pictures, one for source and one for
-	destination operands which separates the source clipping
-	from destination clipping.  Cairo now specifies that sources
-	are never clipped by any clipping applied to them as destinations.
-
-	* src/cairoint.h:
-	* src/cairo-gstate-private.h:
-	Move cairo_clip_t (renamed from cairo_clip_rec_t) from cairoint.h
-	to cairo-gstate-private.h.  Eliminate stack of clip state
-	from surfaces.  Add new surface clipping API.
-	
-	* src/cairo-gstate.c: (_cairo_gstate_init),
-	(_cairo_gstate_init_copy), (_cairo_gstate_fini),
-	(_cairo_gstate_has_surface_clip), (_cairo_gstate_set_clip),
-	(_cairo_gstate_get_clip_extents),
-	(_cairo_gstate_set_target_surface), (_cairo_gstate_paint),
-	(_cairo_gstate_combine_clip_surface),
-	(_cairo_gstate_intersect_clip), (_get_mask_extents),
-	(_cairo_gstate_mask), (_cairo_gstate_stroke),
-	(_clip_and_compute_extents_arbitrary), (_composite_trap_region),
-	(_cairo_gstate_fill), (_cairo_gstate_reset_clip),
-	(_cairo_gstate_clip), (_cairo_gstate_show_glyphs):
-	Manage clip objects entirely within the gstate, loading
-	the whole thing into the surface just before drawing.
-	
-	* src/cairo-pattern.c:
-	(_cairo_pattern_acquire_surface_for_gradient),
-	(_cairo_pattern_acquire_surface_for_solid),
-	(_cairo_pattern_acquire_surface_for_surface),
-	(_cairo_pattern_acquire_surface), (_cairo_pattern_release_surface):
-	Source surfaces need not have clipping modified as the
-	surface interface now specifies that source surfaces are always
-	unclipped.
-	
-	* src/cairo-surface.c: (_cairo_surface_init),
-	(cairo_surface_finish), (_cairo_surface_clone_similar),
-	(_cairo_surface_get_current_clip_serial),
-	(_cairo_surface_allocate_clip_serial), (_cairo_surface_reset_clip),
-	(_cairo_surface_can_clip_region), (_cairo_surface_set_clip_region),
-	(_cairo_surface_can_clip_path), (_cairo_surface_clip_path),
-	(_cairo_surface_get_extents):
-	Eliminate nested clipping contexts, leaving clip management
-	entirely to the gstate.  Create new clip API for the gstate
-	which uses per-surface serial numbers to match gstate clipping
-	against current surface clipping values.
-	
-	Surfaces no longer track clipping regions at all, so the
-	old _cairo_surface_get_clip_extents has been replaced with
-	_cairo_surface_get_extents.  For PDF/PS surfaces, this
-	function is expected to return a rectangle covering the
-	entire fixed point coordinate space to leave rendering
-	unclipped by the surface.
-	
-	* src/cairo-xcb-surface.c:
-	Region clipping capability is now signalled by a non-NULL
-	function pointer in set_clip_region.
-	
-	* src/cairo-xlib-surface.c: (_cairo_xlib_surface_finish),
-	(_cairo_xlib_surface_ensure_src_picture),
-	(_cairo_xlib_surface_ensure_dst_picture),
-	(_cairo_xlib_surface_set_matrix), (_cairo_xlib_surface_set_filter),
-	(_cairo_xlib_surface_set_repeat),
-	(_cairo_xlib_surface_set_attributes),
-	(_cairo_xlib_surface_composite),
-	(_cairo_xlib_surface_fill_rectangles),
-	(_cairo_xlib_surface_composite_trapezoids),
-	(_cairo_xlib_surface_set_clip_region),
-	(_cairo_xlib_surface_create_internal),
-	(_cairo_xlib_surface_show_glyphs32),
-	(_cairo_xlib_surface_show_glyphs16),
-	(_cairo_xlib_surface_show_glyphs8),
-	(_cairo_xlib_surface_show_glyphs):
-	Each surface now contains two Pictures, one for source
-	and one for destination operands so that source operands
-	are never clipped by destination clipping.
-
-	* src/cairo.h:
-	* src/cairo.c: (cairo_status_string):
-	CAIRO_STATUS_BAD_NESTING removed
-	
-	* test/Makefile.am:
-	* test/self-copy.c: (main):
-	self-copy now passes (Xlib only, until libpixman changes land)
-
-2005-05-26  Olivier Andrieu  <oliv__a at users.sourceforge.net>
-
-	* src/cairo.c: trivial doc fixes.
-
-2005-05-24  Carl Worth  <cworth at cworth.org>
-
-	* gtk-doc.make: Re-synch with latest from gtk-doc CVS tree.
-
-	* doc/public/Makefile.am (MKTMPL_OPTIONS): Add --only-section-tmpl
-	option so that changes to inline documentation does not lead to
-	churn in the .sgml template files.
-
-	* doc/public/tmpl/cairo-font.sgml:
-	* doc/public/tmpl/cairo-ft.sgml:
-	* doc/public/tmpl/cairo-glitz.sgml:
-	* doc/public/tmpl/cairo-matrix.sgml:
-	* doc/public/tmpl/cairo-pattern.sgml:
-	* doc/public/tmpl/cairo-pdf.sgml:
-	* doc/public/tmpl/cairo-png.sgml:
-	* doc/public/tmpl/cairo-ps.sgml:
-	* doc/public/tmpl/cairo-quartz.sgml:
-	* doc/public/tmpl/cairo-surface.sgml:
-	* doc/public/tmpl/cairo-xcb.sgml:
-	* doc/public/tmpl/cairo-xlib.sgml:
-	* doc/public/tmpl/cairo.sgml: Commit new templates now that
-	gtk-doc has ripped all the inline portions out.
-
-	* doc/public/tmpl/cairo-win32.sgml:
-	* doc/public/tmpl/cairo-xcb-xrender.sgml:
-	* doc/public/tmpl/cairo-xlib-xrender.sgml: New template files
-	added for new sections.
-
-	* doc/public/cairo-sections.txt: Update to match current API.
-
-	* src/cairo-xcb.h: Make parameter names match those in the .c file
-	and its documentation.
-
-2005-05-22  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c (cairo_create): Protect less-than and greater-than
-	symbols in documentation string.
-
-	* TODO: Not that a patch has been submitted for consistent error
-	handling.
-	
-	* src/cairo.c: Fix documentation string for cairo_create so that
-	it might actualyl appear in the manual.
-
-2005-05-18  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Add -head to CAIRO_VERSION after tagging with
-	SNAPSHOT_0_5_0.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* PORTING_GUIDE: Added porting guide to help with transition to
-	cairo 0.5 API.
-
-	* NEWS: Added notes for snapshot 0.5.0
-	
-	* configure.in: Increment CAIRO_VERSION to 0.5.0
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xcb-surface.c: (_get_image_surface),
-	(_cairo_xcb_surface_create_internal): Bring up to date with
-	Keith's latest improvements to cairo-xlib-surface.c: Add some
-	comments about how and why masks are computed.  Generalize
-	overflow detection in mask computation.  Expand on pixman format
-	conversion comment. Fix the broken visual->format case.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	Two fixes from Kristian Høgsberg:
-
-	* src/cairo-output-stream.c: (_cairo_output_stream_create),
-	(_cairo_output_stream_destroy),
-	(_cairo_output_stream_create_for_file): Fix to close the file if
-	we opened it.
-	
-	* src/cairo-pdf-surface.c: (_cairo_pdf_document_finish): Grab the
-	status from out of the stream _before_ we destroy the stream.
-
-2005-05-17  Keith Packard  <keithp at keithp.com>
-
-	* src/cairo-xlib-surface.c: (_get_image_surface):
-	Add some comments about how and why masks are computed.
-	Generalize overflow detection in mask computation.
-	Expand on pixman format conversion comment.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xcb-surface.c:
-	* src/cairo-xlib-surface.c: Fix documentation to not mention
-	set_size for the _for_bitmap functions.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* util/cairo-api-update: Remove #ifdef munging since we once again
-	support either #if or #ifdef.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* RELEASING: Update instructions to match output of 'make
-	distcheck'
-	
-	* src/Makefile.am:
-	* test/Makefile.am: Add private headers and flesh out CLEANFILES
-	so that 'make distcheck' actually passes.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Add a few more REPLACED_BY and DEPRECATED_BY
-	definitions.
-	
-	* util/cairo-api-update: Add some helpful warnings.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* src/Makefile.am (libcairo_xlib_headers): Add
-	cairo-xlib-xrender.h which was missed from an earlier commit.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* src/Makefile.am:
-	* src/cairo-xcb.h:
-	* src/cairo-xcb-xrender.h:
-	* src/cairo-xcb-surface.c:
-	(cairo_xcb_surface_create),
-	(cairo_xcb_surface_create_for_bitmap),
-	(cairo_xcb_surface_create_with_xrender_format): Update cairo-xcb.h
-	to provide the same style of interface as cairo-xlib.h.
-
-	* test/cairo-test.c: Update to match new cairo_xcb_surface_t
-	create functions.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xlib-surface.c (_get_image_surface): Avoid shifting
-	32-bit quanity by 32 bits, which is undefined behavior.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	Rework of cairo_xlib_surface create functions by Keith Packard:
-
-	* src/cairo-xlib-xrender.h:
-	Add cairo_xlib_surface_create_with_render_format.
-	
-	* src/cairo-xlib.h:
-	* src/cairo-xlib-surface.c:
-	(cairo_xlib_surface_create),
-	(cairo_xlib_surface_create_for_bitmap): Reduce Xlib constructors
-	down to two simple forms. Add width, height to constructors and
-	eliminate any synchronous size queries from the implementation.
-
-	* test/cairo-test.c: (create_xlib_surface):
-	* test/xlib-surface.c: (do_test): Update to match new
-	cairo_xlib_surface_t create functions.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-output-stream.c: Remove destroy_closure from
-	cairo_output_stream_t interface.
-	
-	* src/cairo-pdf.h:
-	* src/cairo-pdf-surface.c: Remove destroy_closure argument from
-	cairo_pdf_surface_create_for_stream. Rename width,height to
-	width_in_points, height_in_points for better clarity.
-
-	* src/cairo-ps.h:
-	* src/cairo-ps-surface.c: Brush a bunch of dust off of the PS
-	backend and bring it up to date with the latest API conventions
-	from the PDF backend. These include: accepting a filename rather
-	than a FILE in the primary constructor, providing a stream-based
-	interface for more flexibility, and accepting a surface size in
-	device-space units (points) rather than inches.
-
-	* test/pdf-surface.c: (main): Make it a little more clear that the
-	width and height being passed around are in units of points.
-	
-	* test/ps-surface.c: (main): Update to the latest cairo-ps.h
-	changes as described above. Notice how much more sane things
-	become now that the surface size is described in device-space
-	units.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/ps-surface.c: (draw), (main): Add simple test for ps
-	surface backend (modeled after pdf-surface.c).
-
-	* test/pdf-surface.c: (main): Add print message telling user to
-	examine resulting file.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* test/pdf-surface.c: (draw), (main): Update PDF test case to make
-	sure we're actually getting the right paper size, image scaling
-	etc. And it should now be easier to see if cairo is happy by manually
-	viewing the resulting PDF file.
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xlib-test.h: Fix to include cairo-xlib.h, (which also
-	fixes test/xlib-surface.c).
-
-2005-05-17  Carl Worth  <cworth at cworth.org>
-
-	* test/pdf-surface.c: (main): Update to the latest PDF surface API
-	changes: use filename not FILE* and use surface dimension in
-	points, not inches.
-
-2005-05-16  Keith Packard  <keithp at keithp.com>
-
-	* src/cairo-pattern.c: (_cairo_pattern_shader_init):
-	Initialize op->stops[0].scale = 0.  
-	
-	This scale value is used only when computing gradient values
-	before the defined range, in which case stop 0 is used for both
-	ends of the interpolation, making the value of 'scale' not
-	actually matter, except that valgrind notices we're using
-	an undefined value.
-
-2005-05-16  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am: Remove quarter-over test name accidentally
-	added to Makefile.
-
-2005-05-16  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-pdf-surface.c (cairo_pdf_surface_create):
-	* src/cairo-output-stream.c
-	(_cairo_output_stream_create_for_file): Take a filename instead of
-	a FILE pointer.
-
-2005-05-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xcb.h:
-	* src/cairo-xcb-surface.c: (_cairo_xcb_surface_create_similar),
-	(_cairo_xcb_surface_finish), (_cairo_xcb_surface_get_size),
-	(_bits_per_pixel), (_bytes_per_line), (_get_image_surface),
-	(_draw_image_surface), (_cairo_xcb_surface_get_extents),
-	(_cairo_surface_is_xcb), (_cairo_xcb_surface_create_internal),
-	(cairo_xcb_surface_create_for_pixmap),
-	(cairo_xcb_surface_create_for_pixmap_with_visual),
-	(cairo_xcb_surface_create_for_window_with_visual),
-	(cairo_xcb_surface_set_size):
-	Brush the dust off the XCB backend and get it compiling and
-	working again. This patch makes the XCB surface API match that of
-	the Xlib surface API as of yesterday. But, it's already stale as
-	the Xlib API changed again. So we'll need one more revision of the
-	XCB backend before the next snapshot.
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/cairo-test.c: (create_xcb_surface), (cleanup_xcb):
-	* test/cairo-test.h: Add support for testing of the xcb backend as
-	well.
-
-2005-05-14  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c: (cairo_test_real):
-	* test/pdf-surface.c: (main):
-	* test/xlib-surface.c: (do_test), (main): Cleanup output a bit,
-	move verbose messages to test-specific log file.
-
-2005-05-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xlib-surface.c: (cairo_xlib_surface_create_with_visual): 
-	Fix the last commit so it actually compiles now.
-
-2005-05-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xlib-surface.c: (cairo_test_xlib_disable_render),
-	(cairo_xlib_surface_create_with_visual)
-
-	* test/.cvsignore: Fix a few documentation typos in the recent
-	xlib surface rework.
-
-2005-05-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-atsui.h:
-	* src/cairo-ft.h:
-	* src/cairo-glitz.h:
-	* src/cairo-pdf.h:
-	* src/cairo-ps.h:
-	* src/cairo-quartz.h:
-	* src/cairo-win32.h:
-	* src/cairo-xcb.h:
-	* src/cairo-xlib.h: Add an #error if cairo-foo.h is included when
-	cairo was compiled without support for the foo backend.
-
-2005-05-14  Carl Worth  <cworth at cworth.org>
-
-	* test/pdf-surface.c (main): Update for change in
-	cairo_pdf_surface_create which no longer accepts DPI values.
-
-2005-05-13  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c src/cairo-xlib.h
-	doc/public/cairo-sections.txt: Drop the _for_pixmap() and
-	_for_window() out of the create functions and use some lazy
-	cleverness to sniff the information out as needed.
-
-	* src/cairo-xlib-surface.c src/cairo-xlib-test.h Makefile.am: 
-	add cairo_test_xlib_disable_render() to turn off RENDER
-	for tests.
-
-	* test/xlib-surface.c: Test various different types of 
-	Xlib surface creation.
-
-	* src/cairo-xlib.h: Remove left-over include of Xrender.h.
-
-2005-05-13  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-pdf-surface.c (_cairo_pdf_document_open_stream): Make
-	this a varg function and use the new
-	_cairo_output_stream_vprintf() function to format extra dict
-	contents.
-
-	* src/cairo-output-stream.c (_cairo_output_stream_vprintf):
-	Reimplement the printf logic so we can special case formatting of
-	doubles to be locale independent and trim trailing zeros.
-
-	* src/cairo-pdf-surface.c: Rename
-	cairo_pdf_surface_create_for_callback() to
-	cairo_pdf_surface_create_for_stream(), and change PDF constructors
-	to take width and height as points and move PPI setting to
-	cairo_pdf_surface_set_ppi()
-
-2005-05-13  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal): Fix
-	misplaced goto.
-	
-2005-05-12  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h:
-	* src/cairo-image-surface.c: (_cairo_image_surface_create_with_masks):
-	  Fix image->data to be unsigned
-
-	* src/cairo-glitz-surface.c: (_cairo_glitz_surface_get_image):
-	* src/cairo-image-surface.c:
-	(_cairo_image_surface_create_for_pixman_image),
-	* src/cairo-xlib-surface.c: (_get_image_surface),
-	(_draw_image_surface), (_xlib_glyphset_cache_create_entry):
-	Track change in signedness of data member/parameter.
-
-2005-05-12  Carl Worth  <cworth at cworth.org>
-
-	Update xcb backend to compile after recent API changes:
-
-	* src/cairo-xcb-surface.c: (_cairo_xcb_surface_finish):
-	Fix missing return value.
-	(_cairo_xcb_surface_acquire_source_image): Remove calls to
-	non-existent cairo_surface functions.
-	(_cairo_xcb_surface_set_matrix): Update for new matrix member names.
-	(_cairo_xcb_surface_get_extents): Fix typo.
-
-2005-05-12  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/paint-with-alpha-ref.png:
-	* test/paint-with-alpha.c: (draw), (main): Add new test for bug in
-	cairo_paint_with_alpha not transforming the source.
-
-	* src/cairo-gstate.c: (_cairo_gstate_mask): Use a transformed copy
-	of the source just like we do in all the other calls to
-	cairo_surface_composite. Fixes the bug tested by
-	test/paint-with-alpha.
-
-2005-05-12  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: otaylor
-
-	* src/cairo-gstate.c: (_get_mask_extents):
-	_get_mask_extents creates a pixman region but
-	neglects to destroy it.
-
-2005-05-11  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-win32-surface.c (categorize_solid_dest_operator):
-	Handle more cases by assuming no-super-luminescent colors.
-
-2005-05-11  T Rowley  <tim.rowley at gmail.com>
-
-	* src/cairo-atsui-font.c:
-	* src/cairo-atsui.h:
-	* src/cairo-quartz-surface.c: Revive quartz backend.
-
-2005-05-11  David Reveman  <davidr at novell.com>
-
-	* src/cairo-glitz-surface.c (_cairo_glitz_surface_fill_rectangles): 
-	Set fill type repeat on source surface.
-	(_cairo_glitz_surface_show_glyphs): Add missing cairo operator to
-	glitz operator conversion.
-	(_cairo_glitz_surface_show_glyphs): Only render glyphs with non zero
-	size. 
-
-2005-05-11  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-surface.c (_fallback_fill_rectangles):
-	Fix bounding box computation.
-
-	* src/cairo-win32-surface.c: Patch from Tor Lillqvist
-	to make things compile and work again.
-
-	* test/cairo-test.c (create_win32_surface): Don't
-	#error because there is no win32 test, it isn't useful. 
-	Just skip it.
-
-	* src/cairo-win32-font.c: Fix up matrix constness.
-
-	* test/Makefile.am (TESTS): Skip the pdf-surface test
-	if we don't have the PDF backend.
-
-	* src/cairo-win32-surface.c (categorize_solid_dest_operator):
-	Optimize fill_rectangles for all cases where the destination
-	ends up a solid color.
-
-2005-05-11  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib-surface.c src/cairo-xlib.h: Remove leftover
-	cairo_xlib_surface_create().
-
-2005-05-10  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo.c src/cairo-path-data.c src/cairo-path-data-private.h:
-	Pass the gstate to _cairo_path_data_create[_flat] and use
-	_cairo_gstate_backend_to_user() so as to properly handle
-	the surface device offset.
-
-2005-05-10  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-arc.c (_cairo_arc_path_negative): Don't use return
-	when calling a void function (thanks to Damien Carbery
-	<damien.carbery at sun.com>). Closes bug #3134.
-
-2005-05-10  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c:
-	* test/cairo-test.h: Removing mucking around with stderr and add a
-	cairo_test_log function instead.
-	
-	* test/buffer-diff.c:
-	* test/create-for-png.c:
-	* test/pdf-surface.c:
-	* test/read-png.c:
-	* test/trap-clip.c:
-	* test/xmalloc.c: Switch all error messages from
-	fprintf(stderr,...) to cairo_test_log(...).
-
-2005-05-10  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Fix URLs for glitz and xlibs, (thanks to Jason
-	Dorje Short <jdorje at users.sf.net>).
-
-2005-05-10  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Update to current canonical URL for XCB.
-
-2005-05-10  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-wideint.h: Don't guess and make our own definitions
-	for uint8_t, etc. Just error out if we can't find a suitable
-	header file.
-
-	* src/cairo-png.c: (unpremultiply_data), (premultiply_data):
-	* test/read-png.c: (premultiply_data): Fix to use fixed-size type
-	so that this code works when sizeof(unsigned long) != 32. Thanks
-	to Manish Singh.
-
-2005-05-10  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c: (_cairo_gstate_get_font_matrix):
-	* src/cairo.c: (cairo_get_font_matrix):
-	* src/cairo.h:
-	* src/cairoint.h: Fix cairo_get_font_matrix to actually use its
-	out-parameter. And change the return type to void.
-
-2005-05-09  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c (_cairo_ft_unscaled_font_create_glyph): 
-	Get the glyphslot point *after* we get the FT_Face. (Robert O'Callahan)
-
-2005-05-09  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h (cairo_current_target_surface): Fix deprecation
-	macro to point to the right function, (thanks to John Ellson).
-
-2005-05-09  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-font.c: (_cairo_simple_font_face_create_font),
-	(cairo_scaled_font_create), (_cairo_scaled_font_init):
-	* src/cairo-ft-font.c: (_ft_scaled_font_create),
-	(_cairo_ft_scaled_font_create), (_ft_font_face_create_font):
-	* src/cairo-gstate.c: (_cairo_gstate_transform),
-	(_cairo_gstate_set_matrix), (_cairo_gstate_set_font_matrix):
-	* src/cairo-image-surface.c: (_cairo_image_surface_set_matrix):
-	* src/cairo-matrix.c: (_cairo_matrix_get_affine),
-	(cairo_matrix_transform_distance), (cairo_matrix_transform_point),
-	(_cairo_matrix_transform_bounding_box),
-	(_cairo_matrix_compute_determinant),
-	(_cairo_matrix_compute_eigen_values),
-	(_cairo_matrix_compute_scale_factors),
-	(_cairo_matrix_is_integer_translation):
-	* src/cairo-pattern.c: (cairo_pattern_set_matrix),
-	(_cairo_pattern_transform):
-	* src/cairo.c: (cairo_transform), (cairo_set_matrix),
-	(cairo_set_font_matrix):
-	* src/cairo.h:
-	* src/cairoint.h: Push cairo_matrix_t const-correctness down
-	through the entire implmentation, (expanding on preliminary work
-	by Robert O'Callahan <rocallahan at novell.com>)
-
-2005-05-09  Carl Worth  <cworth at cworth.org>
-
-	* configure.in:
-	* src/cairo-features.h.in: Change cairo-features again so that
-	either #if or #ifdef will work to test any feature.
-
-2005-05-07  Owen Taylor  <otaylor at redhat.com>
-
-	* doc/public/language-bindings.xml doc/public/cairo-doc.xml
-	doc/public/Makefile.am: Document suggested conventions and
-	techniques for many aspects of creating a language binding 
-	for Cairo.
-
-2005-05-07  Owen Taylor  <otaylor at redhat.com>
-
-	* doc/public/cairo-sections.txt: Update.
-
-2005-05-07  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h (cairo_set_alpha): Point to both
-	cairo_set_source_rgba and cairo_paint_with_alpha in deprecation of
-	cairo_set_alpha.
-
-2005-05-07  Carl Worth  <cworth at cworth.org>
-
-	* util/cairo-api-update: Make idempotent substitutions that extend
-	old names:
-
-	cairo_select_font		-> cairo_select_font_face
-	cairo_pattern_add_color_stop	-> cairo_pattern_add_color_stop_rgba
-
-	by only substituting if the old name is not immediately followed
-	by an underscore.
-
-	Tweak the substitution slightly to allow the script to be run on
-	the cairo source itself, (eg. avoid changing the REPLACED_BY and
-	DEPRECATED_BY macros that must mention the old names).
-	
-2005-05-07  Carl Worth  <cworth at cworth.org>
-
-	* configure.in:
-
-	* src/cairo-features.h.in: Change definitions of everything in
-	cairo-features.h to prefer #if over #ifdef.
-
-	* src/cairo-atsui.h:
-	* src/cairo-cache.c:
-	* src/cairo-ft-private.h:
-	* src/cairo-ft.h:
-	* src/cairo-glitz.h:
-	* src/cairo-pdf.h:
-	* src/cairo-ps.h:
-	* src/cairo-quartz.h:
-	* src/cairo-win32.h:
-	* src/cairo-xcb.h:
-	* src/cairo-xlib.h:
-	* src/cairo.c:
-	* src/cairo.h:
-	* src/cairoint.h:
-	* test/cairo-test.c: Track #ifdef -> #if changes.
-	
-	* util/cairo-api-update: Add support to automatically change all
-	#ifdef CAIRO_HAS to #if CAIRO_HAS.
-
-2005-05-07  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c:
-	* src/cairo-pattern.c:
-	* src/cairo.c:
-	* src/cairo.h:
-	* src/cairoint.h: Remove deprecated cairo_get_rgb_color that was
-	accidentally missed in the recent purge of deprecated functions.
-
-2005-05-07  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-xcb-surface.c (_render_operator): 
-	* src/cairo-win32-surface.c (_cairo_win32_surface_composite)
-	(_cairo_win32_surface_fill_rectangles): Update to track new
-	CAIRO_OPERATOR names.
-
-	* test/select-font-no-show-text.c: 
-	* src/cairo-surface.c (cairo_surface_set_user_data): Fix
-	documentation to refer to functions by their current names.
-
-	* src/cairo-gstate.c (_cairo_gstate_begin_group): Update to track
-	latest API (in currently unused function).
-
-2005-05-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-glitz-surface.c (_cairo_glitz_surface_show_glyphs):
-	Fix return type from cairo_status_t to cairo_int_status_t.
-
-2005-05-06  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Note that cairo_mask, and "just eliminate a bunch of
-	functions are now done".
-	
-	* TODO: Note that all backwards-compatible and
-	backwards-incompatible cahnges for the API Shakeup are now
-	done. Sort "new functionality" of API Shakeup into its own
-	category.
-
-2005-05-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c:
-	* src/cairo.h: Eliminate the following deprecated functions from
-	cairo's interface:
-
-	        cairo_copy
-		cairo_get_path
-		cairo_get_path_flat
-	        cairo_matrix_create
-	        cairo_matrix_destroy
-	        cairo_matrix_copy
-	        cairo_matrix_get_affine
-		cairo_surface_set_repeat
-		cairo_surface_set_matrix
-		cairo_surface_get_matrix
-		cairo_surface_set_filter
-		cairo_surface_get_filter
-
-	Also, eliminate all support for compiling against, or running with
-	old, deprecated names for functions.
-
-	* src/cairo-ft-font.c: (_compute_transform):
-	* src/cairo-gstate.c:
-	* src/cairo-image-surface.c: (cairo_image_surface_create_for_data):
-	* src/cairo-matrix.c: (_cairo_matrix_get_affine),
-	(_cairo_matrix_compute_adjoint),
-	(_cairo_matrix_is_integer_translation):
-	* src/cairo-pattern.c: (cairo_pattern_add_color_stop_rgba),
-	(cairo_pattern_set_matrix), (cairo_pattern_get_matrix),
-	(_cairo_image_data_set_linear), (_cairo_linear_pattern_classify),
-	(_cairo_image_data_set_radial):
-	* src/cairo-pdf-surface.c: (_cairo_pdf_surface_composite_image),
-	(_cairo_pdf_surface_composite_pdf), (emit_surface_pattern),
-	(emit_linear_pattern), (emit_radial_pattern):
-	* src/cairo-surface.c:
-	* src/cairo-xlib-surface.c:
-	(_cairo_xlib_surface_acquire_source_image),
-	(cairo_xlib_surface_create):
-	* src/cairo.c: (cairo_set_source_rgba), (cairo_set_source),
-	(cairo_get_source), (cairo_transform), (cairo_identity_matrix),
-	(cairo_user_to_device), (cairo_user_to_device_distance),
-	(cairo_device_to_user), (cairo_device_to_user_distance),
-	(cairo_reset_clip), (cairo_select_font_face), (cairo_font_extents),
-	(cairo_set_font_size), (cairo_get_operator), (cairo_get_rgb_color),
-	(cairo_get_tolerance), (cairo_get_fill_rule),
-	(cairo_get_line_width), (cairo_get_line_cap),
-	(cairo_get_line_join), (cairo_get_miter_limit), (cairo_get_matrix),
-	(cairo_get_target), (cairo_status), (cairo_status_string):
-	* src/cairoint.h:
-	* test/cairo-test.c: (cairo_test_create_png_pattern):
-	* test/gradient-alpha.c: (draw):
-	* test/mask.c: (set_gradient_pattern), (set_image_pattern):
-	* test/move-to-show-surface.c: (draw):
-	* test/select-font-no-show-text.c: (draw):
-	* test/set-source.c: (draw):
-	* test/text-cache-crash.c: (draw):
-	* test/text-rotate.c: (draw):
-	* test/transforms.c: (draw_L_shape):
-	* test/translate-show-surface.c: (draw):
-	* test/trap-clip.c: (set_gradient_pattern), (set_image_pattern):
-	* util/cairo-api-update:
-
-	Deal with all of the removals.
-
-2005-05-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-glitz-surface.c: (_glitz_operator),
-	(_cairo_glitz_surface_fill_rectangles):
-	* src/cairo-gstate.c: (_cairo_gstate_mask):
-	* src/cairo-image-surface.c: (_pixman_operator),
-	(_cairo_image_surface_composite_trapezoids):
-	* src/cairo-ps-surface.c: (_cairo_ps_surface_erase),
-	(_cairo_ps_surface_copy_page):
-	* src/cairo-surface.c: (_cairo_surface_create_similar_solid):
-	* src/cairo-xlib-surface.c: (_render_operator):
-	* src/cairo.h:
-	* test/cairo-test.c: (cairo_test_for_target):
-	* test/mask.c: (mask_polygon), (draw):
-
-	Rename and re-order the cairo_operator_t enum to names that
-	abbreviate less and are easier to understand,
-	(eg. CAIRO_OPERATOR_DEST_OVER instead of
-	CAIRO_OPEERATOR_OVER_REVERSE).
-
-2005-05-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c: (cairo_create), (cairo_save), (cairo_get_target):
-	* src/cairo.h:
-	* src/cairoint.h:
-	* src/cairo-gstate.c: (_cairo_gstate_create), (_cairo_gstate_init),
-	(_cairo_gstate_get_target):
-	* src/cairo-glitz.h:
-	* src/cairo-pdf.h:
-	* src/cairo-ps.h:
-	* src/cairo-quartz-surface.c:
-	* src/cairo-quartz.h:
-	* src/cairo-surface.c: (_cairo_surface_begin):
-	* src/cairo-win32.h:
-	* src/cairo-xcb.h:
-	* src/cairo-xlib.h: Remove cairo_set_target_surface and all other
-	backend-specific cairo_set_target functions. Require a
-	cairo_surface_t* to call cairo_create.
-
-	* test/cairo-test.c: (create_image_surface), (cleanup_image),
-	(create_glitz_surface), (cleanup_glitz), (create_quartz_surface),
-	(cleanup_quartz), (create_win32_surface), (cleanup_win32),
-	(create_xcb_surface), (cleanup_xcb), (create_xlib_surface),
-	(cleanup_xlib), (cairo_test_for_target), (cairo_test_real):
-
-	Port to use new cairo_create interface.
-	
-	* test/clip-nesting.c: (draw):
-	* test/mask.c: (mask_polygon), (draw):
-	* test/path-data.c: (main):
-	* test/pdf-surface.c: (main):
-	* test/pixman-rotate.c: (draw):
-	* test/scale-source-surface-paint.c: (draw):
-	* test/self-copy.c: (draw):
-	* test/source-clip.c: (draw):
-	* test/source-surface-scale-paint.c: (draw):
-	* test/surface-pattern.c: (draw):
-
-	Rewrite all tests that were using cairo_set_target_surface to
-	instead create a temporary cairo_t, (eventually to be replaced
-	with cairo_begin_group).
-
-2005-05-05  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo.[ch] doc/public/cairo-sections.txt: Add 
-	cairo_paint_with_alpha().
-
-	* src/cairo-pattern.c (_cairo_pattern_acquire_surfaces): Fix 
-	segfault when mask == NULL.
-
-	* test/mask.c test/mask-ref.png: Add testing of cairo_paint_with_alpha().
-
-	* test/coverage.c test/coverage-ref.png: Remove ... it's not testing
-	anything that mask doesn't test better.
-
-2005-05-04  David Reveman  <davidr at novell.com>
-
-	* src/cairo-glitz-surface.c: Add glyph caching to glitz backend.
-
-2005-05-03  Kristian Høgsberg  <krh at redhat.com>
-
-	Fills as paths patch originally by Owen Taylor.
-
-	* src/cairo-path.c: (_cairo_path_fixed_rel_move_to),
-	(_cairo_path_fixed_line_to), (_cairo_path_fixed_rel_line_to),
-	(_cairo_path_fixed_curve_to), (_cairo_path_fixed_rel_curve_to):
-	Make sure we have a current point for the relative path operators.
-	
-	* src/cairoint.h:
-	* src/cairo-gstate.c: (_cairo_gstate_fill):
-	* src/cairo-surface.c: (_cairo_surface_fill_path): Add fill_path
-	backend method.
-
-	* src/cairo-pdf-surface.c: (_cairo_pdf_document_close_stream),
-	(emit_image_data), (emit_surface_pattern),
-	(_cairo_pdf_path_move_to), (_cairo_pdf_path_line_to),
-	(_cairo_pdf_path_curve_to), (_cairo_pdf_path_close_path),
-	(_cairo_pdf_surface_fill_path): Implement fill_path in the PDF
-	backend.
-	
-2005-05-03  Carl Worth  <cworth at cworth.org>
-
-	Originally 2005-04-20  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h:
-	* src/cairo.c: Remove cairo_show_surface. Add new
-	cairo_set_source_surface.
-	
-	* src/cairo-gstate.c: Remove _cairo_gstate_show_surface.
-	
-	* test/create-for-png.c: (draw):
-	* test/pixman-rotate.c: (draw):
-	* test/move-to-show-surface.c: (draw):
-	* test/translate-show-surface.c: (draw): Replace calls to
-	cairo_show_surface with cairo_set_source_surface; cairo_paint.
-
-	* test/cairo-test.c: (cairo_test_real): Fix messages to prefer -
-	over _.
-
-	* src/cairo-png.c: (cairo_surface_write_to_png): Fix
-	documentation.
-
-	* test/filter-nearest-offset-ref.png:
-	* test/filter-nearest-offset.c:
-	* test/scale-source-surface-paint-ref.png:
-	* test/scale-source-surface-paint.c:
-	* test/source-surface-scale-paint-ref.png:
-	* test/source-surface-scale-paint.c: Three new tests to exercise
-	set_source_surface more completely, (two of these are expected
-	failures dues to outstanding bugs).
-
-2005-05-03  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Add suggestion for copy-on-write regions to fix clip
-	region problems.
-
-	* src/Makefile.am (install-data-local): Fix check for old headers
-	to respect DESTDIR, (to work better when cross-compiling, etc.).
-	Thanks to Luke-Jr <luke-jr at utopios.org>.
-	
-2005-05-02  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-ft-font.c (_cairo_ft_scaled_font_font_extents): Changes the
-	sign of extents->descent to match win32 backend and the conventional
-	convention.
-
-	* src/cairo.h: Document cairo_font_extents_t.
-
-2005-04-28  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-surface.c src/cairoint.h: Add _cairo_surface_begin/end
-	to save and restore the clip state of a surface. Copy and store
-	clip regions set on a surface so that we can save and restore them.
-
-	* src/cairo.[ch]: Add a CAIRO_STATUS_BAD_NESTING error
-	for interleaved use of two cairo_t's on the same surface. Also,
-	add a skeleton doc comment for cairo_status_t.
-
-	* src/cairo.c src/cairo-gstate.c src/cairoint.h: Use
-	_cairo_surface_begin/end to replace
-	_cairo_gstate_restore_external_state.
-
-	* src/cairo-gstate.c: Use _cairo_surface_begin/end to save the 
-	state of a surface when we start drawing at it and restore it
-	at the end. Check that the save level of the surface is what
-	we expect on drawing operations and fail with CAIRO_STATUS_BAD_NESTING
-	otherwise.
-
-	* src/cairo-pattern.c src/cairoint.h (_cairo_pattern_acquire_surface_for_surface) 
-	(_cairo_pattern_release_surface): Surround use of pattern->surface
-	with _cairo_surface->begin/end so we don't clip surfaces used as 
-	sources.
-
-	* test/clip-nesting.c test/Makefile.am: Test of destinatin
-	clipping with the nested creation of cairo_t's for the same
-	context.
-
-	* test/source-clip.c test/Makefile.am: Test that clipping on
-	a source as a destination doesn't affect use of it as a source.
-
-	* test/self-copy.c: XFAIL test for copying from a surface as
-	a source to itself as a destination with a clip.
-
-2005-05-02  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: cworth
-
-	* src/cairo-path.c: (_cairo_path_fixed_rel_curve_to):
-	Use correct arguments to compute absolute positions.
-	
-	* test/Makefile.am:
-	* test/rel-path-ref.png:
-	* test/rel-path.c: (draw), (main):
-	Test cairo_rel_move_to, cairo_rel_line_to and cairo_rel_curve_to
-
-2005-05-02  Owen Taylor  <otaylor at redhat.com>
-
-	* test/Makefile.am (EXTRA_DIST): mask-ref.png, not
-	mask.png. (Pointed out by Carl)
-
-2005-05-02  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo.[ch] src/cairo-gstate.c: Add cairo_mask()
-	and cairo_mask_surface().
-
-	* test/maks.c tests/Makefile.am tests/mask-ref.png: Add a
-	comprehensive tests for cairo_mask().
-
-	* docs/public/cairo-sections.txt: Updated
-
-2005-05-02  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-gstate.c (_cairo_gstate_glyph_path): Also call
-	_cairo_gstate_ensure_font() for this function.
-
-2005-04-28  Owen Taylor  <otaylor at redhat.com>
-
-	* TODO, ROADMAP: Add a item about reworking cairo_format_t.
-
-2005-04-28  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/cairo-test.c: (cairo_test_for_target): Replace annoying _
-	in output image filenames with - for better consistency.
-
-2005-04-27  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo-test.c: (set_xlib_target), (cleanup_xlib_target):
-	Use 1 instead of 0 for width and height to avoid BadValue errors
-	from XCreatePixmap.
-
-2005-04-27  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/buffer-diff.c: (xunlink), (buffer_diff), (image_diff):
-	* test/buffer-diff.h:
-	* test/cairo-test.c: (set_image_target), (cleanup_image_target),
-	(set_glitz_target), (cleanup_glitz_target), (set_quartz_target),
-	(cleanup_quartz_target), (set_win32_target),
-	(cleanup_win32_target), (set_xcb_target), (cleanup_xcb_target),
-	(set_xlib_target), (cleanup_xlib_target), (cairo_test_for_target),
-	(cairo_test_real), (cairo_test_expect_failure), (cairo_test):
-	* test/cairo-test.h:
-	* test/read-png.c: (read_png_argb32):
-	* test/xmalloc.h: Add support for testing multiple backends,
-	courtesy of cairo_surface_write_to_png. Currently, only image and
-	xlib backends are fullk hooked-up, but other backends should be
-	quite easy to add for anyone skilled in the appropriate art.
-
-2005-04-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-traps.c src/cairoint.h (_cairo_traps_init_box):
-	New function to create a single trapezoid box.
-
-	* src/cairo.c src/cairo-gstate.c src/cairoint.h: Move 
-	the implementation of cairo_paint() into cairo-gstate.c
-	for a better fix for the problem with backend/user coordinate
-	confusion. Also no longer clear the current path on
-	cairo_paint().
-
-2005-04-26  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c (cairo_paint): Build rectangle with an identity
-	matrix in place so that the entire target surface will be filled
-	even when there is a transformation in place.
-
-2005-04-26  Owen Taylor  <otaylor at redhat.com>
-
-	* doc/public/cairo-sections.txt: Updated.
-
-	* src/cairo-png.c src/cairo.h: Fix up some doc build issues.
-
-2005-04-26  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/paint-ref.png:
-	* test/paint.c: (draw), (main): Add test to demonstrate bug in
-	cairo_paint when under a non-identity transformation.
-
-2005-04-26  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: 
-	* TODO: Note that cairo_paint and cairo_clip/fill/stroke_preserve
-	are all done now.
-
-2005-04-26  Carl Worth  <cworth at cworth.org>
-
-	Originally: 2005-04-19  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Add cairo_stroke_preserve, cairo_fill_preserve,
-	and cairo_clip_preserve.
-
-	* src/cairoint.h:
-	* src/cairo-gstate-private.h:
-	* src/cairo-gstate.c: Rip the path out of cairo_gstate_t.
-
-	* src/cairo-private.h: Add path to cairo_t.
-	
-	* src/cairo.c: Bring in most of the path code that used to live in
-	cairo-gstate.c
-
-	* src/Makefile.am:
-	* src/cairo-arc-private.h:
-	* src/cairo-arc.c: Move arc generation code into its own file.
-	
-	* src/cairo-path-data-private.h:
-	* src/cairo-path-data.c: Accept path+ctm_inverse+tolerance instead
-	of gstate. Absorb flattening and device space->user space
-	conversion that used to be in _cairo_gstate_intepret_path.
-
-	* src/cairo-path.c: Prefer cairo_fixed_t parameters over
-	ciaro_point_t for cross-file interfaces.
-
-	* src/cairo-ft-font.c: Track changes in _cairo_path_fixed
-	interfaces.
-
-	* test/fill-and-stroke.c: (draw): Port to use cairo_fill_preserve
-	rather than cairo_save/cairo_restore which no longer work for
-	saving the path.
-	
-	* test/get-and-set.c: (settings_set), (settings_get),
-	(settings_equal): Remove get and set of current point since it is
-	no longer affected by cairo_save and cairo_restore. Add get and
-	set testing for cairo_matrix_t.
-
-2005-04-26  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/cairo-test.h:
-	* test/pdf-surface.c: (main): Add very simple test to generate PDF
-	output, (no automated verification yet).
-
-	* test/cairo-test.c: (cairo_test):
-	* test/create-for-png.c: (draw):
-	* test/pixman-rotate.c: Track PNG interface changes, (no more
-	include of cairo-png.h, cairo_surface_write_png renamed to
-	cairo_surface_write_to_png).
-
-2005-04-26  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-png.h: Prototypes moved to cairo.h, this file removed.
-
-	* src/cairo-png.c (cairo_surface_write_to_png_stream): Renamed
-	from cairo_surface_write_png_to_stream() for consistency.
-	(cairo_surface_write_to_png): Renamed from
-	cairo_surface_write_png() for consistency.
-
-2005-04-25  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-png.c (cairo_surface_write_png): Factor out bulk of
-	the code into a new callback based function, write_png().  Call it
-	with a stdio write callback.
-	(cairo_surface_write_png_to_stream): New function to write a
-	surface to a PNG stream.
-	(cairo_image_surface_create_from_png): Likewise, move most of the
-	code to read_png(), clean up error handling and reduce this
-	function to calling read_png() with a stdio based read function.
-	(cairo_image_surface_create_from_png_stream): New function to
-	create an image surface from a PNG stream.
-
-	* src/cairo-image-surface.c (cairo_image_surface_get_width)
-	(cairo_image_surface_get_height): New functions to get widht and
-	height of an image surface.
-
-	* src/cairo.h: Add new prototype and error codes.
-
-	* test/create-for-png.c (draw): Adjust to new PNG API.
-
-2005-04-25  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-win32-surface.c (cairo_win32_surface_create): Initialize
-	the saved_dc_bitmap field here as well ... not strictly needed,
-	but cleaner. (Reported by Peter Arsoff)
-
-2005-04-23  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-gstate.c (_composite_trap_region): Finalize the
-	correct pattern.
-
-2005-04-22  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-png.c (cairo_image_surface_create_for_png): Only check
-	PNG signature if we read all the bytes.  Don't fclose() the FILE
-	argument (Steve Chaplin <stevech1097 at yahoo.com.au>).
-
-	Rename to cairo_image_surface_create_for_png() to
-	cairo_image_surface_create_from_png() and change FILE arguments
-	for this function and cairo_surface_write_png() to be a filename
-	argument instead.
-
-2005-04-21  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-surface.c (_cairo_surface_set_clip_region): Handle
-	backends that don't have a set_clip_region implementation (PDF).
-
-2005-04-19  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c: (cairo_paint):
-	* src/cairo.h: Add new cairo_paint function.
-
-	* src/cairoint.h: Add new get_extents function to the surface
-	backend interface.
-
-	* src/cairo-gstate.c: (_cairo_gstate_get_clip_extents): Add
-	function to query current clip_extents.
-
-	* src/cairo-glitz-surface.c: (_cairo_glitz_surface_get_extents):
-	* src/cairo-image-surface.c: (_cairo_image_surface_get_extents),
-	(_cairo_image_abstract_surface_get_extents):
-	* src/cairo-pdf-surface.c: (_cairo_pdf_surface_get_extents):
-	* src/cairo-ps-surface.c: (_cairo_ps_surface_get_extents):
-	* src/cairo-quartz-surface.c: (_cairo_quartz_surface_get_extents):
-	* src/cairo-win32-surface.c: (_cairo_win32_get_extents):
-	* src/cairo-xcb-surface.c: (_cairo_xcb_surface_get_extents):
-	* src/cairo-xlib-surface.c: (_cairo_xlib_surface_get_extents):
-	Implement the new get_extents function for each backend.
-	
-	* src/cairo-surface.c: (_cairo_surface_init),
-	(_cairo_surface_set_clip_region),
-	(_cairo_surface_get_clip_extents): Save the clip extents from
-	set_clip_region and implement _cairo_surface_get_clip_extents.
-
-	* src/cairo-xlib-surface.c: (_cairo_xlib_surface_get_size),
-	(_get_image_surface): Abstract away the evil XGetGeometry
-	roundtrip in _cairo_xlib_surface_get_size.
-	
-	* test/gradient-alpha.c: (draw):
-	* test/linear-gradient.c: (draw): Rewrite a couple of tests to
-	call cairo_paint.
-
-2005-04-19  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Update API Shakeup chart to indicate that cairo_paint and
-	cairo_fill_preserve patches have been sent.
-
-2005-04-19  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/surface-pattern-ref.png:
-	* test/surface-pattern.c: (draw), (main): Add a test of a
-	repeating surface pattern.
-
-2005-04-18  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Mark a couple of items that are now complete.
-	
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/fill-and-stroke-ref.png:
-	* test/fill-and-stroke.c: (draw), (main): Add test case that fills
-	and strokes the same shapes, (in preparation for testing
-	cairo_fill_preserve patch).
-
-2005-04-14  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Update API Shakeup chart to indicate that cairo_set_source
-	is done.
-
-2005-04-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h:
-	* src/cairo.c: Rename, add, and delete:
-
-		cairo_set_pattern	-> cairo_set_source
-		cairo_get_pattern	-> cairo_get_source
-		cairo_set_rgb_color	-> cairo_set_source_rgb
-					-> cairo_set_source_rgba
-		cairo_set_alpha		->
-		cairo_get_alpha		->
-
-	Note that we'll likely want to add cairo_set_source_surface.
-
-	* src/cairo-color.c: Add _cairo_stock_color helper function.
-	Improve some interfaces:
-
-		_cairo_color_init	   _cairo_color_init_rgb
-		_cairo_color_set_rgb	-> _cairo_color_init_rgba
-		_cairo_color_set_alpha	   _cairo_color_multiply_alpha
-
-		_cairo_color_get_rgb	-> _cairo_color_get_rbga
-					   _cairo_color_get_rgba_premultiplied
-
-	* src/cairoint.h: Add cairo_stock_t and some helper macros:
-
-		CAIRO_COLOR_WHITE
-		CAIRO_COLOR_BLACK
-		CAIRO_COLOR_TRANSPARENT
-
-	Fix cairo_pattern_t by eliminating pattern->alpha.
-	Fix cairo_solid_pattern_t to use cairo_color_t rather than three
-	doubles.
-	
-	* src/cairo-glitz-surface.c:
-	(_cairo_glitz_pattern_acquire_surface),
-	(_cairo_glitz_pattern_acquire_surfaces),
-	(_cairo_glitz_surface_composite_trapezoids): Track removal of
-	pattern->alpha, simplifying the code considerably
-	
-	* src/cairo-gstate-private.h:
-
-	* src/cairo-gstate.c: Track _cairo_color interface changes. Remove
-	gstate->alpha. Propagate down set_source renamings.
-
-	* src/cairo.h:
-	* src/cairo-pattern.c: Rename:
-
-		cairo_pattern_add_color_stop -> cairo_pattern_add_color_stop_rgba
-
-	and add:
-
-		cairo_pattern_add_color_stop_rgb
-
-	Remove pattern->alpha, simplifying the code considerably.
-
-	* src/cairo-pdf-surface.c:
-	* src/cairo-ps-surface.c: Track pattern and color interface
-	changes.
-	
-	* src/cairo-surface.c: Add const where appropriate on
-	cairo_color_t*.
-
-	* src/cairo-xlib-surface.c: (_cairo_surface_is_xlib): Add private
-	type inspection predicate.
-	(cairo_xlib_surface_set_size): Add check for surface type
-	mismatch, (no useful error reporting yet, though).
-
-	* test/Makefile.am: Note coverage as en expected failure.
-
-	* test/cairo-test.c: (cairo_test_expect_failure): Improve line
-	wrap on expected failure messages.
-	
-	* test/clip-twice.c:
-	* test/coverage.c:
-	* test/fill-rule.c:
-	* test/line-width.c:
-	* test/linear-gradient.c:
-	* test/pixman-rotate.c:
-	* test/set-source.c:
-	* test/text-rotate.c:
-	* test/trap-clip.c: Port all tests to new cairo_set_source
-	interfaces.
-
-2005-04-14  Carl Worth  <cworth at cworth.org>
-
-	* test/gradient-alpha-ref.png:
-	* test/gradient-alpha.c: (draw): Make gradient change color in
-	addition to just changing alpha in order to highlight distinction
-	between interpolating in premultiplied vs. non-premultiplied
-	space.
-	
-2005-04-14  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am: Improve instructions for when to add a test to
-	the XFAIL list.
-
-	* test/cairo-test.c: (cairo_test_expect_failure):
-	* test/cairo-test.h:
-	* test/pixman-rotate.c: (main):
-	* test/text-rotate.c: (main): Print explanations for expected
-	failures.
-
-2005-04-14  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/gradient-alpha-ref.png:
-	* test/gradient-alpha.c: (draw), (main): Add gradient-alpha test
-	in preparation for upcoming cairo_set_source patch.
-
-2005-04-14  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/set-source-ref.png:
-	* test/set-source.c: (draw), (main): Add set-source test in
-	preparation for upcoming cairo_set_source patch.
-
-2005-04-14  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-font.c (_cairo_simple_font_face_destroy): Remove
-	a stray free() (#3029, Carl Worth)
-
-	* test/select-font-no-show-text.c: Note that the bug is fixed.
-
-2005-04-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-image-surface.c:
-	(_cairo_image_abstract_surface_finish): Set freed pointer to NULL.
-	
-	* src/cairo-surface.c: (cairo_surface_finish): Fix to actually set
-	surface->finished when done. Closes bug #2950 as documented in
-	test/surface-finish-twice.c.
-
-	* test/surface-finish-twice.c: Note that this bug is fixed.
-
-2005-04-13  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/surface-finish-twice.c: (draw), (main): Add new test to
-	exercise crash when calling cairo_surface_finish twice on the same
-	surface.
-
-2005-04-13  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/select-font-no-show-text.c: (draw), (main): Add new
-	set-surface-no-show-text test.
-
-	* test/cairo-test.c: (cairo_test): Be sure to call cairo_destroy
-	even if the image size is 0,0 so that we can test bugs triggered
-	during cleanup.
-
-2005-04-13  Carl Worth  <cworth at cworth.org>
-
-	* test/coverage-ref.png:
-	* test/coverage.c: (draw_funcs), (draw): Temporarily remove all
-	text from this test case until we come up with an approach for
-	drawing the same text with different freetype configurations.
-
-2005-04-13  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-traps.c (_cairo_traps_extract_region): Work around
-	a pair of bugs elsewhere (denegerate trapezoids from tesellator,
-	pixman_region_union_rect() failing on width/height zero rectangles)
-
-2005-04-13  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairoint.h src/cairo-traps.c: Add _cairo_traps_extract_region
-	for converting trapezoids into a pixman region.
-
-	* src/cairo-gstate.c (cairo_clip): Represent all rectangular
-	pixel-aligned regions as regions, not just single rectangles.
-
-	* src/cairo-gstate.c (_cairo_gstate_clip_and_composite_trapezoid):
-	Split into manageable pieces, optimize rectangular pixel-
-	aligned regions by using _cairo_surface_fill_rectangles()
-	or _cairo_surface_set_clip_region() as appropriate.
-
-	* tests/trap-clip.c tests/trap-clip-ref.png tests/Makefile.am:
-	Add a test for trapezoids clipping.
-
-	* doc/public/cairo-docs.xml: Add an index.
-
-2005-04-12  Carl Worth  <cworth at cworth.org>
-
-	* test/translate-show-surface.c: Note that bug is now fixed.
-
-2005-04-12  Carl Worth  <cworth at cworth.org>
-
-	* autogen.sh: Replace errant use of aclocal with $ACLOCAL, as
-	reported by Martin Hedenfalk. Closes bug #3000.
-
-2005-04-12  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-pattern.c:
-	* src/cairo-surface.c: (_cairo_surface_init): Default to
-	CAIRO_FILTER_GOOD rather than CAIRO_FILTER_BEST.
-
-	* src/cairo-pattern.c:
-	(_cairo_pattern_acquire_surface_for_surface): Optimize to use
-	CAIRO_FILTER_NEAREST when the pattern matrix is an integer
-	translation.
-
-2005-04-12  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-pattern.c:
-	(_cairo_pattern_acquire_surface_for_surface):
-	* src/cairo-surface.c: (_cairo_surface_init): Use
-	CAIRO_FILTER_BEST by default rather than CAIRO_FILTER_NEAREST.
-
-2005-04-12  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c (_cairo_gstate_show_surface): Offset the src
-	pattern by (0,0)->CTM. This fixes test/translate-show-surface.
-
-	* src/cairo-glitz-surface.c
-	(_cairo_glitz_surface_composite_trapezoids): Use unsigned cahr* to
-	match new prototype for cairo_image_surface_create_for_data.
-
-2005-04-11  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/translate-show-surface-ref.png:
-	* test/translate-show-surface.c: (draw), (main): Add new test
-	demonstrating bug in the sequence: cairo_translate;
-	cairo_show_surface.
-
-2005-04-11  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c (cairo_select_font_face): Add deprecation alias from
-	cairo_scale_font to cairo_set_font_size.
-
-2005-04-11  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c (cairo_select_font_face): Add deprecation alias from
-	cairo_select_font to cairo_select_font_face.
-
-2005-04-11  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo.h doc/public/cairo-sections.txt 
-	src/cairo-matrix.c: Update.
-
-	* doc/public/cairo-docs.xml: Include cairo-font.xml
-	
-2005-04-08  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: 
-	* src/cairo.h: Move include of pixman.h from cairo.h to cairoint.h
-	since libpixman isn't part of cairo's public interface.
-
-	* test/move-to-show-surface.c (draw): Use unsigned long rather
-	than uint32_t since we no longer have pixman.h setting that type
-	up for us.
-
-	* src/cairo-font.c (cairo_font_face_destroy): Remove unused
-	variable user_data_copy.
-
-2005-04-08  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo.h src/cairo-font.c src/cairoint.h
-	doc/public/cairo-sections.txt:
-	Add cairo_font_face_set/get_user_data().
-
-	* src/cairo-array.c src/cairoint.h src/cairo-surface.c:
-	Refactor user data code from cairo-surface.c into 
-	cairo_user_data_array_t.
-
-	* src/cairo-font.c (cairo_font_face_destroy,
-	(cairo_scaled_font_destroy, _cairo_unscaled_font_destroy):
-	Switch these types to be like cairo_surface_t where the
-	generic code frees the wrapper object.
-
-	* src/cairo-atsui-font.c src/cairo-ft-font.c
-	src/cairo-win32-font.c: Fix up for the above changes.
-
-	* src/cairo-ft-font.c (_cairo_ft_unscaled_font_destroy,
-	_ft_font_face_destroy): Implement a complicated mutual-referencing
-	scheme to make sure that a face from cairo_ft_font_face_create_for_ft_face()
-	is freed only when the FT_Face is no longer needed.
-
-	* src/cairo-ft-font.c (cairo_ft_font_face_create_for_ft_face): 
-	Update the docs to describe how to figure out when the FT_Face
-	can be freed.
-
-	* src/cairo-ft-font.c: Fix refcount leaks when creating fonts.
-
-	* src/cairo-pdf-surface.c (cairo_pdf_ft_font_create): Remove
-	excess call to _cairo_unscaled_font_reference().
-
-	* src/cairo-gstate.c (_cairo_gstate_set_font_face): Remove
-	stray initialization of font matrix to the identity.
-
-	* src/cairo-array.c (_cairo_user_data_array_set_data) test/user-data.c:
-	Fix a bug when setting/unsetting a key with a free key slot before it,
-	add that to the test case.
-
-	* src/cairo-array.c (_cairo_user_data_array_set_data): 
-	Don't append an element when user_data is NULL.
-
-2005-04-08  Dave Beckett  <Dave.Beckett at bristol.ac.uk>
-
-	* src/cairo-glitz-surface.c (_cairo_glitz_surface_set_matrix):
-	Update to track changes to cairo_matrix_t interface.
-
-2005-04-08  Carl Worth  <cworth at cworth.org>
-
-	* ROADMAP: Add ROADMAP file with an initial stab at 1.0 items.
-
-2005-04-08  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c:
-	(_cairo_gstate_transform), (_cairo_gstate_set_matrix),
-	(_cairo_gstate_interpret_path): Eliminate internal use of
-	deprecated cairo_matrix_copy.
-
-	* src/cairo-gstate.c: (_cairo_gstate_get_matrix),
-	* src/cairo-matrix.c: (cairo_matrix_copy):
-	* src/cairo.c: (cairo_get_matrix):
-	* src/cairo.h:
-	* src/cairoint.h: Change cairo_get_matrix to accept a pointer to
-	the return value cairo_matrix_t rather than returning the value
-	directly.
-
-2005-04-08  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-matrix.c (cairo_matrix_init_identity): Don't try to
-	return a value (even a void value) from a void function. Closes
-	bug #2931.
-
-2005-04-07  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-wideint.h: Remove broken code for defining
-	uint64_t.
-
-2005-04-07  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-surface.c: (_cairo_surface_release_source_image),
-	(_cairo_surface_release_dest_image),
-	(_cairo_surface_clone_similar), (_cairo_surface_composite),
-	(_cairo_surface_fill_rectangles),
-	(_cairo_surface_composite_trapezoids), (_cairo_surface_copy_page),
-	(_cairo_surface_show_page), (_cairo_surface_show_glyphs):
-
-	Change to allow NULL backend function pointers to indicate
-	unsupported functions.
-
-	* src/cairo-glitz-surface.c:
-	* src/cairo-image-surface.c:
-	* src/cairo-pdf-surface.c:
-	* src/cairo-ps-surface.c:
-	* src/cairo-quartz-surface.c:
-	* src/cairo-win32-surface.c:
-	* src/cairo-xcb-surface.c:
-	* src/cairo-xlib-surface.c: Eliminate stub functions and replace
-	with NULL in surface backend table.
-
-2005-04-07  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo.[ch] src/cairoint.h src/cairo-gstate.c 
-	docs/public/cairo-sections.txt: 
-	cairo_select_font() => cairo_select_font_face()
-	cairo_scale_font() => cairo_set_font_size()
-	cairo_transform_font() => cairo_set_font_matrix()
-	Add cairo_get_font_matrix(). Make cairo_set_font_face()
-	not reset the font matrix. Default the font matrix
-	to SCALE(10). Document cairo_select_font_face().
-
-	* test/coverage.c (draw) test/text-cache-crash.c (draw)
-	test/text-rotate.c (draw): Use cairo_set_font_size().
-
-	* src/cairo-font.c src/cairo.h: Fix up some parameter
-	names for docs.
-
-2005-04-07  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-win32-font.c: Fix various compilation errors.
-
-2005-04-07  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c:
-	* src/cairo-png.c:
-	* src/cairo-win32-font.c:
-	* src/cairo-win32-surface.c:
-	* src/cairo-win32.h:
-	* src/cairoint.h: Minor changes to header file inclusion
-	recommended by Oleg Smolsky for better portability to MSVC.
-
-2005-04-07  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-png.c (PNG_SIG_SIZE): Use a preprocessor macro to get
-	a literal value in the array size declaration, (for better
-	portability to lame compilers that can't deal with a const int
-	variable for the array size). Reported by Oleg Smolsky.
-	(PNG_SIG_SIZE): Fix typo.
-
-2005-04-07  Carl Worth  <cworth at cworth.org>
-
-	* configure.in:
-	* src/cairo-wideint.h:
-	* src/cairoint.h: Use configure-time checks for stdint.h
-	vs. inttypes.h vs. sys/int_types.h rather than ad-hoc
-	system-specific macros. Also define these types manually none of
-	these header are available. (Thanks to Jason Dorje Short
-	<jdorje at users.sf.net>).
-
-2005-04-07  Carl Worth  <cworth at cworth.org>
-
-	* test/imagediff.c (main): Fix to return non-zero status on error.
-
-2005-04-06  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo.h src/cairo-gstate.c src/cairo-font.c: Add
-	a cairo_font_face_t type to hold a description of a font
-	face. Replace cairo_set_font() with cairo_set_font_face().
-
-	* src/cairoint.h src/cairo-font.c src/cairo-gstate.c: Add 
-	"cairo_simple_font_face" for family/weight/slant and use
-	it to implement font naming for the toy API.
-
-	* src/cairo-ft.h src/cairo-ft-font.c cairo-win32.h
-	cairo-win32-font.c: Switch the FreeType and Win32 backends
-	over to using cairo_font_face_t.
-
-	* src/cairo.h src/cairo-font.c src/cairo-ft-font.c 
-	src/cairo-win32-font.c: Pass in font matrix and CTM separately
-	rather than as a composite scale when creating fonts; allows
-	removing font_matrix argument to metrics functions.
-
-	* src/cairoint.h src/cairo-font.c src/cairo-ft-font.c 
-	src/cairo-win32-font.c: Remove cairo_font_scale_t type,
-	just use cairo_matrix_t and ignore translations.
-
-	* src/cairo-ft.h src/cairo-ft-font.c: Remove 
-	cairo_ft_font_get_pattern() -- it can't work for all FreeType
-	backend fonts and doesn't seem particularly useful.
-
-	* src/cairo.[ch]: Rename cairo_font_get_extents() to
-	cairo_font_extents()
-
-	* doc/public/cairo-sections.txt: Update, split font functions
-	into a separate section.
-	
-	* src/cairo-ft-font.c (_ft_unscaled_font_get_for_pattern): Fix
-	locking order problem.
-
-	* src/cairo-font.c: Add caches for simple font faces and from
-	cairo_font_face_t to cairo_scaled_font_t.
-
-	* src/cairo.h src/cairoint.h src/cairo-font.c src/cairo-win32-font.c
-	src/cairo-ft-font.c src/cairo-gstate.c src/cairo-gstate-private.h:
-	Rename cairo_font_t to cairo_scaled_font_t.
-
-2005-04-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Rework the cairo_matrix_t interface in several ways.
-	Expose a struct for cairo_matrix_t.
-
-	Add new function to return current matrix:
-		cairo_get_matrix
-
-	Deprecate the following functions (in documentation):
-		cairo_matrix_create
-		cairo_matrix_destroy
-		cairo_matrix_get_affine
-
-	Rename:
-		cairo_matrix_set_affine   ->	cairo_matrix_init
-		cairo_matrix_set_identity ->	cairo_matrix_init_identity
-
-	Add other new matrix initialization functions:
-		cairo_matrix_init_translate
-		cairo_matrix_init_scale
-		cairo_matrix_init_rotate
-
-	Change return type of almost all cairo_matrix functions from
-	cairo_status_t to void.
-
-	* src/cairo-atsui-font.c:
-	* src/cairo-ft-font.c:
-	* src/cairo-gstate.c:
-	* src/cairo-image-surface.c:
-	* src/cairo-matrix.c:
-	* src/cairo-pattern.c:
-	* src/cairo-pdf-surface.c:
-	* src/cairo-pen.c:
-	* src/cairo-surface.c:
-	* src/cairo-win32-font.c:
-	* src/cairo-xlib-surface.c:
-	* src/cairo.c:
-	* src/cairoint.h: Track changes to cairo_matrix_t interface.
-	
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/transforms-ref.png:
-	* test/transforms.c: Add a test case showing the same path drawn
-	under various transforms, (including skews set directly by
-	initializing a cairo_matrix_t).
-
-2005-04-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Make handling of unsigned char* vs. char*
-	consistent. Change all parameters that are actual string data from
-	unsigned char* to char* (cairo_text_extents, cairo_show_text,
-	cairo_text_path). Change all data buffers from char* to unsigned
-	char* (cairo_write_func_t).
-
-	* src/cairo-gstate.c: (_cairo_gstate_text_to_glyphs):
-	* src/cairo-ft-font.c: (_cairo_ft_font_text_to_glyphs):
-	* src/cairo-font.c: (_cairo_font_text_to_glyphs):
-	* src/cairo-atsui-font.c: (_cairo_atsui_font_text_to_glyphs):
-	* src/cairoint.h:
-	* src/cairo.c: (cairo_text_extents), (cairo_show_text),
-	(cairo_text_path): Track changes from unsigned char* to
-	char*. Convert to unsigned only at the internal interface to
-	unicode processing.
-
-	* test/move-to-show-surface.c: (draw):
-	* src/cairo-output-stream.c: (_cairo_output_stream_printf),
-	(stdio_write): Track change from char* to unsigned char*.
-
-2005-04-06  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-cache.c (_cairo_cache_init): Fix reversed arguments in
-	call to calloc.
-
-2005-04-04  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h (cairo_set_target_image,
-	cairo_image_surface_create_for_data):
-	* src/cairo.c: (cairo_set_target_image): Change type of data
-	parameter from char* to unsigned char*.
-
-	* src/cairo-ft-font.c: (_cairo_ft_font_create_glyph):
-	* src/cairo-image-surface.c: (cairo_image_surface_create_for_data):
-	* src/cairo-pattern.c:
-	(_cairo_pattern_acquire_surface_for_gradient):
-	* test/buffer-diff.c: (buffer_diff):
-	* test/buffer-diff.h:
-	* test/write-png.c: (write_png_argb32):
-	* test/write-png.h: Propagate the unsigned char* change down the
-	stack.
-
-	* src/cairo-xlib-surface.c: (_get_image_surface): Add cast since
-	XImage uses char* rather than unsigned char*.
-	
-	* src/cairo-png.c: (cairo_image_surface_create_for_png): Fix
-	memory leak of image data.
-
-	* test/cairo-test.c: (cairo_test), (cairo_test_create_png_pattern):
-	* test/cairo-test.h: Switch to use cairo_surface_write_png rather
-	than a custom write_png_argb32.
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/create-for-png-ref.png:
-	* test/create-for-png.c: (draw), (main): Add test to exercise the
-	cairo_image_surface_create_for_png function.
-
-2005-04-04  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Remove items for PNG backend removal and trapezoid
-	reasterization re-implementation since they have been completed.
-
-2005-04-04  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c:
-	* src/cairo.h: Drop cairo_default_matrix since it is now always
-	identical to cairo_identity_matrix.
-
-	* src/cairo-gstate-private.h:
-	* src/cairo-gstate.c: (_cairo_gstate_init),
-	(_cairo_gstate_set_target_surface): Remove gstate->pixels_per
-	inch. Change default matrix to always be the identity matrix.
-
-	* src/cairo-glitz-surface.c:
-	* src/cairo-image-surface.c:
-	* src/cairo-pdf-surface.c:
-	* src/cairo-ps-surface.c:
-	* src/cairo-quartz-surface.c:
-	* src/cairo-surface.c:
-	* src/cairo-win32-surface.c:
-	* src/cairo-xcb-surface.c:
-	* src/cairo-xlib-surface.c:
-	* src/cairoint.h: Drop pixels_per_inch function from surface
-	backend interface as it is no longer needed.
-
-2005-04-02  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate.c: (_cairo_gstate_show_surface): Use the
-	current point to offset just the destination, not the source and
-	destination. With this fix, cairo_show_surface should work with
-	the current point at places other than the origin.
-
-	* test/Makefile.am: Move move-to-show-surface off the expected
-	failure list.
-
-	* test/move-to-show-surface.c: Add comment indicating that bug is
-	resolved.
-	
-	* test/testsvg: Don't use diff to compare images, just imagediff.
-
-2005-04-02  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h:
-	* src/cairo.c: (cairo_set_target_image), (cairo_text_extents),
-	(cairo_show_text), (cairo_text_path):
-	* src/cairo-image-surface.c: (cairo_image_surface_create_for_data):
-	* src/cairo-gstate.c: (_cairo_gstate_text_to_glyphs):
-	* src/cairo-font.c: (_cairo_font_create): Style and indentation
-	fixes.
-	
-	* src/cairo-ft-font.c: (_cairo_ft_font_create): Add (unsigned
-	char*) cast to quiet new gcc-4 warnings.
-
-	* src/cairo-ft-font.c: (_cairo_ft_font_glyph_extents): Initialize
-	variables to quiet new gcc-4 warnings.
-	
-	* src/cairo-pdf-surface.c: (cairo_pdf_ft_font_write_generic_table),
-	(cairo_pdf_ft_font_write_glyf_table):
-	* src/cairo-png.c: (cairo_surface_write_png),
-	(cairo_image_surface_create_for_png):
-	* src/cairo-xlib-surface.c: (_get_image_surface):
-	* src/cairo-ps-surface.c: (_cairo_ps_surface_copy_page):
-	Use unsigned char* as expected by freetype, libpng, Xlib, and zlib.
-
-	* src/cairoint.h:
-	* src/cairo-unicode.c: (_utf8_get_char), (_utf8_get_char_extended),
-	(_cairo_utf8_to_ucs4), (_cairo_utf8_to_utf16): Propagate unsigned
-	char* down from cairo_text_extents.
-
-2005-04-01  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Update API shakeup chart.
-
-	* src/cairo.h:
-	* src/cairo.c: (cairo_set_target_image_no_data): Add a standin for
-	the function that should be cairo_set_target_image which should
-	then have some other name. We can straighten that mess out when we
-	eliminate the set_target functions. Add deprecation alias for
-	cairo_current_pattern.
-
-	* src/cairoint.h:
-	* src/cairo-image-surface.c:
-	* src/cairo-surface.c: Deprecate cairo_surface_create_for_image in
-	favor of cairo_image_surface_create_for_data.
-
-2005-03-31  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo.c (cairo_set_target_png): Remove this function now
-	that the PNG backend is gone.
-
-2005-03-30  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Fix typo I had introduced into Jason's patch that
-	made configure fail.
-
-2005-03-30  Carl Worth  <cworth at cworth.org>
-	
-	A few fixes courtesy of Jason Dorje Short <jdorje at users.sf.net>:
-
-	* configure.in: Disable PS backend if zlib is not found.
-
-	* src/cairo-win32-font.c: (_cairo_win32_font_glyph_path): Fix
-	mistyped parameter.
-	
-	* src/cairo-win32-surface.c: (_cairo_win32_surface_finish): Fix
-	missing return value.
-
-2005-03-30  T Rowley  <tim.rowley at gmail.com>
-
-	* src/cairo-gstate.c (_cairo_gstate_stroke_extents): call
-	_cairo_pen_init so that the result takes into account the caps.
-
-2005-03-29  T Rowley  <tim.rowley at gmail.com>
-
-	* src/cairo-xlib.h: include Xlib.h to fix solaris build bustage.
-
-2005-03-29  T Rowley  <tim.rowley at gmail.com>
-
-	* src/cairo-wideint.h: add preprocessor tests for stdint.h/inttypes.h
-
-	* src/cairoint.h: add preprocessor tests for stdint.h/inttypes.h
-
-2005-03-29  T Rowley  <tim.rowley at gmail.com>
-
-	* configure.in: re-enable quartz backend
-
-	* src/cairo-quartz-surface.c: update to compilable/workable version
-
-	* src/cairo-atsui-font.c: update to compilable/workable version
-
-2005-03-29  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am:
-	* test/*_*.c: More _/- renames in the test directory.
-
-2005-03-28  Carl Worth  <cworth at cworth.org>
-
-	* src/Makefile.am:
-	* src/cairo_*.c: Renamed a bunch of files to use - rather than _
-	as a separator. Copy happened in the master repository to preserve
-	history, so this is just a big remove.
-
-2005-03-28  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Sorted API shakeup chart.
-
-2005-03-28  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo-png.c (cairo_image_surface_write_png) 
-	(cairo_image_surface_create_from_png): New PNG utility functions.
-
-	* src/cairo_pdf_surface.c, src/cairo-pdf.h: Reverse the naming of
-	the pdf constructors so the callback based ones have the long
-	names.
-
-2005-03-25  Jamey Sharp  <jamey at minilop.net>
-
-	* src/cairo-xcb.h:
-	* src/cairo_xcb_surface.c:
-	Fix "implicit declaration" warning in cairo.c by moving
-	cairo_xcb_surface_create prototype into cairo-xcb.h.
-
-2005-03-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-path-fixed-private.h:
-	* src/cairo_path.c: Clean up names of cairo_path internals.
-
-2005-03-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_path_fill.c: 
-	* src/cairo_path_stroke.c: Remove unneeded includes of
-	cairo-path-fixed-private.h.
-
-	* src/cairo_ft_font.c (_cairo_ft_font_glyph_path): Fix
-	indentation.
-
-2005-03-23  Carl Worth  <cworth at cworth.org>
-
-	* TODO: More updates to the API Shakeup chart.
-
-2005-03-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_path.c: (_cairo_path_fixed_init),
-	(_cairo_path_fixed_init_copy), (_cairo_path_fixed_fini),
-	(_cairo_path_fixed_move_to), (_cairo_path_fixed_rel_move_to),
-	(_cairo_path_fixed_line_to), (_cairo_path_fixed_rel_line_to),
-	(_cairo_path_fixed_curve_to), (_cairo_path_fixed_rel_curve_to),
-	(_cairo_path_fixed_close_path),
-	(_cairo_path_fixed_get_current_point), (_cairo_path_add),
-	(_cairo_path_add_op_buf), (_cairo_path_new_op_buf),
-	(_cairo_path_add_arg_buf), (_cairo_path_new_arg_buf),
-	(_cairo_path_fixed_interpret):
-	* src/cairo_path_bounds.c: (_cairo_path_fixed_bounds):
-	* src/cairo_path_fill.c: (_cairo_path_fixed_fill_to_traps):
-	* src/cairo_path_stroke.c: (_cairo_path_fixed_stroke_to_traps):
-	* src/cairoint.h: Rename cairo_path_real_t to cairo_path_fixed_t
-	and fix all _cairo_path functions to be named as _cairo_path_fixed
-	functions.
-
-	* src/cairo-gstate-private.h:
-	* src/cairo-path-fixed-private.h:
-	* src/cairo_font.c: (_cairo_font_glyph_path):
-	* src/cairo_ft_font.c: (_move_to), (_line_to), (_conic_to),
-	(_cubic_to), (_cairo_ft_font_glyph_path):
-	* src/cairo_gstate.c: (_cairo_gstate_init),
-	(_cairo_gstate_init_copy), (_cairo_gstate_fini),
-	(_cairo_gstate_new_path), (_cairo_gstate_move_to),
-	(_cairo_gstate_line_to), (_cairo_gstate_curve_to),
-	(_cairo_gstate_rel_move_to), (_cairo_gstate_rel_line_to),
-	(_cairo_gstate_rel_curve_to), (_cairo_gstate_close_path),
-	(_cairo_gstate_get_current_point), (_cairo_gstate_interpret_path),
-	(_cairo_gstate_stroke), (_cairo_gstate_in_stroke),
-	(_cairo_gstate_fill), (_cairo_gstate_in_fill),
-	(_cairo_gstate_stroke_extents), (_cairo_gstate_fill_extents),
-	(_cairo_gstate_clip), (_cairo_gstate_text_to_glyphs): Track name
-	change of cairo_path_real_t and _cairo_path_fixed functions.
-
-2005-03-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-path-data-private.h: Remove CAIRO_BEGIN_DECLS and
-	CAIRO_END_DECLS as they are not needed for private headers.
-	
-	* src/cairoint.h: Add ASSERT_NOT_REACHED macro.
-
-	* src/cairo.c: (cairo_get_path), (cairo_get_path_flat): Rewrite in
-	terms of cairo_copt_path and cairo_copy_path_flat in preparation
-	for removing cairo_gstate_interpret_path.
-
-2005-03-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-gstate-private.h:
-	* src/cairo-path-fixed-private.h:
-	* src/cairo-private.h:
-	* src/cairoint.h: Begin the process of breaking up cairoint.h,
-	moving structure definitions of cairo_t, cairo_gstate_t, and
-	cairo_path_real_t into their own header files.
-
-	* src/cairo.c:
-	* src/cairo_gstate.c:
-	* src/cairo_path.c:
-	* src/cairo_path_fill.c:
-	* src/cairo_path_stroke.c:
-	* src/cairo_pen.c: Track changes to header files, reaching into
-	the new private headers where necessary.
-
-2005-03-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c: (cairo_set_target_glitz), (cairo_set_target_pdf),
-	(cairo_set_target_pdf_as_file), (cairo_set_target_png),
-	(cairo_set_target_ps), (cairo_set_target_win32),
-	(cairo_set_target_xcb), (cairo_set_target_drawable): Move
-	surface-specific cairo_t functions to cairo.c.
-
-	* src/cairo_glitz_surface.c:
-	* src/cairo_pdf_surface.c:
-	* src/cairo_png_surface.c:
-	* src/cairo_ps_surface.c:
-	* src/cairo_win32_surface.c:
-	* src/cairo_xcb_surface.c:
-	* src/cairo_xlib_surface.c: Remove functions that have now moved
-	to cairo.c.
-
-	* test/.cvsignore: A few new files to ignore now with new
-	compilation mode using a libtool helper library.
-
-2005-03-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Add backwards-compatibility for recently renamed
-	functions.
-
-2005-03-21  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c:
-	* src/cairo_gstate.c: (_cairo_gstate_transform),
-	(_cairo_gstate_user_to_device),
-	(_cairo_gstate_user_to_device_distance),
-	(_cairo_gstate_device_to_user),
-	(_cairo_gstate_device_to_user_distance),
-	(_cairo_gstate_reset_clip):
-	* src/cairo_matrix.c:
-	* src/cairoint.h:
-	* src/cairo.h: Rename functions to eliminate abbreviations:
-	cairo_concat_matrix		-> cairo_transform
-	cairo_transform_point		-> cairo_user_to_device
-	cairo_transform_distance	-> cairo_user_to_device_distance
-	cairo_inverse_transform_point	-> cairo_device_to_user
-	cairo_inverse_transform_distance-> cairo_device_to_user_distance
-	cairo_init_clip			-> cairo_reset_clip
-
-2005-03-18  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Update API shakeup chart.
-
-2005-03-18  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-path-data-private.h: * src/cairo.c: (cairo_copy_path),
-	(cairo_copy_path_flat),
-	(cairo_append_path): Rename cairo_copy_path_data,
-	cairop_copy_path_data_flat, and cairo_append_path_data to
-	cairo_copy_path, cairo_copy_path_flat, and cairo_append_path.
-	
-	* src/cairo.h: Add new cairo_path_t, containing a
-	cairo_path_data_t array and an explicit length. Remove
-	CAIRO_PATH_END_PATH terminator from cairo_path_data_t.
-
-	* src/cairo_atsui_font.c: (_cairo_atsui_font_glyph_path):
-	* src/cairo_font.c: (_cairo_font_glyph_path):
-	* src/cairo_ft_font.c: (_move_to), (_line_to), (_conic_to),
-	(_cubic_to), (_cairo_ft_font_glyph_path):
-	* src/cairo_gstate.c: (_cairo_gstate_interpret_path):
-	* src/cairo_path.c: (_cairo_path_init), (_cairo_path_init_copy),
-	(_cairo_path_fini), (_cairo_path_move_to),
-	(_cairo_path_rel_move_to), (_cairo_path_line_to),
-	(_cairo_path_rel_line_to), (_cairo_path_curve_to),
-	(_cairo_path_rel_curve_to), (_cairo_path_close_path),
-	(_cairo_path_get_current_point), (_cairo_path_add),
-	(_cairo_path_add_op_buf), (_cairo_path_new_op_buf),
-	(_cairo_path_add_arg_buf), (_cairo_path_new_arg_buf),
-	(_cairo_path_interpret):
-	* src/cairo_path_bounds.c: (_cairo_path_bounds):
-	* src/cairo_path_data.c: (_cairo_path_data_count),
-	(_cairo_path_data_populate), (_cairo_path_data_create_real),
-	(cairo_path_destroy), (_cairo_path_data_append_to_context):
-	* src/cairo_path_fill.c: (_cairo_path_fill_to_traps):
-	* src/cairo_path_stroke.c: (_cairo_path_stroke_to_traps):
-	* src/cairoint.h:
-	* test/path_data.c: (munge_and_set_path), (draw), (main): Rename
-	the internal path object from cairo_path_t to cairo_path_real_t.
-
-2005-03-18  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_pdf_surface.c (cairo_set_target_pdf_as_file)
-	(cairo_set_target_pdf): Remove return statements from these
-	functions (bug #2137).
-
-2005-03-18  Carl Worth  <cworth at cworth.org>
-
-	* src/Makefile.am (libcairo_la_SOURCES): Remove unused
-	libcairo_freetype_sources (thanks to Damien Carbery). Closes bug
-	#2673.
-	
-2005-03-17  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_matrix.c (cairo_matrix_rotate): doc fix - 
-	90 degrees is MI_PI/2 radians.
-
-	* src/cairo.c src/cairo_matrix.c  src/cairo_ft_font.c
-	src/cairo_ps_surface.c src/cairo_quartz_surface.c
-	src/cairo_win32_font.c src/cairo_win32_surface.c
-	src/cairo_xlib_surface.c: Cairo is only capitalized
-	at the beginning of sentences.
-
-2005-03-17  Kristian Høgsberg  <krh at redhat.com>
-
-	From Tor Lillqvist <tml at novell.com>:
-
-	* test/cairo_test.c (cairo_test): Open output PNG files in binary
-	mode.
-
-2005-03-17  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo.h src/cairo_surface.c src/cairo-xlib.h
-	src/cairo_xlib_surface.c: Move cairo_xlib_surface_set_device_offset()
-	to a generic cairo_surface_set_device_offset().
-
-	* src/cairo_gstate.c: Take the surface's device offset into
-	account.
-
-	* doc/public/cairo-sections.txt: Update.
-
-2005-03-17  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_matrix.c: Fix the docs to to correctly describe
-	the order of transformation for muliply/scale/rotate/translate.
-	(cairo_matrix_translate): Fix translate/rotate typo in the
-	parameter descriptions.
-
-2005-03-17  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_output_stream.c: Forgot to add this file.
-
-2005-03-16  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_surface.c (_destroy_user_data)
-	(cairo_surface_set_user_data): Dont call user data destroy
-	function if it's NULL.
-
-	* test/user_data.c: (main): Add test case for user data with NULL
-	destroy function.
-
-2005-03-16  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/Makefile.am: Add cairo_output_stream.c
-
-	* src/cairo.h: Add new errors, CAIRO_STATUS_WRITE_ERROR and
-	CAIRO_STATUS_SURFACE_FINISHED, add cairo_surface_finish()
-	prototype, add cairo_write_func_t.
-
-	* src/cairo.c: Add strings for new errors, documentation fix.
-	
-	* src/cairo_win32_surface.c:
-	* src/cairo_xcb_surface.c:
-	* src/cairo_xlib_surface.c:
-	* src/cairo_glitz_surface.c:
-	* src/cairo_image_surface.c:
-	* src/cairo_png_surface.c:
-	* src/cairo_ps_surface.c: Rename surface destroy functions to
-	finish and change them to not free the surface.
-	
-	* src/cairo-pdf.h:
-	* src/cairo_pdf_surface.c: Change PDF surface constructors to take
-	a write function in the general case and add stdio convenience
-	constructors.  Change destroy function to finish for
-	cairo_pdf_surface.  Change implementation to use
-	cairo_output_stream_t functions for output.
-	
-	* src/cairo_font.c: (_cairo_font_show_glyphs): Use
-	_cairo_surface_show_glyphs instead of calling function pointer
-	directly.
-	
-	* src/cairoint.h: Add prototypes for cairo output stream
-	functions, rename destroy to finish in cairo_surface_backend_t and
-	add finished flag to cairo_surface_t.
-	
-	* src/cairo_surface.c: Add cairo_surface_finish() and call it from
-	cairo_surface_destroy().  Check the finished flag in
-	cairo_surface_t in functions that change the surface.
-
-2005-03-15  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-xlib.h src/cairo_xlib_surface.c: Rework set
-	of contructors for XLib surfaces. Add 
-	cairo_xlib_surface_set_size().
-
-	* src/cairo-xlib.h src/cairo_xlib_surface.c: Add
-	cairo_xlib_surface_set_device_offset().
-
-	* src/cairo_xlib_surface.c (cairo_xlib_surface_set_clip_region):
-	Rewrite for clarity and efficiency.
-
-	* src/cairo_xlib_surface.c (_get_image_surface): Use a 
-	temporary pixmap to avoid possible BadMatch when fetch
-	from windows.
-	
-	* src/cairo.[ch] src/cairo-xlib.h: Fix some parameter names
-	for the docs.
-
-	* doc/public/cairo-sections.txt: Update
-
-2005-03-14  Carl Worth  <cworth at cworth.org>
-
-	* test/path_data-ref.png: Add reference image.
-
-2005-03-14  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am: Fixes to force tests to run against locally
-	compiled version (thanks to Manish Singh).
-
-2005-03-11  Carl Worth  <cworth at cworth.org>
-
-	* doc/public/cairo-sections.txt:
-	* doc/public/tmpl/cairo-surface.sgml:
-	* doc/public/tmpl/cairo.sgml: Added some documentation, so we get
-	some churn here.
-	
-	* src/cairo.c:
-	* src/cairo.h: New functions: cairo_copy_path_data,
-	cairo_copy_path_data_flat, and cairo_append_path_data.
-
-	* src/Makefile.am:
-	* src/cairo-path-data-private.h:
-	* src/cairo_path_data.c: Add new implementation for
-	cairo_copy_path_data and cairo_append_path_data.
-
-	* test/Makefile.am:
-	* test/path_data.c: New test for new path_data functions.
-
-2005-03-10  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_surface.c (_destroy_user_data): Add this function and
-	call it on surface destruction.
-
-2005-03-10  Kristian Høgsberg  <krh at redhat.com>
-
-	* test/user_data.c (main): Fix assert()'s using = instead of ==.
-
-	* test/cairo_test.c (cairo_test): Move xunlink call below the
-	xasprintf that builds the filename to unlink.
-
-2005-03-10  Carl Worth  <cworth at cworth.org>
-
-	* TODO: API Shakeup status update.
-
-2005-03-10  Carl Worth  <cworth at cworth.org>
-
-	Originally: 2005-02-24  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_surface.c (cairo_surface_set_user_data) 
-	(cairo_surface_get_user_data): 
-	* src/cairo.h: Add const qualifier to cairo_user_data_key_t
-	arguments.
-
-	Originally: 2005-02-15  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_surface.c (cairo_surface_get_data, cairo_surface_set_data):
-	Add these two functions to set and get user data on an surface.
-	
-	* src/cairo.h: Function prototypes for new functions.
-	
-	* test/user_data.c: Test case for user data functions.
-
-2005-03-09  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo_test.c (cairo_test): Move filename initialization up
-	to before first use.
-
-	* test/get_and_set.c: 
-	* test/Makefile.am: Add test for the most trivial cairo_get and
-	cairo_set functions.
-
-2005-03-09  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo_test.c: (cairo_test):
-	* test/cairo_test.h:
-	* test/clip_twice.c: (draw):
-	* test/coverage.c: (draw):
-	* test/fill_rule.c: (draw):
-	* test/leaky_polygon.c: (draw):
-	* test/line_width.c: (draw):
-	* test/linear_gradient.c: (draw):
-	* test/move_to_show_surface.c: (draw):
-	* test/pixman_rotate.c: (draw):
-	* test/text_cache_crash.c: (draw):
-	* test/text_rotate.c: (draw): Change the draw function under test
-	to return a cairo_test_status_t so that it can indicate test
-	failure even if there is no result image.
-
-2005-03-09  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Update API Shakeup planning chart.
-	fix typos.
-
-2005-03-09  Carl Worth  <cworth at cworth.org>
-
-	* doc/public/cairo-sections.txt:
-	* src/cairo.c: (cairo_get_pattern), (cairo_get_font),
-	(cairo_get_font_extents), (cairo_get_operator),
-	(cairo_get_rgb_color), (cairo_get_alpha), (cairo_get_tolerance),
-	(cairo_get_current_point), (cairo_get_fill_rule),
-	(cairo_get_line_width), (cairo_get_line_cap),
-	(cairo_get_line_join), (cairo_get_miter_limit), (cairo_get_matrix),
-	(cairo_get_target_surface), (cairo_get_path),
-	(cairo_get_path_flat):
-	* src/cairo.h:
-	* src/cairo_ft_font.c: (_conic_to):
-	* src/cairo_gstate.c: (_cairo_gstate_get_target_surface),
-	(_cairo_gstate_get_pattern), (_cairo_gstate_get_operator),
-	(_cairo_gstate_get_rgb_color), (_cairo_gstate_get_tolerance),
-	(_cairo_gstate_get_alpha), (_cairo_gstate_get_fill_rule),
-	(_cairo_gstate_get_line_width), (_cairo_gstate_get_line_cap),
-	(_cairo_gstate_get_line_join), (_cairo_gstate_get_miter_limit),
-	(_cairo_gstate_get_matrix), (_cairo_gstate_get_current_point),
-	(_cairo_gstate_show_surface), (_cairo_gstate_get_font),
-	(_cairo_gstate_get_font_transform), (_cairo_gstate_get_font_scale),
-	(_cairo_gstate_ensure_font), (_cairo_gstate_get_font_extents),
-	(_cairo_gstate_text_to_glyphs):
-	* src/cairo_path.c: (_cairo_path_get_current_point):
-	* src/cairoint.h:
-	* test/pixman_rotate.c: (draw):Rename all the cairo_current
-	functions to cairo_get functions instead. Add documentation for
-	all of these functions (and a few others as well).
-
-	Add support so that old binarys should still run and old source
-	should still compile, (though we'll rip that out again on the API
-	Shakeup flag day).
-
-2005-03-08  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Add -head to CAIRO_VERSION after tagging with
-	SNAPSHOT_0_4_0.
-
-2005-03-08  Carl Worth  <cworth at cworth.org>
-
-	* gtk-doc.make (dist-check-gtkdoc): Commit workaround to prevent
-	make distcheck from making bogus complaints that gtk-doc is not
-	enabled.
-
-	* test/cairo_test.c (cairo_test_create_png_pattern): Look for png
-	images in ${srcdir}/filename as well, so that make distcheck can
-	still find them.
-
-	* test/Makefile.am (EXTRA_DIST): Add romedalen.png to EXTRA_DIST
-	so the tests can pass from the tar file.
-
-	* doc/public/cairo-sections.txt: Fix typo: cairo-win3 ->
-	cairo-win32.
-
-	* doc/public/cairo-docs.xml: Add cairo-win32.xml to the list, so
-	it gets generated as well.
-
-	* NEWS (http): Add pointer to new win32 documentation.
-
-	* configure.in: Increment CAIRO_VERSION to 0.4.0
-
-	* NEWS: Added notes for snapshot 0.4.0
-
-2005-03-08  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo_test.c (xunlink): Shared function for checking unlink
-	errrors.
-	(cairo_test): Move all error messages to test-specific log files
-	for quieter test output.
-
-	* test/Makefile.am (XFAIL_TESTS): Make pixman_rotate an expected
-	failure.
-
-	* configure.in: Require libpixman >= 0.1.4.
-
-2005-03-08  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_pdf_surface.c (_cairo_pdf_surface_composite): Return
-	CAIRO_STATUS_SUCCESS even if we don't implement masks yet, so we
-	don't set cr->status to CAIRO_INT_STATUS_UNSUPPORTED.
-
-2005-03-07  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_traps.c: Disable the "new" intersection code so that
-	the incorrect fill problems (test/fill_rule) go away.
-
-	* configure.in: Make configure fail if no font backend is
-	available. Point the user at freetype and fontconfig.
-
-2005-03-06  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_pattern.c (_cairo_image_data_set_linear): Comment
-	and clean up the gradient computation.
-	(_cairo_linear_pattern_classify): Determine if a linear
-	gradient is horizontal or vertical.
-	(_cairo_pattern_acquire_surface_for_gradient): Optimize
-	horizontal/vertical gradients with a repeating surface.
-
-	* test/linear_gradient.c: Test case for linear gradients
-	at angles and with a rotated pattern matrix.
-
-2005-03-06  David Reveman  <davidr at novell.com>
-
-	* src/cairo_glitz_surface.c (_cairo_glitz_pattern_acquire_surface): 
-	Do not allow acceleration of gradients when color stops have different
-	alpha. Add note about the current state of glitz's gradient
-	acceleration. CAIRO_FILTER_GOOD and CAIRO_FILTER_BEST is ok.
-	(_cairo_glitz_surface_composite_trapezoids): Use unsigned short for
-	alpha. 
-
-2005-03-04  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_win32_font.c src/cairo_win32_surface.c: Update
-	for recent backend interface changes.
-
-	* configure.in: Reenable win32 backend by default.
-
-2005-03-04  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_glitz_surface.c
-	(_cairo_glitz_pattern_acquire_surface): Fix accidental reversal of
-	condition in previous patch.
-
-2005-03-04  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairoint.h src/cairo_pattern.c src/cairo_glitz_surface.c:
-	Add _cairo_pattern_is_opaque, use it rather than 
-	pattern->alpha == 1.0.
-
-2005-03-04  David Reveman  <davidr at novell.com>
-
-	* configure.in: Enable xcb backend.
-
-	* src/cairo_xcb_surface.c: Update xcb backend.
-
-	* configure.in: Fixed variable assignments.
-
-	* src/cairo_glitz_surface.c: Add overall alpha acceleration
-	to a few cases not covered by _cairo_pattern_acquire_surfaces but
-	possible to accelerate by glitz.
-
-	* src/cairo_pattern.c: 
-	(_cairo_pattern_acquire_surfaces): Add overall alpha acceleration
-	using mask surface.
-
-	* src/cairoint.h: 
-	Add convenience function _cairo_pattern_acquire_surfaces.
-
-	* src/cairo_xlib_surface.c: 
-	* src/cairo_surface.c: 
-	* src/cairo_ps_surface.c: 
-	* src/cairo_png_surface.c: 
-	* src/cairo_pdf_surface.c: 
-	* src/cairo_pattern.c: 
-	* src/cairo_image_surface.c: 
-	* src/cairo_gstate.c: 
-	* src/cairo_glitz_surface.c: 
-	* src/cairo_ft_font.c (_cairo_ft_font_show_glyphs): Mask to composite
-	operation is now passed as a pattern.
-
-	* src/cairoint.h: 
-	* src/cairo_xlib_surface.c: 
-	(_cairo_xlib_surface_set_matrix): Setting identity transform should
-	always be successful.
-
-	* src/cairo_surface.c: 
-	* src/cairo_ps_surface.c: 
-	* src/cairo_png_surface.c: 
-	* src/cairo_pdf_surface.c: 
-	* src/cairo_image_surface.c: 
-	* src/cairo_glitz_surface.c: Removed surface backend functions
-	set_matrix, set_filter, set_repeat.
-
-	* configure.in: Enabled glitz backend.
-
-	* src/cairo_glitz_surface.c: Major update to glitz backend. The output
-	quality should now be just as good as the image and xlib backends.
-
-	* configure.in: Disabled win32 and quartz backends as they are now
-	temporarily out of sync.
-
-	* src/cairoint.h: Replaced old cairo_pattern_t struct with new
-	cairo_surface_t like structure of cairo_pattern_t.
-	Added new function prototypes for acquiring a source surface from
-	a pattern.
-
-	* src/cairo_xlib_surface.c: 
-	(_cairo_xlib_surface_composite): Removed fast path that used XCopyArea.
-
-	* src/cairo_ps_surface.c: 
-	* src/cairo_pdf_surface.c: 
-	* src/cairo_image_surface.c: 
-	* src/cairo_gstate.c: Switched to cairo_surface_t like structure
-	of cairo_pattern_t and new interface for acquiring a source 
-	surface from a pattern.
-
-	* src/cairo_pattern.c: New implementations of many functions. This was
-	necessary because of switch to cairo_surface_t like structure of
-	cairo_pattern_t. Includes new interface for acquiring a source 
-	surface for a pattern. Things that didn't belong in cairoint.h have
-	been moved here.
-
-	* src/cairo_gstate.c (_cairo_gstate_show_surface): Inherit surface 
-	attributes while surface attribute functions still exist.
-
-2005-03-01  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Note that cairo_output_stream_t patch has been reviewed.
-
-2005-03-01  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_gstate.c (_cairo_gstate_show_surface): Fix
-	uninitialized value for status, (reported by Manish Singh).
-
-2005-02-27  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_gstate.c (_cairo_rectangle_intersect): Fix this
-	function again.  Problem with signed/unsigned types reported by
-	Jeff Muizelaar <jrmuizel at nit.ca>.
-
-2005-02-27  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo.h (cairo_fill_rule_t): Remove newline in comment which
-	was confusing gtk-doc.
-
-	* src/cairo_image_surface.c (cairo_image_surface_create_for_data) 
-	(cairo_image_surface_create): Document these functions.
-
-2005-02-25  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Note that "user data" and "setters and getters" patches
-	have been reviewed. Remove a few more TODO notes:
-		cleanup cairo_snippets: DONE
-		cairo_surface_finish: Now in API Shakeup
-		snapping code: Decided against this
-
-2005-02-25  Carl Worth  <cworth at cworth.org>
-
-	From David Reveman:
-
-	* src/cairo_matrix.c (_cairo_matrix_is_integer_translation):
-	Rewrite to use cairo_bool_t for legibility.
-
-2005-02-25  Carl Worth  <cworth at cworth.org>
-
-	From David Reveman:
-	
-	* src/cairo_gstate.c (_cairo_gstate_show_surface): Simplify code
-	to eliminate a goto.
-
-2005-02-25  Carl Worth  <cworth at cworth.org>
-
-	From David Reveman:
-	
-	* src/cairo_gstate.c (_cairo_gstate_pattern_init_copy):
-	(_cairo_gstate_clip_and_composite_trapezoids) 
-	(_cairo_gstate_clip_and_composite_trapezoids) 
-	(_cairo_gstate_show_surface, _cairo_gstate_show_glyphs) 
-	(_cairo_gstate_show_glyphs): Clean up the mess that was
-	the misnamed _cairo_gstate_create_pattern.
-
-2005-02-25  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_pattern.c (_cairo_pattern_shader_init): Don't put an
-	off-by-one n_stops into cairo_shader_op_t.
-	(_cairo_shader_op_find_color_stops): Put search for two color
-	stops containing a given offset into its own function. Handle the
-	case of before first and after last stop by returning the nearest
-	stop twice.
-	(_cairo_pattern_calc_color_at_pixel): Handle case of no color
-	stops by returning a transparent pixel.
-
-2005-02-24  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_win32_surface.c: Remove a left-over debug printf.
-
-2005-02-24  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_pattern.c (cairo_pattern_add_color_stop): Fix memory
-	leak when realloc fails due to out-of-memory.
-
-2005-02-24  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_win32_surface.[ch]: Instead of counting
-	on ordering deletion to work (apparently it didn't on
-	older Windows), save the initial bitmap created
-	with the DC and reselect that into the DC. (Based
-	on a patch by Hans Breuer)
-
-2005-02-24  Carl Worth  <cworth at cworth.org>
-
-	* test/.cvsignore: Add pixman_rotate to ignore list.
-
-2005-02-24  Carl Worth  <cworth at cworth.org>
-
-	Fixes from David Reveman with minor cleanups by Carl Worth:
-
-	* src/cairo_gstate.c (_cairo_gstate_create): Handle new failure
-	possibility of _cairo_gstate_init.
-	(_cairo_gstate_init): Handle possible failure of
-	_cairo_pattern_create_solid.
-	(_cairo_gstate_set_pattern): Reference new pattern before
-	destroying existing pattern to handle the case where they are the
-	same.
-	(_cairo_gstate_set_rgb_color): Handle possible failure of
-	_cairo_pattern_create_solid.
-
-2005-02-24  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.h: Fix typo (pointed out by Kristian Høgsberg).
-
-2005-02-24  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_win32_surface.c (_cairo_win32_surface_destroy): 
-	When we created a DC/bitmap pair, delete the DC before
-	the Bitmap so that the Bitmap will be released from the
-	DC and can be destroyed. (Reported by Hans Breuer)
-
-	* configure.in cairo.pc.in: Only require fontconfig
-	if building FreeType font backend.
-
-	* configure.in: Fix output when reporting Win32 font backend.
-
-2005-02-24  Carl Worth  c<worth at cworth.org>
-
-	* TODO: Remove many TODO items that have now been absorbed by the
-	API shakeup. Remove comparison with PostScript as there's nothing
-	interesting there left unimplemented, (and cairo is already
-	establishing its own conventions in naming and behavior that
-	deviate from PostScript).
-
-	* src/cairoint.h: Fix typo (pointed out by Mike Emmel)
-
-2005-02-23  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Add entries from API Shakeup.
-
-2005-02-22  Carl Worth  <cworth at cworth.org>
-
-	* README:
-	* src/cairo-features.h.in:
-	* src/cairo-glitz.h:
-	* src/cairo-pdf.h:
-	* src/cairo-png.h:
-	* src/cairo-ps.h:
-	* src/cairo-quartz.h:
-	* src/cairo-xcb.h:
-	* src/cairo-xlib.h:
-	* src/cairo.c:
-	* src/cairo.h:
-	* src/cairo_color.c:
-	* src/cairo_fixed.c:
-	* src/cairo_font.c:
-	* src/cairo_gstate.c:
-	* src/cairo_hull.c:
-	* src/cairo_image_surface.c:
-	* src/cairo_matrix.c:
-	* src/cairo_path.c:
-	* src/cairo_path_bounds.c:
-	* src/cairo_path_fill.c:
-	* src/cairo_path_stroke.c:
-	* src/cairo_pen.c:
-	* src/cairo_png_surface.c:
-	* src/cairo_polygon.c:
-	* src/cairo_ps_surface.c:
-	* src/cairo_slope.c:
-	* src/cairo_spline.c:
-	* src/cairo_surface.c:
-	* src/cairo_traps.c:
-	* src/cairo_xcb_surface.c:
-	* src/cairo_xlib_surface.c:
-	* src/cairoint.h: Switch from broken cworth at isi.edu address to
-	canonical cworth at cworth.org address.
-
-2005-02-22  Carl Worth  <cworth at cworth.org>
-
-	* test/write_png.c: 
-	* src/cairo-atsui.h: 
-	* src/cairo_atsui_font.c: Convert to utf-8 encoding.
-
-2005-02-22  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Temporarily disable XCB backend by default.
-
-2005-02-21  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_pattern.c (cairo_pattern_reference): 
-	* src/cairo.h: Revert accidental commit.
-
-2005-02-21  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_surface.c (_fallback_composite_trapezoids): Fix y
-	offset to use dst_y instead of dst_x, (caught by David Reveman).
-
-2005-02-20  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo-win32.h: Fix line endings (reported by
-	Hans Breuer)
-
-2005-02-16  Kristian Høgsberg  <krh at redhat.com>
-
-	Patches from Mike Owens <etc at filespanker.com>:
-	
-	* src/cairo_png_surface.c (_cairo_png_surface_copy_page): Free
-	rows if we fail early in this function.
-
-	* src/cairo_path.c (_cairo_path_init_copy): Clean up path if we
-	run out of memory.
-
-2005-02-13  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_pdf_surface.c
-	(_cairo_pdf_surface_create_for_document): Initialize array element
-	size correctly.
-
-2005-02-10  Kristian Høgsberg  <krh at redhat.com>
-
-	Patches from Owen Taylor:
-
-	* src/cairo_pdf_surface.c 
-	(_cairo_pdf_surface_show_glyphs): Emit text as octal escapes, 
-	to avoid problems with \, \r, ), etc.
-	(_cairo_pdf_document_write_fonts): Change /Flags to be 4 (symbolic), 
-	not 32 (non-symbolic), otherwise acroread gets confuse.
-	(cairo_pdf_ft_font_write_cmap_table): Use a 1,0 cmap subtable,
-	not a 0,0, to conform to the PDF spec.
-
-2005-02-13  Carl Worth  <cworth at cworth.org>
-
-	* autogen.sh (LC_NUMERIC): Use LC_NUMERIC=C so that decimal
-	separator works in version checks.
-
-2005-02-12  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_gstate.c (_cairo_gstate_clip_and_composite_trapezoids): Fix
-	x2/x1 typo.
-
-2005-02-12  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo.c (cairo_text_extents): Return all-zero extents if
-	string is NULL.
-
-2005-02-12  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_gstate.c
-	(_cairo_gstate_clip_and_composite_trapezoids): Make clipping fast
-	path fast.  When we have a clipping region set, intersect it
-	against the drawing extents to determine the bounding box for the
-	visible drawing.
-
-2005-02-10  Carl Worth  <cworth at cworth.org>
-
-	* BUGS: Add bug for cairo_show_surface under non-default CTM.
-
-2005-02-07  Kristian Høgsberg  <krh at redhat.com>
-
-	* test/pixman_rotate.c, test/pixman_rotate-ref.png: New test case
-	which exposes off-by-one rotation error in pixman.
-
-2005-02-06  Owen Taylor  <otaylor at redhat.com>
-
-        * src/cairo_gstate.c src/cairo.c: Allow cairo_set_font (cr, NULL)
-        to unset the current font and return the cairo_t to the the
-        "use the font from cairo_select_font() state".
-
-2005-02-06  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_win32_font.c (_cairo_win32_font_text_to_glyphs): 
-	Return the right status. (Reported by Hans Breuer.)
-
-2005-02-06  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_win32_font.c (_cairo_win32_font_text_to_glyphs): Free
-	glyph_indices, not glyphs. (Reported by Hans Breuer.)
-
-2005-02-05  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Add message stating why glitz backend is disabled.
-
-2005-02-05  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_ft_font.c (_cairo_ft_font_text_to_glyphs): 
-	Don't free *glyphs when succeeding! (Reported by Øyvind Kolås)
-
-	* configure.in: Temporarily disable glitz by default.
-
-2005-02-04  Carl Worth  <cworth at cworth.org>
-
-	* src/Makefile.am: Generate an error during make install if old
-	cairo headers are found in includedir, (rather than
-	includedir/cairo where the new ones are going).
-
-2005-02-03  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_ft_font.c (_cairo_ft_font_text_to_glyphs,
-	_cairo_ft_font_create_glyph): Fix missing cairo_ft_font_unlock_face().
-
-	* src/cairo_cache.c (_cairo_cache_random_entry): Fix problem
-	when no entry could be found.
-
-2005-02-03 Owen Taylor <otaylor at redhat.com>
-
-	* src/cairo_font.c src/cairo.h doc/public/cairo-sections.txt:
-	Add cairo_font_extents().
-
-	* src/cairo_win32_font.c src/cairo-win32.h doc/public/cairo-sections.txt:
-	Rename cairo_font_create_for_logfont() into
-	cairo_font_create_for_logfontw() to make clear what it takes. 
-	Don't add cairo_font_create_for_logfonta() for now.
-
-2005-02-02  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_win32_font.c doc/public/cairo-sections.txt
-	doc/public/Makefile.am: Add windows functions to the docs.
-
-2005-02-02  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_win32_font.c (cairo_win32_font_select_font,
-	cairo_win32_release_font, cairo_win32_font_get_scale_factor):
-	Add some functions to select the font into a device context
-	with the intention to enable callers to use, e.g, Uniscribe.
-
-	* src/cairo_win32_font.c: Use 'hdc' not 'dc' for param/variable
-	name.
-
-2005-02-02 Owen Taylor <otaylor at redhat.com>
-
-	* src/cairo_win32_font.c (cairo_win32_font_select_font,
-	cairo_win32_release_font, cairo_win32_font_get_scale_factor):
-	Add some functions to select the font into a device context
-	with the intention to enable callers to use, e.g, Uniscribe.
-
-	* src/cairo_win32_font.c: Use 'hdc' not 'dc' for param/variable
-	name.
-
-	* src/cairo_win32_font.c (_cairo_win32_font_show_glyphs): Return
-	immediately if height or width is 0.
-
-2005-02-02 Owen Taylor <otaylor at redhat.com>
-
-	* src/cairo_win32_font.c: Mostly-functioning Win32 font backend;
-	no glyph paths yet.
-
-	* configure.in: Turn on building of the Win32 font backend.
-
-	* src/cairo-win32-private.h src/Makefile.am: Private header for
-	the Win32 backend.
-
-	* src/cairo-win32-private.h src/cairo_win32_surface.c: 
-	Internally export _cairo_win32_print_gdi_error() for use
-	in the font code.
-
-	* src/cairo-win32-private.h src/cairo_win32_surface.c: 
-	Add _cairo_win32_surface_create_dib to create a DIB surface.
-
-	src/cairo-win32-private.h src/cairo_win32_surface.c: 
-	Add _cairo_surface_is_win32()
-
-	* configure.in: Check for vasnprintf.
-
-	* test/cairo_test.c (xasprintf): Add a simple fixed-buffer size
-	snprintf fallback in the absence of vasnprintf.
- 
-2005-02-01  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_pdf_surface.c (_cairo_pdf_surface_composite): Pretend
-	we support compositing of solid color or gradient patterns to
-	prevent image fallback.
-	(emit_pattern): New function, code factored out from
-	_cairo_pdf_surface_composite_trapezoids.
-	(_cairo_pdf_surface_show_glyphs): Use emit_pattern here so we get
-	pattern support for text.
-
-	* src/cairo_ft_font.c (_cairo_ft_font_get_unscaled_font): Fix typo.
-
-2005-02-01  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_unicode.c src/cairoint.h src/Makefile.am: Add
-	_cairo_utf8_to_utf16(), _cairo_utf8_to_ucs4() based on code from GLib.
-
-	* src/cairo.[ch]: Add CAIRO_STATUS_INVALID_STRING
-
-	* src/cairo_ft_font.c: Use _cairo_utf8_to_ucs4().
-
-	* src/cairo.h: Add cairo_bool_t
-
-	* src/cairoint.h: Add TRUE/FALSE definitions.
-
-	* src/cairo.[ch] src/cairoint.h src/cairo_gstate.c: switch
-	cairo_in_stroke/cairo_in_fill and all the functions used to
-	implement them over to cairo_bool_t.
-
-2005-01-31  Owen Taylor  <otaylor at redhat.com>
-
-	* configure.in src/cairo-features.h.in: Add a check for the
-	Windows platform and --enable-win32. Also add some (currently
-	always off) stubs for native Win32 fonts.
-
-	* configure.in: Make building the PDF backend conditional
-	on having FreeType.
-
-	* src/Makefile.am src/cairo_win32_surface.c src/cairo_win32_font.c
-	src/cairo-win32.h: Add a Win32 backend using GDI and software
-	fallbacks Font code is not yet there yet, but it works with the
-	fontconfig backend.
-
-	* src/cairo_gdip_font.cpp src/cairo_gdip_surface.cpp: Remove
-	remnants of a GDI+ based backend.
-
-	* src/cairoint.h: Prefer platform-specific font backends
-	to the fontconfig backend.
-
-2005-01-31  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairoint.h src/cairo_image_surface.c 
-	src/cairo_pdf_surface.c src/cairo_png_surface.c
-	src/cairo_surface.c src/cairo_xlib_surface.c: Replace
-	the get_image()/set_image() backend operations with
-	a more specific {acquire,release}_{source,dest}_image()
-	and clone_similar().
-
-	* src/cairoint.h src/cairo_pattern.c: Replace
-	_cairo_pattern_get_surface() with a 
-	_cairo_pattern_begin_draw()/_cairo_pattern_end_draw() pair.
-
-	* src/cairo_image_surface.c: Save the format for which
-	an image is created so we can access it later. (Needed
-	for the _cairo_xlib_surface_clone_similar())
-
-	* src/cairoint.h src/cairo_image_surface.c: 
-	Add _cairo_surface_is_image().
-
-	* src/cairoint.h: Add CAIRO_OK(status) to check
-	for CAIRO_STATUS_SUCCESS.
-
-	* src/cairo_xlib_surface.c: In the absence of of 
-	RENDER, make cairo_xlib_surface_create_similar()
-	return an image surface.
-
-	* src/cairo_xlib_surface.c: Don't try to use RENDER
-	to composite glyphs in the absence of the RENDER
-	extension.
-
-2005-01-30  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_ps_surface.c (_cairo_ps_surface_copy_page): Update
-	composite-over-white code to use a pattern, not a surface. 
-	(to match _cairo_surface_composite API change.)
-
-2005-01-30  Owen Taylor  <otaylor at redhat.com>
-
-	Fixes from David Reveman:
-
-	* src/cairo_pattern.c (_cairo_pattern_save/restore_surface): Don't
-	save to surface part of the union when the pattern isn't a surface
-	pattern.
-	(_cairo_pattern_get_surface): Create the new surface at the width
-	and height of the source.
-
-	* src/Makefile.am (libcairo_ft_sources): Add cairo-ft-private.h
-
-2005-01-28  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_png_surface.c (_cairo_png_surface_composite): Update
-	prototype to eliminate warning.
-
-	* src/cairo_pattern.c (_cairo_pattern_init_copy): Remember to
-	reference surfaces when copying patterns.
-
-	* src/cairo_gstate.c: (_cairo_rectangle_intersect),
-	(_cairo_gstate_clip_and_composite_trapezoids),
-	(_cairo_gstate_clip), (_cairo_gstate_show_glyphs): Don't call
-	_gstate_create_pattern for internally created patterns.
-	(_cairo_gstate_show_surface): Don't change the surface matrix
-	here, it's done later when we set it up as a pattern.
-
-	* test/Makefile.am: Correct clip_twice-ref.png filename.
-
-	* src/cairoint.h (MIN, MAX): Add these.
-	
-	* src/cairo_gstate.c (_cairo_rectangle_intersect): Fix broken
-	intersection code.
-
-2005-01-27  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_pattern.c (_cairo_pattern_get_surface): Make sure we
-	always return a surface similar to dst in the gradient case.
-	
-	* src/cairo_pattern.c (_cairo_pattern_get_surface): Fold
-	_cairo_pattern_get_image into _cairo_pattern_get_surface and make
-	sure we always return a surface of the same type as dest.
-
-	* src/cairo_glitz_surface.c (_cairo_glitz_composite),
-	(_cairo_glitz_surface_composite_trapezoids): Use
-	_cairo_pattern_get_surface instead of _cairo_pattern_get_image.
-	
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_show_glyphs),
-	(_cairo_xlib_surface_composite)
-	(_cairo_xlib_surface_composite_trapezoids): Remove use of
-	_cairo_xlib_surface_clone_similar since _cairo_pattern_get_surface
-	always gives us an xlib surface for the pattern.  Clean up error
-	handling code in _cairo_xlib_surface_show_glyphs.
-	
-	* src/cairo_image_surface.c (_cairo_image_surface_composite):
-	(_cairo_image_surface_composite_trapezoids): Add missing
-	cairo_surface_destroy and tidy up offset calculations as suggested
-	by Owen.
-
-	* src/cairoint.h (cairo_clip_rect_t): 
-	* src/cairo_gstate.c (_cairo_gstate_clip_and_composite_trapezoids)
-	(_cairo_gstate_clip, _cairo_gstate_show_glyphs): Simplify code for
-	computing the extents of clipping area, by introducing a couple of
-	cairo_rectangle_t functions.
-
-2005-01-27  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo.[ch] src/cairo_font.c src/cairo_ft_font.c
-	src/cairo_ps_surface.c src/cairo_xlib_surface.c: Move
-	docs from docs/reference, with a fair bit of addition
-	and rewriting.
-
-	* doc/reference/: Remove old-format docs.
-
-	* configure.in: Add a AC_PREREQ(2.54) (Jason Dorje Short)
-
-2005-01-27  Kristian Høgsberg  <krh at redhat.com>
-
-	* test/coverage-ref.png:
-	* test/clip_twice-ref.png:
-	Update these two once again, this time generated using
-	libpixman-0.1.3 without leaky circles.
-
-2005-01-27  Owen Taylor  <otaylor at redhat.com>
-
-	* configure.in Makefile.am docs/Makefile.am docs/public/*: 
-	Add framework for doing docs via gtk-doc.
-
-	* src/cairo.[ch] src/cairo-matrix.c: Add some inline docs
-	for arcs and matrices.
-
-	* gtk-doc.m4 acinclude.m4: Check in files from gtk-doc
-	to make the dependency on gtk-doc optional.
-
-	* autogen.sh (LANG): Add --enable-gtk-doc to the default
-	args.
-
-2005-01-27  Kristian Høgsberg  <krh at redhat.com>
-
-	* test/write_png.c (unpremultiply_data): 
-	* test/read_png.c (premultiply_data):
-	Fix missing rounding in these two functions.
-
-	* test/coverage-ref.png:
-	* test/clip_twice-ref.png:
-	Update these to versions with properly rounded alpha values.
-	
-	* test/Makefile.am: Move clip_twice out of XFAIL now that rounding
-	works.
-	
-	* test/.cvsignore: Add new test cases.
-
-2005-01-27  Kristian Høgsberg  <krh at redhat.com>
-
-	The overall idea of this rewrite is that we want to pass the
-	source pattern all the way down into the backends.  The motivation
-	for this is that not all backends want a surface for the source
-	operand, and by passing the pattern down, backends can choose to
-	convert it to a surface if they need that.
-
-	The patch removes the create_surface function pointer from the
-	surface vtable and moves much of that code into a couple of helper
-	functions.  The composite, compsite_trapezoids, and show_glyphs
-	backend functions are updated to take a cairo_pattern_t instead of
-	a surface as the source.
-	
-	* src/cairo_font.c: (_cairo_font_show_glyphs):
-	* src/cairo_gstate.c: (_cairo_gstate_create_pattern),
-	(_cairo_gstate_clip_and_composite_trapezoids),
-	(_cairo_gstate_clip), (_cairo_gstate_show_surface),
-	(_cairo_gstate_show_glyphs):
-	Change these functions to not create a surface for the pattern and
-	just pass the pattern down to the backend functions.
-	
-	* src/cairo_gstate.c: (translate_traps):
-	New function to translate a set of trapezoids.
-	
-	* src/cairo_pattern.c:
-	(_cairo_pattern_init),
-	(_cairo_pattern_init_copy),
-	(_cairo_pattern_prepare_surface),
-	(_cairo_pattern_restore_surface):
-	Break out the code to adjust and restore surface transformation
-	and repeat settings into _cairo_pattern_prepare_surface and
-	_cairo_pattern_restore_surface.
-	
-	* src/cairo_pattern.c: (_cairo_pattern_fini),
-	(_cairo_pattern_init_for_surface),
-	(cairo_pattern_create_for_surface):
-	Split cairo_pattern_create_for_surface into an init function and a
-	create function.
-	
-	* src/cairo_pattern.c: (_cairo_pattern_get_image),
-	(_cairo_pattern_get_surface):
-	Utility functions to create a surface from a pattern.
-
-	* src/cairo_ft_font.c:
-	* src/cairo_image_surface.c: 
-	* src/cairo_pdf_surface.c:
-	* src/cairo_png_surface.c:
-	* src/cairo_ps_surface.c: 
-	* src/cairo_xlib_surface.c:
-	* src/cairo_glitz_surface.c:
-	Update these backends to work with the new pattern API.  Glitz
-	work by David Reveman.
-	
-	* src/cairo_surface.c: (_cairo_surface_composite),
-	(_cairo_surface_composite_trapezoids),
-	(_cairo_surface_set_clip_region):
-	Update these to pass through the new set of args.
-	
-	* test/coverage-ref.png:
-	Update this reference image as we now render it correctly.
-
-2005-01-26  Kristian Høgsberg  <krh at redhat.com>
-
-	* test/clip_twice.c, test/clip_twice-ref.png: New test case to
-	verify that the clip surface is correctly updated when extending
-	an existing clip path.
-
-	* test/coverage.c (draw): Set alpha to 1 before setting clip mask.
-	
-	* test/coverage-ref.png: Added the right reference PNG.  Running
-	test against stock 0.3.0 gives the expected results.
-	
-	* test/Makefile.am, test/coverage.c, test/coverage-ref.png: New
-	test case, covering various combinations of pattern types, drawing
-	operations and clipping.  Currently fails, for some combinations,
-	coverage-ref.png is just a placeholder.
-
-	* test/romedalen.png: Added this PNG from cairo-snippets to use
-	for pattern fills.
-
-	* test/cairo_test.c, test/cairo_test.h: expose PNG loading to test
-	cases.
-
-2005-01-26  Alexander Larsson  <alexl at redhat.com>
-
-	* src/cairo_ft_font.c: (_ft_unscaled_font_set_scale):
-	Fix access to uninitialized data
-	
-	* src/cairo_xlib_surface.c:
-	key must be first element in cache entry
-
-2005-01-25  David Reveman  <davidr at novell.com>
-
-	* AUTHORS: Update mail address.
-
-	* src/cairo_glitz_surface.c: Update mail address.
-
-	* configure.in: Require version 0.4.0 of glitz.
-
-	* src/cairo_glitz_surface.c: Track changes to glitz.
-
-	* src/cairo_xcb_surface.c: Add missing include directive so xcb
-	backend compile again.
-
-2005-01-25  Carl Worth  <cworth at cworth.org>
-
-	* test/imagediff.c
-	* test/testsvg: Add new testsvg script and accompanying imagediff
-	program, (for interim SVG-based test suites while we wait for the
-	standard cairo test suite to mature).
-
-	* test/buffer_diff.c: 
-	* test/cairo_test.c: Split buffer_diff out into its own file for
-	the purpose of imagediff.
-
-	* src/cairo_ft_font.c (_cairo_ft_font_show_glyphs): Fixed rounding
-	of glyph positioning.
-
-2005-01-25  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_pdf_surface.c (_cairo_pdf_document_get_font): Chec
-	pdf_font for NULL, not font.
-
-2005-01-25  Alexander Larsson  <alexl at redhat.com>
-
-	* src/Makefile.am:
-	Fix typo that made cairo-ft.h not get installed
-
-2005-01-24  Carl Worth  <cworth at cworth.org>
-
-	* AUTHORS: Add Shawn T. Amundson, Calum Robinson, and Owen Taylor.
-
-	* src/Makefile.am: Conditionally install header files only for
-	backends that are compiled. Thanks to Shawn T. Amundson
-	<amundson at gtk.org>.
-
-	* src/cairoint.h: 
-	* src/cairo_color.c (_cairo_color_get_rgb): Qualify color argument
-	as const. Closes bug #2336.
-
-2005-01-23  Dave Beckett  <Dave.Beckett at bristol.ac.uk>
-
-	* src/cairo_ft_font.c (_get_load_flags): Protect switch on
-	hintstyle with #ifdef FC_HINT_STYLE.
-
-2005-01-23  Carl Worth  <cworth at cworth.org>
-
-	* RELEASING: Add instructions for handling the new "-head" suffix
-	of CAIRO_VERSION at release-time.
-
-	* configure.in: Append "-head" to CAIRO_VERSION to indicate state
-	between snapshots.
-
-	* src/cairo_gstate.c: Add missing prototype for	_cairo_gstate_ensure_font.
-	(_cairo_gstate_current_font): Add missing declaration so things
-	compile again.
-
-2005-01-21  Owen Taylor  <otaylor at redhat.com>
-
-	* Call _cairo_gstate_ensure_font(). Don't reference
-	the returned font.
-
-2005-01-21  Owen Taylor  <otaylor at redhat.com>
-
-	* src/cairo_ft_font.c (_get_load_flags): Make dependence
-	on FC_HINT_STYLE conditional. (reported by Abraham Egnor)
-
-	* src/cairo_ft_font.c: Use FT_LOAD_MONOCHROME if 
-	FT_LOAD_TARGET_MONO isn't defined for compatibility
-	with older FreeType.
-
-2005-01-16  Owen Taylor  <otaylor at redhat.com>
-
-	Change cairo_font_t to refer to a font scaled to a particular
-	output device resolution.
-
-	* src/cairoint.h src/cairo_font.c src/cairo_ft_font.c
-	src/cairo_xlib_surface.c src/cairo_pdf_surface.c src/cairo_gstate.c 
-	src/cairo.c: Switch many internal methods from handling 
-	cairo_unscaled_font_t and cairo_font_scale_t pairs to handling 
-	cairo_font_t.
-
-	* src/cairo-ft-private.h src/cairo_ft_fontc: Add some internal 
-	interfaces for use by the FreeType backend.
-
-	* src/cairo_gstate.c: Clear the gstate's current font when
-	the transform or target surface changes.
-
-	* src/cairo.h src/cairo_ft_font.c: Rename cairo_ft_font_pattern
-	to cairo_ft_font_get_pattern().
-
-	* src/cairo.h src/cairo_ft_font.c: Make cairo_ft_font_create() 
-	and cairo_ft_font_create_for_ft_face() take a font scale;
-	make the latter take load_flags for FT_Load_Glyph() as well.
-	Change cairo_ft_font_face() to Xft-style cairo_ft_font_lock_face,
-	cairo_ft_font_unlock_face.
-
-	* src/cairo_font.c: Remove the name/slant/weight=>unscaled font 
-	cache, it didn't work with the new cairo_font_t setup. If it turns
-	out to be needed, it can be added back in some other form.
-
-	* src/cairoint.h src/cairo_font.c: Add a 'flags' field 
-	to cairo_glyph_cache_key_t, we use it for load flags with
-	freetype backend.
-
-	* src/cairo_ft_font.c: Switch the caching to be from 
-	resolved fontconfig pattern => file; keep only a fixed number
-	of FT_Face objects open at once, similar to FreeType.
-
-	* src/cairo_font.c (cairo_font_glyph_extents) src/cairo_gstate.c
-	src/cairoint.h: Add public cairo_font_glyph_extents, use it
-	to implement _cairo_gstate_glyph_extents().
-
-	* src/cairo_xlib_surface.c (_glyphset_cache_entry_reference):
-	Add refcounting for glyph cache elements; there was an 
-	bug where elements got ejected from the cache and freed before
-	they could be used.
-
-	* src/cairoint.h src/cairo_cache.c (_cairo_cache_random_entry())
-	New function to return a random entry in the cache matching a predicate; 
-	reuse the internals for the previous _random_live_entry().
-
-	* src/cairoint.h src/cairo_cache.c (_cairo_cache_lookup()): Add an
-	optional created_entry return value.
-
-	* src/cairo_ft_font.c src/cairo_xlib_surface.c: Adapt to
-	_cairo_cache_lookup() change.
-
-	* src/cairo_cache.c (_cairo_cache_lookup()): Support max_memory == 0
-	to indicate an unbounded cache.
-
-	* src/cairoint.h src/cairo_cache.c (_cairo_cache_remove()): Add a
-	function to manually remove entries from the cache.
-
-	* doc/reference: Update for changes, document cairo_matrix_t, 
-	cairo_glyph_t, etc.
-
-	* src/cairo.h src/cairo-atsui.h src/cairo-ft.h src/cairo-glitz.h
-	src/cairo-pdf.h src/cairo-png.h src/cairo-ps.h src/cairo-quartz.h
-	src/cairo-xcb.h src/cairo-xlib.h: Add CAIRO_BEGIN/END_DECLS for
-	extern "C", use it on all public headers. Move header guards
-	outermost.
-
-	* src/cairo_quartz_surface.c: Fix encoding.
-
-2005-01-21  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Increment CAIRO_VERSION to 0.3.0
-
-	* NEWS: Add notes for snapshot 0.3.0
-
-	* test/fill_rule-ref.png:
-	* test/leaky_polygon-ref.png:
-	* test/line_width-ref.png: Update reference images for new
-	rasterization in libpixman 0.1.3.
-
-	* Makefile.am (RELEASE_UPLOAD_DIR): Update since directory changed
-	after server compromise.
-
-2005-01-20  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo_test.c: Add a bunch of missing include directives,
-	(now that cairo.h has been cleaned up).
-
-2005-01-20  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo-atsui.h: Created new public header cairo-atsui.h.
-
-	Build fixes for Quartz backend courtesy of
-	Geoff Norton <gnorton at customerdna.com>:
-
-	* configure.in: Fix check for atsui font backend.
-
-	* src/Makefile.am: Add conditional compilation for
-	cairo_atsui_font.c and cairo_ft_font.c.
-
-	* src/cairo_quartz_surface.c: Add missing include of
-	cairo-quartz.h.
-
-	* src/cairo-quartz.h: Add include of Carbon/Carbon.h.
-
-	* src/cairo-features.h.in: Advertise availability of Quartz
-	surface.
-	
-	* src/Makefile.am: Install cairo-quartz.h, and conditionally
-	compile cairo_quartz_surface.c.
-
-	* configure.in: Add autofoo checks to detect quartz
-	backend.
-
-2005-01-20  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Track various renamings.
-
-	* src/cairo_xlib_surface.c: 
-	* src/cairo_ps_surface.c: 
-	* src/cairo_png_surface.c: 
-	* src/cairo_pdf_surface.c: 
-	* src/cairo_glitz_surface.c: 
-	* src/cairo_ft_font.c: Insert new includes for backend-specific
-	header files.
-
-	* src/cairo_gdip_surface.cpp: 
-	* src/cairo_gdip_font.cpp: Remove redundant include of
-	cairo-features.h.
-
-	* src/cairo.h (CAIRO_H): Rename header-exclusion macro from
-	_CAIRO_H_ to CAIRO_H.
-	Remove platform-specific grubbing for cairo-features.h and
-	pixman.h in odd places.
-
-	Remove all backend-specific prototypes, (as they are now in their
-	own header files).
-
-	* src/cairo.c (cairo_sane_state): Remove printf.
-
-	* src/cairo-features.h.in: Convert to utf-8. Use the proper name
-	for multiple-header exclusion (CAIRO_FEATURES_H). Track rename of
-	FREETYPE_FONT_FEATURE to FT_FONT_FEATURE.
-
-	* src/Makefile.am (cairoinclude_HEADERS): Split cairo.h up into
-	cairo.h, cairo-ft.h, cairo-glitz.h, cairo-pdf.h, cairo-png.h,
-	cairo-ps.h, cairo-xcb.h, cairo-xlib.h.
-	Update for rename of cairo_wideint.h to cairo-wideint.h.
-
-	* configure.in: Rename CAIRO_HAS_FREETYPE_FONT to
-	CAIRO_HAS_FT_FONT, (to match cairo_ft_font functions and
-	cairo-ft.h).
-
-	* cairo.pc.in (Cflags): Update for public header files now in
-	${includedir}/cairo.
-
-2005-01-19  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_matrix.c (cairo_matrix_get_affine): 
-	* src/cairo_gstate.c (_cairo_gstate_current_point): 
-	* src/cairo_color.c (_cairo_color_get_rgb): Allow NULL values for
-	return pointers so that the user can easily get partial results
-	from cairo_matrix_get_affine, cairo_current_point, and
-	cairo_current_color_rgb as needed.
-
-	* src/cairo_ft_font.c (_utf8_to_ucs4): Fix int* vs. size_t*
-	confusion, (currently in favor of int* but only because that's
-	easier to implement). Thanks to John Ellson
-	<ellson at research.att.com>. Closes bug #2328.
-
-2005-01-19  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_pdf_surface.c: Add byteswap macros missing for
-	bigendian architectures.
-
-2005-01-19  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am (XFAIL_TESTS): Remove fill_rule and
-	leaky_polygon from expected failures list. Both of these bugs have
-	fixes, (fill_rule is fixed by reverting cairo_traps.c to 1.16, and
-	leaky_polygon is fixed in a newer libpixman).
-
-	* src/cairo_wideint.h: Remove const qualifiers from the header
-	file as well.
-
-	* src/cairo_wideint.c: Remove useless const qualifier from
-	functions returning simple values, (quiets the warning in
-	gcc4). Thanks to John Ellson <ellson at research.att.com>. Closes bug
-	#2299.
-
-	* BUGS: Add bugs on cairo_surface_create_for_image, bad names for
-	cairo_font_set_transform and cairo_font_current_transform,
-	segfault on AMD64.
-
-2005-01-17  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_pdf_surface.c (_cairo_pdf_document_get_font): Fix
-	double free in error path.
-	(cairo_pdf_ft_font_create): Reference the unscaled font to keep
-	the FT_Face around.
-	(cairo_pdf_ft_font_generate): Initialize end to avoid compiler
-	warning; bail out if table write fails. Fixes from Owen.
-
-2005-01-17  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_pdf_surface.c: Add preliminary text support, including
-	support for truetype font subsetting.
-
-	* src/cairoint.h: Change type of 'surface' argument in show_glyphs
-	to void * as it is for all other surface virtual functions.
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_show_glyphs):
-	Update accordingly.
-
-	* configure.in: Add check for endianess.
-	
-	* src/cairo_array.c (_cairo_array_grow_by): Fix bug in array
-	growing loop.
-	(_cairo_array_append): Accept NULL for elements argument, in which
-	case we just allocate space in the array.
-
-2005-01-17  Kristian Høgsberg  <krh at redhat.com>
-
-	* test/Makefile.am (EXTRA_DIST): Take image_rotate-ref.png out of
-	EXTRA_DIST until we can actually render it correctly.
-	(XFAIL_TESTS): Update with new known bugs.
-
-	* src/cairo-features.h.in: 
-	* src/cairo.h: 
-	* src/cairoint.h: 
-	* configure.in: Add font backend selection options.
-
-2005-01-15  John Ellson <ellson at research.att.com>
-
-	reviewed by: Keith Packard <keithp at keithp.com>
-
-	* src/cairo_gstate.c: (_cairo_gstate_glyph_extents):
-	Was using the wrong extents variable.
-
-2005-01-13  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_xcb_surface.c: Replace struct cairo_surface_backend with
-	cairo_surface_backend_t.
-
-2005-01-13  Carl Worth  <cworth at cworth.org>
-
-	* test/leaky_polygon.c: 
-	* test/Makefile.am
-	* test/.cvsignore: Add leaky_polygon test for trapezoid
-	rasterization corner case.
-
-	* src/cairo_xlib_surface.c: 
-	* src/cairo_glitz_surface.c: 
-	* src/cairo_ft_font.c: 
-	* src/cairo_font.c: 
-	* src/cairoint.h: 
-	* src/cairo.h: Replace all structure tags to have _ prefix.
-	struct cairo_foo -> struct _cairo_foo
-	Also, prefer cairo_foo_t over struct _cairo_foo in .c files.
-
-2005-01-12  Carl Worth  <cworth at cworth.org>
-
-	* test/fill_rule.c: Add big_star_path which shows we still have
-	fill bugs, (even now that little_star_path is working).
-
-	* src/cairo.c (cairo_sane_state): A NULL cairo_t * is not sane.
-
-	* cairo.pc.in (Libs,Cflags): Add freetype flags so that things
-	work with freetype in a non-standard location, (a little extra
-	work here since freetype doesn't use pkg-config).
-
-	* TODO: Add several items culled from recent mailing list
-	discussions.
-
-	* BUGS: Add bugs on cache locking and surface pattern scaling.
-
-2005-01-11  Keith Packard  <keithp at keithp.com>
-
-	* src/cairo_matrix.c: (_cairo_matrix_compute_scale_factors):
-	Scale factors shouldn't include mirroring.
-
-	* src/cairo_wideint.c: (_cairo_int32x32_64_mul),
-	(_cairo_int64x64_128_mul):
-	* src/cairo_wideint.h:
-	int32x32_64_mul and int64x64_128_mul are different from their
-	unsigned compatriots
-
-2005-01-11  Øyvind Kolås  <pippin at freedesktop.org>
-
-	* src/cairo_color.c: renamed CAIRO_COLOR_DEFAULT to CAIRO_COLOR_WHITE,
-	and made it white again.
-
-2005-01-11  Øyvind Kolås  <pippin at freedesktop.org>
-
-	* src/cairo_xlib_surface.c: (_cairo_xlib_surface_composite): removed
-	accidental addition of debug printf in previous commit.
-
-2005-01-11  Øyvind Kolås  <pippin at freedesktop.org>
-
-	* src/cairo_color.c:
-	* src/cairo_gstate.c: (_cairo_gstate_init):
-	Changed default paint color from opaque white to opaque black.
-
-
-2005-01-11  Keith Packard  <keithp at keithp.com>
-
-	* cairo.pc.in:
-	* configure.in:
-	* src/Makefile.am:
-	Fix math library detection to use autotools helper
-	
-	* src/cairo_cache.c: (_cache_sane_state), (_cairo_cache_lookup):
-	Remove cache memory usage assertions as single objects can
-	be larger than the cache size
-	
-	* src/cairo_ft_font.c: (_cairo_ft_font_compute_transform),
-	(_cairo_ft_font_install_transform), (_install_font_scale),
-	(_cairo_ft_font_font_extents), (_cairo_ft_font_glyph_extents),
-	(_cairo_ft_font_create_glyph):
-	Decompose font matrix transformations into a couple of
-	helper routines.
-	Return all metrics in font space.
-	
-	* src/cairo_glitz_surface.c: (_glitz_format):
-	Eliminate compiler warning
-	
-	* src/cairo_gstate.c: (_cairo_gstate_current_font_extents),
-	(_cairo_gstate_text_to_glyphs), (_cairo_gstate_glyph_extents):
-	Expect glyph metrics to be in font space.  Compute text extents
-	by fetching one glyph metric at a time, transforming to user
-	space and computing the overall bounding box.
-	
-	* src/cairo_matrix.c: (_cairo_matrix_set_rotate),
-	(_cairo_matrix_compute_scale_factors):
-	use 'sincos' where available.
-	Scale factors now ensure the non-scale transform is area preserving.
-	Scale factors requires another parameter to mark the fixed axis.
-	
-	* src/cairo_wideint.c:
-	* src/cairo_wideint.h:
-	Change license to LGPL
-	Mark int32x32_64_mul as broken (which it still is)
-
-	* src/cairo_xlib_surface.c: (_cairo_xlib_surface_show_glyphs32),
-	(_cairo_xlib_surface_show_glyphs16),
-	(_cairo_xlib_surface_show_glyphs8):
-	Ensure each glyph is located as close to the specified position
-	as possible
-	
-	* src/cairoint.h:
-	interface change to _cairo_matrix_compute_scale_factors
-
-2005-01-07  Kristian Høgsberg  <krh at redhat.com>
-
-	* configure.in: Add -lz to CAIRO_LIBS when compiling the PDF
-	backend.
-
-	* src/cairo_pdf_surface.c (emit_image_data): Don't use
-	compressBound, since it's only available in zlib 1.2 and newer.
-
-2005-01-07  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Add Owen's new equation to fix clipping:
-	((src Op dest) In clip) Add (dest Out clip)
-
-2005-01-06  Carl Worth  <cworth at cworth.org>
-
-	* TODO: Added some TODO items from mailing list traffic.
-	Added cairo_show_surface_mask and note about clipping problems.
-
-2005-01-05  Kristian Høgsberg  <krh at redhat.com>
-
-	* src/cairo_pdf_surface.c: (emit_image_data): Implement image
-	compression (taken from cairo_ps_surface.c).
-
-	* src/cairo_pdf_surface.c: New PDF backend.
-	* src/cairo.h: Add PDF surface constructors.
-	* src/cairo_array.c: New file - generic array implementation.
-	* src/cairoint.h: Add cairo_array prototypes.
-	* src/Makefile.am (libcairo_la_SOURCES):
-	Add cairo_array.c and cairo_pdf_surface.c.
-
-2004-12-23  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_traps.c: Remove unused CAIRO_TRAPS_GROWTH_INC.
-
-	* src/cairo_spline.c (_cairo_spline_add_point): 
-	* src/cairo_polygon.c (_cairo_polygon_add_edge): Resize arrays by
-	doubling rather than by linear increments.
-
-	* BUGS: Add new bug exposed centi_unfinished.svg.
-
-2004-12-21  Carl Worth  <cworth at cworth.org>
-
- 	* src/cairoint.h: 
-	* src/cairo_wideint.h: Rename __internal_linkage to cairo_private
-	and move it to the beginning of the line for function
-	declarations. Also, drop unneeded "extern" from function
-	declarations.
-
-2004-12-21  Carl Worth  <cworth at cworth.org>
-
-	With thanks to Kristian Høgsberg <krh at bitplanet.net>:
-	* src/cairoint.h: 
-	* src/cairo_wideint.h: Tag a few private functions/data that were
-	missing __internal_linkage.
-
-	* src/cairo_xlib_surface.c: 
-	* src/cairo_ft_font.c: 
-	* src/cairo_font.c: Mark cache backends as static.
-
-2004-12-20  Carl Worth  <cworth at cworth.org>
-
-	* autogen.sh (LANG): Change "head -1" to more standard "head -n
-	1".
-
-2004-12-20  Alexander Larsson  <alexl at redhat.com>
-
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_create_with_size):
-	Fix bug in earlier change.
-
-2004-12-20  Carl Worth  <cworth at cworth.org>
-
-	* src/cairoint.h: Re-enabled __internal_linkage for all internal
-	functions. Now avoid the warning by moving the * from the return
-	type after the __internal_linkage macro. It looks awaful, but it
-	keeps the compiler quiet.
-
-2004-12-20  Alexander Larsson  <alexl at redhat.com>
-
-	* src/cairoint.h:
-	Add _cairo_gstate_restore_external_state, _cairo_fixed_integer_floor
-	and _cairo_fixed_integer_ceil.
-	
-	* src/cairo.c: (cairo_restore):
-	Call _cairo_gstate_restore_external_state on restore.
-	
-	* src/cairo_cache.c: (_cache_lookup):
-	Fix cache-misses.
-	
-	* src/cairo_fixed.c: (_cairo_fixed_integer_floor),
-	(_cairo_fixed_integer_ceil):
-	Implement floor and ceil
-	
-	* src/cairo_gstate.c:
-	(_cairo_gstate_restore_external_state):
-	Restore surface clip region on restroe.
-	
-	(_calculate_region_for_intermediate_clip_surface),
-	(_cairo_gstate_clip_and_composite_trapezoids),
-	(_cairo_gstate_show_surface), (_cairo_gstate_show_glyphs):
-	Create intermediate clip surfaces of the minimal required
-	size.
-
-2004-12-20  Carl Worth  <cworth at cworth.org>
-
-	* AUTHORS: Add Alexander Larsson to AUTHORS list.
-
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_create_with_size):
-	Split off from _cairo_xlib_surface_create to avoid roundtrip when
-	size is already known.
-	(cairo_xlib_surface_create): Simplified to just call XGetGeometry
-	that defer to _cairo_xlib_surface_create_with_size. Add comment
-	about remaining roundtrip and possible plans to eliminate it later
-	with a new interface requiring width/height.
-	Thanks to Alexander Larsson  <alexl at redhat.com>.
-
-	* test/text_cache_crash.c (draw): Disabled test that was killing
-	my machine for some reason. Scary.
-
-2004-12-20  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_image_surface.c
-	(_cairo_image_abstract_surface_create_pattern): Change return
-	value from cairo_status_t to cairo_int_status_t to match
-	definition in cairo_surface_backend_t.
-
-	* BUGS: Add bug about gcc 3.4 warning: '__visibility__' attribute
-	ignored on non-class types.
-
-	* src/cairoint.h: Remove __internal_linkage macro from all
-	functions returning pointers to shut up warning from gcc 3.4.
-
-2004-12-17  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo_test.c (cairo_test): Fix to find reference images in
-	local directory when run directly, (rather than by "make check").
-
-	* BUGS: Add bug about invalidating font caches.
-
-2004-12-02  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_gstate.c (_cairo_gstate_clip): Revert the "return early"
-	change so that rectangular clipping works with backends that
-	don't support clipping regions.
-
-2004-11-29  Carl Worth  <cworth at cworth.org>
-
-	* COPYING: Fix typo: LPGL->LGPL.
-
-	* src/cairo_ps_surface.c (cairo_ps_surface_create): Remove
-	unintentional copyright statement from user-generated output
-	image.
-
-2004-11-23  Carl Worth  <cworth at cworth.org>
-
-	* test/Makefile.am (XFAIL_TESTS): Note that text_cache_crash is
-	expected to fail.
-
-	* test/text_cache_crash.c (draw): Add test to demonstrate bug when
-	item is too big for cache.
-
-	* src/cairo_cache.c (_cache_sane_state): Really remove that
-	refcount assertion this time.
-
-	* test/text_cache_crash.c: Add note that bug has been fixed.
-	(main): Instrumentation code for testing cache destruction.
-
-	* test/cairo_test.c (cairo_test): Support tests that produce no
-	output, (don't check image if (width,height) == (0,0)).
-
-	* src/cairoint.h: Add #include <assert.h> here rather than in
-	multiple .c files.
-
-	* src/cairo_cache.c: Add const qualifier to static
-	cache_arrangements table.
-	(_cache_sane_state): Remove refcount assertion as it it false
-	during the cairo_cache_destroy.
-	(_cache_sane_state): #include <assert.h> moved up to cairoint.h
-	(_entry_destroy): Fix bug in assertion (used_memory >=
-	entry->memory), not >.
-	(_cairo_cache_destroy): Fix timing of refcount decrement so that
-	the destroy function actually works.
-
-2004-11-14  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_gstate.c (_cairo_gstate_select_font): Don't destroy a
-	NULL font.
-
-2004-11-13  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_gstate.c (_cairo_gstate_select_font): Unconditionally
-	destroy the old font, (otherwise, if the same font was selected
-	twice in a row, a reference was lost to it, leading to assertion
-	failures).
-
-2004-11-12  Stuart Parmenter  <pavlov at pavlov.net>
-	* src/cairo_gdip_font.cpp:
-	* src/cairo_gdip_surface.cpp: Added GDI+ backend to Cairo.
-
-2004-11-12  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_font.c (_font_cache_hash, _font_cache_create_entry): 
-	* src/cairo_ft_font.c (_cairo_ft_font_text_to_glyphs): Move
-	declarations above statements to satisfy pre-C99 compilers. Thanks
-	to Michael Johnson <ahze at ahze.net>.
-
-2004-11-09  Carl Worth  <cworth at cworth.org>
-
-	* test/text_rotate.c (NUM_TEXT): Increase size and increase number
-	of different angles drawn.
-	(draw): Fix broken usage of extents (missing bearings), add
-	stroked bounding box (shifted out by 0.5 units to just abut the
-	text), and increase position adjustments to make room for this
-	larger box.
-	(draw): Move x_off, y_off calculation outside of loop to emphasize
-	loop-independence.
-
-2004-11-08  Dave Beckett  <Dave.Beckett at bristol.ac.uk>
-
-	* configure.in: require libpixman 0.1.2 since
-	src/cairo_glitz_surface.c depends on two new functions of 0.1.2 -
-	pixman_format_get_masks and pixman_image_get_format
-
-2004-11-05  Graydon Hoare  <graydon at redhat.com>
-
-	* src/cairo_ft_font.c: Change the signs of a variety of 
-	metrics, which were backwards.
-	* src/cairo_gstate.c (_cairo_gstate_clip): Return early if we 
-	found a rectangular clip at all, not just in error case.
-	* src/cairo_xlib_surface.c 
-	(_xlib_glyphset_cache_create_entry): Give render glyphset entry the
-	negative bbox offsets it wants, not the bearings.
-
-2004-11-04  Carl Worth  <cworth at cworth.org>
-
-	* test/text_cache_crash.c: Add new test demonstrating assertion
-	failure in cairo_cache_lookup.
-
-	* test/text_rotate.c: Add new test showing problems with rotated
-	text.
-
-2004-11-04  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_glitz_surface.c (cairo_set_target_glitz): 
-	cairo_glitz_surface_create now takes a reference to the glitz
-	surface, so it shouldn't be done here anymore.
-	Removed feature_mask from cairo_glitz_surface_t.
-	Removed support for CAIRO_OPERATOR_SATURATE.
-	(cairo_glitz_surface_create): Take a reference to the glitz
-	surface and no need to get surface features anymore.
-	Tracking changes to glitz.
-
-	* configure.in: Require version 0.3.0 of glitz.
-
-	* src/cairo_gstate.c (_cairo_gstate_clip): Fixed return status.
-
-2004-11-01  Olivier Andrieu  <oliv__a at users.sourceforge.net>
-
-	* src/cairo.h: remove cairo_ft_font_destroy() prototype.
-
-2004-10-28  Carl Worth  <cworth at cworth.org>
-
-	* Makefile.am (release-verify-newer): Abort release-publish if
-	there's already a published tar file with the current version.
-	(release-publish): Add code to update the LATEST-package-version
-	file.
-
-2004-10-27  Carl Worth  <cworth at cworth.org>
-
-	* configure.in: Increment CAIRO_VERSION to 0.2.0.
-
-	* NEWS: Add notes for snapshot 0.2.0.
-	Add note on reverted tessellation regression bugs.
-
-	* RELEASING: Update release instructions for new release-publish
-	target.
-
-	* Makefile.am: Add release-check and release-publish targets
-	copied from libpixman.
-
-	* test/Makefile.am (AM_LDFLAGS): Fix to always link tests against
-	locally built library, not installed version.
-
-	* test/fill_rule.c: Add new test for cairo_set_fill_rule. Also
-	demonstrate some of the current tessellation bugs with the version
-	of the code that is in CVS.
-
-2004-10-26  Carl Worth  <cworth at cworth.org>
-
-	* test/cairo_test.c (cairo_test): Find reference images in
-	${srcdir} so that make distcheck will work.
-
-	* test/Makefile.am (cairo_test_lib): Add header files so that make
-	distcheck is happy.
-	(INCLUDES): Add -D_GNU_SOURCE for asprintf. Someone motivated may
-	want to find a more portable approach.
-	(EXTRA_DIST): Add reference images for the sake of make distcheck.
-
-	* configure.in: Shell doesn't like whitespace around assignment
-	operator.
-
-	* test/README: Add paragraph on new features.	
-
-	* test/.cvsignore:
-	* test/Makefile.am:
-	* test/README:
-	* test/cairo_test.c:
-	* test/cairo_test.h:
-	* test/line_width-ref.png:
-	* test/line_width.c:
-	* test/move_to_show_surface-ref.png:
-	* test/move_to_show_surface.c:
-	* test/read_png.c:
-	* test/read_png.h:
-	* test/write_png.c:
-	* test/write_png.h:
-	* test/xmalloc.c:
-	* test/xmalloc.h: Add initial regression test suite.
-
-	* configure.in: Don't AC_SUBST a dozen different FOO_CFLAGS and
-	FOO_LIBS. Instead, incrementally build up just CAIRO_CFLAGS and
-	CAIRO_LIBS.
-
-	* cairo.pc.in (Libs): Don't list flags that should get picked up
-	via dependency information through Requires.
-
-	* BUGS (font-size): Add description of move_to_show_surface.
-
-2004-10-21  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_png_surface.c:
-	* src/cairo.c:
-	* src/cairo.h:
-	* src/cairo_cache.c:
-	* src/cairo_color.c:
-	* src/cairo_fixed.c:
-	* src/cairo_font.c:
-	* src/cairo_ft_font.c:
-	* src/cairo_glitz_surface.c:
-	* src/cairo_gstate.c:
-	* src/cairo_hull.c:
-	* src/cairo_image_surface.c:
-	* src/cairo_matrix.c:
-	* src/cairo_path.c:
-	* src/cairo_path_bounds.c:
-	* src/cairo_path_fill.c:
-	* src/cairo_path_stroke.c:
-	* src/cairo_pattern.c:
-	* src/cairo_pen.c:
-	* src/cairo_png_surface.c:
-	* src/cairo_polygon.c:
-	* src/cairo_ps_surface.c:
-	* src/cairo_slope.c:
-	* src/cairo_spline.c:
-	* src/cairo_surface.c:
-	* src/cairo_traps.c:
-	* src/cairo_xcb_surface.c:
-	* src/cairo_xlib_surface.c:
-	* src/cairoint.h: Convert all files to utf-8. Add copyright
-	information to cairo_png_surface.c.
-
-	* src/cairo_hull.c (_cairo_hull_vertex_compare): Fix comparison so
-	that it results in a stable sort. This should fix some rendering
-	bugs due to broken pens.
-
-	* TODO: Add items on custom caps and getting access to hidden
-	image data
-
-	* Makefile.am (EXTRA_DIST): Add COPYING-LGPL-2.1 and
-	COPYING-MPL-1.1 to the distribution.
-
-2004-10-13  Carl Worth  <cworth at cworth.org>
-
-	* autogen.sh: automake 1.4 seems to be sufficient. Don't require
-	1.6.
-
-2004-10-12  Keith Packard  <keithp at keithp.com>
-
-	* src/cairo_traps.c: (_cairo_traps_init), (_cairo_traps_add_trap),
-	(_cairo_traps_extents):
-	* src/cairoint.h:
-	Compute extents of cairo_traps_t on the fly using approximate
-	method which is correct given the way cairo generates trapezoids.
-	
-	* src/cairo_xlib_surface.c: (_cairo_xlib_surface_create_similar):
-	Avoid zero-dimensioned pixmaps
-
-2004-10-12  Carl Worth  <cworth at cworth.org>
-
-	* src/cairo_pen.c: Fix a few typos in pen vertex math description.
-
-2004-10-12  Keith Packard  <keithp at keithp.com>
-
-	reviewed by: Carl Worth <cworth at cworth.org>
-
-	* src/cairo_pen.c: (_cairo_pen_init), (_cairo_pen_vertices_needed):
-	Adapt function from Walter Brisken to compute pen ellipse major
-	axis length and use that to compute the required number of pen
-	vertices.
-
-2004-10-07  Graydon Hoare  <graydon at redhat.com>
-
-	* src/Makefile.am (libcairo_la_SOURCES): Add cairo_cache.c
-
-	* src/cairo.c
-	(cairo_text_extents)
-	(cairo_show_text)
-	(cairo_text_path): Rewrite using temporary glyph arrays
-
-	* src/cairo_cache.c: New file.
-
-	* src/cairo_font.c (_cairo_glyph_cache_create)
-	(_cairo_glyph_cache_destroy)
-	(_cairo_glyph_cache_reference)
-	(_cairo_glyph_cache_pop_last)
-	(_cairo_glyph_surface_init)
-	(_cairo_font_lookup_glyph): Remove old glyph cache code.
-	(_cairo_font_scale)
-	(_cairo_font_transform): Remove font-transforming code.
-	(_cairo_font_text_extents)
-	(_cairo_font_text_bbox)
-	(_cairo_font_show_text)
-	(_cairo_font_text_path): Remove text-API code.
-	(_cairo_font_cache_key_t): New structure type.
-	(_font_cache_hash)
-	(_font_cache_keys_equal)
-	(_font_cache_create_entry)
-	(_font_cache_destroy_entry)
-	(_font_cache_destroy_cache): New font cache code.
-	(_global_font_cache)
-	(_lock_global_font_cache)
-	(_unlock_global_font_cache)
-	(_get_global_font_cache): New global font cache.
-	(_cairo_font_text_to_glyphs)
-	(_cairo_glyph_cache_hash)
-	(_cairo_glyph_cache_keys_equal)
-	(_image_glyph_cache_create_entry)
-	(_image_glyph_cache_destroy_entry)		
-	(_image_glyph_cache_destroy_cache): New glyph cache code.
-	(_global_image_glyph_cache)
-	(_cairo_lock_global_image_glyph_cache)
-	(_cairo_unlock_global_image_glyph_cache)
-	(_cairo_get_global_image_glyph_cache): New global glyph cache.
-	(_cairo_font_cache_backend): New structure.
-	(_cairo_image_cache_backend): Likewise.
-	(_cairo_font_create): Reimplement in terms of font cache.
-	(_cairo_font_init): Remove matrix and glyph cache related code.
-	(_cairo_font_copy): Likewise.
-	(_cairo_font_show_glyphs): Delegate to surface when possible.
-	(_cairo_font_glyph_extents)
-	(_cairo_font_glyph_bbox)
-	(_cairo_font_glyph_path)
-	(_cairo_font_font_extents)
-	(_cairo_font_show_glyphs): Rename to as cairo_unscaled_font_XXX,
-	and add scale parameter.
-
-	* src/cairo_ft_font.c
-	(ft_cache_t)
-	(ft_font_val_t)
-	(cairo_ft_cache_key_t)
-	(cairo_ft_cache_entry_t): New structure types.
-	(_create_from_face)
-	(_reference_font_val)
-	(_destroy_font_val)
-	(_create_from_library_and_pattern): New functions.
-	(_ft_font_cache_hash)
-	(_ft_font_cache_keys_equal)
-	(_ft_font_cache_create_entry)
-	(_ft_font_cache_destroy_entry)	
-	(_ft_font_cache_destroy_cache): New ft font cache code.
-	(_global_ft_cache)
-	(_lock_global_ft_cache)
-	(_unlock_global_ft_cache)
-	(_get_global_ft_cache): New global ft font cache.
-	(_ft_font_cache_backend): New structure.
-	(_cairo_ft_font_create): Rewrite to use cache.
-	(_cairo_ft_font_destroy): Likewise.
-	(_cairo_ft_font_copy): Remove.
-	(_install_font_matrix): Rename as _install_font_scale.
-	(_utf8_to_glyphs): Rename as _cairo_ft_font_text_to_glyphs.
-	(_cairo_ft_font_text_to_glyphs): Use cache for metrics.
-	(_cairo_ft_font_extents): Accept size, use scaled metrics.
-	(_cairo_ft_font_glyph_extents)
-	(_cairo_ft_font_glyph_bbox)
-	(_cairo_ft_font_show_glyphs)
-	(_cairo_ft_font_glyph_path): Modify to use size, cache. 
-	(_cairo_ft_font_text_extents)
-	(_cairo_ft_font_text_bbox)
-	(_cairo_ft_font_show_text)		
-	(_cairo_ft_font_text_path): Remove text-API code.
-	(cairo_ft_font_create)
-	(cairo_ft_font_create_for_ft_face)
-	(cairo_ft_font_face)
-	(cairo_ft_font_pattern): Rewrite using ft_font_val_t.
-
-	* src/cairo_gstate.c (cairo_gstate_init_copy): Just reference font.
-	(_cairo_gstate_fini): Finalize font matrix.
-	(_cairo_gstate_default_matrix): Initialize font matrix.
-	(_cairo_gstate_clip): Re-enable clipping rectangle.
-	(_cairo_gstate_select_font)
-	(_cairo_gstate_set_font): Set font matrix to identity.
-	(_cairo_gstate_scale_font): Scale font matrix, not font.
-	(_cairo_gstate_transform_font): Transform font matrix, not font.
-	(_cairo_gstate_set_font_transform): Install as font matrix, not in font.
-	(_build_font_scale): New helper function.
-	(_cairo_gstate_text_to_glyphs): New function.
-	(_cairo_gstate_current_font_extents)
-	(_cairo_gstate_glyph_extents)
-	(_cairo_gstate_show_glyphs)
-	(_cairo_gstate_glyph_path): Rewrite using font matrix and size.
-	(_cairo_gstate_text_path
-	(_cairo_gstate_text_extents)
-	(_cairo_gstate_show_text): Remove text-API code.
-
-	* src/cairo_xlib_surface.c 
-	(_cairo_xlib_surface_set_clip_region): Minor bug fix.
-	(_cairo_xlib_surface_show_glyphs): New function.
-	(_cairo_xlib_surface_backend): Add reference to new function.
-	(glyphset_cache_t)
-	(glyphset_cache_entry_t): New structure types.	
-	(_next_xlib_glyph): New helper function.
-	(_xlib_glyphset_cache_create_value)
-	(_xlib_glyphset_cache_destroy_cache)
-	(_xlib_glyphset_cache_destroy_value)
-	(_xlib_glyphset_cache_backend): New  glyphset cache code.
-	(_xlib_glyphset_caches)
-	(_lock_xlib_glyphset_caches)
-	(_unlock_xlib_glyphset_caches)
-	(_get_glyphset_cache): New global glyphset cache.
-
-	* src/cairo_glitz_surface.c (cairo_glitz_surface_backend):
-	Add NULL entry for show_glyphs. 
-
-	* src/cairo_image_surface.c (cairo_image_surface_backend):
-	Add NULL entry for show_glyphs. 
-
-	* src/cairo_ps_surface.c (cairo_ps_surface_backend):
-	Add NULL entry for show_glyphs. 
-
-	* src/cairo_png_surface.c (cairo_png_surface_backend):
-	Add NULL entry for show_glyphs. 
-
-	* src/cairo_xcb_surface.c (cairo_xcb_surface_backend):
-	Add NULL entry for show_glyphs. 
-
-	* src/cairoint.h (cairo_cache_backend_t): New structure type.
-	(cairo_cache_entry_base_t)
-	(cairo_cache_arrangement_t)
-	(cairo_cache_t): New structure types.
-	(_cairo_cache_init)
-	(_cairo_cache_reference)
-	(_cairo_cache_destroy)
-	(_cairo_cache_lookup)
-	(_cairo_hash_string): New cache functions.
-	(CAIRO_IMAGE_GLYPH_CACHE_MEMORY_DEFAULT)
-	(CAIRO_XLIB_GLYPH_CACHE_MEMORY_DEFAULT)
-	(CAIRO_FONT_CACHE_NUM_FONTS_DEFAULT)
-	(CAIRO_FT_CACHE_NUM_FONTS_DEFAULT): New constants.
-	(cairo_font_scale_t)
-	(cairo_glyph_cache_key_t)
-	(cairo_image_glyph_cache_entry_t): New structure types.
-	(_cairo_lock_global_image_glyph_cache)
-	(_cairo_unlock_global_image_glyph_cache)
-	(_cairo_get_global_image_glyph_cache)
-	(_cairo_glyph_cache_hash)
-	(_cairo_glyph_cache_keys_equal): New functions for glyph caches.
-	(cairo_font_backend_t): Remove text-API calls, add scale params,
-	remove copy call.
-	(cairo_surface_backend_t): Add show_glyphs entry.
-	(cairo_glyph_surface_t)
-	(cairo_glyph_surface_node_t): Remove old glyph cache structures.
-	(cairo_unscaled_font_t): New structure type.
-	(cairo_font): Remove glyph cache member, add pointer to unscaled.
-	(cairo_gstate): Add font_matrix member, change to hold unscaled.
-	(_cairo_gstate_set_font_transform)
-	(_cairo_gstate_current_font_transform)
-	(_cairo_gstate_text_to_glyphs): New functions.
-	(_cairo_gstate_text_path
-	(_cairo_gstate_text_extents)
-	(_cairo_gstate_show_text)
-	(_cairo_font_text_extents)
-	(_cairo_font_text_bbox)
-	(_cairo_font_show_text)
-	(_cairo_font_text_path): Remove text-API code.
-	(_cairo_font_glyph_extents)
-	(_cairo_font_glyph_bbox)
-	(_cairo_font_glyph_path)
-	(_cairo_font_font_extents)
-	(_cairo_font_show_glyphs): Add scale parameter.
-
-2004-10-04  David Reveman  <c99drn at cs.umu.se>
-
-	* configure.in: Require version 0.2.3 of glitz.
-
-	* src/cairo_glitz_surface.c: Do not use VBOs and PBOs for immediate
-	mode drawing.
-
-2004-09-30  Jamey Sharp <jamey at minilop.net>
-
-	* src/cairo_xcb_surface.c:
-	Update for minor XCB API change.
-
-2004-09-20  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_glitz_surface.c (_cairo_glitz_surface_create_similar): 
-	Make sure that only offscreen formats are picked.
-	(_cairo_glitz_surface_create_similar): Only try to find offscreen
-	multi-sample format if offscreen multi-sampling is supported.
-	(_cairo_glitz_surface_create_similar): If we can't find a drawable
-	format try to pick a non-drawable format.
-	(_cairo_glitz_surface_composite): Mask clone should be in
-	CAIRO_FORMAT_A8 format.
-
-2004-09-15  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_glitz_surface.c (_cairo_glitz_surface_set_image): Do
-	the scanline order conversion in cairo.
-	(_cairo_glitz_surface_create_pattern): Pre-multiply gradient colors.
-	(_cairo_glitz_surface_create_similar): Find similar formats
-	correctly.
-
-2004-09-12  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_glitz_surface.c (_cairo_glitz_surface_create_pattern):
-	Pickup repeat setting when cloning surface.
-	(_cairo_glitz_surface_create_pattern): cairo_surface_set_repeat
-	likes to get a cairo_surface_t pointer not a cairo_glitz_surface_t
-	pointer.
-	(_cairo_glitz_surface_set_image): Get pixel masks from pixman image
-	format.
-
-2004-09-11  Carl Worth  <stacyworth at pippin.local>
-
-	* autogen.sh: Require automake 1.6 rather than 1.7 since it seems
-	to work just fine.
-
-2004-09-11  David Reveman  <c99drn at cs.umu.se>
-
-	* configure.in: Require version 0.2.2 of glitz.
-
-	* src/cairo_glitz_surface.c (_cairo_glitz_surface_create_pattern): 
-	0.5 should no longer be added to gradient stop coordinates.
-
-	* src/cairo.h: CAIRO_HAS_GL_SURFACE -> CAIRO_HAS_GLITZ_SURFACE.
-	cairo_set_target_gl -> cairo_set_target_glitz.
-	cairo_gl_surface_create -> cairo_glitz_surface_create.
-
-	* src/cairo-features.h.in: GL_SURFACE_FEATURE -> GLITZ_SURFACE_FEATURE.
-
-	* src/Makefile.am: CAIRO_HAS_GL_SURFACE -> CAIRO_HAS_GLITZ_SURFACE,
-	libcairo_gl_sources -> libcairo_glitz_sources, cairo_gl_surface.c ->
-	cairo_glitz_surface.c, GL_CFLAGS -> GLITZ_CFLAGS and
-	GL_LIBS -> GLITZ_LIBS.
-
-	* cairo.pc.in (Requires): GL_REQUIRES -> GLITZ_REQUIRES.
-
-	* configure.in: Replaced the gl backend with the new glitz backend.
-	Cairo now requires version 0.2.1 of glitz.
-
-2004-09-04  Carl Worth  <cworth at brudder.east.isi.edu>
-
-	* COPYING:
-	* COPYING-MPL-1.1: 
-	* COPYING-LGPL-2.1:
-	* src/cairo-features.h.in:
-	* src/cairo.c:
-	* src/cairo.h:
-	* src/cairo_color.c:
-	* src/cairo_fixed.c:
-	* src/cairo_font.c:
-	* src/cairo_gstate.c:
-	* src/cairo_hull.c:
-	* src/cairo_image_surface.c:
-	* src/cairo_matrix.c:
-	* src/cairo_path.c:
-	* src/cairo_path_bounds.c:
-	* src/cairo_path_fill.c:
-	* src/cairo_path_stroke.c:
-	* src/cairo_pen.c:
-	* src/cairo_polygon.c:
-	* src/cairo_ps_surface.c:
-	* src/cairo_slope.c:
-	* src/cairo_spline.c:
-	* src/cairo_surface.c:
-	* src/cairo_xcb_surface.c:
-	* src/cairo_xlib_surface.c:
-	* src/cairoint.h: Add the MPL as a new license option, in addition
-	to the LGPL.
-
-2004-08-14  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_image_surface.c
-	(_cairo_image_surface_set_clip_region): Make a copy of the region
-	since pixman is currently taking ownership of it (ugh). Thanks to
-	Vladimir Vukicevic <vladimir at pobox.com> and Peter Dennis Bartok
-	<peter at novonyx.com>.
-
-	* autogen.sh (LANG): Explicitly set LANG=C to fix the awk
-	string->number conversion for user with locales that don't match
-	ASCII digit conventions.
-
-2004-08-03  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (extract_transformed_rectangle): Temporarily
-	disable rectangle-based clipping optimization as it's not working
-	(see cairo_snippets/xxx_clip_rectangle for a test case).
-
-2004-08-02  Carl Worth  <cworth at isi.edu>
-
-	* COPYING:
-	* src/cairo-features.h.in:
-	* src/cairo.c:
-	* src/cairo.h:
-	* src/cairo_color.c:
-	* src/cairo_fixed.c:
-	* src/cairo_font.c:
-	* src/cairo_gstate.c:
-	* src/cairo_hull.c:
-	* src/cairo_image_surface.c:
-	* src/cairo_matrix.c:
-	* src/cairo_path.c:
-	* src/cairo_path_bounds.c:
-	* src/cairo_path_fill.c:
-	* src/cairo_path_stroke.c:
-	* src/cairo_pen.c:
-	* src/cairo_polygon.c:
-	* src/cairo_ps_surface.c:
-	* src/cairo_slope.c:
-	* src/cairo_spline.c:
-	* src/cairo_surface.c:
-	* src/cairo_xcb_surface.c:
-	* src/cairo_xlib_surface.c:
-	* src/cairoint.h: Change from MIT license to LGPL.
-	Fix to explicitly refer to GNU Lesser Public License 2.1 rather
-	than the Library Public License version 2 or "any later version"
-
-	* src/cairo_pattern.c: 
-	* src/cairo_gl_surface.c: Fix copyright attributions mistakenly
-	attributed to University of Southern California rather than to
-	David Reveman.
-
-	* BUGS: Note that cairo_clip is fixed now.
-
-2004-08-01  Øyvind Kolås  <oeyvindk at hig.no>
-
-	* src/cairo.h: replaced ct with cr in public headers to keep
-	usage consistent.
-
-2004-07-24  Jamey Sharp  <jamey at minilop.net>
-
-	* src/cairo_xcb_surface.c:
-	Updating for XCB API change around iterators.
-
-2004-07-20  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_gl_surface.c (_cairo_gl_surface_get_image): Use new 
-	pixel buffer interface.
-	(_cairo_gl_surface_set_image): Use new pixel buffer interface.
-	(_cairo_gl_surface_set_filter): Don't use convolution filter for
-	gaussian filter type as we have no software fall-back.
-	(_cairo_gl_surface_create_pattern): Color ranges now need a surface
-	reference.
-	Added new CAIRO_GL_SURFACE_IS_DRAWABLE macro.
-
-2004-07-16  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_font.c (_cairo_font_copy): Fixed stupid typo.
-	Added decleration of _cairo_glyph_cache_destroy.
-
-2004-07-15  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_font.c (_cairo_font_copy): Destroy glyph cache
-	created by font backend.
-
-2004-07-11  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_init_clip): Don't call
-	_cairo_surface_set_clip_region with a NULL surface.
-
-2004-07-09  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_arc_dir): Fix numerical
-	problem that could lead to infinite loops.
-
-2004-07-09  Dave Beckett  <Dave.Beckett at bristol.ac.uk>
-
-	* autogen.sh: Require automake 1.7 (and thus aclocal 1.7) which
-	requires autoconf 2.54. Changed since newer libtools may fail to
-	work with older automake versions such as 1.4.  I bet this will
-	annoy people with older tool chains :(
-
-2004-07-05  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo.c (CAIRO_CHECK_SANITY): Remove errant semicolon from
-	macro definition.
-
-2004-06-21  David Reveman  <c99drn at cs.umu.se>
-
-	* configure.in: Require glitz >= 0.1.5.
-
-	* src/cairo_gstate.c (_cairo_gstate_clip_and_composite_trapezoids): 
-	Use correct source offset when creating clip surface.
-
-	* src/cairo_gl_surface.c (_cairo_gl_surface_get_image): Use glitz's
-	new pixel interface.
-	(_cairo_gl_surface_set_image): Use glitz's new pixel interface.
-	(_cairo_gl_surface_create_similar): First try to create a drawable
-	surface and if that fails, create a read only surface.
-	(_cairo_gl_surface_create_similar): Glitz now handles inheritance of
-	anti-aliasing hints, so it can be removed from here.
-	(_cairo_gl_surface_create_pattern): Temporary fix for gradients.
-
-2004-06-16  Keith Packard  <keithp at keithp.com>
-
-	* src/cairo_xcb_surface.c: (bytes_per_line),
-	(_cairo_xcb_surface_set_image):
-	Fix image data length computation (XCB doesn't do this part).
-
-2004-06-11  David Reveman  <c99drn at cs.umu.se>
-
-	* configure.in: Require glitz 0.1.4.
-
-	* src/cairo_gl_surface.c: Added CAIRO_GL_SURFACE_MULTISAMPLE macro.
-	(_cairo_gl_extract_rectangle): Added _cairo_gl_extract_rectangle.
-	(_cairo_gl_surface_composite_trapezoids): Use fill_rectangles if
-	we can represent the traps as a rectangle. fill_trapezoids cannot be
-	used with software multi-sampling.
-	(CAIRO_GL_COMPOSITE_TRAPEZOIDS_SUPPORT): Glitz can no longer composite
-	trapezoids just by using offscreen drawing.
-	(_cairo_gl_surface_create_similar): Inherit anti-aliasing properties.
-
-	* src/cairo_gstate.c (_cairo_gstate_create_pattern): Get solid color
-	from color stop components.
-
-	* src/cairoint.h: Removed cairo color from color stop.
-
-	* src/cairo_pattern.c: Added MULTIPLY_COLORCOMP macro.
-	(cairo_pattern_add_color_stop): Do not pre-multiply stop color.
-	(_cairo_pattern_calc_color_at_pixel): Multiply with alpha.
-
-2004-05-28  Carl Worth  <cworth at isi.edu>
-
-	* These two fixes are from David Reveman <c99drn at cs.umu.se>:
-
-	* src/cairo_surface.c (_cairo_surface_create_similar_scratch)
-	(_cairo_surface_create_similar_solid): Move NULL test from
-	create_similar_scratch to create_similar_solid.
-	
-	* src/cairo_font.c (_cairo_glyph_surface_init): Fix for when
-	surface->backend != image->backend, but the backend does use
-	images for similar surfaces.
-
-2004-05-28  Keith Packard  <keithp at keithp.com>
-
-	* configure.in:
-	* src/Makefile.am:
-	Add WARN_CFLAGS, autodetection for 64/128 bit ints and
-	cairo_wideint.[ch]
-	
-	* src/cairo_gstate.c: (_cairo_gstate_show_glyphs):
-	Check status return from _cairo_gstate_glyph_extents
-	
-	* src/cairo_pattern.c: (_cairo_image_data_set_radial),
-	(_cairo_pattern_get_image):
-	* src/cairo_png_surface.c: (_cairo_png_surface_copy_page):
-	* src/cairo_surface.c: (_cairo_surface_composite):
-	Quiet compiler warnings about uninitialized variables
-
-	* src/cairo_traps.c: (_det16_32), (_det32_64),
-	(_fixed_16_16_to_fixed_32_32), (_line_segs_intersect_ceil):
-	Switch to alternate exact line intersection code.
-	
-	* src/cairo_wideint.c: (_cairo_uint64_divrem),
-	(_cairo_uint32_to_uint64), (_cairo_int32_to_int64),
-	(_cairo_uint32s_to_uint64), (_cairo_uint64_add),
-	(_cairo_uint64_sub), (_cairo_uint32x32_64_mul),
-	(_cairo_uint64_mul), (_cairo_uint64_lsl), (_cairo_uint64_rsl),
-	(_cairo_uint64_rsa), (_cairo_uint64_lt), (_cairo_uint64_eq),
-	(_cairo_int64_lt), (_cairo_uint64_not), (_cairo_uint64_negate),
-	(_cairo_leading_zeros32), (_cairo_uint64x32_normalized_divrem),
-	(_cairo_int64_divrem), (_cairo_uint128_divrem),
-	(_cairo_uint32_to_uint128), (_cairo_int32_to_int128),
-	(_cairo_uint64_to_uint128), (_cairo_int64_to_int128),
-	(_cairo_uint128_add), (_cairo_uint128_sub), (uint64_lo),
-	(uint64_hi), (uint64_shift32), (_cairo_uint64x64_128_mul),
-	(_cairo_uint128_mul), (_cairo_uint128_lsl), (_cairo_uint128_rsl),
-	(_cairo_uint128_rsa), (_cairo_uint128_lt), (_cairo_int128_lt),
-	(_cairo_uint128_eq), (_cairo_uint128x64_normalized_divrem),
-	(_cairo_leading_zeros64), (_cairo_int128_negate),
-	(_cairo_int128_not), (_cairo_int128_divrem):
-	* src/cairo_wideint.h:
-	Add 64/128-bit wide integer arithmetic.
-	
-	* src/cairoint.h:
-	Switch to stdint.h types (and new wide types).
-
-2004-05-24  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo.c (cairo_restore): Moved CAIRO_CHECK_SANITY below
-	declarations.
-	(cairo_current_font): Moved CAIRO_CHECK_SANITY below declarations.
-
-	* src/cairoint.h: Added cairo_glyph_size_t, cairo_glyph_surface_t,
-	cairo_glyph_surface_node_t and cairo_glyph_cache_t.
-	Added font backend functions text_bbox, glyph_bbox and create_glyph.
-	Added source offset parameter to show_text and show_glyphs.
-	Added drawable parameter to backend function create_similar.
-	cairo_font_t now contains a glyph_cache pointer.
-	Added _cairo_font_text_bbox, _cairo_font_glyph_bbox,
-	_cairo_font_lookup_glyph and _cairo_surface_create_similar_scratch.
-
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_create_similar): 
-	(_cairo_xlib_surface_clone_similar): 
-	Added drawable parameter to backend function create_similar.
-
-	* src/cairo_xcb_surface.c (_cairo_xcb_surface_create_similar): 
-	(_cairo_xcb_surface_clone_similar): 
-	Added drawable parameter to backend function create_similar.
-
-	* src/cairo_surface.c: Added _cairo_surface_create_similar_scratch.
-	Added drawable parameter to backend function create_similar.
-
-	* src/cairo_ps_surface.c (_cairo_ps_surface_create_similar): 
-	Added drawable parameter to backend function create_similar.
-
-	* src/cairo_png_surface.c (_cairo_png_surface_create_similar): 
-	Added drawable parameter to backend function create_similar.
-
-	* src/cairo_image_surface.c (_cairo_image_surface_create_similar): 
-	Added drawable parameter to backend function create_similar.
-
-	* src/cairo_gstate.c (_cairo_gstate_show_text): Use new text
-	bounding box function. Pass pattern source offset to show_text.
-	(_cairo_gstate_show_glyphs): Use new text
-	bounding box function. Pass pattern source offset to show_glyps.
-
-	* src/cairo_gl_surface.c (_cairo_gl_surface_create_similar): Added
-	drawable parameter to backend function create_similar. Use glitz's
-	new create similar interface. Support for read-only surfaces.
-	(_cairo_gl_surface_clone_similar): Added drawable parameter to
-	backend function create_similar.
-
-	* src/cairo_ft_font.c: Use new glyph caching system. Added bounding box
-	font backend functions.
-
-	* src/cairo_font.c: Added glyph caching system. Added bounding box
-	font backend functions.
-	(_cairo_font_init): Create new glyph cache.
-	(_cairo_font_copy): Take a reference to other fonts glyph cache.
-	(_cairo_font_show_text):
-	(_cairo_font_show_glyphs): Handle source offset.
-	(cairo_font_destroy): Destroy glyph cache.
-
-2004-05-20  Graydon Hoare  <graydon at redhat.com>
-
-	* configure.in: Add sanity checking feature configury.
-
-	* src/cairo-features.h.in: Add sanity checking feature.
-
-	* src/cairo.c: Add sanity checking.
-
-	* src/cairoint.h: Add prototypes.
-
-	* src/cairo_fixed.c 
-	(_cairo_fixed_is_integer): 
-	(_cairo_fixed_integer_part): New functions.
-
-	* src/cairo_matrix.c 
-	(_cairo_matrix_is_integer_translation): New function.
-
-	* src/cairo_gstate.c
-	(extract_transformed_rectangle): Use fixed functions.
-	(_cairo_gstate_clip): Arithmetic fixes.
-	(_cairo_gstate_clip_and_composite_trapezoids):
-	(_cairo_gstate_show_surface):
-	(_cairo_gstate_show_text):
-	(_cairo_gstate_show_glyphs): Corrections to clipping.
-
-	* src/cairo_xlib_surface.c
-	(_cairo_xlib_surface_composite): Add XCopyArea fast path.
-	(_cairo_xlib_surface_set_clip_region): Drive clip to drawable.
-
-2004-05-17  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo.c (cairo_show_text): Do nothing when passed a NULL
-	string.
-
-2004-05-11  Øyvind Kolås  <oeyvindk at hig.no>
-	
-	* src/cairoint.h : changed CAIRO_FILTER_DEFAULT to CAIRO_FILTER_BEST
-	to make gradients easier.
-
-2004-05-11  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_pattern.c (_cairo_pattern_get_image): Removed
-	pattern_offset.
-
-	* src/cairo_surface.c (_cairo_surface_create_pattern): Removed
-	pattern_offset.
-
-	* src/cairo_gstate.c: Removed pattern_offset.
-
-	* src/cairoint.h: Removed pattern_offset.
-
-2004-05-11  Carl Worth  <cworth at isi.edu>	
-
-	* configure.in: Increment CAIRO_VERSION to 0.1.23.
-
-	* NEWS: Added notes for snapshot 0.1.23.
-
-	* RELEASING: Add reminder to mention incompatible API changes in
-	NEWS. Re-order steps to avoid clobbering pre-existing tar
-	files.
-
-2004-05-11  Carl Worth  <cworth at isi.edu>
-
-	* BUGS: Several people have reported that cairo_clip is not
-	working right now. And it's always been slow.
-
-2004-05-11  David Reveman  <c99drn at cs.umu.se>
-
-	* configure.in: Require glitz 0.1.2.
-
-	* src/cairo_gl_surface.c: Added opacity attribute. Fixed broken
-	CAIRO_GL_COMPOSITE_TRAPEZOIDS_SUPPORT macro.
-	(_cairo_gl_surface_composite_trapezoids): Use polygon opacity.
-	(_cairo_gl_surface_create_pattern): Added surface pattern support.
-	(_cairo_gl_surface_create): Initialize opacity to 0xffff.
-
-2004-05-07  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_ft_font.c (_utf8_to_ucs4): Bail on NULL utf8 string.
-
-	* src/cairo_spline.c (_cairo_spline_add_point): Don't add two
-	consecutive, identical points when decomposing the spline, (which
-	was leading to an infinte loop in the stroke algorithm when it
-	found a slope of (0,0)).
-
-2004-05-04  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_png_surface.c (cairo_png_surface_create): Move all
-	libpng-related code into copy_page.
-	(unpremultiply_data): Add missing unpremultiply step.
-	(_cairo_png_surface_copy_page): Move PNG output to copy_page. Add
-	support for A8 and A1 images. Remove time from header (we may want
-	to add it again later, but for now it messes up my test suite).
-	(_cairo_png_surface_destroy): Call copy_page if it hasn't been
-	called already.
-	(_cairo_png_surface_show_page): Add implementation.
-	(_cairo_png_surface_copy_page): Don't close a file we didn't open.
-
-2004-05-04  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_pattern.c (_cairo_image_data_set_radial): Corrected some
-	confusing comments about the math used for radial gradients.
-
-2004-05-01  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_gl_surface.c (_cairo_gl_surface_create_pattern): 
-	cairo_surface_t pointer to cairo_surface_set_matrix.
-
-2004-04-29  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_set_pattern): Don't set
-	pattern_offset by the current point. Perhaps we can eliminate
-	pattern_offset altogether now?
-
-2004-04-30  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairoint.h: Radial patterns only store radius per circle. 
-	Only inverse CTM to _cairo_pattern_transform.
-
-	* src/cairo_pattern.c (cairo_pattern_create_radial): Only one radius
-	per circle now.
-	(_cairo_pattern_transform): A matrix multiplication with inverse CTM
-	is all that's needed here.
-	(_cairo_pattern_calc_color_at_pixel): Fixed extend type reflect.
-	(_cairo_image_data_set_linear): New linear gradient code. 
-	Transformation of linear gradient is now handled correctly.
-	(_cairo_image_data_set_radial): New radial gradient code. Inner circle
-	is now used for creating radial gradients. Transformation of radial
-	gradient is now handled correctly.
-	(_cairo_pattern_get_image): Fixed handling of pattern offset.
-
-	* src/cairo_gstate.c (_cairo_gstate_create_pattern): All pattern types
-	are transformed using inverse CTM.
-
-	* src/cairo_gl_surface.c (_cairo_gl_surface_create_pattern): Updated
-	to use glitz's new linear and radial gradients.
-
-	* configure.in: Require glitz 0.1.1.
-
-2004-04-28  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_gl_surface.c: Added CAIRO_GL_MULTITEXTURE_SUPPORT and
-	CAIRO_GL_SURFACE_IS_SOLID macros.
-	(_cairo_gl_surface_get_image): Simpler way for calculating rowstride.
-	(_cairo_gl_surface_composite): Support compositing with mask surface
-	when mask is solid or multi-texturing is available.
-
-2004-04-25  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_gl_surface.c (_cairo_gl_surface_set_clip_region): 
-	Fixed conversion of pixman_box16_t to glitz_rectangle_t.
-
-	* src/cairoint.h: Added scale factor value to cairo_color_stop_t.
-	Added cairo_shader_function_t and cairo_shader_op_t.
-
-	* src/cairo_surface.c (_cairo_surface_create_pattern): 
-	Fixed point updates.
-
-	* src/cairo_pattern.c (cairo_pattern_create_radial): Use absolute value
-	of radius parameters.
-	(cairo_pattern_add_color_stop): Precalculate scale factors and convert
-	offset to fixed point value.
-	(_cairo_image_data_set_radial): 
-	(_cairo_image_data_set_linear): Initialize and use shading operator.
-	(_cairo_pattern_get_image): Fixed point updates.
-	(_cairo_pattern_shader_nearest): 
-	(_cairo_pattern_shader_linear): 
-	(_cairo_pattern_shader_gaussian): 
-	(_cairo_pattern_calc_color_at_pixel): 
-	Converted shading routines to use fixed point values and introduced
-	a shading operator structure for more efficient shading calculations.
-	Added _cairo_pattern_shader_init function. 
-
-	* src/cairo_gl_surface.c (_cairo_gl_surface_composite): 
-	(_cairo_gl_surface_fill_rectangles): 
-	(_cairo_gl_surface_composite_trapezoids): 
-	Make sure that target surface is OK.
-	(_cairo_gl_create_color_range): Initialize and use shading operator.
-	(_cairo_gl_surface_create_pattern): 
-	(_cairo_gl_surface_set_clip_region): Fixed point updates.
-
-2004-04-23  Carl Worth  <cworth at isi.edu>
-
-	* src/cairoint.h: 
-	* src/cairo_surface.c (_cairo_surface_composite): 
-	* src/cairo_gstate.c (_cairo_gstate_current_fill_rule): Fixed
-	several function prototype mismatches between internal header file
-	and implementation (thanks to Carlos Romero and gcc-3.4).
-	
-2004-04-22  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairoint.h:
-	* src/cairo_surface.c (_cairo_surface_create_pattern):
-	* src/cairo_pattern.c (_cairo_pattern_set_source_offset)
-	(_cairo_pattern_get_image):
-	* src/cairo_gstate.c (_cairo_gstate_create_pattern):
-	* src/cairo_gl_surface.c (_cairo_gl_surface_create_pattern): Fixed
-	pattern source offset.
-
-2004-04-20  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairo_pattern.c (_cairo_image_data_set_linear): Use
-	CAIRO_MAXSHORT instead of INT_MAX.
-
-	* src/cairo_traps.c (_cairo_traps_extents): Use CAIRO_MAXSHORT and
-	CAIRO_MINSHORT instead of SHRT_MAX and SHRT_MIN.
-
-	* src/cairoint.h: including limits.h and defining CAIRO_MAXSHORT and
-	CAIRO_MINSHORT.
-
-2004-04-16  Carl Worth  <cworth at isi.edu>
-
-	* NEWS: Added notes for snapshot 0.1.22.
-
-	* configure.in: Now depends on libpixman 0.1.1.
-	Bump version to 0.1.22.
-
-	* src/cairo_image_surface.c (_create_pixman_format): Track pixman
-	fixes to PIXMAN_FORMAT_NAME_*.
-
-	* src/cairo_png_surface.c (cairo_png_surface_create): Explicitly
-	add cases for all enum values to eliminate compiler warnings.
-
-	* src/cairo.h: Remove proposal for surface_clip interface as
-	cairo_clip should be able to cover this case now.
-
-	* BUGS: Added bug concerning negative ref_counts.
-
-2004-04-09  David Reveman  <c99drn at cs.umu.se>
-
-	* NEWS: Added notes for snapshot 0.1.21.
-
-	* configure.in: Bump version to 0.1.21.
-
-	* src/cairo_surface.c (_cairo_surface_create_pattern):
-	* src/cairo_pattern.c (_cairo_pattern_get_image): Fixed
-	incorrect rounding of pattern image size.
-
-	* AUTHORS: Added myself to the AUTHORS file.
-
-	* cairo.pc.in:
-	* src/Makefile.am:
-	* src/cairo-features.h.in:
-	* src/cairo.h:
-	* src/cairo_gl_surface.c (added): Added OpenGL surface backend.
-
-	* configure.in: Automatically detect available backends.
-
-2004-04-06  Carl Worth  <cworth at isi.edu>
-
-	* NEWS: Added notes for snapshot 0.1.20.
-
-	* RELEASING: Added new RELEASING file.
-
-2004-04-04  David Reveman  <c99drn at cs.umu.se>
-
-	* src/cairoint.h: Added create_pattern backend function and pattern
-	prototypes.
-
-	* src/cairo_xlib_surface.c: Added _cairo_xlib_surface_create_pattern.
-
-	* src/cairo_xcb_surface.c: Added _cairo_xcb_surface_create_pattern.
-
-	* src/cairo_traps.c: Added _cairo_trap_extents and 
-	_cairo_traps_extents.
-
-	* src/cairo_surface.c: Added _cairo_surface_create_pattern.
-
-	* src/cairo_ps_surface.c: Added _cairo_ps_surface_create_pattern.
-
-	* src/cairo_png_surface.c: Added _cairo_png_surface_create_pattern.
-
-	* src/cairo_pattern.c (added): All functions needed for the new
-	pattern API.
-
-	* src/cairo_image_surface.c: Added
-	_cairo_image_abstract_surface_create_pattern.
-
-	* src/cairo_gstate.c (_cairo_gstate_init): Create solid pattern
-	and set alpha to 0.0.
-	(_cairo_gstate_init_copy): Increment pattern references.
-	(_cairo_gstate_fini): Destroy pattern.
-	(_cairo_gstate_set_pattern): Destroy current pattern,
-	increment references to the new pattern and update pattern
-	offset with the current point.
-	(_cairo_gstate_set_rgb_color): Destroy current pattern and
-	create a new solid pattern.
-	(_cairo_gstate_current_rgb_color): Get RGB from current pattern.
-	(_cairo_gstate_set_alpha): Set gstate->alpha without modifying
-	the current pattern.
-	(_cairo_gstate_stroke):
-	(_cairo_gstate_fill): Removed surface matrix computations as
-	they are now handled by _cairo_gstate_create_pattern.
-	(_cairo_gstate_clip_and_composite_trapezoids): Create a
-	possibly backend accelerated pattern source and use it for
-	compositing trapezoids.
-	(_cairo_gstate_clip): Allow backends to not support rectangular
-	clipping regions. Use solid pattern for creating clip surface.
-	(_cairo_gstate_show_surface): Use solid pattern for alpha mask.
-	(_cairo_gstate_show_text):
-	(_cairo_gstate_show_glyphs): Use current pattern when compositing
-	glyphs.
-
-	Added _cairo_gstate_current_pattern and _cairo_gstate_create_pattern,
-	_cairo_gstate_stroke_extents, _cairo_gstate_fill_extents.
-	Removed restore_text_rendering_context, setup_text_rendering_context,
-	_cairo_gstate_ensure_source.
-
-	* src/cairo_ft_font.c (_cairo_ft_font_show_glyphs): Advance
-	source offset.
-
-	* src/cairo.h: Added cairo_current_pattern,
-	cairo_pattern_create_for_surface, cairo_pattern_create_linear,
-	cairo_pattern_create_radial, cairo_pattern_reference,
-	cairo_pattern_destroy, cairo_pattern_add_color_stop,
-	cairo_pattern_set_matrix, cairo_pattern_get_matrix,
-	cairo_pattern_set_extend, cairo_pattern_get_extend,
-	cairo_pattern_set_filter, cairo_pattern_get_filter. cairo_set_pattern
-	now takes a cairo_pattern_t pointer instead of a cairo_surface_t
-	pointer. Added CAIRO_FILTER_GAUSSIAN filter type. Added cairo_extend_t
-	enum.
-
-	* src/cairo.c: _cairo_restrict_value declared not static as it's
-	used in cairo_pattern.c. Added rectangular extents functions
-	cairo_stroke_extents and cairo_fill_extents. cairo_set_pattern now
-	takes a cairo_pattern_t pointer instead of a cairo_surface_t
-	pointer. Added cairo_current_pattern function.
-
-	* src/Makefile.am (libcairo_la_LIBADD): Removed -lz and added PS_LIBS.
-
-	* configure.in: Bump version to 0.1.20. Includes new pattern
-	API. Removed an extra AC_SUBST(XRENDER_LIBS). 
-	PS_SURFACE_LIBS -> PS_LIBS.
-
-	* cairo.pc.in: PS_SURFACE_LIBS -> PS_LIBS.
-
-2004-04-02  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo.h: Move weight after slant to match the order in
-	cairo_select_font.
-
-	* TODO: Added notes on DPI for image-based backends and on
-	proposal for new cairo_text_glyphs function.
-
-	* BUGS: Added BUG about cairo_show_text not advancing the current
-	point.
-
-2004-03-30  Carl Worth  <cworth at isi.edu>
-
-	* src/Makefile.am (libcairo_la_LIBADD): Add -lz.
-
-2004-03-30  Carl Worth  <cworth at isi.edu>
-
-	* configure.in: Add checks for Xrender.h in xrender.pc is not
-	found. Remove AC_HELP_STRING to be compatible with older versions
-	of autoconf (thanks to Bill Spitzak <spitzak at d2.com>).
-
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_set_clip_region):
-	Add question on semantics with empty region. Fix missing return
-	value.
-
-	* src/cairo_image_surface.c
-	(_cairo_image_surface_set_clip_region): Export for internal use.
-	(_cairo_image_abstract_surface_set_clip_region): Add silly wrapper
-	to match the backend interface.
-
-	* src/cairo_gstate.c (_cairo_gstate_init_clip): Remove unused
-	variables.
-
-	* src/cairo.h: Add proposal for cairo_xlib_surface_set_size.
-
-	* BUGS: Added note about problem with cairo_scale_font.
-
-2004-03-23  Olivier Andrieu  <oliv__a at users.sourceforge.net>
-	
-	* src/cairo_ps_surface.c (_cairo_ps_surface_set_clip_region)
-	* src/cairo_png_surface.c (_cairo_png_surface_set_clip_region):
-	Implement _set_clip_region by delegating it to the image backend.
-
-	* src/cairo_xcb_surface.c (_cairo_xcb_surface_set_clip_region):
-	Add a stub.
-
-	* src/cairo.h: Add missing (?) cairo_init_clip
-
-2004-03-20  Dave Beckett  <Dave.Beckett at bristol.ac.uk>
-
-	* configure.in: Move the PNG_CFLAGS/_LIBS substitutes outside
-	the conditional, to match what is already done for XCB.
-	Do the same for XRENDER_CFLAGS/LIBS.
-
-	* configure.in: Substitute PNG_CFLAGS, PNG_LIBS on
-	the configure path when use_png is not enabled to prevent
-	the substituions being undefined.
-
-2004-03-19  Graydon Hoare  <graydon at redhat.com>
-
-	* src/cairo.c (cairo_init_clip): Add.
-	* src/cairo_gstate.c:
-	Initialize, finalize and copy clip.region.
-	Detect rectangular clips and push down to backend.
-
-	* src/cairoint.h
-	(cairo_surface_backend_t): Add set_clip_region slot.
-	(cairo_clip_rec_t): Add region slot.
-	(_cairo_gstate_init_clip)
-	(_cairo_surface_set_clip_region): Prototype.
-
-	* src/cairo_surface.c
-	(_cairo_surface_set_clip_region): Add.
-	
-	* src/cairo_xlib_surface.c 
-	(_cairo_xlib_surface_set_clip_region): Add.
-
-	* src/cairo_image_surface.c 
-	(_cairo_image_surface_set_clip_region): Add.
-
-	* src/cairo_ps_surface.c
-	(_cairo_ps_surface_set_clip_region): Stub, not implemented.
-
-2004-03-16  Jamey Sharp <jamey at minilop.net>
-
-	* src/cairo.h:
-	* src/cairo_xcb_surface.c:
-	Updated for XCB typename renaming. The Xlib and XCB surfaces can
-	be compiled in the same library now.
-
-	* src/cairo_surface.c:
-	Initialize the surface's filter value.
-
-2004-02-26  Carl Worth  <cworth at isi.edu>
-
-	* AUTHORS: Add Jordi and Olivier to the AUTHORS file.
-
-	* src/cairo_ft_font.c (_utf8_to_ucs4): Fix broken return value for
-	nchars (thanks to Jordi Mas <jordi at ximian.com>).
-
-2004-02-24  Olivier Andrieu  <oliv__a at users.sourceforge.net>
-
-	* src/cairo.h:
-	* src/cairo-features.h.in:
-	* src/cairo_png_surface.c: Add PNG backend (cairo_set_target_png
-	and cairo_png_surface_create).
-
-	* cairo.pc.in:
-	* configure.in: autoconf support for the PNG backend. Bump version
-	to 0.1.19.
-	
-	* src/Makefile.am: PNG backend support, removed references to
-	X_LIBS and X_CFLAGS.
-
-2004-02-24  Carl Worth  <cworth at isi.edu>
-
-	* AUTHORS: Add attribution for many people who have made generous
-	contributions to cairo. This list was generated by sifting through
-	the ChangeLog. Please let me know if I have missed anyone.
-
-	* NEWS: Add some historical notes on cairo development, prior to
-	when we began to maintain this NEWS file.
-
-	* README (http): Add pointer to cairographics.org. Fix to use
-	"cairo" rather than "Cairo" when not at the beginning of a
-	sentence.
-
-	* TODO: Remove cairo_current_path, cairo_current_path_flat,
-	cairo_text_extents, cairo_glyph_extents, cairo_text_path, and
-	cairo_glyph_path from the TODO list as they have all been
-	implemented now.
-
-2004-02-17  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo.h: Add comment indication cairo_copy will be going
-	away at some point. Some indentation fixes.
-
-	* configure.in: Bump version to 0.1.18. Includes new functions
-	cairo_current_path, cairo_current_path_flat,
-	cairo_surface_get_filter. Support for XCB backend. Fixes for
-	building in cygwin. Adds cairo_surface_get_filter.
-
-	* src/cairo.h: 
-	* src/cairo.c (cairo_current_path): 
-	(cairo_current_path_flat): Add new path query functions.
-
-	* src/cairo_gstate.c (_gpi_move_to):
-	(_gpi_line_to):
-	(_gpi_curve_to):
-	(_gpi_close_path):
-	(_cairo_gstate_interpret_path): Implement support for
-	cairo_current_path and cairo_current_path_flat. These functions
-	just provide an interface to _cairo_path_interpret and take care
-	of mapping from device space back to user space.
-
-2004-02-13  Carl Worth  <cworth at east.isi.edu>
-
-	* TODO: Add some notes from JG's TODO list on the wiki:
-	http://cairographics.org/CairoToDoList. (Also testing automated
-	mailing to cairo-commit list).
-
-2004-02-12  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo.h: Add typedefs for new callbacks to be used by
-	cairo_current_path: cairo_move_to_func, cairo_line_to_func,
-	cairo_curve_to_func, and cairo_close_path_func.
-
-	* src/cairoint.h: cairo_path.last_move_point and
-	cairo_path.current_point are now fixed-point not doubles for
-	consistency.
-
-	* src/cairo_path.c (_cairo_path_interpret): Now accept 4 explicit
-	function pointers rather than a structure. Eliminate unnecessary
-	done_path callback.
-	
-	* src/cairo_path_bounds.c (_cairo_path_bounds):
-	* src/cairo_path_stroke.c (_cairo_path_stroke_to_traps): 
-	* src/cairo_path_fill.c (_cairo_path_fill_to_traps): Track change
-	in _cairo_path_interpret. Code previously in done_path callback is
-	now here immediately after call to _cairo_path_interpret.
-
-	* src/cairo_path.c (_cairo_path_move_to):
-	(_cairo_path_rel_move_to):
-	(_cairo_path_line_to):
-	(_cairo_path_rel_line_to):
-	(_cairo_path_curve_to):
-	(_cairo_path_rel_curve_to):
-	(_cairo_path_current_point): Internal _cairo_path API modified to
-	accept fixed-point data everywhere. Much cleaner this way.
-
-	* src/cairo_gstate.c (_cairo_gstate_move_to):
-	(_cairo_gstate_line_to):
-	(_cairo_gstate_curve_to):
-	(_cairo_gstate_rel_move_to):
-	(_cairo_gstate_rel_line_to):
-	(_cairo_gstate_rel_curve_to):
-	(_cairo_gstate_current_point):
-	(_cairo_gstate_show_text):
-	(_cairo_gstate_text_path): Have to convert doubles to fixed-point
-	to track changes in _cairo_path API.
-
-	* src/cairo_ft_font.c (_move_to, _line_to, _conic_to, _cubic_to):
-	Keep data in fixed-point rather than going through intermediate
-	doubles. Track changes in _cairo_path API.
-
-	* src/cairo_fixed.c (_cairo_fixed_from_26_6): New function to help
-	when working with freetype.
-
-2004-02-02  Jamey Sharp  <jamey at minilop.net>
-
-	* configure.in:
-	* src/Makefile.am:
-	* src/cairo-features.h.in:
-	* src/cairo.h:
-	* src/cairo_xcb_surface.c (added):
-	Ported the Xlib surface backend to XCB.
-
-2004-02-02  Graydon Hoare  <graydon at redhat.com>
-
-	* src/cairo_xlib_surface.c 
-	(CAIRO_SURFACE_RENDER_HAS_FILTERS): New predicate.
-	(_cairo_xlib_surface_set_filter): Skip filterless servers.
-	(_cairo_xlib_surface_clone_similar): Fix typo.
-
-2004-01-27  Graydon Hoare  <graydon at redhat.com>
-
-	* src/cairoint.h (cairo_surface): New "filter" field.
-	* src/cairo_surface.c 
-	(cairo_surface_get_filter): New function.
-	(cairo_surface_set_filter): Store filter in surface.
-	* src/cairo.h (cairo_surface_get_filter): Declare.
-	* src/cairo_xlib_surface.c
-	(_cairo_xlib_surface_clone_similar): Copy filter setting.
-	(_cairo_xlib_surface_set_filter): Use constants from Xrender.h
-
-2004-01-24  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_path_stroke.c (_cairo_stroker_add_sub_edge): Fix to
-	use tessellate_polygon instead of tessellate_rectangle as the
-	matrix may have skewed the coordinates into a non-rectangular
-	shape.
-
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_set_filter): Add
-	missing break statements to switch.
-
-2004-01-22  Richard D. Worth  <richard at theworths.org>
-
-	* src/Makefile.am: Add '-no-undefined' to end of
-	libcairo_la_LDFLAGS to enable building shared library under
-	cygwin.
-
-	* src/cairo.h: Remove all 'extern ' and ' __external_linkage'
-	(macro for __declspec(dllexport) and __declspec(dllimport))
-	from function declarations. These are no longer needed for cygwin.
-
-	* src/cairo_traps.c: Changed type of _line_segs_intersect_ceil
-	from 'static cairo_fixed_t' to 'static int' to match definition.
-	This was necessary to compile under cygwin.
-	
-2003-12-17  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo.h: Remove trailing commas from enums, (some compilers
-	like to complain about them).
-
-2003-12-16  Dave Beckett  <Dave.Beckett at bristol.ac.uk>
-
-	* README: Do not require libpixregion, libic.
-
-2003-12-16  Carl Worth  <cworth at east.isi.edu>
-
-	* NEWS: Add more notes culled from the ChangeLog.
-
-2003-12-16  Carl Worth  <cworth at isi.edu>
-
-	* NEWS: Begin maintaining NEWS file. Add notes on 0.1.17.
-
-	* configure.in: Bump version to 0.1.17 for new functions:
-	cairo_text_extents, cairo_glyph_extents, cairo_text_path,
-	cairo_glyph_path.
-
-	* src/cairo.h: 
-	* src/cairo.c (cairo_text_path): 
-	(cairo_glyph_path): Re-enable cairo_text_path and cairo_glyph_path.
-
-	* src/cairo_gstate.c (_cairo_gstate_glyph_path): Add missing
-	transformation.
-
-	* src/cairo_ft_font.c (_move_to):
-	(_line_to):
-	(_conic_to):
-	(_cubic_to):
-	(_cairo_ft_font_glyph_path): Initial implementation of glyph_path.
-
-2003-12-16  Carl Worth  <cworth at isi.edu>
-
-	* src/cairoint.h: Move all current_point state fields from
-	cairo_gstate_t to cairo_path_t.
-
-	* src/cairo_path.c (_cairo_path_init): 
-	(_cairo_path_init_copy): 
-	(_cairo_path_fini): 
-	(_cairo_path_move_to): 
-	(_cairo_path_line_to): 
-	(_cairo_path_curve_to): 
-	(_cairo_path_close_path): Add current_point state.
-	(_cairo_path_current_point): New function.
-	(_cairo_path_rel_move_to): 
-	(_cairo_path_rel_line_to): 
-	(_cairo_path_rel_curve_to): New functions.
-
-	* src/cairo_gstate.c (_cairo_gstate_init):
-	(_cairo_gstate_new_path):
-	(_cairo_gstate_move_to):
-	(_cairo_gstate_line_to):
-	(_cairo_gstate_curve_to):
-	(_cairo_gstate_rel_move_to):
-	(_cairo_gstate_rel_line_to):
-	(_cairo_gstate_rel_curve_to):
-	(_cairo_gstate_close_path):
-	(_cairo_gstate_current_point): Eliminate current_point state.
-	(_cairo_gstate_show_text):
-	(_cairo_gstate_text_path): Use new _cairo_path_current_point.
-
-2003-12-16  Carl Worth  <cworth at isi.edu>
-
-
-	* src/cairo_ft_font.c (_cairo_ft_font_glyph_path):
-	(_cairo_ft_font_text_path): A couple of changes missed in the last
-	batch of commits (reordering so that path is final argument).
-
-	* src/cairoint.h: Change cairo_font_backend_t to use a void * for
-	the abstract font. Put create, copy, and destroy as the first
-	functions in the list. Fix text_path and glyph_path so that the
-	path to be returned is the last argument. Add x,y arguments to
-	text_path.
-
-	* src/cairo_gstate.c (_cairo_gstate_text_path): Compute x,y now
-	needed by cairo_font_text_path.
-	(_cairo_gstate_glyph_path): Track change in
-	cairo_font_text/glyph_path (path argument is now last).
-
-	* src/cairo_ft_font.c: Switch to new macro-based mechanism for
-	including freetype headers.
-	(cairo_ft_font_face):
-	(cairo_ft_font_pattern): Minor cleanup.
-	(_cairo_ft_font_copy):
-	(_cairo_ft_font_destroy):
-	(_utf8_to_glyphs):
-	(_cairo_ft_font_font_extents):
-	(_cairo_ft_font_glyph_extents):
-	(_cairo_ft_font_text_extents):
-	(_cairo_ft_font_show_glyphs):
-	(_cairo_ft_font_show_text): Track changes to cairo_font_backend_t
-	interface.
-
-	* src/cairo_font.c (_cairo_font_text_path):
-	(_cairo_font_glyph_path): Track changes to cairo_font_backend_t
-	interface.
-
-2003-12-16  Carl Worth  <cworth at isi.edu>
-
-	* TODO: Change instances of Cairo to cairo where necessary. Add
-	note about broken dashing on splines.
-
-2003-12-15  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_text_extents): 
-	(_cairo_gstate_glyph_extents): 
-	* src/cairo_ft_font.c (_cairo_ft_font_glyph_extents): 
-	(_cairo_ft_font_glyph_extents): 
-	* src/cairo.h: Rename cairo_text_exextents_t fields:
-		left_side_bearing -> x_bearing
-		ascent -> y_bearing
-		right_side_bearing (replaced by) width
-		descent (replaced by) height
-
-2003-12-15  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_text_extents):
-	(_cairo_gstate_glyph_extents): Need to divide out the scale factor
-	to return user-space extents.
-	(_cairo_gstate_glyph_extents): Don't transform glyph locations as
-	they're not relevant to extents.
-
-	* src/cairo_ft_font.c (_cairo_ft_font_font_extents): Clean up
-	implementation.
-	(_cairo_ft_font_glyph_extents): Initial implementation. Thanks to
-	John Ellson <ellson at research.att.com> for most of the work on this
-	function.
-	(_cairo_ft_font_show_text): Clean to use num_glyphs not nglyphs.
-
-	* src/cairo.h: 
-	* src/cairo.c (cairo_text_extents): 
-	(cairo_glyph_extents): Re-enable cairo_text/glyph_extents.
-
-2003-12-15  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_matrix.c (_cairo_matrix_compute_scale_factors): Move
-	this function from cairo_ft_font.c (_get_scale_factors).
-
-	* src/cairo_ft_font.c (DOUBLE_TO_16_16): Fix minor errors in
-	fixed/floating-point conversion.
-
-	* src/cairoint.h: font->show_glyphs no longer accepts an offset
-	point.
-
-	* src/cairo_ft_font.c (_utf8_to_glyphs):
-	(_cairo_ft_font_text_extents):
-	(_cairo_ft_font_show_text):
-	(_cairo_ft_font_text_path): _utf8_to_glyphs now accepts a point by
-	which each glyph should be offset.
-	(cairo_ft_font_backend): Remove evil void * casts on function
-	pointers.
-
-	* src/cairo_font.c (_cairo_font_show_glyphs): Fix to not require a
-	current point.
-
-	* src/cairo_gstate.c (_cairo_gstate_show_text):
-	(setup_text_rendering_context): Move initialization of current
-	device-space point from setup_text_rendering_context to
-	_cairo_gstate_show_text.
-	(_cairo_gstate_show_glyphs): Fix to not reference current point.
-
-2003-12-12  Dave Beckett  <Dave.Beckett at bristol.ac.uk>
-
-	* src/Makefile.am: Add compatibility defines FONTCONFIG_LIBS,
-	X_LIBS, XRENDER_LIBS to keep automake happy - they look like
-	automake variable names.
-
-2003-12-12  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo_font.c (_cairo_font_create): Add comment about
-	building in a font.
-
-	* src/cairo_ft_font.c (_cairo_ft_font_create): Check for NULL
-	return value from cairo_ft_font_create.
-
-	* src/cairo.h: 
-	* src/cairo-features.h.in: 
-	* src/Makefile.am (libcairo_ps_sources): Add conditionals for
-	ps_surface functions, etc.
-
-	* configure.in: Get rid of AC_PATH_XTRA. Instead, find X
-	includes/libraries only via pkg-config xrender.
-	Switch option from --without-x to --disable-xlib
-	Add option --disable-ps
-
-	* cairo.pc.in (Libs): Add -lz only if ps_surface backend is compiled.
-
-	* src/cairo.h (__external_linkage): Add missing definitions from
-	slim_import.h.
-
-2003-12-11  Carl Worth  <cworth at isi.edu>
-
-	* src/cairoint.h: Rename surface->ic_image to
-	surface->pixman_image.
-
-	* src/cairo_image_surface.c
-	(_cairo_image_surface_create_for_pixman_image):
-	(_cairo_image_surface_create_with_masks):
-	(_create_pixman_format):
-	(cairo_image_surface_create):
-	(cairo_image_surface_create_for_data):
-	(_cairo_image_abstract_surface_destroy):
-	(_cairo_image_surface_set_matrix):
-	(_cairo_image_surface_set_filter):
-	(_cairo_image_surface_set_repeat):
-	(_pixman_operator):
-	(_cairo_image_surface_fill_rectangles):
-	(_cairo_image_surface_composite_trapezoids): Rename functions and
-	indentifiers with ic_ in the name that were missed by the recent
-	renaming. Fix indentation problems left by the recent renaming.
-
-	* Shift everything over from libic/libpixregion/slim to
-	libpixman. Many thanks to Dave Beckett
-	<dave.beckett at bristol.ac.uk> for all of the heavy lifting with
-	this renaming effort.
-
-	* src/cairoint.h (slim_hidden_proto1): Directly fold in slim stuff
-	rather than depending on it from an external package.
-
-	* src/cairo_ps_surface.c (_cairo_ps_surface_copy_page): 
-	* src/cairo_image_surface.c: Switch from libic to libpixman.
-
-	* src/cairo.h: Include pixman.h not ic.h.
-	(__external_linkage): Directly fold in slim stuff rather than
-	depending on it from an external package.
-
-	* configure.in (PKG_CHECK_MODULES): 
-	* cairo.pc.in (Requires): Look for libpixman instead of libic and
-	slim.
-
-2003-12-11  Andrew Chant <andrew.chant at utoronto.ca>
-
-	*  cairo_select_font:
-	 _cairo_font_create:
-	 _cairo_ft_font_create:
-	 _cairo_gstate_select_font:
-	 	change char * family to const char * family
-
-2003-12-11  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_set_image):
-	Replace mysterious image->depth == 32 ? 24 : image->depth with
-	simply image->depth.
-
-2003-12-11  Carl Worth  <cworth at east.isi.edu>
-
-	* cairo.pc.in (Requires): 
-	* configure.in: Add xrender to cairo.pc Renders line if needed.
-
-2003-12-11  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo_ps_surface.c (_cairo_ps_surface_copy_page): Fix to use
-	shifts and masks for endianness-correct PS image
-	generation. Rename bgr to rgb now that the byte order issues are
-	clear.
-
-2003-12-08  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_path_bounds.c (_cairo_path_bounder_move_to):
-	(_cairo_path_bounder_line_to):
-	(_cairo_path_bounder_curve_to):
-	(_cairo_path_bounder_close_path): Track change in
-	cairo_path_callbacks interface.
-
-	* src/cairoint.h: 
-	* src/cairo_path_stroke.c: 
-	* src/cairo_path_fill.c: 
-	* src/cairo_path.c: Clean up cairo_path_callbacks to have move_to,
-	line_to, curve_to, abd close_path instead of add_edge, add_spline,
-	and done_sub_path. Much, much nicer.
-
-	* src/cairo_polygon.c (_cairo_polygon_move_to): Provide
-	cairo_polygon_move_to and cairo_polygon_line_to instead of
-	cairo_polygon_add_point.
-
-	* src/cairo_pen.c (_cairo_pen_stroke_spline_half): Track change in
-	cairo_polygon interface.
-
-2003-12-08  Carl Worth  <cworth at isi.edu>
-
-	* configure.in: Bump version to 0.1.16 since it actually has a
-	hope of building, (due to fix for broken cairo-xlib.h includes).
-
-2003-12-05  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo_xlib_surface.c: Don't include obsolete cairo-xlib.h.
-
-	* autogen.sh (AUTOCONF): Allow names of all autofoo programs to be
-	overridden via environment variables.
-
-	* configure.in: Bump version to 0.1.15 for new
-	CAIRO_HAS_XLIB_SURFACE macro.
-
-	* src/cairo.h: Add missing #include <cairo-features.h>
-
-	* Rename cairo-config.h to cairo-features.h.
-
-	* configure.in: Rename XLIB_BACKEND_DEFINE to
-	XLIB_SURFACE_FEATURE. Rename AM_CONDITIONAL HAVE_XLIB_BACKEND to
-	CAIRO_HAS_XLIB_SURFACE. Rename user-visibile macro
-	CAIRO_HAS_XLIB_BACKEND to CAIRO_HAS_XLIB_SURFACE.
-
-2003-12-03  Carl Worth  <cworth at east.isi.edu>
-
-	* configure.in: Bumped version to 0.1.14 to indicate dropped
-	cairo-xlib.h and new cairo-config.h.
-
-	* New support for "./configure --without-x" to compile without the
-	xlib backend. Many thanks to Sasha V. <sasha at aftercode.net>.
-	
-	* configure.in: We do three things here: Make the pkg-config check
-	for xrender conditional, set XLIB_BACKEND_DEFINE to either
-	CAIRO_HAS_XLIB_BACKEND or CAIRO_HAS_NO_XLIB_BACKEND to be
-	substituted into cairo-config.h, and set an AM_CONDITIONAL for
-	HAVE_XLIB_BACKEND to enable conditional compilation of
-	cairo_xlib_surface.c.  Perhaps that could be simplified a tad, but
-	it's what we have working now.  Also split up various
-	PKG_CHECK_MODULES into separate checks.
-
-	* src/cairo_gstate.c: Remove errant reference to
-	cairo_gstate_set_drawable.
-
-	* src/cairo.h: Move xlib-specific calls in from old cairo-xlib.h,
-	now guarded in #ifdef CAIRO_HAS_XLIB_BACKEND.
-
-	* src/Makefile.am (libcairo_xlib_sources): Make compilation of
-	cairo_xlib_surface.c conditional.
-	(INCLUDES, libcairo_la_LIBADD): Add the new variables from
-	splitting up the PKG_CHECK_MODULES calls.
-
-2003-12-03  Carl Worth  <cworth at east.isi.edu>
-
-	* cairo.pc.in (Libs): Add -lz for the compress function used in
-	the PS backend.
-
-2003-12-01  Keith Packard  <keithp at keithp.com>
-
-	* TODO:
-	Add note about degenerate path caps being broken
-
-2003-11-21  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo_polygon.c (_cairo_polygon_add_edge): Use 0 and 1 not
-	False and True, (to avoid false dependency on X headers).
-
-	* src/cairo_path_stroke.c (_compute_face): Use
-	cairo_point_double_t not XPointDouble, (to avoid false dependency
-	on X headers). Thanks to "Sasha V." <sasha at aftercode.net> for
-	pointing these out.
-
-2003-11-18  Carl Worth  <cworth at east.isi.edu>
-
-	* configure.in: Bump version to 0.1.13 for new freetype header
-	compatibility.
-	Fix comments regarding freetype version checking.
-
-2003-11-18  James Henstridge  <james at daa.com.au>
-
-	* cairo.pc.in (Cflags): add FREETYPE_CFLAGS/LIBS to Libs/Cflags
-	rather than requiring "freetype2", which doesn't exist in anything
-	but the most recent version of freetype.
-
-	* configure.in (FREETYPE_LIBS): add freetype cflags/libs
-	substitutions.
-
-2003-11-18  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo.h: Fix build for new freetype header include
-	mechanism, (thanks to Christof Petig <christof at petig-baender.de>)
-
-2003-11-17  Carl Worth  <cworth at isi.edu>
-
-	* Remove infinite looping when stroking with a line width at or
-	close to 0.0. Thanks to Rob Buis <buis at kde.org> and Noah Levitt
-	<nlevitt at columbia.edu> for providing in-the-wild examples of SVG
-	files with stroke-width:0 that demonstrated the problem,
-	(cowboy.svg and albania.svg).
-
-	* src/cairo_pen.c (_cairo_pen_stroke_spline): Do nothing if the
-	pen is a degenerate, single point. This happens when the line
-	width is a very small, non-zero value.
-
-	* src/cairo_gstate.c (_cairo_gstate_stroke): Do nothing when asked
-	to stroke a path with a line_width of 0.0. Previously, this would
-	lead to an infinite loop.
-
-	* src/cairo.c (cairo_set_line_width): Force negative line width
-	to 0.0.
-
-	* TODO: Updated TODO list.
-
-2003-11-10  Carl Worth  <cworth at east.isi.edu>
-
-	* configure.in: Fix typo (thanks to John Ellson
-	<ellson at research.att.com>)
-
-	* TODO: Add TODO items for intersection problem, programmatic
-	patterns, missing text functions.
-
-2003-11-06  Carl Worth  <cworth at isi.edu>
-
-	* configure.in (CAIRO_VERSION): Bumped version to 0.1.12 for new
-	cairo_in_stroke and cairo_in_fill functions.
-
-	* src/cairo.h:
-	* src/cairo.c (cairo_in_stroke):
-	(cairo_in_fill): Added new cairo_in_stroke and cairo_in_fill.
-
-	* src/cairo_traps.c (_cairo_trap_contains):
-	(_cairo_traps_contain): * src/cairo_gstate.c
-	(_cairo_gstate_in_stroke):
-	(_cairo_gstate_in_fill): New functions to support for
-	cairo_in_stroke and cairo_in_fill. Many thanks to Thomas Hunger
-	<info at teh-web.de> for the initial implementation which
-	demonstrated how easy this would be and pushed me to go and write
-	it already.
-
-	* src/cairo_gstate.c (_cairo_gstate_clip_and_composite_trapezoids):
-	* src/cairo_traps.c (_line_segs_intersect_ceil): 
-	* src/cairo_path.c (_cairo_path_move_to):
-	(_cairo_path_line_to):
-	(_cairo_path_curve_to): Fixed to use _cairo_fixed_from_double
-	instead of XDoubleToFixed.
-
-2003-11-06  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo.c (cairo_current_font): Move declaration to beginning
-	of function to avoid requiring a C99-compatible compiler.
-
-	* src/cairo.h: Add comment pondering memory management semantics
-	of cairo_current_target_surface.
-
-	* src/cairo_pen.c (_cairo_pen_fini): NULL out pen->vertices after
-	free.
-
-	* src/cairo_image_surface.c
-	(_cairo_image_abstract_surface_destroy): NULL out durface->data
-	after free.
-
-2003-11-04  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_set_target_surface): Enable
-	cairo_set_target_surface (cr, NULL) to work. This can be useful to
-	force the current target surface to be finalized.
-
-	* configure.in: 
-	* cairo.pc.in (Requires): Add explicit fontconfig and freetype2
-	dependencies that were implicitly dropped along with Xft.
-
-2003-11-04  Carl Worth  <cworth at isi.edu>
-
-	* TODO: Note that cairo_show_page, cairo_copy_page, PostScript
-	backend, "real" text API, and text support for the image backend
-	have now all been implemented.
-
-2003-11-04  Carl Worth  <cworth at east.isi.edu>
-
-	* configure.in:
-	* cairo.pc.in (Requires): cairo doesn't depend on Xft after the
-	recent text work.
-
-2003-11-03  Carl Worth  <cworth at isi.edu>
-
-	* configure.in (CAIRO_VERSION): Bump version to 0.1.11 for new
-	cairo_copy_page.
-
-	* src/cairo_ps_surface.c (cairo_ps_surface_create): Now print
-	header at time of surface_create rather than in show_page.
-	(_cairo_ps_surface_destroy): Print document footer at time of
-	surface_destroy rather than in show_page.
-	(_cairo_ps_surface_erase): New function for sharing.
-	(_cairo_ps_surface_copy_page): Now keep proper page count.
-	(_cairo_ps_surface_show_page): Real work is now done in
-	copy_page. show_page is only distinct in that it erases the
-	surface afterwards.
-
-	* src/cairo.h: 
-	* src/cairo.c (cairo_copy_page):
-	* src/cairo_gstate.c (_cairo_gstate_copy_page): 
-	* src/cairo_surface.c (_cairo_surface_copy_page):
-	* src/cairo_image_surface.c (_cairo_image_surface_copy_page): 
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_copy_page): Add
-	support for new cairo_copy_page function.
-
-2003-11-03  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_ps_surface.c (cairo_set_target_ps): Add missing check
-	for out of memory.
-
-	* src/cairo_image_surface.c
-	(_cairo_image_surface_create_with_masks):
-	(_cairo_image_surface_create_with_masks):
-	(cairo_image_surface_create):
-	(cairo_image_surface_create):
-	(cairo_image_surface_create_for_data):
-	(cairo_image_surface_create_for_data): Add several missing checks
-	for out of memory.
-
-2003-11-03  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo.h: Added __external_linkage to a few functions that
-	were missing it.
-
-2003-11-01  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_ps_surface.c (_cairo_ps_surface_show_page): Fix
-	misplacement of PS origin, (was translating vertically by width
-	instead of height).
-
-	* configure.in (CAIRO_VERSION): Bumped version to 0.1.10 for new
-	functions cairo_set_target_ps, cairo_ps_surface_create, and
-	cairo_show_page.
-
-	* src/cairo_ps_surface.c: New file with preliminary support for
-	drawing to a PostScript file. Most of the ps_surface backend
-	functions are just tiny wrappers, deferring to image_surface
-	functions to do the real work. Then, in show_page, the image is
-	compressed and spit out into the file. Crude and effective.
-
-	* src/cairo.c (cairo_show_page):
-	* src/cairo_gstate.c (_cairo_gstate_show_page):
-	* src/cairo_image_surface (_cairo_image_surface_show_page):
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_show_page): 
-	* src/cairo_surface.c (_cairo_surface_show_page): Implement new
-	support for cairo_show_page -- just a stub in the non-PS surfaces.
-
-	* src/cairo_image_surface.c (_cairo_image_surface_set_filter):
-	Export this function for internal use.
-
-	* src/cairo.h: Added cairo_set_target_ps, cairo_ps_surface_create,
-	and cairo_show_page. Noted plans for new cairo_surface_clip_begin,
-	perhaps moving some cairo_surface functions to cairo_set_pattern,
-	and possibly renaming cairo_matrix_t to cairo_transform_t.
-	
-	* src/Makefile.am (libcairo_la_SOURCES): Added cairo_ps_surface.c.
-
-2003-10-31  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_arc):
-	(_cairo_gstate_arc_negative): Do nothing when radius <= 0.0,
-	(which is much better than the current infinite loop).
-
-2003-10-31  Carl Worth  <cworth at isi.edu>
-
-	* Moved all libic-related drawing into cairo_image_surface.c.
-	Details below:
-
-	* src/cairo_xlib_surface.c: Add width, height, format to
-	cairo_xlib_surface_t.
-	(_cairo_xlib_surface_get_image):
-	(_cairo_xlib_surface_set_image): Implement new get_image/set_image
-	interface instead of pull_image/push_image.
-	(_cairo_xlib_surface_get_image): Fix memory leak that showed up
-	with non-Render servers.
-	(_cairo_xlib_surface_set_matrix): Implement set_matrix with new
-	interface.
-	(_render_operator): Translate from cairo_operator_t to
-	Render-defined operator values rather than assuming they are the
-	same.
-
-	* src/cairo_surface.c: Move all libic-related code into
-	cairo_image_surface.c. cairo_surface is now a thin wrapper around
-	concrete surface types, (with fallback code to cairo_image_surface
-	whenever a backend does not provide support for a particular
-	function). Remove checks for NULL backend functions.
-	(_cairo_surface_get_image):
-	(_cairo_surface_set_image): New interface to replace
-	pull_image/push_image. Now uses a cairo_image_surface rather than
-	an IcImage and now also passes it externally rather than storing
-	it in the surface.
-
-	* src/cairo_gstate.c (_cairo_gstate_fini):
-	(_cairo_gstate_set_target_surface):
-	(_cairo_gstate_set_rgb_color): Avoid useless calls to
-	cairo_surface_destroy for NULL surfaces.
-	(_cairo_gstate_show_surface): 
-	(_cairo_gstate_clip): 
-	(_cairo_gstate_clip_and_composite_trapezoids):
-	(_cairo_gstate_begin_group): Add status checking for calls to
-	surface_create_similar, surface_fill_rectangles,
-	surface_composite, and surface_composite_trapezoids.
-
-	* src/cairo_ft_font.c (_cairo_ft_font_show_glyphs): Remove one
-	gratuitous level of nesting.
-	(_cairo_ft_font_show_glyphs): Bubble up NULL_MEMORY status.
-
-	* src/cairo.h: Portability improvements: Remove include of
-	X11/extensions/Xrender.h. Move include down near the freetype
-	include.
-	cairo_format_t: Eliminate Render-based values for this enum.
-	cairo_operator_t: Eliminate Render-based values. Drop
-	disjoint/conjoint operators.
-	cairo_filter_t: Eliminate libic-based values for this enum.
-	Add cairo_image_surface_create and cairo_image_surface_create_for_data.
-
-	* src/cairo.c (cairo_status_string): Add new CAIRO_STATUS_NULL_POINTER.
-	This can be returned only if the user passes a NULL object in to a
-	cairo function.
-
-	* src/cairoint.h: Move include of <X11/extensions/Xrender.h> from
-	cairo.h to here.
-
-	* src/Makefile.am (libcairo_la_SOURCES): Add
-	cairo_image_surface.c. Reformat line continuation characters.
-
-	* src/cairoint.h: Remove prototypes for obsolete functions:
-	_cairo_gstate_set_visual and _cairo_gstate_set_format.
-
-2003-10-30  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_destroy): Fix
-	memory leaks of surface->gc and surface->ximage.
-	(_cairo_xlib_surface_composite):
-	(_cairo_xlib_surface_composite_trapezoids): Fix memory leaks of
-	cloned surfaces.
-
-2003-10-30  Carl Worth  <cworth at isi.edu>
-
-	* configure.in (CAIRO_VERSION): Bumped version to 0.1.9 for change
-	in argument list of cairo_ft_font_create.
-
-	* src/cairo_ft_font.c: A set of changes to eliminate the static
-	FT_Library field, (which could introduce nasty problems with
-	respect to threading). With the new code, each font created with
-	the toy API will own its own FT_Library. Meanwhile,
-	cairo_ft_font_create now accepts an FT_Library parameter.
-
-	* src/cairo_ft_font.c: Add ft_library field so that fonts that own
-	their own FT_Library can also clean it up.  Eliminate static
-	FT_Library and _init_cairo_ft_lib.
-	(cairo_ft_font_create): Now accepts an FT_Library argument.
-	(_cairo_ft_font_create): Create an FT_Library owned by this font,
-	(this only happens as part of the "toy API")
-	(_cairo_ft_font_destroy): Clean up ft_font->ft_library if
-	necessary.
-	(cairo_ft_font_create_for_ft_face): Initialize ft_library and
-	owns_ft_library.
-
-	* src/cairo.h: Add FT_Library parameter to cairo_ft_font_create.
-
-2003-10-30  Carl Worth  <cworth at isi.edu>
-
-	* cairo_font: A few cleanups to eliminate a memory leak.
-
-	* src/cairo_gstate.c (_cairo_gstate_init_copy):
-	(_cairo_gstate_fini):
-	(_cairo_gstate_select_font):
-	(_cairo_gstate_set_font): Replace calls to _cairo_font_fini with
-	cairo_font_destroy.
-
-	* src/cairo_ft_font.c (_cairo_ft_font_destroy): Rename
-	_cairo_ft_font_close to _cairo_ft_font_destroy.
-
-	* src/cairo_font.c: Eliminate unnecessary cairo_font_fini
-	function.
-	(cairo_font_destroy): Put reference decerement here where it
-	belongs.
-
-	* src/cairoint.h: Eliminate unnecessart family, slant, and weight
-	fields from cairo_font_t.
-	Rname font backend->close to backend->destroy.
-
-2003-10-28  Carl Worth  <cworth at isi.edu>
-
-	* README: Updated to match latest text from web page. Fixed stale
-	references to Xc and xrtest.
-
-2003-10-28  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_xlib_surface.c (_cairo_xlib_surface_pixels_per_inch):
-	Implement new backend function.
-
-	* src/cairo_surface.c (_cairo_surface_pixels_per_inch): Add new
-	function to query surface pixels_per_inch.
-
-	* src/cairo_gstate.c (_cairo_gstate_init): Rename gstate->ppm to
-	gstate->pixels_per_inch. Swithc from default 3780 pixels per meter
-	to 96.0 pixels per inch which is slightly different.
-
-2003-10-28  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_ensure_source):
-	(_cairo_gstate_clip_and_composite_trapezoids):
-	(_cairo_gstate_clip):
-	(_cairo_gstate_show_surface): Track changes to
-	_cairo_surface_create_similar_solid.
-
-	* src/cairo_surface.c (_cairo_surface_create_similar_solid): Now
-	that this function is internal, it can accept a cairo_color_t
-	which makes the interface much cleaner.
-
-	* src/cairo.h: Remove problematic function
-	cairo_surface_create_similar_solid from the public API.
-
-2003-10-28  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_surface.c (_cairo_surface_composite):
-	(_cairo_surface_fill_rectangles):
-	(_cairo_surface_composite_trapezoids): Fix bug introduced in last
-	commit: must check for NULL backend function before calling
-	through it.
-
-2003-10-27  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_surface.c (_cairo_surface_composite):
-	 (_cairo_surface_fill_rectangles):
-	 (_cairo_surface_composite_trapezoids): backend functions must not
-	be NULL. Track new cairo_int_status_t return value for backend
-	drawing functions.
-
-	* src/cairo_xlib_surface.c: Remove casts when initializing
-	cairo_xlib_surface_backend.  Rename cairo_xlib_surface as
-	cairo_xlib_surface_t.
-	(_cairo_xlib_surface_create_similar):
-	(_cairo_xlib_surface_destroy):
-	(_cairo_xlib_surface_pull_image):
-	(_cairo_xlib_surface_push_image):
-	(_cairo_xlib_surface_set_matrix):
-	(_cairo_xlib_surface_set_filter):
-	(_cairo_xlib_surface_set_repeat):
-	(_cairo_xlib_surface_composite):
-	(_cairo_xlib_surface_fill_rectangles):
-	(_cairo_xlib_surface_composite_trapezoids): Track changes in
-	cairo_surface_backend API.
-
-	* src/cairoint.h: cairo_surface_backend now accepts a void * for
-	the virtual surface.
-
-2003-10-27  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_ft_font.c (_cairo_ft_font_create): Default to normal
-	slant/weight on out-of-range values.
-	Add missing include of fontconfig/fcfreetype.h.
-
-2003-10-24  Keith Packard  <keithp at keithp.com>
-
-	* src/cairo_ft_font.c: (_cairo_ft_font_show_glyphs):
-	A HORRIBLE KLUDGE to repad glyph images from freetype to
-	meet libic requirements.
-
-2003-10-24  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo_ft_font.c (_init_cairo_ft_lib): Fix missing void from
-	function prototype.
-	(_utf8_to_ucs4): Mark static.
-
-	* src/cairo_xlib_surface.c: Remove unused function
-	_cairo_xlib_surface_get_picture.
-
-	* src/cairo_ft_font.c (_cairo_ft_font_copy)
-	(_cairo_ft_font_glyph_extents, _cairo_ft_font_glyph_path):
-	Internal functions can't receive a NULL font pointer.
-
-	* src/cairo.c (cairo_text_extents, cairo_glyph_extents)
-	(cairo_text_path, cairo_glyph_path): Comment-out functions without
-	complete implementations to squelch compiler warnings.
-
-	* configure.in: Bump version to 0.1.8 for font API changes.
-
-	* src/cairo.c (cairo_current_font): Fix missing return value.
-
-	* src/cairoint.h: No need for CAIRO_INT_STATUS_NULL_POINTER
-	(CAIRO_FONT_BACKEND_DEFAULT): Move declaration of default font
-	backend up into cairoint.h
-
-	* src/cairo_gstate.c (_cairo_gstate_init): Create a default font,
-	don't leave it NULL.
-	(_cairo_gstate_current_font): gstate->font must never be NULL.
-	(_cairo_gstate_current_font_extents): Can never be called with a
-	NULL gstate.
-
-	* src/cairo_font.c (_cairo_font_create): Rename
-	_cairo_font_create_font and move to top of file.
-	(_cairo_font_init, _cairo_font_scale, _cairo_font_transform)
-	(_cairo_font_text_extents, _cairo_font_glyph_extents)
-	(_cairo_font_show_text, _cairo_font_show_glyphs)
-	(_cairo_font_text_path, _cairo_font_glyph_path)
-	(_cairo_font_font_extents): These internal functions can never be
-	called with a NULL font.
-
-2003-10-23  Graydon Hoare  <graydon at redhat.com>
-
-	* src/cairo_ft_font.c: New file.
-	* src/Makefile.am: Add cairo_ft_font.c
-	* src/cairo.c: 
-	* src/cairo.h:
-	* src/cairo_font.c:
-	* src/cairo_gstate.c:
-	* src/cairo_xlib_surface.c:
-	* src/cairoint.h: Change to virtual font interface.
-
-2003-10-23  Carl Worth  <cworth at isi.edu>
-
-	* TODO: Added notes on some missing functions. Update PostScript
-	comparison with respect ot new arc functions.
-
-2003-10-23  Carl Worth  <cworth at isi.edu>
-
-	* Many files: Fixed Copyright statements to read "University of
-	Southern California" rather than "USC, Information Sciences
-	Institute" as the university is the actual corporation.
-
-2003-10-11  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo-xlib.h: Add extern "C" stuff. (Thanks to Soory Kuloor
-	for the reminder).
-
-2003-10-09  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_font.c: Stub out NULL_POINTER errors as
-	CAIRO_STATUS_SUCCESS so that drawing to off-screen images still
-	works even though text does not yet.
-
-2003-10-04  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_hull.c (_cairo_hull_compute): Add cairo_hull.c to
-	compute a convex hull, (using Graham scan algorithm).
-
-	* src/cairo_pen.c (_cairo_pen_add_points): Generate convex hull of
-	pen after adding new points.
-
-	* src/cairoint.h: Rename pen->vertex to pen->vertices
-
-	* Replaced "pt" with "point" in about a zillion places.
-
-	* src/cairo.c (cairo_destroy): Fix to continue with destroy even
-	in the face of non-zero status.
-	(cairo_set_target_surface):
-	(cairo_set_target_image): Don't do anything even if cr->status is
-	CAIRO_STATUS_NO_TARGET_SURFACE.
-	(cairo_status_string): Report "<unknown error status>" rather than
-	en empty string.
-
-2003-10-01  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_init_copy): Don't choke if
-	asked to copy a gstate with a NULL font.
-
-	* src/cairo_font.c (_cairo_font_init): 
-	(_cairo_font_init_copy): 
-	(_cairo_font_copy): 
-	(_cairo_font_fini): 
-	(_cairo_font_select): 
-	(_cairo_font_scale): 
-	(_cairo_font_transform): 
-	(_cairo_font_text_extents): 
-	(_cairo_font_show_text): Return immediately if passed a NULL pointer.
-
-2003-09-30  Jamey Sharp  <jamey at minilop.net>
-
-	* src/Makefile.am, src/cairo.c, src/cairo.h, src/cairo_font.c,
-	src/cairo_gstate.c, src/cairo_surface.c, src/cairoint.h:
-	Virtualized font and surface backends. All Xlib/Xft calls are in
-	cairo_xlib_surface.c/cairo-xlib.h now. Resolves a TODO item.
-
-2003-09-30  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo.c (cairo_copy): Don't copy a gstate if src->status != 0.
-
-	* src/cairo_gstate.c (_cairo_gstate_init_copy): Be careful to
-	preserve gstate->next.
-	(_cairo_gstate_copy): New function to support cairo_copy.
-
-	* src/cairo.c (cairo_copy): Fixed horribly botched implementation
-	of cairo_copy.
-
-	* configure.in: Bumped version to 0.1.7 to indicate change in
-	cairo_copy.
-
-	* src/cairo.c (cairo_copy): Changed cairo_copy to copy graphics
-	state from one cairo_t to another rather than allocating a new
-	cairo_t.
-
-	* src/cairo_surface.c (cairo_surface_destroy):
-	(cairo_surface_create_similar_solid): Fix to delay XFreePixmap
-	until cairo_surface_destroy.
-
-2003-09-29  Carl Worth  <cworth at east.isi.edu>
-
-	* TODO: Remove arc notes since arcs are done.
-
-	* src/cairo_surface.c (_cairo_surface_composite): Fix bug
-	(IcImageGetHeight instead of IcImageGetWidth) from Graydon Hoare
-	<graydon at redhat.com>.
-
-2003-09-29  Carl Worth  <cworth at isi.edu>
-
-	* configure.in (CAIRO_VERSION): Bumpred version to 0.1.6 to
-	indicate new cairo_arc and cairo_arc_negative.
-
-	* src/cairo_gstate.c (_arc_error_normalized):
-	(_arc_max_angle_for_tolerance_normalized):
-	(_cairo_gstate_arc_segments_needed):
-	(_cairo_gstate_arc_segment):
-	(_cairo_gstate_arc_dir):
-	(_cairo_gstate_arc):
-	(_cairo_gstate_arc_negative): Several new functions to implement
-	arc support.
-
-	* src/cairo.h: Added cairo_arc and cairo_arc_negative.
-
-	* src/cairo.c (cairo_arc): 
-	(cairo_arc_negative): Added new arc support.
-
-2003-09-27  Carl Worth  <cworth at isi.edu>	
-
-	* src/cairoint.h: Fixed several enum symbols that had been
-	mistakenly converted to lowercase at some point.
-	Consolidated cairo_path_direction_t and
-	cairo_pen_stroke_direction_t into cairo_direction_t.
-	Removed accidental addition of two _print_svg functions that had
-	been used for debugging temporarily.
-	
-2003-09-25  Carl Worth  <cworth at isi.edu>
-
-	* configure.in (CAIRO_VERSION): Bumped version to 0.1.5 to
-	indicate removal of cairo_path_t and related functions.
-
-	* src/cairo.h: Decided that we don't actually need any of the
-	cairo_path_t functionality exposed in the commit earlier
-	today. Ripped all of that back out.
-
-	* configure.in (CAIRO_VERSION): Bumped version to 0.1.4 for new
-	exposed cairo_path_t and related functions.
-
-	* src/cairo_path.c (cairo_path_create):
-	(_cairo_path_copy):
-	(cairo_path_destroy): New create/copy/destroy functions for paths.
-	(_cairo_path_init): Added current_pt state to cairo_path_t.
-	(cairo_path_rel_move_to):
-	(cairo_path_rel_line_to):
-	(cairo_path_rel_curve_to): Added relative path creation functions,
-	(relative stufff used to be done internally in cairo_gstate).
-	(_cairo_path_set_ctm_inverse):
-	(_cairo_path_transform): Added functions to transform all
-	coordinates in a path.
-
-	* src/cairo_gstate.c (_cairo_gstate_init): Moved all current_pt
-	state out of cairo_gstate and into cairo_path.
-	(_cairo_gstate_copy): Renamed _cairo_gstate_clone to
-	_cairo_gstate_copy for consitency with other functions, (though I
-	may reconsider and rename all of them to _clone).
-	(_cairo_gstate_current_path): 
-	(_cairo_gstate_set_path): New functions for "user path" support.
-
-	* src/cairo.h: Expose new opaque cairo_path_t object along with
-	several new public functions: cairo_set_path, cairo_current_path,
-	cairo_path_create, cairo_path_destroy, cairo_path_move_to,
-	cairo_path_line_to, cairo_path_curve_to, cairo_path_rel_move_to,
-	cairo_path_rel_line_to, cairo_path_rel_curve_to,
-	cairo_path_close_path, cairo_path_current_point.
-
-	* src/cairo.c (cairo_set_path, cairo_current_path): Added
-	functions to get/set current path.
-
-2003-09-16  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_surface.c (cairo_surface_create_similar_solid): Fixed
-	massive pixmap leak, (at least one pixmap for every set_rgb_color)
-
-	* configure.in (CAIRO_VERSION): Bumped to 0.1.3 for new functions:
-	cairo_reference and cairo_surface_reference.
-
-	* src/cairo_surface.c (cairo_surface_reference): Export
-	cairo_surface_reference.
-
-	* src/cairo.c (cairo_reference): Add new function to increase
-	reference count of cairo_t.
-	(cairo_create):
-	(cairo_copy):
-	(cairo_destroy): Make these functions aware of the new reference
-	count.
-
-2003-09-15  Carl Worth  <cworth at east.isi.edu>
-
-	* configure.in: Require xrender >= 0.6.0
-
-	* src/cairo_surface.c (_cairo_x11_surface_put_image): Make static.
-
-2003-09-15  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo.c (cairo_restore): Fix to catch invalid restore rather
-	than just catching the second invalid restore. Fix from Keith
-	Packard <keithp at keithp.com>.
-
-2003-09-12  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo_surface.c (cairo_surface_create_similar_solid): Don't
-	try to create depth-32 pixmaps on non-Render servers.
-	(_cairo_surface_push_image): Fixed massive memory leak.
-
-2003-09-09  Carl Worth  <cworth at isi.edu>
-
-	* configure.in (PKG_CHECK_MODULES): Updated calls to
-	slim_hidden_def to track changes in slim 0.2.0.
-
-2003-09-05  Carl Worth  <cworth at isi.edu>
-
-	* configure.in (PKG_CHECK_MODULES): Require libic >= 0.1.1
-
-	* src/cairo_surface.c (_create_icformat_for_visual):
-	(_create_icformat_for_format): Updates for new libic interface.
-	(cairo_x11_surface_put_image): Rename cairo_surface_put_image to
-	cairo_x11_surface_put_image.
-	(_cairo_surface_pull_image):
-	(_cairo_surface_push_image): First real implementation of
-	push/pull_image, (thanks for help from Graydon Hoare
-	<graydon at redhat.com>). This provides support for running Cairo on
-	X servers that do not have the RENDER extension. (Note: This is
-	still woefully slow).
-
-	* src/cairo_path_stroke.c (_cairo_stroker_join): Switch to
-	_cairo_fixed functions.
-
-	* src/cairo_path_bounds.c (_cairo_path_bounds): Use cairo_fixed
-	rather than X macros.
-
-	* src/cairo_gstate.c (_cairo_gstate_current_point): If not
-	explicitly set, current point is (0,0) in user space.
-	(_cairo_gstate_show_text): Fix to place text at user-space origin
-	if there is no current point.
-	(_cairo_gstate_show_surface): Optimize to pass NULL mask if alpha
-	== 1.0.
-	(_cairo_gstate_show_surface): Fixe to use current_point rather
-	than (0,0).
-
-	* src/cairo.h: Removed cairo_surface_put_image.
-
-	* src/Makefile.am (libcairo_la_SOURCES): Added cairo_fixed.c
-
-2003-09-05  Keith Packard  <keithp at keithp.com>
-
-	* src/cairo_path_stroke.c: comment face computations, check for
-	reflecting transformation to select correct face orientations
-	
-	* src/cairo_pen.c: check for reflecting transform when computing
-	pen to ensure consistent pen orientation
-
-2003-09-05  Carl Worth  <cworth at east.isi.edu>
-
-	* configure.in: Bumped version to 0.1.2 for new cairo_copy
-	function.
-
-	* src/cairo_gstate.c (_cairo_gstate_init): Fixed uninitialized
-	current_pt values.
-	(_cairo_gstate_clone): Force gstate->next to NULL after cloning,
-	to prevent the clone from trashing the former stack.
-
-	* src/cairo.c (cairo_create): Folded _cairo_init into cairo_create.
-	(cairo_destroy): Folded _cairo_fini into cairo_dstroy.
-	(cairo_copy): Added new cairo_copy function.
-
-2003-09-05  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_show_text): Fix crash due to
-	missing call to ensure_source.
-
-2003-09-04  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairoint.h (DEPRECATE): Changed DEPRECATE mechanism to
-	preseve binary compatibility, but break source-level
-	compatibility.
-
-2003-09-04  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_gstate.c (_cairo_gstate_init): Combine gstate->pattern
-	and gstate->solid into a single gstate->source.
-	(_cairo_gstate_set_rgb_color): Defer creation of gstate->source
-	until the stroke or fill.
-	(_cairo_gstate_ensure_source): New function to combine duplicated
-	code.
-	(_cairo_gstate_stroke):
-	(_cairo_gstate_fill): Now must ensure that gstate->source has been
-	created.
-
-	* src/cairo.c (cairo_set_target_surface):
-	(cairo_set_target_drawable):
-	(cairo_set_target_image): These functions can now clear
-	status==CAIRO_STATUS_NO_TARGET_SURFACE. This is a clean solution
-	to the bug of a SEGV if cairo_stroke/cairo_fill are called before
-	cairo_set_target.
-
-	* BUGS: Removed two fixed bugs, (SEGV if cairo_set_rgb_color
-	called before cairo_set_target and SEGV if cairo_fill called
-	before cairo_set_rgb_color)
-
-2003-09-04  Keith Packard  <keithp at keithp.com>
-
-	* src/cairo_path_stroke.c: added comments describing miter
-	join code and miter limit computation.  Replace XFoo with cairo_foo
-	for double and fixed
-
-	* src/cairoint.h: add cairo_fixed_to_double and cairo_double_to_fixed
-	Carl says he's got similar code, so he'll have to fix things if I
-	get this committed quickly enough.
-
-2003-09-04  Carl Worth  <cworth at isi.edu>
-
-	* util/cairo-api-update: Added script to update source code using
-	Cairo to the latest API.
-
-	* configure.in (CAIRO_VERSION): Bumped version to 0.1.1
-
-	* src/cairoint.h (DEPRECATE): Added magic DEPRECATE macro which
-	provides an asm-based alias for old function names. This works on
-	ELF systems with gcc version >= 2.
-
-	* src/cairo.h (cairo_get_status_string): Deprecated all
-	cairo_get_* names in favor of cairo_current_*. The deprecated
-	function names will trigger either a warning or a link error, but
-	in both cases with a useful message giving both the old and new
-	name of the function. Three of the function name changes are
-	different than the single word substituion:
-		cairo_get_current_color	-> cairo_current_color
-		cairo_get_status	-> cairo_status
-		cairo_get_status_string	-> cairo_status_string
-	
-2003-09-03  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo.h: Change cairo_get_matrix interface to accept a
-	cairo_matrix_t* rather than 6 double*.
-
-	* src/cairo.c (cairo_get_matrix): Add implementation of cairo_get_matrix.
-
-2003-08-29  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_surface.c (_cairo_surface_composite): Optimized case
-	where src is in memory, dst is on server, and mask is NULL. Will
-	now do a single XPutImage rather than the painful
-	GetImage/PutImage dance of the general code.
-
-2003-08-28  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo_traps.c (_line_segs_intersect_ceil): One more
-	increment, (that still won't fix the bug). Added comment point to
-	Hobby's paper, (that will fix it).
-
-	* src/cairo_font.c (_cairo_font_resolve_xft_font): Fixed to use
-	fabs instead of abs when correcting for negative area expansion.
-
-2003-08-28  Keith Packard <keithp at keithp.com
-	* src/cairo_font.c: font pixel size is always non-negative
-
-2003-08-26  Carl Worth  <cworth at isi.edu>
-
-	* src/cairoint.h: Added missing underscores to several internal
-	functions.
-	* src/cairo_font.c: 
-	* src/cairo_gstate.c: 
-	* src/cairo_matrix.c: 
-	* src/cairo_path_fill.c: 
-	* src/cairo_path_stroke.c: 
-	* src/cairo_pen.c: 
-	* src/cairo_traps.c: Fixed to track newly added underscores.
-
-	* src/cairo.h: Some whitespace fixes.
-
-	* src/cairo_gstate.c (_cairo_gstate_set_pattern): Fixed to anchor
-	pattern at current point instead of the origin.
-	(_cairo_gstate_stroke): Fixed to properly transform pattern.
-	(_cairo_gstate_fill): Fixed to properly transform pattern.
-
-2003-07-31  Richard Henderson  <rth at twiddle.net>
-
-	* src/cairo_color.c (CAIRO_COLOR_DEFAULT): Mark const.
-	* src/cairo_matrix.c (CAIRO_MATRIX_IDENTITY): Likewise.
-	* src/cairo_path.c (num_args): Likewise.
-	* src/cairo_path_bounds.c (_cairo_path_bounds): Likewise for cb.
-
-2003-07-31  Richard Henderson  <rth at twiddle.net>
-
-	* cairo.pc.in: Depend on slim.
-	* configure.in: Check for slim.
-
-	* src/cairo.h: Include slim_{export,import}.h as needed; mark all
-	symbols __external_linkage.
-	* src/cairoint.h: Include slim_internal.h; mark all symbols
-	__internal_linkage.  Provide slim_hidden_proto symbols as needed.
-	* src/cairo.c, src/cairo_matrix.c, src/cairo_surface.c,
-	Provide slim_hidden_def symbols as needed.
-	* src/cairo_traps.c (cairo_traps_add_trap): Mark static.
-	(cairo_traps_add_trap_from_points): Likewise.
-
-2003-07-30  Carl Worth  <cworth at isi.edu>
-
-	* configure.in (LIBIC_REQUIRED): Fixed some typos in the libic
-	PKG_CHECK.
-
-	* src/cairoint.h: 
-	* src/cairo.c: Fixed a disagreement over whether some internal
-	cairo_gstate_t functions had an '_' prefix or not.
-
-	* src/cairo_traps.c (_line_segs_intersect_ceil): Add one more
-	conditional intersect to push past some fill bugs.
-
-	* src/cairo_surface.c (cairo_surface_create_for_drawable):
-	(cairo_surface_create_for_image):
-	(cairo_surface_put_image):
-	(_cairo_surface_pull_image):
-	(_cairo_surface_push_image):
-	(cairo_surface_set_matrix):
-	(cairo_surface_get_matrix):
-	(cairo_surface_set_repeat):
-	(_cairo_surface_composite):
-	(_cairo_surface_fill_rectangle):
-	(_cairo_surface_fill_rectangles):
-	(_cairo_surface_composite_trapezoids): Absorb all functionality
-	previously in the Xc library.
-
-	* src/cairo_pen.c (_cairo_pen_init): Don't store floating point
-	theta in the pen. Instead, sort vertices by fixed point slope
-	comparisons.
-	(_cairo_pen_add_points): Fixed to remove duplicate pen vertices
-	appearing at beginning and end of vertex array.
-	(_pen_vertex_compare): New fixed-point "angle" comparison for pen
-	vertices. A bit trickier than before, but much more accurate.
-
-	* src/cairo_path_stroke.c (_cairo_stroker_face_clockwise): Share
-	clockwise calculation with other modules.
-
-	* src/cairo_path_bounds.c:
-	* src/cairo_path_fill.c:
-	* src/cairo_path_stroke.c:
-	* src/cairo_pen.c:
-	* src/cairo_polygon.c:
-	* src/cairo_spline.c:
-	* src/cairo_traps.c:
-	* src/cairo_path.c: Replaced all references to
-	XFixed, XPointFixed, XLineFixed, and XTrapezoid with new
-	cairo_fixed_t, cairo_point_t, cairo_line_t, and cairo_trapezoid_t.
-
-	* src/cairo_path.c: (_cairo_path_interpret): Made the path
-	interpreter callback names consistent, (eg. add_edge rather than
-	AddEdge).
-
-	* src/cairo_gstate.c (_cairo_gstate_text_extents): Now silently
-	exits for a non X surface, (avoids a crash until we can implement
-	the libic text backend).
-
-	* src/cairo_gstate.c (_cairo_gstate_end_group):
-	(_cairo_gstate_clip_and_composite_trapezoids):
-	(_cairo_gstate_show_surface): Replaced all XcCalls with
-	corresponding cairo_surface_calls.
-
-	* src/cairo_gstate.c (_cairo_gstate_transform_point):
-	(_cairo_gstate_transform_font):
-	(_cairo_gstate_text_extents): Renamed from the garbled names
-	(eg. cairo_gstateransform_point) leftover from the great renaming.
-
-	* src/cairo_color.c (_cairo_color_set_rgb): Reworked cairo_color_t
-	to eliminate reference to an XcColor object.
-
-	* src/cairo.h: Dropped include of <Xc.h>, added
-	<X11/extensions/Xrender.h>, <fontconfig/fontconfig.h>, and <ic.h>
-
-	* src/cairo.c (cairo_get_fill_rule): Added missing cairo_get_fill_rule.
-
-	* configure.in (PKG_CHECK_MODULES): Drops xc, add libic
-
-	* cairo.pc.in (Requires): Drop xc, add libic.
-
-2003-07-25  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_traps.c (_line_segs_intersect_ceil): We don't need a
-	loop here, (just a conditional increment). This time, we've
-	actually done the error analysis to back this up.
-
-2003-07-24  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_traps.c (cairo_traps_tessellate_polygon): Massive
-	cleanup of polygon tessellation, (it might actually be correct
-	now).
-
-2003-07-23  Carl Worth  <cworth at isi.edu>
-
-	* src/cairoint.h: Introduced some cairo_fixed_*_t types. This is
-	the first baby step toward ripping X dependencies out of the Cairo
-	headers.
-
-	* src/cairo_traps.c (_compute_x): Converted from floating point to
-	fixed point.
-	(_line_seg_intersection_ceil): Now increments y value once if the
-	initial y value computed is less than the actual intersection
-	point.
-
-	* src/cairo_traps.c (_compare_cairo_edge_by_slope): Converted from
-	floating point to fixed point.
-
-	* src/cairo_pen.c (_slope_clockwise): Converted from floating
-	point to fixed point.
-
-2003-07-19  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo_traps.c (cairo_traps_tessellate_polygon): Fixed some
-	sorting problems with two intersections very near the same
-	vertical position. (There are still some reamining problems
-	though).
-	(cairo_traps_tessellate_polygon): Better fix for the same
-	bug. Should cover all cases, (and it's moe efficient too).
-
-2003-07-18  Carl Worth  <cworth at east.isi.edu>
-
-	* src/cairo.h: Fixed some inconsistent tag/typedef names that were
-	missed in the great renaming.
-
-2003-07-18  Carl Worth  <cworth at isi.edu>
-
-	* src/cairo.h: Renamed everything from Xr* to cairo_*.
-
-	* util/xr2cairo: Added utility script xr2cairo to help users fix
-	their source code.
-
-2003-07-03  Carl Worth  <cworth at isi.edu>
-
-	* src/xrmatrix.c (XrMatrixGetAffine): Added XrMatrixGetAffine
-	(from Soorya Kuloor)
-
-	* src/xr.c (XrGetAlpha): Added XrGetAlpha
-	(XrGetRGBColor): Added XrGetRGBColor
-
-2003-06-12  Carl Worth  <cworth at isi.edu>
-
-	* src/xrgstate.c (_XrGStateScale): Scale by 0 now causes an
-	InvalidMatrix error.
-
-2003-05-28  Carl Worth  <cworth at isi.edu>
-
-	* src/xrmatrix.c (XrMatrixMultiply): Eliminated
-	_XrMatrixMultiplyIntoRight and _XrMatrixMultiplyIntoLeft.
-
-	* src/xrgstate.c (_XrGStateClipAndCompositeTrapezoids): Fixed
-	missing translation of clip surface.
-
-	* src/Xr.h: Added XrSurfacePutImage
-
-2003-05-16  Carl Worth  <cworth at isi.edu>
-
-	* src/xrint.h: Added ppm filed (pixels per meter) to both
-	XrSurface and XrGState.
-
-	* src/xrgstate.c (_XrGStateSetTargetSurface): Fixup CTM according
-	to change in surface->ppm.
-	(_XrGStateDefaultMatrix): Default matrix is no longer an identity
-	matrix, but rather a matrix that provides some relates user space
-	units to real-world dimensions in a meaningful way, (default 3780
-	user space units per meter). This conversion is not exact, but is
-	rather as close as possible while also guaranteeing that one user
-	space unit maps to an integer number of device pixels.
-
-2003-05-15  Carl Worth  <cworth at isi.edu>
-
-	* src/xr.c (XrSetTargetDrawable): Moved implementation up from
-	_XrGStateSetTargetDrawable, (eg. all convenience functions should
-	be taken care of at the xr.c level ratehr than xrgstate.c)
-
-	* src/Xr.h: Added convenience function XrSetTargetImage
-
-2003-05-14  Carl Worth  <cworth at isi.edu>
-
-	* src/xrfont.c (_XrFontResolveXftFont): Fixed fonts to pull
-	pixelsize out of the transformation matrix. Fonts are now properly
-	hinted regardless of scaling.
-
-	* src/Xr.h: Three new functions for manipulating surfaces:
-	XrSurfaceSetMatrix, XrSurfaceGetMatrix, XrSurfaceSetFilter.
-
-	* src/Xr.h: Removed broken XrShowImage* functions. Changed
-	XrShowSurface to not require X/Y but instead depend on the CTM for
-	translation, (or the surface transformation matrix). I'd like to
-	get rid of width/height as well but it turns out an XrSurface is
-	not aware of its dimensions.
-
-	* src/Xr.h: Added convenience function for building rectangular
-	paths: XrRectangle.
-
-	* src/Xr.h: Added functions for performing transformations with
-	the CTM and its inverse: XrTransformPoint, XrTransformDistance,
-	XrInverseTransformPoint, XrInverseTransformDistance.
-
-	* src/Xr.h: XrConcatMatrix and XrSetMatrix now accept a pointer to
-	an XrMatrix rather than 6 doubles.
-
-	* src/Xr.h: Now exporting opaque XrMatrix object with several
-	functions: XrMatrixCreate, XrMatrixDestroy, XrMatrixCopy,
-	XrMatrixSetIdentity, XrMatrixSetAffine, XrMatrixTranslate,
-	XrMatrixScale, XrMatrixRotate, XrMatrixInvert, XrMatrixMultiply,
-	XrMatrixTransformDistance, XrMatrixTransformPoint.
-
-2003-05-12  Carl Worth  <cworth at isi.edu>
-
-	* src/Xr.h: Added XrSetPattern. See also XrSurfaceSetRepeat.
-
-	* src/xrpathbounds.c (_XrPathBounds): Moved path bound computation
-	to its own file.
-
-	* src/xrpathstroke.c (_XrPathStrokeToTraps): Moved path stroking
-	to its own file.
-	
-	* src/xrpathfill.c (_XrPathFillToTraps): Moved path fililng to its
-	own file.
-
-	* src/xrgstate.c (_XrGStateStroke):
-	(_XrGStateFill):
-	(_XrGStateClipAndCompositeTrapezoids): Reorganized stroke and fill
-	code to go through the same path for clipping.
-	
-2003-05-02  Carl Worth  <cworth at east.isi.edu>
-
-	* src/Xr.h: Changed XrFormatRGB32 to XrFormatRGB24
-
-	* src/xrsurface.c (_XrFormatBPP, XrSurfaceCreateForImage)
-	(_XrFormatDepth): Fixed for change of XrFormatRGB32 to
-	XrFormatRGB24
-
-2003-05-01  Carl Worth  <cworth at isi.edu>
-
-	* src/xrpath.c (_XrPathBounderInit):
-	(_XrPathBounderDeinit):
-	(_XrPathBounderAddPoint):
-	(_XrPathBounderAddEdge):
-	(_XrPathBounderAddSpline):
-	(_XrPathBounderDoneSubPath):
-	(_XrPathBounderDonePath):
-	(_XrPathBounds): New support for computing the bounding box of a
-	path. Currently used internally, (for computing the size of the
-	clip surface), and not exported publically.
-	
-	* src/xrgstate.c (_XrGStateStroke): Implemented clip support for
-	strokes.
-	(_XrGStateClip): New _XrGStateClip function fills the current path
-	onto the gstate->clip surface.
-
-	* src/xr.c (XrClip): Added preliminary/experimental clip
-	functionality. The current implementation only clips stroked
-	elements, (not fills, images, or text). It's alway quite
-	inefficeient.
-
-	* src/xr.c (XrGetOperator): 
-	(XrGetTolerance): 
-	(XrGetLineWidth): 
-	(XrGetLineCap): 
-	(XrGetLineJoin): 
-	(XrGetMiterLimit): 
-	(XrGetCurrentPoint): Added several new query functions.
-
-2003-04-26  Carl Worth  <cworth at isi.edu>
-
-	* src/xrsurface.c (XrSurfaceDestroy): Fix memory leak of
-	surface->image_data.
-
-2003-04-25  Carl Worth  <cworth at east.isi.edu>
-
-	* configure.in: Fixed libtool versioning
-
-2003-04-17  Carl Worth  <cworth at isi.edu>
-
-	* Switched from imake to autotools.
-
-	* src/xrint.h: XrSurface structure is now greatly simplified,
-	(details now handled by XcSurface).
-
-	* src/Xr.h: Eliminated Display * parameter so Xr can be used for
-	non-X drawing.
-	Removed XrPushGroup/XrPopGroup.
-	Replaced XrSetDrawable/XrSetVisual with XrSetTargetDrawable.
-	Added XrSetTargetSurface and several new XrSurfaceCreate
-	functions.	
-	Added XrShowSurface, (functionality overlaps with XrShowImage --
-	need to fix this)
-	
-
-2003-02-14  Carl Worth  <cworth at east.isi.edu>
-
-	* xrgstate.c (_XrGStateShowImageTransform): Fixed transformed
-	images which were sometimes 1 pixel too tall/wide.
-
-2003-02-06  Carl Worth  <cworth at isi.edu>
-
-	* xrpen.c (_XrPenVerticesNeeded): Fixed to use determinant rather
-	than eigenvalues to compute maximal scaling of radius. Now avoids
-	embarrassing segfaults due to NaN from the eigenvalue computation.
-
-2003-01-28  Carl Worth  <cworth at isi.edu>
-
-	* xrtraps.c (_XrTrapsTessellateTriangle): Fixed to not re-order
-	the array provided as an argument. (Note: the rectangle and
-	polyghon tessellators still perform reordering).
-
-	* xrstroker.c (_XrStrokerJoin):
-	(_XrStrokerCap): Implemented round caps and joins.
-	(_XrStrokerDoneSubPath): Fixed initial cap, (was always being
-	drawn on the inside previously).
-
-	* xrpen.c (_XrPenInit): Fixed to keep pen vertex theta values all
-	in device space.
-	(_XrPenAddPoints): Removed the silly flags from the pen vertices,
-	(in favor of just using the FindActiveVertex functions)
-	(_XrPenFindActiveCWVertexIndex):
-	(_XrPenFindActiveCCWVertexIndex): Added functions needed for round
-	caps/joins.
-
-	* xrgstate.c (_XrGStateSetDash): Fixed to accept a NULL dash array
-	to revert to no dashing.
-
-2003-01-28  Carl Worth  <cworth at east.isi.edu>
-
-	* xrtraps.c (_XrTrapsTessellateTriangle): Restored triangle
-	tessellation functionality, (I think it's correct this time).
-
-	* xrstroker.c (_XrStrokerJoin): Bevel joins now use triangle
-	tessellation rather than polygon tessellation.
-
-2003-01-24  Carl Worth  <cworth at east.isi.edu>
-
-	* xrpolygon.c (_XrPolygonAddEdge): Fixed to handle multiple
-	sub-polygons.
-
-	* xrstroker.c (_XrStrokerJoin): Fixed handling of miter limit.
-
-	* local.def: Added local.def for building outside the xc tree.
-
-2002-12-03  Carl Worth  <cworth at isi.edu>
-
-	* xrstroker.c (_XrStrokerJoin):
-	(_XrStrokerCap): Fixed to track change in winding rule parameter
-	to XrTrapsTessellatePolygon, (otherwise self-intersecting splines
-	suddenly had holes).
-
-	* xrpen.c (_XrPenStrokeSpline): Fixed to track change in winding
-	rule parameter to XrTrapsTessellatePolygon.
-
-2002-11-11  Carl Worth  <cworth at isi.edu>
-
-	* xrtransform.c (_XrTransformBoundingBox): Added support for
-	transforming a bounding box, (an axis-aligned rectangle prior to
-	transformation). The ShowImage support needs this.
-	(_XrTransformComputeInverse): Now catches error case for
-	non-invertible matrix.
-
-	* xrsurface.c (_XrSurfaceSetTransform): Fixed ordering of matrix
-	for call to RenderSetPictureTransform
-
-	* xrgstate.c (_XrGStateSetMatrix): 
-	(_XrGStateIdentityMatrix): Support for new Xr matrix functions.
-	(_XrGStateShowImage): 
-	(_XrGStateShowImageTransform): Fixed transformation of images.
-
-	* xr.c (XrSetMatrix): 
-	(XrDefaultMatrix): 
-	(XrIdentityMatrix): Added 3 matrix manipulation functions.
-
-2002-11-04  Carl Worth  <cworth at isi.edu>
-
-	* xrsurface.c (_XrSurfaceDereference):
-	(_XrSurfaceDereferenceDestroy): Fixed bug in reference counting
-	logic.
-	(_XrSurfaceSetDrawableWH): XrSurface now keeps track of its width/height.
-	(_XrSurfaceGetDrawable): 
-	(_XrSurfaceGetWidth): 
-	(_XrSurfaceGetHeight): 
-	(_XrSurfaceGetDepth): New accessor functions.
-
-	* xrgstate.c (_XrGStateBeginGroup):
-	(_XrGStateEndGroup): Preliminary group support. Not too efficient
-	since it always composite's a full-size picture from child group
-	to parent picture, (even if only a small portion has
-	non-transparent pixels).
-	(_XrGStateShowImageTransform): Fixed show image to use current
-	alpha value.
-
-	* xrfont.c (_XrFontResolveXftFont): Fixed memory leak
-	(FcPatternDestroy). There's still some meory
-	leaking/left-reachable in Xft/fontconfig that I need to track
-	down.
-
-	* xr.c (XrPushGroup):
-	(XrPopGroup): Added preliminary group support. I think I like
-	having this in the API as it takes several burdens away from the
-	user, (plus it matches the PDF model). Things to do still: think
-	about the names of these functions. Re-read the PDF semantics to
-	see if we're missing anything.
-
-2002-11-02  Carl Worth  <cworth at isi.edu>
-
-	* xrsurface.c (_XrSurfaceSetImage): Fixed leak of the image
-	pixmap.
-
-2002-11-01  Carl Worth  <cworth at east.isi.edu>
-
-	* xrsurface.c (_XrSurfaceSetImage): Prelimary image
-	support. Really only works with ARGB32. I still need to think
-	about what formats will be supported.
-	(_XrSurfaceSetTransform): Partial support for transformed
-	surfaces.
-	(_XrSurfaceGetXcSurface): Moved all creation/destruction of the
-	XcSurface into this function so that it is only lazily created
-	when needed.
-
-	* xrgstate.c (_XrGStateSetCurrentPt): gstate now can throw errors
-	when an operation needs current point, but it doesn't exist yet.
-	(_XrGStateShowImage, _XrGStateShowImageTransform): Preliminary
-	image support, (currently it only scales according to the CTM. The
-	matrix passed with the image doesn't do anything yet.)
-
-	* xrfont.c (_XrFontInitCopy): Removed bogus out of memory errors.
-
-	* xr.c (XrShowImage, XrShowImageTransform): Added very preliminary
-	image support. Things don't work completely yet and all the
-	interfaces are likely to change.
-	(XrGetStatusString): Added function to map status values to strings.
-
-2002-10-31  Carl Worth  <cworth at isi.edu>
-
-	* xrfont.c (_XrFontInit):
-	(_XrFontInitCopy):
-	(_XrFontDeinit):
-	(_XrFontSelect):
-	(_XrFontResolveXftFont): Updated by ripping all font support from
-	Xc and just putting a couple of calls to Xft and fontconfig right
-	here in xrfont.
-
-	* xr.c (XrTextExtents): Added XrTextExtents.
-
-2002-10-29  Carl Worth  <cworth at east.isi.edu>
-
-	* xrgstate.c (_XrGStateSelectFont, _XrGStateScaleFont)
-	(_XrGStateTransformFont, _XrGStateShowText): Added basic font
-	support.
-
-	* xr.c (XrSelectFont, XrScaleFont, XrTransformFont): Added basic
-	font support.
-
-2002-10-28  Carl Worth  <cworth at east.isi.edu>
-
-	* xrstate.c (_XrStatePop): Added error case for XrRestore without
-	matching XrSave.
-
-	* xrsurface.c (_XrSurfaceInit, _XrSurfaceReference)
-	(_XrSurfaceDereference): Added reference counting to XrSurface to
-	patch a memory leak.
-
-2002-10-26  Carl Worth  <cworth at isi.edu>
-
-	* xrtransform.c (_XrTransformDistance):
-	(_XrTransformPoint): changed to use individual X/Y arguments
-	rather tha an XPointDouble. This improves readability since
-	_XrTransformDistance is now always called with arguments of dx/dy
-	rather than pt.x/pt.y.
-
-	* xrpath.c (_XrPathMoveTo):
-	(_XrPathLineTo):
-	(_XrPathCurveTo):
-	(_XrPathClosePath): replaced public _XrPathAdd with explicit named
-	functions. This cleans up the implementation since _XrPathAdd,
-	which is unsafe with respect to argument consistency, is now
-	private. Also, since the _XrGState now maintains the current
-	point, I dropped all relative path operators from the XrPath data
-	structures.
-
-	* xrgstate.c (_XrGStateMoveTo):
-	(_XrGStateLineTo):
-	(_XrGStateCurveTo):
-	(_XrGStateRelMoveTo):
-	(_XrGStateRelLineTo):
-	(_XrGStateRelCurveTo): Replaces _XrGStateAddPathOp and
-	_XrGStateAddUnaryPathOp with explicit named functions for each
-	operator type. This change introduces the current point state into
-	the XrGState structure rather than postponing its calculation
-	until path interpretation.
-
-	* xrgstate.c (_XrGStateSetDrawable):
-	(_XrGStateSetVisual):
-	(_XrGStateSetFormat):
-	(_XrGStateSetOperator):
-	(_XrGStateSetRGBColor):
-	(_XrGStateSetTolerance):
-	(_XrGStateSetAlpha):
-	(_XrGStateSetFillRule):
-	(_XrGStateSetLineWidth):
-	(_XrGStateSetLineCap):
-	(_XrGStateSetLineJoin):
-	(_XrGStateSetMiterLimit):
-	(_XrGStateTranslate):
-	(_XrGStateScale):
-	(_XrGStateRotate):
-	(_XrGStateConcatMatrix):
-	(_XrGStateNewPath): : Added XrStatus return values to many
-	functions -- just for consistency, these functions can not return
-	errors in any case.
-
-	* xr.c (XrShowText): Started to ass XrShowText, (still not functional)
-
-2002-10-24  Carl Worth  <cworth at isi.edu>
-
-	* xr.c (XrSetFillRule): Added support to set fill rule.
-
-2002-10-23  Carl Worth  <cworth at isi.edu>
-
-	* xrtraps.c (_XrTrapsTessellatePolygon): Fix for polygon with
-	multiple sub-polygons that are disjoint in Y.
-
-2002-07-16  Carl Worth  <cworth at isi.edu>
-
-	* Xr.h: Renamed xrpicture.c to xrsurface.c as part of the move.
-	Added XrSetFormat, XrSetOperator, XrSetLineCap, XrSetLineJoin, and
-	XrSetMiterLimit, (although the line style drawing code is not all
-	in place yet).
-
-	* xrpath.c (XrPathLineTo): Changed LineTo semantics to be the same
-	as MoveTo if there was no previous MoveTo.
-
-	* xrtraps.c: Added tessellation code, (lifted from
-	XRenderCompositeDoublePoly which can now disappear).
-
-	* xrgstate.c: Changed stroke code to incrementally build a list of
-	trapezoids rather than forming one giant polygonal outline and
-	rendering that. This should be more efficient.
-	(_XrGStateFillPath): Now uses Xr's own tessellation along with
-	XcCompositeTrapezoids.
-
-	* Xr.h: Moved all of Xr away from Xrender to the new Xc library.
-
-	* xrsurface.c: Renamed from xrpicture.c, (part of the move from
-	XRender to Xc).
-
-	* Started keeping a ChangeLog ;-)


More information about the cairo-commit mailing list