summaryrefslogtreecommitdiff
path: root/ROADMAP
blob: b8e410f27fa8d3d5d93d3c68f4b6d13320880336 (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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
cairo 1.0.4? bug fixes (I don't know if this release will be needed
or not, but I wanted a place to lodge a bug that slipped from 1.0.2
===================================================================
For each bug number XXXX below, see:
https://bugs.freedesktop.org/show_bug.cgi?id=XXXX
 4630  Fonts too large when drawing to image surface while printing
 4863  stroking problems with wide dashed lines 

cairo 1.2.0 essential features (targeted for 2006-03-08)
The release won't happen without these being complete.
========================================================
 A. PS backend
    ----------
    ✓1. Mark PS backend as supported:

	✓a. Incorporate into test suite

	✓b. Correct output for the entire test suite

     2. Image fallbacks at finer-than-whole-page granularity

	✓a. Switch to using cairo_paginated_surface_t

	 b. Add analysis and clever replay to
	    cairo_paginated_surface_t

 B. PDF backend
    -----------
    ✓1. Mark PDF backend as supported

	✓a. Incorporate into test suite

	✓b. Correct output for the entire test suite (use image
	    fallbacks as necessary).

     2. Image fallbacks at finer-than-whole-page granularity

	✓a. Switch to using cairo_paginated_surface_t

	 b. Add analysis and clever replay to
	    cairo_paginated_surface_t

 E. Fix memory leaks
    ----------------
     1. Ensure 'make check-valgrind' passes with no leaks

 H. Mozilla patches (at the very least, these need a response)
    ----------------------------------------------------------
     1. Misc compilation fixes for pixman (submitted upstream)
     2. mac compilation fix for cairo-atsui-font.c for 10.2 SDK (maybe should
	be upstream?)
     3. Make mark_dirty() reset a surface's clip, so that we can call it
	when we RestoreDC() after native win32 drawing (submitted upstream)
     4. Rework win32 surface clip and extents handling for correctness
	(submitted upstream)
     5. Add GdiFlush() calls before each image surface get
	(Submitted upstream: https://bugs.freedesktop.org/show_bug.cgi?id=5845)
     6. Move device offset/scale handling into surface layer; large rework
	of device offset/scale.  (submitted upstream)
     7. push-pop-group.patch (Updated 9 Feb 06)
	Implementation of push/pop group API; depends on device-offset-scale.
    	(submitted upstream)

cairo 1.2.0 desired features (targeted for 2006-01-13)
If these aren't ready, they won't be in the release.
[There are some bugs that need to be added here, and
 some bugs that should be bumped up into the essential
 features section.]
======================================================

 C. 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.]

 D. Bug fixes
    ---------
    ✓1. Fix dashed splines.

     2. Fix some expected failures (XFAIL) in the test suite

	 a. a8-mask

	✓b. clip-all

	 c. filter-nearest-offset

	 d. pixman-rotate

	 e. extend-reflect

 E. API Additions
    -------------
     1. cairo_begin/end/get_group
	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.
		Vladimir Vukicevic has taken up the torch on this and
		has posted an almost-complete set of patches.

    2. The pango developers need one or two additions in order to
       implement pango's hex-box drawing.

	 5496 Add getters for cairo_scaled_font_t
	      - This looks trivial, and is maybe "enough" for an ugly
		solution in pango.
	      
	 5495 Need cairo_scaled_font_text_extents
	      - I think I would actually prefer to add
                cairo_text_to_glyphs for this fix.

 F. Performance improvements
    ------------------------
     1. Cull and trim trapezoids outside clip region bounds

     2. Generate more large pixel-aligned, rectangular trapezoids

    ✓3. Speed up glyph measurement (cache rewrite)

    ✓4. Speed up gradient computations

 G. SVG backend
    -----------
    ✓1. Add experimental SVG backend

cairo 1.4.0 desired features (Schedule unknown)
===============================================
 A. Quartz backend (maintainer needed!)
    -----------------------------------
     1. Mark Quartz backend as supported:

	 a. Incorporate into test suite

	 b. Correct output for the entire suite

 B. SVG backend
    -----------
     1. Mark SVG backend as supported

	 a. Incorporate into test suite

	 b. Correct output for the entire suite

 B. Performance improvements
    ------------------------
     1. New tessellator (more robust and faster)

 C. Bug fixes
    ---------
     1. Fix all expected failures (XFAIL) in the test suite

	 a. self-intersecting
		AKA. https://bugs.freedesktop.org/show_bug.cgi?id=3752
		Fix depends on [A1].