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