From d5c7399d5b5029f15a603a137e31238d5b46f5e0 Mon Sep 17 00:00:00 2001 From: Ole Tange Date: Sat, 22 Jan 2011 23:40:15 +0100 Subject: [PATCH] Released as 20110122 --- NEWS | 34 +++++++++++++++++ configure | 20 +++++----- configure.ac | 2 +- doc/FUTURE_IDEAS | 1 + doc/release_new_version | 7 +++- src/niceload | 2 +- src/parallel | 2 +- src/parallel.pod | 81 +++++++++++++++++++++++++++++++++++++++-- src/sql | 2 +- 9 files changed, 131 insertions(+), 20 deletions(-) diff --git a/NEWS b/NEWS index 0734d62b..d7b4812e 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,37 @@ +20110122 + +* --joblog makes a simple log of completed jobs. + +* -X now spreads arguments between job slots when reaching last + argument. Use -j1 to avoid this. + +* People on the email list have voted -j+0 to be the new default + instead of -j9. + +* First review in Polish. Thanks to Patryk Krawaczyński. + http://nfsec.pl/root/2458 + +* Review in Spanish (in print). + https://www.linux-magazine.es/issue/67/moreinfo.html + +* Review in English. Thanks to Brian Gough. + http://blogs.fsfe.org/bjg/2011/01/gnu-parallel-a-map-operator-for-the-command-line/ + +* Review in French. Thanks to Denis Dordoigne. + http://linuxfr.org/2010/12/29/27715.html + +* Review in Spanish. + http://gufete.net/index.php?entry=entry110116-200022 + +* Article with advanced recursive example. Thanks to Ruarí Ødegaard + http://my.opera.com/ruario/blog/2011/01/18/fun-with-gnu-parallel + +* Use case for memcache. + http://www.dctrwatson.com/2010/12/how-to-dump-memcache-keyvalue-pairs-fast/ + +* Bug fixes and man page updates. + + 20101222 * GNU niceload is now part of GNU Parallel. GNU niceload slows down a diff --git a/configure b/configure index a68799fc..0250d9ec 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.67 for parallel 20110119. +# Generated by GNU Autoconf 2.67 for parallel 20110122. # # Report bugs to . # @@ -551,8 +551,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='parallel' PACKAGE_TARNAME='parallel' -PACKAGE_VERSION='20110119' -PACKAGE_STRING='parallel 20110119' +PACKAGE_VERSION='20110122' +PACKAGE_STRING='parallel 20110122' PACKAGE_BUGREPORT='bug-parallel@gnu.org' PACKAGE_URL='' @@ -1168,7 +1168,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures parallel 20110119 to adapt to many kinds of systems. +\`configure' configures parallel 20110122 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1234,7 +1234,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of parallel 20110119:";; + short | recursive ) echo "Configuration of parallel 20110122:";; esac cat <<\_ACEOF @@ -1301,7 +1301,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -parallel configure 20110119 +parallel configure 20110122 generated by GNU Autoconf 2.67 Copyright (C) 2010 Free Software Foundation, Inc. @@ -1318,7 +1318,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by parallel $as_me 20110119, which was +It was created by parallel $as_me 20110122, which was generated by GNU Autoconf 2.67. Invocation command line was $ $0 $@ @@ -2133,7 +2133,7 @@ fi # Define the identity of the package. PACKAGE='parallel' - VERSION='20110119' + VERSION='20110122' cat >>confdefs.h <<_ACEOF @@ -2684,7 +2684,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by parallel $as_me 20110119, which was +This file was extended by parallel $as_me 20110122, which was generated by GNU Autoconf 2.67. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -2746,7 +2746,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -parallel config.status 20110119 +parallel config.status 20110122 configured by $0, generated by GNU Autoconf 2.67, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 9b91bffe..fb2b57df 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([parallel], [20110119], [bug-parallel@gnu.org]) +AC_INIT([parallel], [20110122], [bug-parallel@gnu.org]) AM_INIT_AUTOMAKE([-Wall -Werror foreign]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_FILES([ diff --git a/doc/FUTURE_IDEAS b/doc/FUTURE_IDEAS index f724ee59..04320b5b 100644 --- a/doc/FUTURE_IDEAS +++ b/doc/FUTURE_IDEAS @@ -1,3 +1,4 @@ +--block parallel: --joblog implemented. Testsuite missing. parallel: --spreadstdin prototype. Testsuite missing. diff --git a/doc/release_new_version b/doc/release_new_version index 44a5b343..722a861c 100644 --- a/doc/release_new_version +++ b/doc/release_new_version @@ -137,9 +137,9 @@ cc:Peter Simons , Sandro Cazzaniga , ryoichiro.suzuki@gmail.com,kerick@shiftedbit.net, Christian Faulhammer -Subject: GNU Parallel 2011XXXX released +Subject: GNU Parallel 20110122 released -GNU Parallel 2011XXXX has been released. It is available for +GNU Parallel 20110122 has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/ New in this release: @@ -167,6 +167,9 @@ New in this release: * Review in Spanish. http://gufete.net/index.php?entry=entry110116-200022 +* Article with advanced recursive example. Thanks to Ruarí Ødegaard + http://my.opera.com/ruario/blog/2011/01/18/fun-with-gnu-parallel + * Use case for memcache. http://www.dctrwatson.com/2010/12/how-to-dump-memcache-keyvalue-pairs-fast/ diff --git a/src/niceload b/src/niceload index 0a0085f1..36f7ac93 100755 --- a/src/niceload +++ b/src/niceload @@ -236,7 +236,7 @@ B(1), B(1) use strict; use Getopt::Long; $Global::progname="niceload"; -$Global::version = 20110119; +$Global::version = 20110122; Getopt::Long::Configure("bundling","require_order"); get_options_from_array(\@ARGV) || die_usage(); if($::opt_version) { diff --git a/src/parallel b/src/parallel index 34616886..aa8800da 100755 --- a/src/parallel +++ b/src/parallel @@ -313,7 +313,7 @@ sub get_options_from_array { sub parse_options { # Returns: N/A # Defaults: - $Global::version = 20110119; + $Global::version = 20110122; $Global::progname = 'parallel'; $Global::infinity = 2**31; $Global::debug = 0; diff --git a/src/parallel.pod b/src/parallel.pod index af0b9df9..8a992e92 100644 --- a/src/parallel.pod +++ b/src/parallel.pod @@ -243,6 +243,22 @@ See also: B<--fg> Implies B<--semaphore>. +=item B<--block> I (beta testing) + +=item B<--block-size> I (beta testing) + +Size of block in bytes. The size can be postfixed with K, M, G, or T +which would multiply the size with 1024, 1048576, 1073741824, or +1099511627776 respectively. + +GNU B tries to meet the block size but can be off by the +length of one record. + +I defaults to 1M. + +See B<--pipe> for use of this. + + =item B<--cleanup> Remove transferred files. B<--cleanup> will remove the transferred files @@ -537,6 +553,43 @@ See also B<-X> for context replace. If in doubt use B<-X> as that will most likely do what is needed. +=item B<--output-as-files> (beta testing) + +=item B<--outputasfiles> (beta testing) + +=item B<--files> (beta testing) + +Instead of printing the output to stdout (standard output) the output +of each job is saved in a file and the filename is then printed. + + +=item B<--pipe> (beta testing) + +=item B<--spreadstdin> (beta testing) + +Spread input to jobs on stdin. Read a block of data from stdin +(standard input) and give one block of data as input to one job. + +The block size is determined by B<--block>. The regular expressions +B<--recstart> and B<--recend> tell GNU B how a record starts +and/or ends. The block read will have the final partial record removed +before the block is passed on to the job. The partial record will be +prepended to next block. + +If B<--recstart> is given this will be used to split at record start. + +If B<--recend> is given this will be used to split at record end. + +If both B<--recstart> and B<--recend> are given both will have to +match to find a split position. + +If neither B<--recstart> nor B<--recend> are given B<--recend> +defaults to '\n'. To have no record separator use B<--recend "">. + +If B<--output-as-files> is set the output will not be the output of +the jobs but a list of files containing the output of the jobs run. + + =item B<--progress> Show progress of computations. List the computers involved in the task @@ -646,6 +699,24 @@ default. If the stdin (standard input) only contains whitespace, do not run the command. +=item B<--recstart> I (beta testing) + +=item B<--recend> I (beta testing) + +If B<--recstart> is given I will be used to split at record start. + +If B<--recend> is given I will be used to split at record end. + +If both B<--recstart> and B<--recend> are given the regular expression +II will have to match to find a split +position. + +If neither B<--recstart> nor B<--recend> are given B<--recend> +defaults to '\n'. To have no record separator use B<--recend "">. + +B<--recstart> and B<--recend> used with B<--pipe>. + + =item B<--retries> I (beta testing) If a job fails, retry it on another computer. Do this I times. If @@ -781,6 +852,9 @@ The remote host must have GNU B installed. B<--sshlogin> is known to cause problems with B<-m> and B<-X>. +B<--sshlogin> is often used with B<--transfer>, B<--return>, +B<--cleanup>, and B<--trc>. + =item B<--sshloginfile> I @@ -2487,17 +2561,16 @@ Copyright (C) 2007-10-18 Ole Tange, http://ole.tange.dk Copyright (C) 2008,2009,2010 Ole Tange, http://ole.tange.dk -Copyright (C) 2010 Ole Tange, http://ole.tange.dk and Free Software -Foundation, Inc. +Copyright (C) 2010,2011 Ole Tange, http://ole.tange.dk and Free +Software Foundation, Inc. Parts of the manual concerning B compatibility is inspired by the manual of B from GNU findutils 4.4.2. - =head1 LICENSE -Copyright (C) 2007,2008,2009,2010 Free Software Foundation, Inc. +Copyright (C) 2007,2008,2009,2010,2011 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/src/sql b/src/sql index f714a81f..220efe5c 100755 --- a/src/sql +++ b/src/sql @@ -531,7 +531,7 @@ $Global::Initfile && unlink $Global::Initfile; exit ($err); sub parse_options { - $Global::version = 20110119; + $Global::version = 20110122; $Global::progname = 'sql'; # This must be done first as this may exec myself