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