summaryrefslogtreecommitdiff
path: root/ROADMAP
blob: 85dd808c59c84b1c0158a6a460c5041d3e68b82d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
This is the cairo roadmap.

Everything here is subject to change, but it is hoped that all of it
will be useful. If you want to influence, please feel free to get
involved with cairo (see http://cairographics.org ).

The intent is for this to be a living document. We want both the users
of cairo, (GTK+, GNOME, Mozilla, Mono, etc. etc.) to let us know
features they need and dates by which they are needed so that we can
use those to guide our plans.

Additionally, people who are actively developing cairo itself should
regularly update this document to reflect their current plans. If you
don't want to see a particular release happen without some essential
feature, then put that feature on the list and put your name next to
it to indicate you are working on it.

Targets
=======
Firefox 3.0 - http://www.mozilla.org/projects/firefox/roadmap.html
------------------------------------------------------------------
Firefox 3 (scheduled for early 2007?) is the first release expected to
use cairo for all rendering. In the meantime, development builds using
cairo are available

Satisfying firefox 3 well requiring releasing new versions of cairo
before November 2006 (or earlier) that incorporate the patches coming
from mozilla, (clip querying), and much-improved performance.

Themes and Schedules
====================
cairo-1.2.4 (August 21, 2006): Fix build bugs with 1.2.2
✓- xlib detection requires libXt
 - 7744: Compile troubles on AIX
✓- SVG backend requires PNG
✓- 7888: assertion failure with rotated bitmap glyphs
✓- 7889: cairo_text_path assertion failure on bitmap fonts
✓- Type1 on Windows (Adrian has a patch)
✓- source-clip-scale
 - PS/PDF Type1/Type3 problem with rotated font_matrices
✓- close_path behavior (T Rowley's mail)
✓- degenerate-path dashing fixes

cairo-1.4 (October 2006): Better performance
 - New tessellator
 - New rasterization
 - Finer-grained fallbacks for PS/PDF

cairo 1.4.0 ideas (think performance!)
======================================
 Implement framework for performance regression testing

 Investigate "low-hanging fruit" identified by David Turner (write test case for each)

 Look into speeding up pixman gradients

 Look into improving text positioning/placement on ARM (with no hardware floating-point)

 Look into speeding up dashing used for GTK+ focus rectangle

 Look into other GTK+ performance regressions as identified on performance-list

 xlib backend
     Switch to server-side gradients for xlib backend
     Fix X server to make server-side gradients faster
     Switch to using XRenderAddTraps rather than XRenderCompositeTrapezoids

 Implement a non-trapezoid based rasterizer for use with xlib and other backends

 Cull geometry outside clip region bounds

 New tessellator

 Look into using alloca instead of malloc when copying glyphs/path/etc to edit
 and use in one function and deallocate upon return.

 Look into generating EPS.  That may be done using a new constructor for the
 PS backend, or better, using an API similar to
 cairo_svg_surface_restrict_to_version.  The PDF backend needs a restrict_to
 API at some point too.

 User-font API

 Bugs to fix
 -----------
   CAIRO_EXTEND_PAD is not implemented for surface patterns
   CAIRO_FORMAT_RGB16_565 should be deprecated

Unscheduled stuff we'd like to get to at some point
===================================================
 Fairly severe bugs
     6806  cairo 1.0.4 crash progressbar in window
     PDF: minefield shows too-tiny bitmapped fonts in image fallback
     PDF: minefield shows strangely hinted glyph shapes (only without truetype subsetting)
     PDF: minefield has broken selection (only with truetype subsetting code)
     4630  Fonts too large when drawing to image surface while printing
     4863  stroking problems with wide dashed lines
     7497 _cairo_color_compute_shorts fails with FPU set to single ...

 Fix all expected failures (XFAIL) in the test suite
     a8-mask
     extend-reflect
     filter-nearest-offset
     leaky-dash
     self-intersecting
     text-rotate

 Fix disabled tests in the test suite
     show-glyphs-many

 Win32 backend
    ✓1. Incorporate into test suite
     2. Correct output for the entire suite
	 a. self-copy
	 b. trap-clip
	 [There is some mailing-list discussion about possible fixes
	 for these.]

 New API
     cairo_arc_to
	see http://lists.freedesktop.org/archives/cairo/2005-August/004801.html
	or see arc_to branch in bedhad's repository

 PS/PDF improvements
     1. Make image fallbacks finer-grained than a whole page
     2. Ensure that PDF text output is "selectable"

 Quartz backend (maintainer needed!)
     1. Mark Quartz backend as supported:
	 a. Incorporate into test suite
	 b. Correct output for the entire suite

 Misc
     1. xlib backend requires xrender to compile, while it can perform without
        xrender at run time.  Make it compile without it.