]> git.wh0rd.org - fontconfig.git/blob - README
Merge branch 'fc-2_4_branch' to master
[fontconfig.git] / README
1 Fontconfig
2 Font configuration and customization library
3 Version 2.3.96
4 2006-09-03
5
6
7 Check INSTALL for compilation and installation instructions.
8 Report bugs to https://bugs.freedesktop.org in the fontconfig module.
9
10 2.3.96
11
12 Keith Packard:
13 Make path names in cache files absolute (NB, cache format change) Stop
14 Eliminate pattern freezing
15 Add .gitignore
16 Construct short architecture name from architecture signature.
17 Write caches to first directory with permission. Valid cache in FcDirCacheOpen.
18 Eliminate NormalizeDir. Eliminate gratuitous stat/access calls per dir.
19 Add architecture to cache filename.
20 Eliminate global cache. Eliminate multi-arch cache code.
21 Fix up fc-cache and fc-cat for no global cache changes.
22 Eliminate ./ and ../ elements from font directory names when scanning.
23 Regenerate x86 line in fcarch.tmpl.h to match change in cache data.
24 Add x86-64 architecture and signature.
25 During test run, remove cache directory to avoid stale cache usage.
26 Add ppc architecture
27 Revert to original FcFontSetMatch algorithm to avoid losing fonts.
28 Rework cache files to use offsets for all data structures.
29 Fix build problems caused by cache rework.
30 FcCharSetSerialize was using wrong offset for leaves. Make fc-cat work.
31 Rework Object name database to unify typechecking and object lookup.
32 Skip broken caches. Cache files are auto-written, don't rewrite in fc-cache.
33 Fix fc-cat again. Sigh.
34 Use intptr_t instead of off_t inside FcCache structure.
35 Serialized value lists were only including one value.
36 Automatically remove invalid cache files.
37 With no args, fc-cat now dumps all directories.
38 Revert ABI changes from version 2.3
39 Change $(pkgcachedir) to $(fc_cachedir) in fc-cat and fc-cache Makefile.am
40 Allow FcTypeLangSet to match either FcTypeLangSet or FcTypeString.
41 Remove stale architecture signatures.
42 Pass directory information around in FcCache structure. Freeze charsets.
43 Fix fc-lang to use new charset freezer API.
44 Fontset pattern references are relative to fontset, not array.
45 Add some ignores
46 Only rebuild caches for system fonts at make install time.
47 Fix memory leaks in fc-cache directory cleaning code.
48 Add @EXPAT_LIBS@ to Libs.private in fontconfig.pc (bug 7683)
49 Avoid #warning directives on non-GCC compilers. (bug 7683)
50 Chinese/Macau needs the Hong Kong orthography instead of Taiwan (bug 7884)
51 Add Assamese orthography (as.orth). Bug #8050
52 Really only rebuild caches for system fonts at make install time.
53 Fonts matching lang not territory should satisfy sort pattern lang.
54 Prefer Bitstream Vera to DejaVu families.
55 Guess that mac roman names with lots of high bits are actually SJIS.
56 Document FC_DEBUG values (bug 6393). Document name \ escape syntax.
57 Move Free family names to bottom of respective aliases. (bug 7429)
58 Unify directory canonicalization into FcStrAddFilename.
59 Allow font caches to contain newer version numbers
60 Add FcMatchScan to resolve Delicious font matching issues (bug #6769)
61 Fix missing initialization/destruction of new 'scan' target subst list.
62 Don't segfault when string values can't be parsed as charsets or langsets.
63 Using uninitialized (and wrong) variable in FcStrCopyFilename.
64 Oops; missed the 60-delicious.conf file.
65
66 Patrick Lam:
67 Keith Packard <keithp@keithp.com>
68 2006-04-27 Paolo Borelli (pborelli@katamail.com) reviewed by: plam
69 2006-05-31 Yong Li (rigel863@gmail.com) reviewed by: plam, Bedhad Esfahbod
70 2006-07-19 Jon Burgess (jburgess@uklinux.net) reviewed by: plam
71 2006-08-04 Keith Packard (keithp@keithp.com) reviewed by: plam
72
73 2.3.95
74
75 Match 'Standard Symbols L' for 'Symbol'. Add URW fonts as aliases for
76 all of the PostScript fonts. (reported by Miguel Rodriguez). Fix a
77 number of Coverity defects (Frederic Crozat). Speed up FcFontSort
78 (fix suggested by Kenichi Handa). Fix error with charsets. Survive
79 missing docbook2pdf. Compile on HP-UX, AIX, SGI and Windows (Cygwin,
80 MinGW). Fix intel compiler warnings. Fix multiarch support (don't
81 destroy multiarch files!) Require pkg-config. (Thanks Behdad; better
82 solution wanted for libxml2 detection!) Fix typos in orth files and
83 add orth for Lingala (reported by Denis Jacquerye). Remove debian/
84 directory. Add a configuration file that disables hinting for the
85 Lohit Gujarati font (since the hinting distorts some glyphs quite
86 badly). Sort directory entries while scanning them from disk;
87 prevents Heisenbugs due to file ordering in a directory (due to Egmont
88 Koblinger). Fix Wine's problem with finding fonts. (Reported by
89 Bernhard Rosenkraenzer.) Fix the issues with GNU libiconv vs. libc
90 iconv (which especially appear on Solarii); patch by Behdad Esfahbod,
91 approach suggested by Tim Mooney.
92
93 2.3.94
94
95 fc-cat can take directories as input and creates old-style fonts.cache
96 listings.
97 fc-cache takes -r --really-force which blows away all old caches and
98 regenerates.
99 Robustness fixes, integer overflow fixes (notably to cache handling
100 code), toast broken global cache files.
101 Change binary format to make it compatible with static langset
102 information (thanks to Takashi Iwai).
103 Open hashed caches before fonts.cache-2 (Takashi Iwai).
104 Fix FcFontSetMatch's algorithm, which used to unjustly kill fonts for
105 not declaring certain elements (Takashi Iwai).
106 Fix matching bug when multiple elements match; don't use
107 the sum of all scores, but the best score (James Su).
108 Make fc-lang more friendly to Windows systems.
109 Remove archaic chars from Georgian charset; add Euro character to
110 charsets for European languages.
111 Fix treatment of broken PCF fonts that don't declare family names.
112 Pass O_BINARY to open if appropriate (reported by Doodle).
113 Normalize font directories to the form in which they appear in
114 config files.
115 Add a record of the cached directory to the cache file.
116 Perf optimizations (Dirk Mueller; some reported by Michael Meeks.)
117 Don't loop infinitely on recursive symlinks.
118 Make 'make distcheck' work with automake 1.6.3.
119 Replace 'stamp' target with mkinstalldirs.
120 Don't stop scanning if a directory in fonts.conf doesn't exist,
121 because subsequent directories might exist.
122 Put directory names into global cache (reported by Ronny V. Vindenes).
123 Treat zh-hk fonts differently from zh-tw fonts. This patch may cause
124 fontconfig to treat A-X fonts differently from A-Y fonts; please mail
125 the fontconfig list if this causes any problems.
126 Fix for unaligned memory accesses (Andreas Schwab).
127 Fix treatment of cache directory as read from cache file; don't use
128 string equality to determine if we have the right file, use inode
129 equality.
130 Properly skip past dir caches that contain zero fonts, as occurs
131 in global caches (reported by Mike Fabian).
132 Print out full pathname in fc-match -v (reported by Frederic Crozat).
133 Fix bug where fc-match crashes when given __DUMMY__ property to
134 match on.
135
136 2.3.93
137
138 Create cache files in /var/cache/fontconfig with hashed filenames, if
139 possible, for added FHS compliance.
140 Make fc-cat read both per-directory and global cache files.
141 Add config file for Persian fonts from Sharif FarsiWeb, Inc.
142 Major performance improvements by Dirk Mueller, Stephen Kulow, and Michael Matz at SuSE: in particular, speed up FcFontSetMatch, and inline many functions.
143 Fix treatment of globs in config files, broken since 2.3.2 and discovered by Mathias Clasen.
144 Don't use freetype internal headers (patch by Matthias Clasen).
145 Further space improvements: create langsets statically, so that they can live in .rodata.
146 Properly align mmapped data structures to make e.g. ia64 happy.
147 Bug fixes.
148
149 2.3.92
150
151 Fix corrupted caches bugs from 2.3.91 (reported by Mike Fabian).
152 Store only basename in the cache, reconstitute on demand
153 (reported by James Cloos).
154 Change the rule for artificial emboldening in fonts.conf.in. This
155 enables the support for artificial emboldening included in cairo
156 (patch by Zhe Su).
157 Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether
158 to load embedded bitmaps or not (patch by Jinghua Luo).
159 Fix GCC4 warnings (some by Behdad Esfahbod).
160 Support localized font family and style names; this has been reported
161 to break old apps like xfd, but modern (gtk+/qt/mozilla) apps work
162 fine (patch by Zhe Su).
163 Prevent fc-list from escaping strings when printing them (reported by
164 Matthias Clasen).
165 Add valist sentinel markup for FcObjectSetBuild and
166 FcPatternBuild (patch by Marcus Meissner).
167 Add consts to variables so as to move arrays into .rodata (patch by
168 Ross Burton).
169 Modify config file to use Greek fonts before Asian fonts with
170 Greek glyphs. (patch by Simos Xenitellis).
171 Use libtool -no-undefined flag on all platforms (patch by Christian
172 Biesinger).
173
174 2.3.91
175
176 Use libxml2 if requested or if expat not available. (Mathias Hasselmann)
177 Fix multi-arch cache files: compute the position for the
178 block to be added using info from OrigFile, not NewFile. (plam)
179 Cast results of sizeof() to unsigned int to get rid of
180 warnings on x86_64 (reported by Matthias Clasen).
181 Use FcAtomic to rewrite cache files; don't unlink the fonts.cache-2
182 file even if there's no data to write; just write an empty cache file.
183 (Reported by Lubos Lunak)
184 Allocate room for the subdirectory names in each directory cache.
185 (Reported by James Cloos)
186
187 2.3.90
188
189 Development release of mmap patch: load pattern information
190 directly from cache files. (Patrick Lam)
191
192 2.3.2
193
194 Patch memory leaks in using iconv. (Reported by Chris Capoccia)
195 Patch memory leaks in fc-cache. (Reported by Chris Capoccia)
196 Fetch bitmap glyphs to get widths during font evaluation. (keithp)
197 Share strings through FcObjectStaticName (Ross Burton)
198 Windows build updates (Tor Lillqvist)
199
200 2.3.1
201
202 Be more careful about broken GSUB/GPOS tables (Manish Singh)
203 Include debian packaging stuff in CVS (Josselin Mouette)
204 Add more conf.d examples (Keith Packard)
205 Make manuals build again (Keith Packard)
206 Johap -> Johab (Funda Wang)
207
208 2.3.0
209
210 Fix memory leak of patterns rejected by configuration (#2518)
211
212 Create prototype /etc/fonts/conf.d directory and populate it with a few
213 sample files. These samples are unused as the file names don't start with
214 numbers.
215
216 Update documentation.
217
218 2.2.99
219
220 Verify cache for FC_FILE and FC_FAMILY in every entry (#2219)
221
222 Update blanks list from recent Unicode docs (#86)
223
224 Various small build fixes (#280, #2278,
225
226 Documentation fixes (#2085, #2284, #2285)
227
228 Add polite typechecking to config file loader (#229)
229
230 2.2.98
231
232 Share object name strings (Michael Meeks)
233
234 Eliminate a couple of codepoints from Russian orthography (John Thacker)
235
236 Add synthetic emboldening configuration changes (Jakub Pavelek)
237
238 Change FcFontSetSort to ignore language after fonts with the requested
239 languages have been found. (Owen Taylor)
240
241 Add some RedHat font configuration changes (Owen Tayler).
242
243 Add full Unicode case folding support to case-ignoring string functions
244 (Keith Packard)
245
246 Remove Han characters from Korean orthography (Tor Andersson)
247
248 2.2.97
249
250 Fc-cache sleeps before exiting to ensure filesystem timestamps are well
251 ordered.
252
253 Added Punjai orthography.
254
255 The timestamp in fonts.conf is gone now. Too many problems.
256
257 The default font path includes all of the X fonts; use selectfont/rejectfont
258 to eliminate bitmaps, as shown in the sample local.conf file.
259
260 <include> configuration elements may now reference a directory. Files
261 in that directory matching [0-9]* are loaded in UTF-8 collating sequence order.
262
263 <selectfont> configuration added to control which fonts are used.
264
265 fontformat font pattern elements built from the FT_Get_X11_Font_Format
266 function in newer versions of FreeType.
267
268 'capability' list constructed from gsub/gpos and silf values in TrueType
269 files.
270
271 Multi-lingual names (style, family, fullname) extracted and stored with
272 parallel <foo>lang properties marking language.
273
274 2.2.96
275
276 Fix FcConfigUpToDate to actually check all font directories and eliminate
277 a typo which completely prevented it from working (Lubos Lunak
278 <l.lunak@suse.cz>)
279
280 Remove comma at end of FcResult enum definition for picky compilers.
281
282 2.2.95
283
284 Add FcResultOutOfMemory so FcFontSetMatch can return accurate error.
285
286 Replace MIN/MAX/ABS macros which happened to be in old FreeType releases
287 with FC_MIN/FC_MAX/FC_ABS macros owned by fontconfig.
288
289 2.2.94
290
291 The 2.2.93 release was prepared with a broken libtool which created
292 the shared library without the '.so' in the file names.
293
294 2.2.93
295
296 This is the third prerelease of fontconfig 2.3. Significant changes from
297 2.2.92 are:
298
299 o Use new FreeType #include syntax
300 o use y_ppem field instead of 'height' in bitmap sizes rec -
301 FreeType changed the semantics. Still uses height for
302 older versions of FreeType
303 o Don't construct program manuals unless docbook is available
304
305 2.2.92
306
307 o make distcheck work
308
309 2.2.91
310
311 o Switch to SGML manuals
312 o Add FC_DUAL width spacing value
313 o Add FcFini to close out fontconfig and release all memory
314
315 2.2
316
317 This is the third public release of fontconfig, a font configuration and
318 customization library. Fontconfig is designed to locate fonts within the
319 system and select them according to requirements specified by applications.
320
321 Fontconfig is not a rasterization library, nor does it impose a particular
322 rasterization library on the application. The X-specific library
323 'Xft' uses fontconfig along with freetype to specify and rasterize fonts.
324
325 Keith Packard
326 keithp@keithp.com