summaryrefslogtreecommitdiff
path: root/ROADMAP
diff options
context:
space:
mode:
Diffstat (limited to 'ROADMAP')
-rw-r--r--ROADMAP80
1 files changed, 80 insertions, 0 deletions
diff --git a/ROADMAP b/ROADMAP
new file mode 100644
index 00000000..4a47c496
--- /dev/null
+++ b/ROADMAP
@@ -0,0 +1,80 @@
+Here are some quick notes as far as a cairo roadmap goes.
+
+See also the TODO file for a different view, (less organized, but
+often in more detail, particularly for the API Shakeup work in
+progress).
+
+cairo 1.0 release requirements
+==============================
+
+Implementation work
+-------------------
+ I1. Fix clipping to be sane
+ Dificulty: moderate
+ Status: cworth has started looking at this
+
+ I2. Real PostScript/PDF fallbacks (cairo_meta_surface_t)
+ Difficulty: hard
+ Status: otaylor has drafted a plan or two on the list
+
+API Issues (more detail in TODO file)
+-------------------------------------
+
+✓A1. Add cairo_paint
+ Difficulty: moderate or moderate to minor
+ Dependencies: much easier after [I1]. needs some cleanups from [A4]
+ Status: Done
+
+✓A2. Add cairo_mask
+ Difficulty: moderate
+ Status: Done
+
+ A3. Add cairo_begin/end/get_group
+ 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 sent API proposal to the list
+ (still some unresolved API issues)
+
+✓A4. Make set_source consistent
+ Difficulty: easy
+ Dependencies: needs [A2,A3] to avoid losing functionality,
+ (but we may just live with that as we've now got
+ a circular dependency)
+ Status: Done.
+
+✓A5. Add cairo_clip/fill/stroke_preserve
+ Difficulty: easy
+ Status: Done.
+
+✓A6. Just eliminate a bunch of functions:
+
+ ✓ cairo_set_target_*
+ ✓ cairo_copy
+ ✓ cairo_surface_set_repeat/matrix/filter
+ ✓ cairo_show_surface
+
+ Difficulty: trivial
+ Dependencies: eliminating cairo_show_surface depends on [A1]
+ Status: Done.
+
+ A7. cairo_surface_mark_dirty
+ Difficulty: trivial to add API, moderate to actually optimize
+ based on it
+ Status: cworth has sent API proposal to list
+
+ A8. cairo_format_t:
+ Difficulty: moderate. It's just going through and examining
+ each use of cairo_format_t, but there are a lot
+ of them.
+ Status: not started, there is a rough plan in TODO
+
+Performance work
+----------------
+✓P1. Make pixel-aligned rectangle compositing fast
+ Difficulty: moderate to easy
+ Status: Done.
+
+ P2. Generate better trapezoids to go easier on the rasterizer
+ Difficulty: moderate to hard
+ Status: cworth drafted a plan to the list