]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
* NEWS: sort no longer compresses temporaries by default.
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 24 Feb 2007 11:24:27 +0000 (12:24 +0100)
committerJim Meyering <jim@meyering.net>
Sat, 24 Feb 2007 11:24:27 +0000 (12:24 +0100)
* bootstrap.conf: Remove findprog.
* doc/coreutils.texi (sort invocation): The default is to not
compress.  Don't treat "" specially.
* src/sort.c: Don't include findprog.h.
(create_temp): Compress only if the user specified --compress-program.
* tests/misc/sort-compress: Adjusts tests to match new behavior.

ChangeLog
NEWS
bootstrap.conf
doc/coreutils.texi
src/sort.c
tests/misc/sort-compress

index d9163e88ad5021fce2b6733a9054ae7f697b7263..9a483f8764f83e259f01078618090c382691b44d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * NEWS: sort no longer compresses temporaries by default.
+       * bootstrap.conf: Remove findprog.
+       * doc/coreutils.texi (sort invocation): The default is to not
+       compress.  Don't treat "" specially.
+       * src/sort.c: Don't include findprog.h.
+       (create_temp): Compress only if the user specified --compress-program.
+       * tests/misc/sort-compress: Adjusts tests to match new behavior.
+
 2007-02-24  Jim Meyering  <jim@meyering.net>
 
        Avoid a shell syntax error, when building with an inadequate Perl.
diff --git a/NEWS b/NEWS
index a09987701ab56cea13045a5c4e31a34488c47545..96ebd8243d5873ee81753ffbbf60cc89ed181cb6 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -44,10 +44,9 @@ GNU coreutils NEWS                                    -*- outline -*-
 
 ** New features
 
-  By default, sort usually compresses each temporary file it writes.
+  sort's new --compress-program=PROG option specifies a compression
+  program to use when writing and reading temporary files.
   This can help save both time and disk space when sorting large inputs.
-  The default compression program is gzip, but this can be overridden
-  with sort's new --compress-program=PROG option.
 
 ** New features
 
index e94478a075b5f15af175f024bcbe4a45e7121442..c54b03599ba66851bd5b57af53d55a9c78527a4f 100644 (file)
@@ -44,7 +44,7 @@ gnulib_modules="
        config-h configmake
        closeout cycle-check d-ino d-type diacrit dirfd dirname dup2
        error euidaccess exclude exitfail fchdir fcntl fcntl-safer fdl
-       file-type fileblocks filemode filenamecat findprog fnmatch-gnu
+       file-type fileblocks filemode filenamecat fnmatch-gnu
        fopen-safer
        fprintftime fsusage ftruncate fts getdate getgroups gethrxtime
        getline getloadavg getndelim2 getopt getpagesize getpass-gnu
index 04c1b4e1e064b0dd86743298f02517ff708369d4..99412e425ccf16fcefe0b68f78c59f256def2eaf 100644 (file)
@@ -3634,9 +3634,7 @@ Other options are:
 @table @samp
 
 @item --compress-program=@var{prog}
-If @var{prog} is not the empty string, compress any temporary files
-with the program @var{prog} rather than with the default compression
-method.  The default is currently @command{gzip} but this may change.
+Compress any temporary files with the program @var{prog}.
 
 With no arguments, @var{prog} must compress standard input to standard
 output, and when given the @option{-d} option it must decompress
@@ -3647,9 +3645,6 @@ Terminate with an error if @var{prog} exits with nonzero status.
 Whitespace and the backslash character should not appear in
 @var{prog}; they are reserved for future use.
 
-If @var{prog} is the empty string, do not compress temporary
-files.
-
 @item -k @var{pos1}[,@var{pos2}]
 @itemx --key=@var{pos1}[,@var{pos2}]
 @opindex -k
index 6a7de9c52e127dbe866db34354dd3c32dd04cfdf..58ca66a2e3c3374bdcddb83ba47a13aba44d5c03 100644 (file)
@@ -30,7 +30,6 @@
 #include "system.h"
 #include "argmatch.h"
 #include "error.h"
-#include "findprog.h"
 #include "hard-locale.h"
 #include "hash.h"
 #include "inttostr.h"
@@ -847,14 +846,7 @@ create_temp (FILE **pfp, pid_t *ppid)
   struct tempnode *node = create_temp_file (&tempfd);
   char *name = node->name;
 
-  if (! compress_program)
-    {
-      static char const default_compress_program[] = "gzip";
-      char const *prog = find_in_path (default_compress_program);
-      compress_program = (prog == default_compress_program ? "" : prog);
-    }
-
-  if (*compress_program)
+  if (compress_program)
     {
       int pipefds[2];
 
@@ -875,8 +867,7 @@ create_temp (FILE **pfp, pid_t *ppid)
          dup2_or_die (pipefds[0], STDIN_FILENO);
          close (pipefds[0]);
 
-         if (execlp (compress_program, compress_program,
-                     (char *) NULL) < 0)
+         if (execlp (compress_program, compress_program, (char *) NULL) < 0)
            error (SORT_FAILURE, errno, _("couldn't execute %s"),
                   compress_program);
        }
@@ -925,8 +916,7 @@ open_temp (const char *name, pid_t pid)
       dup2_or_die (pipefds[1], STDOUT_FILENO);
       close (pipefds[1]);
 
-      if (execlp (compress_program, compress_program,
-                 "-d", (char *) NULL) < 0)
+      if (execlp (compress_program, compress_program, "-d", (char *) NULL) < 0)
        error (SORT_FAILURE, errno, _("couldn't execute %s -d"),
               compress_program);
     }
index b0f4dd7033d6c3db5dcf52c336d60f95350cdd16..0cafb2e9f0f7d1b1f71af2f92fe10418ac0d6c1d 100755 (executable)
@@ -57,14 +57,14 @@ EOF
 chmod +x gzip
 
 # This will find our new gzip in PATH
-PATH=.:$PATH sort -S 1k in > out || fail=1
+PATH=.:$PATH sort -S 1k --compress-program=gzip in > out || fail=1
 cmp exp out || fail=1
 test $fail = 1 && diff out exp 2> /dev/null
 test -f ok || fail=1
 rm -f ok
 
-# This is to make sure we can disable compression
-PATH=.:$PATH sort --compress-program= -S 1k in > out || fail=1
+# This is to make sure it works with no compression.
+PATH=.:$PATH sort -S 1k in > out || fail=1
 cmp exp out || fail=1
 test $fail = 1 && diff out exp 2> /dev/null
 test -f ok && fail=1