Released as 2011-02-05 FOSDEM

This commit is contained in:
Ole Tange 2011-02-17 17:23:38 +01:00
parent ad61df30f0
commit 9cc892faf2
14 changed files with 90 additions and 76 deletions

53
NEWS
View file

@ -1,3 +1,56 @@
20110205
* --pipe splits piped data into blocks. Each block is piped to a
program for processing. The piping and the programs will be run in
parallel. Useful if the data you want to process is data for a
program and not arguments.
* --blocksize sets the blocksize in bytes for --pipe. The blocksize is
approximate. It can deviate as much as the size of one record.
Default is 1M.
* --recstart sets the string matching the start of a
record. Default is "".
* --recend sets the string matching the end of a
record. Default is '\n'. To specify none use --recend "".
If both --recstart and --recend are set, the end of a record must be
followed immediately by a start of a record. This is useful if
either recend or recstart can occur in the middle of a record.
* --remove-rec-sep removes the string matched by --recstart and
--recend.
* --regexp will make GNU Parallel treat --recstart and --recend as
regular expressions.
* --output-as-files will put the output of the programs into files and
instead of giving the output GNU Parallel will output the name of
these files.
* -N if used with --pipe sets the number of records to read.
* New video showing --pipe at
http://www.youtube.com/watch?v=1ntxT-47VPA
* GNU Parallel was presented at FOSDEM.
* Article in USENIX Magazine ;login: (print)
http://www.usenix.org/publications/login/2011-02/
* GNU Parallel is now on ohloh.net. Thanks to Wim Muskee.
https://www.ohloh.net/p/gnu-parallel
* Advanced recursive example. Thanks to Ruarí Ødegaard.
http://my.opera.com/ruario/blog/2011/01/24/editing-debian-packages-more-fun-with-gnu
* Small example on using GNU Parallel through 0install (German).
http://forum.ubuntuusers.de/topic/gnu-parallel-mit-zero-install-kurzinfo-kein-wi/
* Bug fixes and man page updates.
20110122 20110122
* --joblog makes a simple log of completed jobs. * --joblog makes a simple log of completed jobs.

