Subject: Changes for cvs-1.11.5, diffutils-2.8.1, grep-2.5, texinfo-4.3
To: None <>
From: Thomas Klausner <>
List: current-users
Date: 01/27/2003 11:19:25

On request, I'm sending excerpts from the NEWS files of the
latest imports I did.


Changes since 1.11.4:

* Fixed a security hole by which users with read only access could gain
write access.  The Common Vulnerabilities and Exposures project (
has assigned the name CAN-2003-0015 to this issue.  See
<> for more

Changes from 1.11.3 to 1.11.4:

* Some minor changes to allow the code to compile on Windows platforms.

Changes from 1.11.2 to 1.11.3:

* When waiting for another user's lock, the message timestamps are now
in UTC rather than the server's local time.

* The options.h file is no longer used.  This fixes a bug that occurred when
1.11.2 was compiled on Windows platforms.

* We've standardized on Automake version 1.6.3 and Autoconf version 2.53.
They are cleaner, less bug prone, and will hopfully allow me to start updating to use Autotest and Autoshell.  Again, this should only really affect
developers.  See the section of the INSTALL file about using the autotools if
you are compiling CVS yourself.

diffutils [the cmp-only changes are not mentioned since we use our
own implementation of cmp]

User-visible changes in version 2.8.1:

* Documentation fixes.

User-visible changes in version 2.8:

* cmp and diff now conform to POSIX 1003.1-2001 (IEEE Std 1003.1-2001)
  if the underlying system conforms to POSIX and if the _POSIX2_VERSION
  environment variable is set to 200112.  Conformance removes support
  for `diff -NUM', where NUM is a number.  Use -C NUM or -U NUM instead.
* diff uses ISO 8601 style time stamps for output times (e.g. "2001-11-23
  16:44:36.875702460 -0800") unless in the C or POSIX locale and the
  -c style is specified.
* diff's -I and -F options use the regexp syntax of grep, not of Emacs.
* diff now accepts multiple context arguments, and uses their maximum value.
* New diff and sdiff options:
  -E  --ignore-tab-expansion
* New diff options:
  --from-file=FILE, --to-file=FILE
* New diff3 and sdiff option:
* The following diff options are still accepted, but are no longer documented.
  They may be withdrawn in future releases.
  -h (omit; it has no effect)
  -H (use --speed-large-files instead)
  -L (use --label instead)
  -P (use --unidirectional-new-file instead)
  --inhibit-hunk-merge (omit; it has no effect)
* Recursive diffs now sort file names according to the LC_COLLATE locale
  category if possible, instead of using native byte comparison.
* Diff printf specs can now use the "0" and "'" flags.
* The new sdiff interactive command `ed' precedes each version with a header.
* On 64-bit hosts, files larger than 2 GB can be compared.
* Some internationalization support has been added, but multibyte locales
  are still not completely supported yet.
* Some diagnostics have been reworded slightly for consistency.
  Also, `diff -D FOO' now outputs `/* ! FOO */' instead of `/* not FOO */'.
* The `patch' part of the manual now describes `patch' version 2.5.4.
* Man pages are now distributed and installed.


Version 2.5
  - The new option --label allows to specify a different name for input
    from stdin. See the man or info pages for details.

  - The internal lib/getopt* files are no longer used on systems providing
    getopt functionality in their libc (e.g. glibc 2.2.x).
    If you need the old getopt files, use --with-included-getopt.

  - The new option --only-matching (-o) will print only the part of matching
    lines that matches the pattern. This is useful, for example, to extract
    IP addresses from log files.

  - i18n bug fixed ([A-Z0-9] wouldn't match A in locales other than C on
    systems using recent glibc builds

  - GNU grep can now be built with autoconf 2.52.

  - The new option --devices controls how grep handles device files. Its usage
    is analogous to --directories.

  - The new option --line-buffered fflush on everyline.  There is a noticeable
    slow down when forcing line buffering.

  - Back references  are now local to the regex.
    grep -e '\(a\)\1' -e '\(b\)\1'
    The last backref \1 in the second expression refer to \(b\)

  - The new option --include=PATTERN will only search matching files
    when recursing in directories

  - The new option --exclude=PATTERN will skip matching files when
    recursing in directories.

  - The new option --color will use the environment variable GREP_COLOR
    (default is red) to highlight the matching string.
    --color takes an optional argument specifying when to colorize a line:
      --color=always, --color=tty, --color=never

  - The following changes are for POSIX.2 conformance:

    . The -q or --quiet or --silent option now causes grep to exit
      with zero status when a input line is selected, even if an error
      also occurs.

    . The -s or --no-messages option no longer affects the exit status.

    . Bracket regular expressions like [a-z] are now locale-dependent.
      For example, many locales sort characters in dictionary order,
      and in these locales the regular expression [a-d] is not
      equivalent to [abcd]; it might be equivalent to [aBbCcDd], for
      example.  To obtain the traditional interpretation of bracket
      expressions, you can use the C locale by setting the LC_ALL
      environment variable to the value "C".

  - The -C or --context option now requires an argument, partly for
    consistency, and partly because POSIX.2 recommends against
    optional arguments.

  - The new -P or --perl-regexp option tells grep to interpert the pattern as
    a Perl regular expression.

  - The new option --max-count=num makes grep stop reading a file after num
    matching lines.
    New option -m; equivalent to --max-count.

  - Translations for bg, ca, da, nb and tr have been added.

Version 2.4.2

  - Added more check in configure to default the grep-${version}/src/regex.c
    instead of the one in GNU Lib C.

Version 2.4.1

  - If the final byte of an input file is not a newline, grep now silently
    supplies one.

  - The new option --binary-files=TYPE makes grep assume that a binary input
    file is of type TYPE.
    --binary-files='binary' (the default) outputs a 1-line summary of matches.
    --binary-files='without-match' assumes binary files do not match.
    --binary-files='text' treats binary files as text
	(equivalent to the -a or --text option).

  - New option -I; equivalent to --binary-files='without-match'.



As of version 4.2, Texinfo has a new command @copying to define the
copyright and copying permissions for a manual.  It's important to
switch to using it as soon as possible (as in your next release),
because the historical method of doing copyright permissions using
@ifinfo failed to output copyright information in the HTML (or XML)
formats.  The manual has detailed explanations and examples.  For
convenience, here's a url to one of the relevant sections:


4.3 (14 November 2002)
* Language:
  . new command @tie{} to do a real tie (unbreakable interword space).
* makeinfo:
  . html output for @defun and friends now has font changes.
  . html output has some class attributes.
* texinfo.tex:
  . new Italian translations, txi-it.tex.
  . pdf bookmarks for unnumbered sections work.
  . type name for @defun and friends no longer extends into margin.
* info:
  . automatic-footnotes now off by default, for emacs compatibility.
  . crash when MALLOC_CHECK_=2 fixed.
* install-info:
  . new option --infodir synonym for --info-dir, for compatibility with
    the Debian install-info.
  . support for bzip2-compressed files.
* texindex:
  . omit initial if the entire index is under one characters.
* Distribution:
 . development sources now available under CVS, see
 . Turkish message translation.
 . gettext 0.11.5, autoconf 2.54, automake 1.7.1.

4.2 (1 April 2002)
* Language:
  . new command @copying to define copying permissions.  See above.
  . new conditionals @ifplaintext, @ifnotplaintext for the plain text
    (--no-headers) output format.
  . new command @\ to produce literal \ inside @math, since \ by itself
    no longer works.
* makeinfo:
  . emit accesskey attributes for keyboard shortcuts to menu items.
  . @{even,every,odd}{footing,header} are ignored by makeinfo now, so
    they no longer need to be enclosed in @iftex.
* texinfo.tex:
  . bug fix for pdf-format table of contents.
* info:
  . bug fixes for -R (--raw-escapes).
  . --help shows short option names.
* Distribution:
  . the doc.c, funs.h, and key.c files in info/ are no longer generated
    at make time, to appease Automake's make distcheck.
  . gettext 0.11.1, autoconf 2.53, automake 1.6 (with install-info kludge).

4.1 (4 March 2002)
* Language:
  . new commands @verbatim and @verb for printing verbatim inserts.
  . new command @verbatiminclude for verbatim include of files.
  . new environment @documentdescription for defining the HTML description.
  . new command @afivepaper for the A5 paper size.
* makeinfo:
  . supports xml and docbook output.
  . supports HTML splitting by node, which is now the default.
  . new option --split-size to control maximum size of split info files.
* info:
  . user-specified key bindings supported.
  . ANSI escape sequences (as produced by groff) removed from man output
    by default; use --raw-escapes to let them through if your terminal
    supports them.
* texinfo.tex:
  . @math implies @tex, so all the usual plain TeX math is supported.
  . smaller fonts for @smallexample, in all page sizes.
  . improvements in the PDF support.
* texi2dvi:
  . new option -o to explicitly specify output filename.
* Distribution:
  . switch to GNU Free Documentation License (
  . update to GNU gettext 0.11, autoconf 2.52, and automake 1.5.
  . Danish, Swedish, and Hebrew message translations.