[cairo-commit] cairo ROADMAP,1.32,1.33 ChangeLog,1.907,1.908

Carl Worth commit at pdx.freedesktop.org
Thu Aug 18 17:11:44 PDT 2005


Committed by: cworth

Update of /cvs/cairo/cairo
In directory gabe:/tmp/cvs-serv18488

Modified Files:
	ROADMAP ChangeLog 
Log Message:

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.


Index: ROADMAP
===================================================================
RCS file: /cvs/cairo/cairo/ROADMAP,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -d -r1.32 -r1.33
--- ROADMAP	9 Aug 2005 19:35:09 -0000	1.32
+++ ROADMAP	19 Aug 2005 00:11:42 -0000	1.33
@@ -3,28 +3,22 @@
 Implementation work
 -------------------
 ✓I1. Fix clipping to be sane
-	Dificulty: moderate
 	Status: Done (in cairo 0.9.0).
 
- I2. Real PostScript/PDF fallbacks (cairo_meta_surface_t)
-	Difficulty: hard
-	Status: krh has committed cairo_meta_surface_t and a preliminary
-		version of cairo_ps_surface_t that uses it.
+✓I2. Real PostScript/PDF fallbacks (cairo_meta_surface_t)
+	Status: Done (to some extent) (in cairo 0.5.2)
+
+		We do have PDF output now, and "real" PostScript
+		output on a per-page basis when the capabilities of
+		the PostScript imaging model aren't exceeded. There
+		are a few parts of these backend that aren't complete,
+		but that will have to wait for post-1.0 I'm afraid.
 
 ✓I3. Add support for sub-pixel (ARGB) rendering of text.
 	Status: Done (in cairo 0.6.0).
 
- I4. Fix the cache lock deadlocking problems.
-	Difficulty: Hard
-	Status: The cache code was ugly enough that I ended up doing a
-		major rewrite rather than just reviewing the
-		locking. The upside is that the rewrite should also
-		add the missing metrics caches which will fix some
-		performance problems with text measurement. Almost
-		done now.
-
- I5. Finish the workaround for Render's overlapping source/dest bug
-	(Copy the source as needed)
+✓I4. Fix the cache lock deadlocking problems.
+	Status: Done (in cairo 0.9.2)
 
  I6. Fix all expected failures (XFAIL) in the test suite. Either
      there's a bug that needs to be fixed, or there are illegitimate
@@ -33,22 +27,22 @@
 API additions (more detail in TODO file)
 ----------------------------------------
 ✓A7. cairo_surface_mark_dirty and cairo_surface_flush
-	Difficulty: trivial to add API, moderate to actually optimize
-		    based on it
 	Status: Done (in cairo 0.9.0).
 
 ✓A12. cairo_xlib_surface_set_drawable
-	Difficulty: Easy
 	Status: Done (in cairo 0.6.0).
 
 Performance work
 ----------------
  P2. Generate better trapezoids to go easier on the rasterizer
 	Difficulty: moderate to hard
-	Status: cworth drafted a plan to the list
+	Status: cworth drafted a plan to the list. vektor is looking
+		at this, (or other similarly useful performance
+		optimizations)
 
  P3. Glyph measurement needs to be sped up.
-	Status: Now planned as part of I4 above ("cache lock deadlock")
+	Status: keithp and cworth planned this all out. keithp is
+		working on this.
 
 Things that have been dropped from the 1.0 roadmap
 ==================================================
@@ -56,7 +50,42 @@
 	Difficulty: easy to hard (depending on how sophisticated an
 	            implementation is acceptable, and whether the
 		    cairo_meta_surface_t mentioned in [I2] is done)
-
 	Status: cworth has a posted a preliminary patch, and keithp,
 		krh, and otaylor answered all the tough questions it
 		raised. There's not much work left to finish this one.
+
+ I5. Finish the workaround for Render's overlapping source/dest bug
+	(Copy the source as needed)
+
+	The most important part of this was to workaround when doing a
+	straight copy, (eg. for scrolling), and that much is done. The
+	remaining case is things like overlapping OVER of a surface
+	with itself, which doesn't seem useful enough to be a priority
+	at this point.
+
+ I7. Fine-grained PostScript fallbacks (cairo_meta_surface_t)
+	Difficulty: Moderate to hard
+	Status: cairo_meta_surface provides most of the
+		mechanics. From here on out its mostly a matter of
+		refining the fallbacks to work on a finer-grained
+		basis than the current all-or-nothing-per-page
+		approach.
+
+ I8. Finish implementing the PDF/PostScript backends:
+	Difficulty: Moderate to hard
+	Status: Most everything is there, but there are few things in
+		cairo that these backends don't yet implement:
+
+		* Gradients with more than two stops
+
+		* All of the cairo_operator_t modes
+
+		* Gradient with transparency
+
+		* Repeating surface patterns
+
+		* cairo_mask
+
+		Some of these could be handled by fallbacks, either as
+		a stop-gap measuer, or permanently. But that will also
+		depend on finishing up [I7].

Index: ChangeLog
===================================================================
RCS file: /cvs/cairo/cairo/ChangeLog,v
retrieving revision 1.907
retrieving revision 1.908
diff -u -d -r1.907 -r1.908
--- ChangeLog	18 Aug 2005 23:22:23 -0000	1.907
+++ ChangeLog	19 Aug 2005 00:11:42 -0000	1.908
@@ -1,3 +1,13 @@
+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)



More information about the cairo-commit mailing list