1170754SdelphijVersion 2.8.7 contains no user-visible changes.
2170754Sdelphij
3170754SdelphijUser-visible changes in version 2.8.6:
4170754Sdelphij
5170754Sdelphij* New diff3 option --strip-trailing-cr.
6170754Sdelphij
7170754Sdelphij* With -N and -P, inaccessible empty regular files (the kind of files
8170754Sdelphij  that 'patch' creates to indicate nonexistent backups) are now
9170754Sdelphij  treated as nonexistent when they are in the 'backup' file position.
10170754Sdelphij
11170754Sdelphij* If multiple SKIP values are given to cmp, e.g., `cmp -i 10 -i 20',
12170754Sdelphij  cmp now uses the maximal value instead of the last one.
13170754Sdelphij
14170754Sdelphij* diff now omits the ".000000000" on hosts that do not support
15170754Sdelphij  fractional time stamps.
16170754Sdelphij
17170754SdelphijVersion 2.8.5 was not publicly released.
18170754Sdelphij
19170754SdelphijUser-visible changes in version 2.8.4:
20170754Sdelphij
21170754Sdelphij* Diff now simply prints "Files A and B differ" instead of "Binary
22170754Sdelphij  files A and B differ".  The message is output if either A or B
23170754Sdelphij  appears to be a binary file, and the old wording was misleading
24170754Sdelphij  because it implied that both files are binary, which is not
25170754Sdelphij  necessarily the case.
26170754Sdelphij
27170754SdelphijUser-visible changes in version 2.8.3:
28170754Sdelphij
29170754Sdelphij* New locale: en_US.
30170754Sdelphij
31170754SdelphijUser-visible changes in version 2.8.2:
32170754Sdelphij
33170754Sdelphij* New diff and sdiff option:
34170754Sdelphij  --tabsize=COLUMNS
35170754Sdelphij* If --ignore-space-change or --ignore-all-space is also specified,
36170754Sdelphij  --ignore-blank-lines now considers lines to be empty if they contain
37170754Sdelphij  only white space.
38170754Sdelphij* More platforms now handle multibyte characters correctly when
39170754Sdelphij  excluding files by name (diff -x and -X).
40170754Sdelphij* New locales: hu, pt_BR.
41170754Sdelphij
42170754SdelphijUser-visible changes in version 2.8.1:
43170754Sdelphij
44170754Sdelphij* Documentation fixes.
45170754Sdelphij
46170754SdelphijUser-visible changes in version 2.8:
47170754Sdelphij
48170754Sdelphij* cmp and diff now conform to POSIX 1003.1-2001 (IEEE Std 1003.1-2001)
49170754Sdelphij  if the underlying system conforms to POSIX and if the _POSIX2_VERSION
50170754Sdelphij  environment variable is set to 200112.  Conformance removes support
51170754Sdelphij  for `diff -NUM', where NUM is a number.  Use -C NUM or -U NUM instead.
52170754Sdelphij* cmp now supports trailing operands SKIP1 and SKIP2, like BSD cmp.
53170754Sdelphij* cmp -i or --ignore-initial now accepts SKIP1:SKIP2 option value.
54170754Sdelphij* New cmp option: -n or --bytes.
55170754Sdelphij* cmp's old -c or --print-chars option has been renamed;
56170754Sdelphij  use -b or --print-bytes instead.
57170754Sdelphij* cmp now outputs "byte" rather than "char" outside the POSIX locale.
58170754Sdelphij* cmp -l's index column width now adjusts to fit larger (or smaller) files.
59170754Sdelphij* cmp -l -s and cmp -s -l are not allowed.  Use cmp -s or cmp -l instead.
60170754Sdelphij* diff uses ISO 8601 style time stamps for output times (e.g. "2001-11-23
61170754Sdelphij  16:44:36.875702460 -0800") unless in the C or POSIX locale and the
62170754Sdelphij  -c style is specified.
63170754Sdelphij* diff's -I and -F options use the regexp syntax of grep, not of Emacs.
64170754Sdelphij* diff now accepts multiple context arguments, and uses their maximum value.
65170754Sdelphij* New diff and sdiff options:
66170754Sdelphij  -E  --ignore-tab-expansion
67170754Sdelphij  --strip-trailing-cr
68170754Sdelphij* New diff options:
69170754Sdelphij  --from-file=FILE, --to-file=FILE
70170754Sdelphij  --ignore-file-name-case
71170754Sdelphij  --no-ignore-file-name-case
72170754Sdelphij* New diff3 and sdiff option:
73170754Sdelphij  --diff-program=PROGRAM
74170754Sdelphij* The following diff options are still accepted, but are no longer documented.
75170754Sdelphij  They may be withdrawn in future releases.
76170754Sdelphij  -h (omit; it has no effect)
77170754Sdelphij  -H (use --speed-large-files instead)
78170754Sdelphij  -L (use --label instead)
79170754Sdelphij  -P (use --unidirectional-new-file instead)
80170754Sdelphij  --inhibit-hunk-merge (omit; it has no effect)
81170754Sdelphij* Recursive diffs now sort file names according to the LC_COLLATE locale
82170754Sdelphij  category if possible, instead of using native byte comparison.
83170754Sdelphij* Recursive diffs now detect and report directory loops.
84170754Sdelphij* Diff printf specs can now use the "0" and "'" flags.
85170754Sdelphij* The new sdiff interactive command `ed' precedes each version with a header.
86170754Sdelphij* On 64-bit hosts, files larger than 2 GB can be compared.
87170754Sdelphij* Some internationalization support has been added, but multibyte locales
88170754Sdelphij  are still not completely supported yet.
89170754Sdelphij* Some diagnostics have been reworded slightly for consistency.
90170754Sdelphij  Also, `diff -D FOO' now outputs `/* ! FOO */' instead of `/* not FOO */'.
91170754Sdelphij* The `patch' part of the manual now describes `patch' version 2.5.4.
92170754Sdelphij* Man pages are now distributed and installed.
93170754Sdelphij* There is support for DJGPP; see the 'ms' subdirectory and the files
94170754Sdelphij  m4/dos.m4 and */setmode.*.
95170754Sdelphij
96170754Sdelphij
9730839SacheUser-visible changes in version 2.7:
9830839Sache
99170754Sdelphij* New diff option: --binary (useful only on non-POSIX hosts)
10030839Sache* diff -b and -w now ignore line incompleteness; -B no longer does this.
10130839Sache* cmp -c now uses locale to decide which output characters to quote.
10230839Sache* Help and version messages are reorganized.
10330839Sache
10430839Sache
10530839SacheUser-visible changes in version 2.6:
10630839Sache
10730839Sache* New cmp, diff, diff3, sdiff option: --help
10830839Sache* A new heuristic for diff greatly reduces the time needed to compare
10930839Sache  large input files that contain many differences.
11030839Sache* Partly as a result, GNU diff's output is not exactly the same as before.
11130839Sache  Usually it is a bit smaller, but sometimes it is a bit larger.
11230839Sache
11330839Sache
11430839SacheUser-visible changes in version 2.5:
11530839Sache
11630839Sache* New cmp option: -v --version
11730839Sache
11830839Sache
11930839SacheUser-visible changes in version 2.4:
12030839Sache
12130839Sache* New cmp option: --ignore-initial=BYTES
12230839Sache* New diff3 option: -T --initial-tab
12330839Sache* New diff option: --line-format=FORMAT
12430839Sache* New diff group format specifications:
12530839Sache  <PRINTF_SPEC>[eflmnEFLMN]
12630839Sache      A printf spec followed by one of the following letters
12730839Sache      causes the integer corresponding to that letter to be
12830839Sache      printed according to the printf specification.
12930839Sache      E.g. `%5df' prints the number of the first line in the
13030839Sache      group in the old file using the "%5d" format.
13130839Sache	e: line number just before the group in old file; equals f - 1
13230839Sache	f: first line number in group in the old file
13330839Sache	l: last line number in group in the old file
13430839Sache	m: line number just after the group in old file; equals l + 1
13530839Sache	n: number of lines in group in the old file; equals l - f + 1
13630839Sache	E, F, L, M, N: likewise, for lines in the new file
13730839Sache  %(A=B?T:E)
13830839Sache      If A equals B then T else E.  A and B are each either a decimal
13930839Sache      constant or a single letter interpreted as above.  T and E are
14030839Sache      arbitrary format strings.  This format spec is equivalent to T if
14130839Sache      A's value equals B's; otherwise it is equivalent to E.  For
14230839Sache      example, `%(N=0?no:%dN) line%(N=1?:s)' is equivalent to `no lines'
14330839Sache      if N (the number of lines in the group in the the new file) is 0,
14430839Sache      to `1 line' if N is 1, and to `%dN lines' otherwise.
14530839Sache  %c'C'
14630839Sache      where C is a single character, stands for the character C.  C may not
14730839Sache      be a backslash or an apostrophe.  E.g. %c':' stands for a colon.
14830839Sache  %c'\O'
14930839Sache      where O is a string of 1, 2, or 3 octal digits, stands for the
15030839Sache      character with octal code O.  E.g. %c'\0' stands for a null character.
15130839Sache* New diff line format specifications:
15230839Sache  <PRINTF_SPEC>n
15330839Sache      The line number, printed with <PRINTF_SPEC>.
15430839Sache      E.g. `%5dn' prints the line number with a "%5d" format.
15530839Sache  %c'C'
15630839Sache  %c'\O'
15730839Sache      The character C, or with octal code O, as above.
15830839Sache* Supported <PRINTF_SPEC>s have the same meaning as with printf, but must
15930839Sache  match the extended regular expression %-*[0-9]*(\.[0-9]*)?[doxX].
16030839Sache* The format spec %0 introduced in version 2.1 has been removed, since it
16130839Sache  is incompatible with printf specs like %02d.  To represent a null char,
16230839Sache  use %c'\0' instead.
163170754Sdelphij* cmp and diff now conform to POSIX 1003.2-1992 (ISO/IEC 9945-2:1993)
164170754Sdelphij  if the underlying system conforms to POSIX:
16530839Sache  - Some messages' wordings are changed in minor ways.
16630839Sache  - ``White space'' is now whatever C's `isspace' says it is.
16730839Sache  - When comparing directories, if `diff' finds a file that is not a regular
16830839Sache    file or a directory, it reports the file's type instead of diffing it.
16930839Sache    (As usual, it follows symbolic links first.)
17030839Sache  - When signaled, sdiff exits with the signal's status, not with status 2.
17130839Sache* Now portable to hosts where int, long, pointer, etc. are not all the same
17230839Sache  size.
17330839Sache* `cmp - -' now works like `diff - -'.
17430839Sache
17530839Sache
17630839SacheUser-visible changes in version 2.3:
17730839Sache
17830839Sache* New diff option: --horizon-lines=lines
17930839Sache
18030839Sache
18130839SacheUser-visible changes in version 2.1:
18230839Sache
18330839Sache* New diff options:
18430839Sache  --{old,new,unchanged}-line-format='format'
18530839Sache  --{old,new,unchanged,changed}-group-format='format'
18630839Sache  -U
18730839Sache* New diff3 option:
18830839Sache  -A --show-all
18930839Sache* diff3 -m now defaults to -A, not -E.
19030839Sache* diff3 now takes up to three -L or --label options, not just two.
19130839Sache  If just two options are given, they refer to the first two input files,
19230839Sache  not the first and third input files.
19330839Sache* sdiff and diff -y handle incomplete lines.
19430839Sache
19530839Sache
19630839SacheUser-visible changes in version 2.0:
19730839Sache
19830839Sache* Add sdiff and cmp programs.
19930839Sache* Add Texinfo documentation.
20030839Sache* Add configure script.
20130839Sache* Improve diff performance.
20230839Sache* New diff options:
20330839Sache-x --exclude
20430839Sache-X --exclude-from
20530839Sache-P --unidirectional-new-file
20630839Sache-W --width
20730839Sache-y --side-by-side
20830839Sache--left-column
20930839Sache--sdiff-merge-assist
21030839Sache--suppress-common-lines
21130839Sache* diff options renamed:
21230839Sache--label renamed from --file-label
21330839Sache--forward-ed renamed from --reversed-ed
21430839Sache--paginate renamed from --print
21530839Sache--entire-new-file renamed from --entire-new-files
21630839Sache--new-file renamed from --new-files
21730839Sache--all-text removed
21830839Sache* New diff3 options:
21930839Sache-v --version
22030839Sache* Add long-named equivalents for other diff3 options.
22130839Sache* diff options -F (--show-function-line) and -I (--ignore-matching-lines)
22230839Sache  can now be given more than once.
223170754Sdelphij
224170754Sdelphij
225170754Sdelphij
226170754SdelphijCopyright (C) 1993, 1994, 1998, 2001, 2002, 2004 Free Software
227170754SdelphijFoundation, Inc.
228170754Sdelphij
229170754SdelphijThis file is part of GNU Diffutils.
230170754Sdelphij
231170754SdelphijThis program is free software; you can redistribute it and/or modify
232170754Sdelphijit under the terms of the GNU General Public License as published by
233170754Sdelphijthe Free Software Foundation; either version 2, or (at your option)
234170754Sdelphijany later version.
235170754Sdelphij
236170754SdelphijThis program is distributed in the hope that they will be useful,
237170754Sdelphijbut WITHOUT ANY WARRANTY; without even the implied warranty of
238170754SdelphijMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
239170754SdelphijGNU General Public License for more details.
240170754Sdelphij
241170754SdelphijYou should have received a copy of the GNU General Public License
242170754Sdelphijalong with this program; see the file COPYING.  If not, write to
243170754Sdelphijthe Free Software Foundation, Inc., 59 Temple Place - Suite 330,
244170754SdelphijBoston, MA 02111-1307, USA.
245