20
configure vendored
View file

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.67 for parallel 20110130. # Generated by GNU Autoconf 2.67 for parallel 20110205.
# #
# Report bugs to <bug-parallel@gnu.org>. # Report bugs to <bug-parallel@gnu.org>.
# #
@ -551,8 +551,8 @@ MAKEFLAGS=
# Identity of this package. # Identity of this package.
PACKAGE_NAME='parallel' PACKAGE_NAME='parallel'
PACKAGE_TARNAME='parallel' PACKAGE_TARNAME='parallel'
PACKAGE_VERSION='20110130' PACKAGE_VERSION='20110205'
PACKAGE_STRING='parallel 20110130' PACKAGE_STRING='parallel 20110205'
PACKAGE_BUGREPORT='bug-parallel@gnu.org' PACKAGE_BUGREPORT='bug-parallel@gnu.org'
PACKAGE_URL='' 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. # 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. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF cat <<_ACEOF
\`configure' configures parallel 20110130 to adapt to many kinds of systems. \`configure' configures parallel 20110205 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1234,7 +1234,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in case $ac_init_help in
short | recursive ) echo "Configuration of parallel 20110130:";; short | recursive ) echo "Configuration of parallel 20110205:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1301,7 +1301,7 @@ fi
test -n "$ac_init_help" && exit $ac_status test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
parallel configure 20110130 parallel configure 20110205
generated by GNU Autoconf 2.67 generated by GNU Autoconf 2.67
Copyright (C) 2010 Free Software Foundation, Inc. Copyright (C) 2010 Free Software Foundation, Inc.
@ -1318,7 +1318,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. running configure, to aid debugging if configure makes a mistake.
It was created by parallel $as_me 20110130, which was It was created by parallel $as_me 20110205, which was
generated by GNU Autoconf 2.67. Invocation command line was generated by GNU Autoconf 2.67. Invocation command line was
$ $0 $@ $ $0 $@
@ -2133,7 +2133,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='parallel' PACKAGE='parallel'
VERSION='20110130' VERSION='20110205'
cat >>confdefs.h <<_ACEOF 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 # report actual input values of CONFIG_FILES etc. instead of their
# values after options handling. # values after options handling.
ac_log=" ac_log="
This file was extended by parallel $as_me 20110130, which was This file was extended by parallel $as_me 20110205, which was
generated by GNU Autoconf 2.67. Invocation command line was generated by GNU Autoconf 2.67. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@ -2746,7 +2746,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\ ac_cs_version="\\
parallel config.status 20110130 parallel config.status 20110205
configured by $0, generated by GNU Autoconf 2.67, configured by $0, generated by GNU Autoconf 2.67,
with options \\"\$ac_cs_config\\" with options \\"\$ac_cs_config\\"

View file

@ -1,4 +1,4 @@
AC_INIT([parallel], [20110130], [bug-parallel@gnu.org]) AC_INIT([parallel], [20110205], [bug-parallel@gnu.org])
AM_INIT_AUTOMAKE([-Wall -Werror foreign]) AM_INIT_AUTOMAKE([-Wall -Werror foreign])
AC_CONFIG_HEADERS([config.h]) AC_CONFIG_HEADERS([config.h])
AC_CONFIG_FILES([ AC_CONFIG_FILES([

View file

@ -140,65 +140,24 @@ cc:Peter Simons <simons@cryp.to>, Sandro Cazzaniga <kharec@mandriva.org>,
ryoichiro.suzuki@gmail.com,kerick@shiftedbit.net, ryoichiro.suzuki@gmail.com,kerick@shiftedbit.net,
Christian Faulhammer <fauli@gentoo.org>, Ryoichiro Suzuki <ryoichiro.suzuki@gmail.com> Christian Faulhammer <fauli@gentoo.org>, Ryoichiro Suzuki <ryoichiro.suzuki@gmail.com>
Subject: GNU Parallel 20110205 (FOSDEM release) released Subject: GNU Parallel 2011XXXX released
GNU Parallel 20110205 (the FOSDEM release) has been released. It is GNU Parallel 2011XXXX has been released. It is available for download
available for download at: http://ftp.gnu.org/gnu/parallel/ at: http://ftp.gnu.org/gnu/parallel/
This is a major release as the --pipe option introduces a new way to
work. GNU Parallel has so far been similar to xargs, with --pipe it
becomes somewhat similar to tee. To learn about --pipe see the example
section for uses of --pipe.
But rest assured: No old functionality is changed.
If you want GNU Parallel to be part of your favourite distribution
contact the people maintaining the distribution (complaining on
Twitter is not enough).
New in this release: New in this release:
* --pipe splits piped data into blocks. Each block is piped to a * Opscode Cookbook for Chef. Thanks to Joshua Timberman.
program for processing. The piping and the programs will be run in https://github.com/opscode/cookbooks/tree/master/gnu_parallel
parallel. Useful if the data you want to process is data for a
program and not arguments.
* --blocksize sets the blocksize in bytes for --pipe. The blocksize is * The examples translated into Japanese. Thanks to Koshigoe.
approximate. It can deviate as much as the size of one record. http://w.koshigoe.jp/study/?%5Bsystem%5D+GNU+parallel+%BB%C8%CD%D1%CE%E3#l13
Default is 1M.
* --recstart sets the string matching the start of a * A review of the --pipe option in German. Thanks to Mathias Huber.
record. Default is "". http://www.linux-magazin.de/NEWS/GNU-Parallel-20110205-stueckelt-Daten
* --recend sets the string matching the end of a * A small example of grepping maillogs. Thanks to François Maillet.
record. Default is '\n'. To specify none use --recend "". http://www.francoismaillet.com/blog/?p=399
If both --recstart and --recend are set, the end of a record must be
followed immediately by a start of a record. This is useful if
either recend or recstart can occur in the middle of a record.
* --remove-rec-sep removes the string matched by --recstart and
--recend.
* --regexp will make GNU Parallel treat --recstart and --recend as
regular expressions.
* --output-as-files will put the output of the programs into files and
instead of giving the output GNU Parallel will output the name of
these files.
* -N if used with --pipe sets the number of records to read.
* GNU Parallel was presented at FOSDEM.
* Article in USENIX Magazine ;login: (print)
http://www.usenix.org/publications/login/2011-02/
* GNU Parallel is now on ohloh.net. Thanks to Wim Muskee.
https://www.ohloh.net/p/gnu-parallel
* Advanced recursive example. Thanks to Ruarí Ødegaard.
http://my.opera.com/ruario/blog/2011/01/24/editing-debian-packages-more-fun-with-gnu
* Bug fixes and man page updates. * Bug fixes and man page updates.

View file

@ -10,7 +10,7 @@ build:
clean: clean:
rm -f parallel_* rm -f parallel_*
cd parallel-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]; make distclean || true rm -rf parallel-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]
distclean: distclean:
rm -f parallel_* rm -f parallel_*

View file

@ -236,7 +236,7 @@ B<parallel>(1), B<nice>(1)
use strict; use strict;
use Getopt::Long; use Getopt::Long;
$Global::progname="niceload"; $Global::progname="niceload";
$Global::version = 20110130; $Global::version = 20110205;
Getopt::Long::Configure("bundling","require_order"); Getopt::Long::Configure("bundling","require_order");
get_options_from_array(\@ARGV) || die_usage(); get_options_from_array(\@ARGV) || die_usage();
if($::opt_version) { if($::opt_version) {

View file

@ -10,6 +10,8 @@ use Getopt::Long;
use strict; use strict;
use Carp; use Carp;
@ARGV and exit;
$::oodebug=0; $::oodebug=0;
$Global::original_sigterm = $SIG{TERM} || sub { exit 0; }; # $SIG{TERM} is not set on Mac OS X $Global::original_sigterm = $SIG{TERM} || sub { exit 0; }; # $SIG{TERM} is not set on Mac OS X
$SIG{TERM} = sub {}; # Dummy until jobs really start $SIG{TERM} = sub {}; # Dummy until jobs really start
@ -378,7 +380,7 @@ sub get_options_from_array {
sub parse_options { sub parse_options {
# Returns: N/A # Returns: N/A
# Defaults: # Defaults:
$Global::version = 20110130; $Global::version = 20110205;
$Global::progname = 'parallel'; $Global::progname = 'parallel';
$Global::infinity = 2**31; $Global::infinity = 2**31;
$Global::debug = 0; $Global::debug = 0;

View file

@ -531,7 +531,7 @@ $Global::Initfile && unlink $Global::Initfile;
exit ($err); exit ($err);
sub parse_options { sub parse_options {
$Global::version = 20110130; $Global::version = 20110205;
$Global::progname = 'sql'; $Global::progname = 'sql';
# This must be done first as this may exec myself # This must be done first as this may exec myself

View file

@ -1,5 +1,5 @@
### Test -k ### Test -k
Warning: Only enough filehandles to run 20 jobs in parallel. Raising ulimit -n may help parallel: Warning: Only enough filehandles to run 20 jobs in parallel. Raising ulimit -n may help
begin begin
1 1
2 2

View file

@ -40,7 +40,7 @@
19 19
20 20
### Check warning if --transfer but file not found ### Check warning if --transfer but file not found
Warning: /tmp/noexistant/file is not readable and will not be transferred parallel: Warning: /tmp/noexistant/file is not readable and will not be transferred
/tmp/noexistant/file /tmp/noexistant/file
### Transfer for file starting with : ### Transfer for file starting with :
remote-:.: remote-:.:
@ -54,13 +54,13 @@ content-file: name.foo
remote-file : name.foo.file : name remote-file : name.foo.file : name
content-file : name.foo content-file : name.foo
### Check warning if --transfer but not --sshlogin ### Check warning if --transfer but not --sshlogin
Warning: --transfer ignored as there are no remote --sshlogin parallel: Warning: --transfer ignored as there are no remote --sshlogin
### Check warning if --return but not --sshlogin ### Check warning if --return but not --sshlogin
Warning: --return ignored as there are no remote --sshlogin parallel: Warning: --return ignored as there are no remote --sshlogin
### Check warning if --cleanup but not --sshlogin ### Check warning if --cleanup but not --sshlogin
Warning: --cleanup ignored as there are no remote --sshlogin parallel: Warning: --cleanup ignored as there are no remote --sshlogin
### Test --sshlogin -S --sshloginfile ### Test --sshlogin -S --sshloginfile
1 1

View file

@ -1,5 +1,5 @@
### Test --basefile with no --sshlogin ### Test --basefile with no --sshlogin
Warning: --basefile ignored as there are no remote --sshlogin parallel: Warning: --basefile ignored as there are no remote --sshlogin
### Test --basefile + --cleanup + permissions ### Test --basefile + --cleanup + permissions
script1 run 1 script1 run 1

View file

@ -22,7 +22,7 @@
2 2
### Test of --retries on unreachable host ### Test of --retries on unreachable host
ssh: connect to host 4.3.2.1 port 22: Connection timed out ssh: connect to host 4.3.2.1 port 22: Connection timed out
Warning: Could not figure out number of cpus on 4.3.2.1. Using 1 parallel: Warning: Could not figure out number of cpus on 4.3.2.1. Using 1
echo 1 echo 1
1 1
echo 2 echo 2

View file

@ -1,3 +1,3 @@
### Test too slow spawning ### Test too slow spawning
Warning: Starting 10 extra processes takes > 2 sec. parallel: Warning: Starting 10 extra processes takes > 2 sec.
Consider adjusting -j. Press CTRL-C to stop. Consider adjusting -j. Press CTRL-C to stop.

View file

@ -25,7 +25,7 @@ number2.c
### Test {#.} ### Test {#.}
a/number2 a/number2
### Test combined -X --return {/}_{/.}_{#/.}_{#/}_{#.} with files containing space ### Test combined -X --return {/}_{/.}_{#/.}_{#/}_{#.} with files containing space
Warning: using -X or -m with --sshlogin may fail parallel: Warning: using -X or -m with --sshlogin may fail
mkdir -p tmp/number1.c_number1_number2_number2.c_a/number2 tmp/number2.c_number2_number2_number2.c_a/number2 tmp/number3.c_number3_number2_number2.c_a/number2 tmp/number4_number4_number2_number2.c_a/number2 tmp/number5_number5_number2_number2.c_a/number2 tmp/number6_number6_number2_number2.c_a/number2 tmp/number\ 7_number\ 7_number2_number2.c_a/number2 tmp/number\ \<8\|8\>_number\ \<8\|8\>_number2_number2.c_a/number2 ;touch tmp/number1.c_number1_number2_number2.c_a/number2/file tmp/number2.c_number2_number2_number2.c_a/number2/file tmp/number3.c_number3_number2_number2.c_a/number2/file tmp/number4_number4_number2_number2.c_a/number2/file tmp/number5_number5_number2_number2.c_a/number2/file tmp/number6_number6_number2_number2.c_a/number2/file tmp/number\ 7_number\ 7_number2_number2.c_a/number2/file tmp/number\ \<8\|8\>_number\ \<8\|8\>_number2_number2.c_a/number2/file mkdir -p tmp/number1.c_number1_number2_number2.c_a/number2 tmp/number2.c_number2_number2_number2.c_a/number2 tmp/number3.c_number3_number2_number2.c_a/number2 tmp/number4_number4_number2_number2.c_a/number2 tmp/number5_number5_number2_number2.c_a/number2 tmp/number6_number6_number2_number2.c_a/number2 tmp/number\ 7_number\ 7_number2_number2.c_a/number2 tmp/number\ \<8\|8\>_number\ \<8\|8\>_number2_number2.c_a/number2 ;touch tmp/number1.c_number1_number2_number2.c_a/number2/file tmp/number2.c_number2_number2_number2.c_a/number2/file tmp/number3.c_number3_number2_number2.c_a/number2/file tmp/number4_number4_number2_number2.c_a/number2/file tmp/number5_number5_number2_number2.c_a/number2/file tmp/number6_number6_number2_number2.c_a/number2/file tmp/number\ 7_number\ 7_number2_number2.c_a/number2/file tmp/number\ \<8\|8\>_number\ \<8\|8\>_number2_number2.c_a/number2/file
tmp tmp
tmp/number6_number6_number2_number2.c_a tmp/number6_number6_number2_number2.c_a