beta-0.89.2
[luatex.git] / source / texk / web2c / NEWS
blobd15f6e36db3110960d6b51429792d56763733b4f
1 This file records noteworthy changes.  (Public domain.)
3 2015 (for TeX Live 2014, 21 May 2015)
4 2014 (for TeX Live 2014, 24 May 2014)
5 2013 (for TeX Live 2013, 30 May 2013)
6 2012 (for TeX Live 2012, 1 July 2012)
7 * Ditto.
9 2011 (for TeX Live 2011, 5 July 2011)
10 * Doc changes and bug fixes.
12 2010 (for TeX Live 2010, 4 June 2010)
13 * BibTeX line-breaking bug fix in bibtex.web.
15 2009 (for TeX Live 2009, 13 October 2009)
16 * --shell-restricted aka shell_escape=p for restricted shell access.
17 * --enable-write18 and --disable-write18 accepted as synonyms for
18   --shell-escape and --no-shell-escape, for compatibility with MiKTeX.
19 * Omega removed; use Aleph.
20 * Build system now automake-based.
22 7.5.7 (for TeX Live 2008, 7 July 2008)
23 * Include Knuth's 2008 updates.
24 * Include LuaTeX.
25 * Include SyncTeX.
26 * Plenty of pdfTeX and MetaPost updates.
27 * Pool strings now compiled into the binaries instead of .pool files.
28 * autoconf support finally modernized.
30 7.5.6 (for TeX Live 2006-07, 30 December 2006)
31 * Include XeTeX.
32 * pdfTeX and MetaPost updates.
34 7.5.5 (26 June 2005)
35 * BibTeX: dynamically resize the buffer (and related arrays).
36 * MP: Version 0.9
37 * mpware: Brought to the equivalent of version 0.9.
38 * e-TeX, Aleph, pdfeTeX: You can use -ini -etex to start etex mode now
39   instead of prepending an asterisk.
41 7.5.4 (6 February 2005)
42 * TeX: \ifeof18 is false if \write18 is enabled.
43 * MF, MP: Prevent pathological code from overflowing the "serial number"
44   counter for independent variables.
46 7.5.3 (28 November 2004)
47 * ctie: New program, from Julian Gilbey.
48 * TeX, MF, MP: We now save the name of the engine in the dump, in
49   order to be able to give better error messages in case a dump
50   written by another engine is being read.
51 * TeX, MF, MP: We now dump the xord, xchr, and xprn arrays, so if
52   if a TCX file was loaded in INI mode, that will be retained
53   when the dump is loaded.  (Doesn't apply to Omega family.)
54 * TeX, MF, MP: Add -8bit option, which makes all characters
55   printable by default.  Note that a TCX file can change this.
56   (Doesn't apply to Omega family.)
57 * TeX, MF, MP: In TCX files, a third number (0 or 1) can be
58   used to set printability.  (Doesn't apply to Omega family.)
59 * TeX: Include encTeX extension.
60 * mft: Allow more than one -style option.
61 * pdfxTeX: New.
62 * DVItoMP: Now supports color specials, like those added by the
63   colordvi package.  Note that this feature should be considered
64   experimental, and may change in the future.
65 * PATGEN: Peter Breitenlohner fixed some typos in text in patgen.web.
67 7.5.2 (19 February 2003)
68 * e-TeX: Remove last bits of support for installing it as 'tex'.
69 * Makefile fixes.
71 7.5.1 (17 February 2003)
72 * New upstream sources from Knuth.
73 * Lots of little fixes to the new makefiles.
75 7.5.0 (15 February 2003)
76 * Use libtool.
77 * Use e-TeX, pdfeTeX as the engine for the latex, pdflatex format.
79 7.4.6 (7 February 2003)
80 * Makefile structure changed.
81 * e-Omega: New
83 7.4.5 (28 January 2003)
84 * TeX: Obey locale setting only for terminal and log file.
85 * METAFONT, MetaPost: Do not care about locale settings at all.
87 7.4.4 (16 January 2003)
88 * TeX: Increase maximum size of max_strings, main_memory, and pool_size.
90 7.4.3 (11 January 2003)
91 * CWEB: Add --help and --version options.
92 * CWEB: Support both .w and and .web suffixes.
93 * CWEB: When adding #line directives, put in the path, not just the filename.
95 7.4.2 (23 December 2002)
96 * Minor fixes to makefiles.
98 7.4.1 (20 December 2002)
99 * cweave: Fixed hangs caused by wrong argument order in two prototypes.
101 7.4.0 (14 December 2002)
102 * Using 7.4.x numbers now because the interface of kpathsea has changed in
103   ABI-incompatible ways.
104 * share/*: Stop shipping fontmap files and tcx files in the web2c tarball.
105 * CWEB: Add protypes to code through the change files.
106 * BibTeX: Names ending in 'aux' were not handled correctly.
107 * METAPost: Handle date and time privitives correctly, instead of having
108   them give the date of the mem file.
110 7.3.11 (13 November 2002)
111 * BibTeX: purify$ would strip characters with code >= 128 from its argument.
112   This has now changed to just passing them through.  This should have no
113   effect if you don't use such characters in the input, but may result in
114   different output otherwise.  Note that other aspects, like proper sorting
115   of such characters are not handled at all.
116 * CWEB: Increase the maximum length of the names of the input files.
117 \f       
118 7.3.10 (11 November 2002)
119 * Added the CWEB programs.  Thanks to Wlodek Bzyl.
121 7.3.9 (22 October 2002)
122 * TeX, METAFONT, METAPost: Add --jobname option to set the jobname.  This
123   supercedes the use of --fmt, --efmt, --mem, and --base to set the name of
124   the format to be dumped in ini mode.
125 * TANGLE: New options --length, --lowercase, --uppercase, --mixedcase,
126   --underline, --strict, --loose.  These affect the output generated by
127   tangle.
129 7.3.8 (11 October 2002)
130 * BibTeX: do not split \% in an output line.
131 * TeX: mention active extensions.
132 * TeX: change name/banner if extensions that break strict compatibility with
133   Knuth's TeX are active.
134 * web2c: splitup now uses a command-line switch to determine how after
135   how many lines it should split the sources.
137 7.3.7 (27 November 2001)
138 * Minor release, again incorporates internal changes to help Omega.
139 * Update of the fontmaps.
141 7.3.6 (18 November 2001)
142 * Minor release, again incorporates internal changes to help Omega.
143 * TeX, METAFONT, MetaPost:
144   New option --recorder which enables a filename recorder.  A file
145   with extension .fls is created which contains the names of the
146   files opened for reading or writing.
148 7.3.5 (10 November 2001)
149 * Minor release, incorporate many changes due to developments of Omega.
150   These are mainly internal.
152 7.3.4 (30 October 2001)
153 * Minor release, incorporates most of the features also in TeX-live 6,
154   which is known as release 7.3.3.1.
155 * TANGLE: As an extension, you can define parametric macros where '[' and ']'
156   delimit the argument.
157 * MFT: Support METAPOST sources.
158 * MPTO: Add -tex=program option.  Buffer is now configurable.
160 7.3.3 (5 August 2000)
161 * Minor release.
162 * METAFONT: Obey buf_size from texmf.cnf instead of using a hard-coded value.
164 7.3.2 (19 April 2000)
165 * Minor release containing bugfixes for 7.3.1.  Web2C 7.3.1 was not released
166   on CTAN, only in teTeX 1.0
167 * The TeX-live 5 CD contains Web2C 7.3.1x, which is based on the 7.3.1 release
168   and contains some changes that have yet to be merged into the main tree. In
169   particular, the code for "C-style" error messages and the code for source
170   specials has not been merged yet.
172 7.3.1 (30 May 1999)
173 * Minor release containing bugfixes for 7.3.  Web2C 7.3 was not released
174   on CTAN, only on the TeX-live 4 CD.
176 7.3 (26 March 1999)
177 * New upstream sources from Knuth.
178 * TeX, METAFONT, MetaPost:
179   (Re)introduction of TCX files.
180 * Increased capacity of several programs.
181 * Support for pdfeTeX added.
182 * Long-standing bugs in VFtoPL and TFtoPL, which led to corrupted TFM
183   files being generated, have been fixed.
185 7.2 (15 March 1998)
186 * New upstream version of MetaPost: 0.64.
187 * TeX, METAFONT, MetaPost:
188   Allow for more restrictions on the files written by \openout.
189 * TeX, METAFONT, MetaPost:
190   New option --interaction, which can be used to set batchmode, nonstopmode,
191   scrollmode, or errorstopmode.  Thus we can replace a construct like
192     tex '\batchmode \input foo'
193   with
194     tex --interaction=batchmode foo
195   and have a %&format line select the correct format.
196 * When %&format selects a format, the search paths are changed to conform
197   to that format.
198 * TeX, METAFONT, MetaPost:
199   During an "ini" run, the name of the format to be dumped can be set with
200   the --fmt/--efmt/--base/--mem options.
201 * web2c: Extensive support for building e-TeX, Omega, a PDFTeX.
202 * web2c: The manual pages are back.
204 7.1 (10 November 1997)
205 * Some MSDOS/Win32 support added to the sources.
206 * BibTeX: increased capacity.
207 * VPtoVF: Increased capacity.
208 * TeX, METAFONT, MetaPost:
209   - File foo.bar.tex results in \jobname foo.bar, hence foo.bar.{log,dvi,...}.
210     This as opposed to foo and foo.{log,dvi,...} which it how it used to be in
211     version 6.  In 7.0 situation was confusing, as the heuristics used would
212     sometimes result in the extension being stripped, sometimes not.
213 * TeX:
214   - The -extend-jobname option has been removed.
215   - Printing of non-ASCII characters in diagnostics, code by Bernd Raichle.
216   - All three of LF, CR, and CRLF are recognized end-of-line tokens.
217 * web2c:
218   - Some support for e-TeX added to convert.
220 7.0 (6 February 1997)
221 * Update from Knuth for tex, mf, dvitype, pltotf, vptovf, and tangle,
222   John Hobby's MetaPost (and support programs) included,
223   update from P. Breitenlohner to dvicopy 1.5 and patgen 2.3.
224 * Update for kpathsea 3.0.
225 * Texinfo manual written.
226 * Amiga, OS/2, Windows NT support in the sources.
227 * TeX:
228   - if -shell-escape or shell_escape in texmf.cnf is enabled,
229     \write18{str} passes str to system(3) for processing by sh.
230   - MLTeX extensions (\charsubdef, etc.) can be enabled at runtime.
231   - Many array sizes can be set dynamically, in texmf.cnf.
232   - MakeTeXTFM installed and enabled by default.
233   - IPC communications to an external program for incremental DVI reading.
234   - texfonts.map applies to TFM files, as originally intended.
235   - More than 256 fonts are allowed.
236   - DVI comment (with timestamp) can be overridden.
237   - tex.web's consistency checks on .fmt files restored.
238 * Metafont:
239   - A few array sizes can be set dynamically, in texmf.cnf.
240   - X11 support disabled by default; configure --with-x to enable it.
241   - MakeTeXMF enabled and installed by default.
242 * TeX, Metafont, MetaPost:
243   - If the first line of the main input file starts with %&, the rest of
244     the line is used as the fmt/base/mem file (if it can be found),
245     except that %&ini means initex/inimf/inimpost.
246   - One binary: initex/mf/mpost capabilities merged with virtex/mf/mpost.
247   - New option -progname sets program name independently of argv[0].
248   - Eight-bit filenames are output correctly in ^^ notation, instead of
249     always being simplified to ^^@.
250   - MakeTeX* scripts can be named and disabled via texmf.cnf.
251   - MakeTeX* scripts are silent if \batchmode is in effect.
252   - TEXMFINI environment variable checked for pool/fmt/base/mem lookups.
253   - \openout (TeX) and write (MP) by default will not write to files
254     whose names start with `.'.
255   - ``Small'' versions no longer supported without source hacking.
256   - Length bug regarding single non-ASCII characters in MF and MP fixed.
257 * BibTeX:
258   - Some arrays dynamically reallocated as needed, other sizes increased.
259   - Default behavior is verbose; new -terse option changes that.
260   - Statistics are written to the .blg file.
261   - Does not look at TEXINPUTS to find .bst files, but does check
262     TEXBIB (after BIBINPUTS).
263   - Does not interactively ask for the top-level .aux name.
264 * All programs:
265   - Supply default extensions and default output files.
266   - Support the standard --help and --version options.
267   - Filenames not arbitrarily restricted in length.
268   - Output written in the current directory, not the directory of
269     an input file. (Most interesting for tangle.)
270   - Times-Roman etc. work as font names, via texfonts.map and subsidiaries.
271 * dvitype prints decimal opcode numbers with --show-opcodes.
272 * bibtex and gftodvi never interactively ask for filenames;
273   dvitype and dvicopy do not enter interactive dialogues.
274 * mft looks in MFTINPUTS, not TEXINPUTS.
275 * Configuration:
276   - Optional features are enabled via configure --with-* and --enable-*
277     options. Run configure --help.
278   - There is no small TeX, Metafont, or MetaPost. If you want it, you'll
279     have to change the change files, #define SMALL* yourself, and do
280     whatever else is necessary yourself.
281 * Source hierarchy substantially simplified.
282 * Web2c:
283   - Support for ifndef...endifn, a la ifdef.
284   - Support for const expressions.
285   - Can generate ANSI code.
287 Version 6.1 (3 February 1994)
288 * foo.bar found before foo.tex (found before foo).
289 * configure links sun.c to sun-sunview.c if SUNWIN is defined.
290 * -DLONG_64_BITS is supplied automatically (if appropriate).
291 * Various changes for configure --srcdir.
292 * Sample MakeTeX* scripts included.
294 Version 6.0 (24 January 1994)
295 * Default paths changed.
296 * Update for TeX 3.1415, etc.
297 * Change to use the kpathsea library, a la dvipsk and xdvik.
299 * TeX's \openin command invokes MakeTeXTeX just like \input.
301 * TeX & Metafont:
302   - 16-byte values can be dumped, thus allowing native `long' on the DEC Alpha.
303   - But 32-bit integers are used if sharable format files are desired,
304     even on 64-bit machines.
305   - Interrupts are accepted when waiting for input.
306   
307 * Online output support in Metafont for Regis terminals and the NeXT.
308 * gftopk can handle characters with up to 100,000 rows.
309 * vftovp's -charcode-format=ascii works properly.
310 * patgen doesn't give bizarre numeric output where it should be text.
312 * configuration:
313   - -lX11 is used for OpenWindows.
314   - The MakeTeX... scripts are individually selectable by default, and
315     can always be invoked if certain environment variables are set.
316   - The subdirectory trick using st_nlink can be turned off.
318 * Makefiles:
319   - man/Makefile doesn't remove itself at `clean'.
320   - {tex,mf}/clean-tr[ia]p doesn't reinstall a {tex,mf}d.h with the test
321      constants.
322   - web2c/Makefile removes lex and yacc output at `clean'.
323   - mkdirchain invoked as an absolute filename.
325 * web2c:
326   - sync is no longer invoked; instead the Makefiles touch texd.h and
327     mfd.h after they are finished.
329 Version 5.851d (22 February 1993)
331 * A file `texfonts.map' allows arbitrary mapping of font names (as given
332   to, for instance, \font) to filenames.
334 * Metafont & TeX:
335   - If a .tex, .tfm, or .mf file can't be found, MakeTeX{TeX,TFM,MF} is
336     invoked before giving up, as in dvips' MakeTeXPK.
337   - Sharable format/base files load faster on LittleEndian machines.
338   - TEXMFOUTPUT is only used for those files which can't be written in
339     the current directory, instead of all files after the first such.
340     Its usage is also reflected in the `... written on ...' messages at
341     the end of the run.
342   - If the DISPLAY environment variable is set, Metafont assumes you are
343     running under X11 for the purposes of online output (instead of
344     relying on the TERM or MFTERM envvar).
345   - Checks for write errors on DVI/GF output.
346   - Unusual glue values no longer make TeX dump core on some systems.
348 * BibTeX:
349   - The cross-reference feature works as documented (I had foolishly
350     changed the default value of min_crossrefs to eliminate it).
351   - New option -min-crossrefs=<number> to change it dynamically.
352   - New option -verbose; without it, normal reportage is eliminated.
353   - Maximum number of .bib files increased to 100.
354   - Non-printable-ASCII characters in .bib files are preserved.
356 * TeXware:
357   - tftopl adds a default extension `.tfm' to the input file if necessary.
359 * web2c: 
360   - Unsigned types are used where possible to represent Pascal
361     subranges.  Among other things, this eliminates a system dependency
362     in creating format/base files (small_number was defined as `schar',
363     which varies between systems).
365 * configuration:
366   - Unpacks into web2c-<version> instead of src-<version>.*.
367   - site.h merged into lib/c-auto.h.in and ./Makefile.in.
368   - sed is used instead of patch to make the ``small'' change files.
369   - sed is used instead of ed to make the trip/trap files.
370   - The configure script looks in more directories for the X libraries
371     and include files, and is generated from the latest version of Autoconf.
372   - mfware and texware directories merged into the others.
373   - The web2c version is defined in one place, so system information can
374     be added to the banners more easily.
376 * Makefiles:
377   - Makefiles in subdirectories are created by configure.
378   - $(srcdir) (i.e., compiling in a different directory) is closer to working.
379   - Stamp files are not used at the top level, or for {tex,mf}/convert.
380   - New targets install-data and install-exec, to only install
381     architecture-(in)dependent files.
383 * PROBLEMS.W2C has some notes on compiling and using these programs
384   under DOS, contributed by melvin@math.psu.edu.
386 * The man pages have been significantly updated and improved by
387   beebe@math.utah.edu.
389 * The original web files haven't changed.
391 Release 4.893b:
392 * Include patches from Tim to web2c to turn off the verbose output,
393   unless -d is supplied to web2c.
394 * Change $(AR) in the MFwindow Makefile to `ar'.
395 * Try to get the base file from the program name in Metafont, as well in
396   TeX.  Implication: mf.script and tex.script are no longer supplied,
397   since a link to plain.{base,fmt} named {mf,tex}.{base,fmt} suffices. 
398   `make install' doesn't create these links, since they only need to be
399   done once.
400 * Move some stuff from site.h that should never be changed to a new
401   file, defaults.h. Add a new definition, SIGNAL_HANDLER_RETURN_TYPE, to
402   site.h, to get rid of the warnings in {tex,mf}/extra.c.
403 * Use a sed script, contributed by eggert@twinsun.com, instead of the
404   awk script, at the beginning of the pipeline.
405 * Fix an unsigned comparison problem in pltotf, that made cc produce
406   infinite ligature loops when converting trip.pl.
407 * Change threshold in Metafont, and f in tftopl, so broken C compilers
408   (like some versions of pcc) don't get confused.
409 * Port vftovp and vptovf. Move pktogf and pktype to fontutil.
410 * Allow more than 500 kern pairs in pltotf.
411 * Change the first parameter to {mf,extra}/extra.c to *filename from
412   filename[].
413 * Use a better hack for the mutually recursive procedures in pltotf et al.,
414   from Tor Lillqvist <tml@hemuli.atk.vtt.fi>.
416 Release 2.993+1.9 = 4.893a:
417 Sebastian contributed the updates to ctex.ch, tftopl.ch, and pltotf.ch. 
418 Karl did the cmf.ch update.
420 Release 3.0:
421 Brings everything up to the new 8-bit versions.
422 Almost every file has changed at least somewhat, so I'm not going to
423 list all the changes.  Here are some highlights:
424 * char is now 0..255 instead of 0..127 in *.defines.
425 * `packed' is no longer ignored as part of an identifier (e.g., `packed_trie').
426 * new Makefiles to make it easier to do the trip/trap test, and with all
427   the support programs integrated.
428 * ctex.ch has a hack to get around trie_op_hash being an array with a
429   negative lower bound.
430 * pltotf.ch has a hack to get around mutually recursive routines.