Released as 20140622 ('Brazil').

This commit is contained in:
Ole Tange 2014-06-23 03:35:59 +02:00
parent c04da8f690
commit b9b3d9d5f2
13 changed files with 93 additions and 60 deletions

31
NEWS
View file

@ -1,3 +1,34 @@
20140622
* --shebang and --shebang-wrap now works on FreeBSD.
* --pipepart works with --header, --regexp, --cat and --fifo.
* ./configure --disable-documentation will not build documentation.
* {%} works as job slot.
* GNU Parallel was cited in: Energy Efficient, High-speed Communication in WSNs https://gupea.ub.gu.se/bitstream/2077/35801/1/gupea_2077_35801_1.pdf
* GNU Parallel was cited in: Ferroelectric contributions to anomalous hysteresis in hybrid perovskite solar cells http://arxiv.org/pdf/1405.5810.pdf
* Processes Paralleling to Speed up Computing and Tasks Execution in Linux http://kukuruku.co/hub/nix/processes-paralleling-to-speed-up-computing-and-tasks-execution-in-linux
* Moving / Copying lots of s3 files quickly using gnu parallel http://blog.aclarke.eu/moving-copying-lots-of-s3-files-quickly-using-gnu-parallel/
* Speeding up grep log queries with GNU Parallel http://www.tripwire.com/state-of-security/incident-detection/speeding-grep-queries-gnu-parallel/
* Ubuntu - Gnu parallel - It's awesome http://kasunweranga.blogspot.dk/2014/06/ubuntu-gnu-parallel-its-awesome.html
* Export quicklooks with vector overlay using TuiView http://spectraldifferences.wordpress.com/2014/03/08/export-quicklooks-with-vector-overlay-using-tuiview/
* GNU Parallel指南 http://my.oschina.net/enyo/blog/271612
* GNU parallelで違和感 http://jarp.does.notwork.org/diary/201405c.html#201405301
* Bug fixes and man page updates.
20140522 20140522
* Use --semaphoretimeout to ignore the semaphore lock after a while. * Use --semaphoretimeout to ignore the semaphore lock after a while.

12
README
View file

@ -40,9 +40,9 @@ document.
Full installation of GNU Parallel is as simple as: Full installation of GNU Parallel is as simple as:
wget http://ftpmirror.gnu.org/parallel/parallel-20140613.tar.bz2 wget http://ftpmirror.gnu.org/parallel/parallel-20140622.tar.bz2
bzip2 -dc parallel-20140613.tar.bz2 | tar xvf - bzip2 -dc parallel-20140622.tar.bz2 | tar xvf -
cd parallel-20140613 cd parallel-20140622
./configure && make && make install ./configure && make && make install
@ -51,9 +51,9 @@ Full installation of GNU Parallel is as simple as:
If you are not root you can add ~/bin to your path and install in If you are not root you can add ~/bin to your path and install in
~/bin and ~/share: ~/bin and ~/share:
wget http://ftpmirror.gnu.org/parallel/parallel-20140613.tar.bz2 wget http://ftpmirror.gnu.org/parallel/parallel-20140622.tar.bz2
bzip2 -dc parallel-20140613.tar.bz2 | tar xvf - bzip2 -dc parallel-20140622.tar.bz2 | tar xvf -
cd parallel-20140613 cd parallel-20140622
./configure --prefix=$HOME && make && make install ./configure --prefix=$HOME && make && make install
Or if your system lacks 'make' you can simply copy src/parallel Or if your system lacks 'make' you can simply copy src/parallel

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.69 for parallel 20140613. # Generated by GNU Autoconf 2.69 for parallel 20140622.
# #
# Report bugs to <bug-parallel@gnu.org>. # Report bugs to <bug-parallel@gnu.org>.
# #
@ -579,8 +579,8 @@ MAKEFLAGS=
# Identity of this package. # Identity of this package.
PACKAGE_NAME='parallel' PACKAGE_NAME='parallel'
PACKAGE_TARNAME='parallel' PACKAGE_TARNAME='parallel'
PACKAGE_VERSION='20140613' PACKAGE_VERSION='20140622'
PACKAGE_STRING='parallel 20140613' PACKAGE_STRING='parallel 20140622'
PACKAGE_BUGREPORT='bug-parallel@gnu.org' PACKAGE_BUGREPORT='bug-parallel@gnu.org'
PACKAGE_URL='' PACKAGE_URL=''
@ -1197,7 +1197,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 20140613 to adapt to many kinds of systems. \`configure' configures parallel 20140622 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1263,7 +1263,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 20140613:";; short | recursive ) echo "Configuration of parallel 20140622:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1337,7 +1337,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 20140613 parallel configure 20140622
generated by GNU Autoconf 2.69 generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc. Copyright (C) 2012 Free Software Foundation, Inc.
@ -1354,7 +1354,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 20140613, which was It was created by parallel $as_me 20140622, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@ $ $0 $@
@ -2169,7 +2169,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='parallel' PACKAGE='parallel'
VERSION='20140613' VERSION='20140622'
cat >>confdefs.h <<_ACEOF cat >>confdefs.h <<_ACEOF
@ -2741,7 +2741,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 20140613, which was This file was extended by parallel $as_me 20140622, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@ -2803,7 +2803,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 20140613 parallel config.status 20140622
configured by $0, generated by GNU Autoconf 2.69, configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\" with options \\"\$ac_cs_config\\"

View file

@ -1,4 +1,4 @@
AC_INIT([parallel], [20140613], [bug-parallel@gnu.org]) AC_INIT([parallel], [20140622], [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

@ -215,9 +215,9 @@ cc:Tim Cuthbertson <tim3d.junk@gmail.com>,
Ryoichiro Suzuki <ryoichiro.suzuki@gmail.com>, Ryoichiro Suzuki <ryoichiro.suzuki@gmail.com>,
Jesse Alama <jesse.alama@gmail.com> Jesse Alama <jesse.alama@gmail.com>
Subject: GNU Parallel 20140622 ('Nej') released Subject: GNU Parallel 20140622 ('Brazil') released
GNU Parallel 20140622 ('Nej') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/ GNU Parallel 20140622 ('Brazil') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/
Haiku of the month: Haiku of the month:
@ -228,6 +228,14 @@ Haiku of the month:
New in this release: New in this release:
* --shebang and --shebang-wrap now works on FreeBSD.
* --pipepart works with --header, --regexp, --cat and --fifo.
* ./configure --disable-documentation will not build documentation.
* {%} works as job slot.
* GNU Parallel was cited in: Energy Efficient, High-speed Communication in WSNs https://gupea.ub.gu.se/bitstream/2077/35801/1/gupea_2077_35801_1.pdf * GNU Parallel was cited in: Energy Efficient, High-speed Communication in WSNs https://gupea.ub.gu.se/bitstream/2077/35801/1/gupea_2077_35801_1.pdf
* GNU Parallel was cited in: Ferroelectric contributions to anomalous hysteresis in hybrid perovskite solar cells http://arxiv.org/pdf/1405.5810.pdf * GNU Parallel was cited in: Ferroelectric contributions to anomalous hysteresis in hybrid perovskite solar cells http://arxiv.org/pdf/1405.5810.pdf

View file

@ -1,6 +1,6 @@
Summary: Shell tool for executing jobs in parallel Summary: Shell tool for executing jobs in parallel
Name: parallel Name: parallel
Version: 20140522 Version: 20140622
Release: 1 Release: 1
License: GPL License: GPL
Group: Productivity/File utilities Group: Productivity/File utilities

View file

@ -24,7 +24,7 @@
use strict; use strict;
use Getopt::Long; use Getopt::Long;
$Global::progname="niceload"; $Global::progname="niceload";
$Global::version = 20140613; $Global::version = 20140622;
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

@ -748,7 +748,7 @@ sub get_options_from_array {
sub parse_options { sub parse_options {
# Returns: N/A # Returns: N/A
# Defaults: # Defaults:
$Global::version = 20140613; $Global::version = 20140622;
$Global::progname = 'parallel'; $Global::progname = 'parallel';
$Global::infinity = 2**31; $Global::infinity = 2**31;
$Global::debug = 0; $Global::debug = 0;
@ -4880,6 +4880,10 @@ sub sshlogin_wrap {
# but that fails on tcsh # but that fails on tcsh
::shell_quote_scalar(qq{ || exec false;}); ::shell_quote_scalar(qq{ || exec false;});
} }
# This script is to solve the problem of
# * not mixing STDERR and STDOUT
# * terminating with ctrl-c
# It works on Linux but not Solaris
my $signal_script = "perl -e '". my $signal_script = "perl -e '".
q{ q{
use IO::Poll; use IO::Poll;
@ -4891,16 +4895,6 @@ sub sshlogin_wrap {
kill SIGHUP, -$pid unless $done; kill SIGHUP, -$pid unless $done;
wait; exit ($?&127 ? 128+($?&127) : 1+$?>>8) wait; exit ($?&127 ? 128+($?&127) : 1+$?>>8)
} . "' "; } . "' ";
# q{
# use IO::Poll;
# $SIG{CHLD} = sub {$done = 1};
# $p = IO::Poll->new;
# $p->mask(STDOUT, POLLHUP);
# $pid=fork; unless($pid) {setpgrp; exec $ENV{SHELL}, "-c", @ARGV; die "exec: $!\n"}
# $p->poll;
# kill SIGHUP, -$pid unless $done;
# wait; exit ($?&127 ? 128+($?&127) : 1+$?>>8)
# } . "' ";
$signal_script =~ s/\s+/ /g; $signal_script =~ s/\s+/ /g;
$self->{'sshlogin_wrap'} = $self->{'sshlogin_wrap'} =

Binary file not shown.

View file

@ -407,7 +407,7 @@ I<size> defaults to 1M.
See B<--pipe> for use of this. See B<--pipe> for use of this.
=item B<--cat> (beta testing) =item B<--cat>
Create a temporary file with content. Normally B<--pipe> will give Create a temporary file with content. Normally B<--pipe> will give
data to the program on stdin (standard input). With B<--cat> GNU data to the program on stdin (standard input). With B<--cat> GNU
@ -565,7 +565,7 @@ See also B<--bg>, B<man sem>.
Implies B<--semaphore>. Implies B<--semaphore>.
=item B<--fifo> (beta testing) =item B<--fifo>
Create a temporary fifo with content. Normally B<--pipe> will give Create a temporary fifo with content. Normally B<--pipe> will give
data to the program on stdin (standard input). With B<--fifo> GNU data to the program on stdin (standard input). With B<--fifo> GNU
@ -800,7 +800,7 @@ B<-l 0> is an alias for B<-l 1>.
Implies B<-X> unless B<-m>, B<--xargs>, or B<--pipe> is set. Implies B<-X> unless B<-m>, B<--xargs>, or B<--pipe> is set.
=item B<--line-buffer> (alpha testing) =item B<--line-buffer> (beta testing)
Buffer output on line basis. B<--group> will keep the output together Buffer output on line basis. B<--group> will keep the output together
for a whole job. B<--ungroup> allows output to mixup with half a line for a whole job. B<--ungroup> allows output to mixup with half a line
@ -1302,7 +1302,7 @@ operating system and the B<-s> option. Pipe the input from /dev/null
to do anything. to do anything.
=item B<--semaphore> (alpha testing) =item B<--semaphore> (beta testing)
Work as a counting semaphore. B<--semaphore> will cause GNU Work as a counting semaphore. B<--semaphore> will cause GNU
B<parallel> to start I<command> in the background. When the number of B<parallel> to start I<command> in the background. When the number of
@ -1339,7 +1339,7 @@ Implies B<--semaphore>.
See also B<man sem>. See also B<man sem>.
=item B<--semaphoretimeout> I<secs> (alpha testing) =item B<--semaphoretimeout> I<secs> (beta testing)
If the semaphore is not released within secs seconds, take it anyway. If the semaphore is not released within secs seconds, take it anyway.
@ -1354,9 +1354,9 @@ Use the replacement string I<replace-str> instead of B<{#}> for
job sequence number. job sequence number.
=item B<--shebang> =item B<--shebang> (alpha testing)
=item B<--hashbang> =item B<--hashbang> (alpha testing)
GNU B<parallel> can be called as a shebang (#!) command as the first GNU B<parallel> can be called as a shebang (#!) command as the first
line of a script. The content of the file will be treated as line of a script. The content of the file will be treated as
@ -1381,7 +1381,7 @@ On FreeBSD B<env> is needed:
freenetproject.org freenetproject.org
=item B<--shebang-wrap> =item B<--shebang-wrap> (alpha testing)
GNU B<parallel> can parallelize scripts by wrapping the shebang GNU B<parallel> can parallelize scripts by wrapping the shebang
line. If the program can be run like this: line. If the program can be run like this:
@ -1508,7 +1508,7 @@ The sshloginfile '-' is special, too, it read sshlogins from stdin
(standard input). (standard input).
=item B<--slotreplace> I<replace-str> (alpha testing) =item B<--slotreplace> I<replace-str> (beta testing)
Use the replacement string I<replace-str> instead of B<{%}> for Use the replacement string I<replace-str> instead of B<{%}> for
job slot number. job slot number.

View file

@ -493,8 +493,8 @@ than a single record.
See @strong{--pipe} for use of this. See @strong{--pipe} for use of this.
@item @strong{--cat} (beta testing) @item @strong{--cat}
@anchor{@strong{--cat} (beta testing)} @anchor{@strong{--cat}}
Create a temporary file with content. Normally @strong{--pipe} will give Create a temporary file with content. Normally @strong{--pipe} will give
data to the program on stdin (standard input). With @strong{--cat} GNU data to the program on stdin (standard input). With @strong{--cat} GNU
@ -659,8 +659,8 @@ See also @strong{--bg}, @strong{man sem}.
Implies @strong{--semaphore}. Implies @strong{--semaphore}.
@item @strong{--fifo} (beta testing) @item @strong{--fifo}
@anchor{@strong{--fifo} (beta testing)} @anchor{@strong{--fifo}}
Create a temporary fifo with content. Normally @strong{--pipe} will give Create a temporary fifo with content. Normally @strong{--pipe} will give
data to the program on stdin (standard input). With @strong{--fifo} GNU data to the program on stdin (standard input). With @strong{--fifo} GNU
@ -918,8 +918,8 @@ standard specifies @strong{-L} instead.
Implies @strong{-X} unless @strong{-m}, @strong{--xargs}, or @strong{--pipe} is set. Implies @strong{-X} unless @strong{-m}, @strong{--xargs}, or @strong{--pipe} is set.
@item @strong{--line-buffer} (alpha testing) @item @strong{--line-buffer} (beta testing)
@anchor{@strong{--line-buffer} (alpha testing)} @anchor{@strong{--line-buffer} (beta testing)}
Buffer output on line basis. @strong{--group} will keep the output together Buffer output on line basis. @strong{--group} will keep the output together
for a whole job. @strong{--ungroup} allows output to mixup with half a line for a whole job. @strong{--ungroup} allows output to mixup with half a line
@ -1451,8 +1451,8 @@ operating system and the @strong{-s} option. Pipe the input from /dev/null
(and perhaps specify --no-run-if-empty) if you don't want GNU @strong{parallel} (and perhaps specify --no-run-if-empty) if you don't want GNU @strong{parallel}
to do anything. to do anything.
@item @strong{--semaphore} (alpha testing) @item @strong{--semaphore} (beta testing)
@anchor{@strong{--semaphore} (alpha testing)} @anchor{@strong{--semaphore} (beta testing)}
Work as a counting semaphore. @strong{--semaphore} will cause GNU Work as a counting semaphore. @strong{--semaphore} will cause GNU
@strong{parallel} to start @emph{command} in the background. When the number of @strong{parallel} to start @emph{command} in the background. When the number of
@ -1489,8 +1489,8 @@ Implies @strong{--semaphore}.
See also @strong{man sem}. See also @strong{man sem}.
@item @strong{--semaphoretimeout} @emph{secs} (alpha testing) @item @strong{--semaphoretimeout} @emph{secs} (beta testing)
@anchor{@strong{--semaphoretimeout} @emph{secs} (alpha testing)} @anchor{@strong{--semaphoretimeout} @emph{secs} (beta testing)}
If the semaphore is not released within secs seconds, take it anyway. If the semaphore is not released within secs seconds, take it anyway.
@ -1504,11 +1504,11 @@ See also @strong{man sem}.
Use the replacement string @emph{replace-str} instead of @strong{@{#@}} for Use the replacement string @emph{replace-str} instead of @strong{@{#@}} for
job sequence number. job sequence number.
@item @strong{--shebang} @item @strong{--shebang} (alpha testing)
@anchor{@strong{--shebang}} @anchor{@strong{--shebang} (alpha testing)}
@item @strong{--hashbang} @item @strong{--hashbang} (alpha testing)
@anchor{@strong{--hashbang}} @anchor{@strong{--hashbang} (alpha testing)}
GNU @strong{parallel} can be called as a shebang (#!) command as the first GNU @strong{parallel} can be called as a shebang (#!) command as the first
line of a script. The content of the file will be treated as line of a script. The content of the file will be treated as
@ -1536,8 +1536,8 @@ On FreeBSD @strong{env} is needed:
freenetproject.org freenetproject.org
@end verbatim @end verbatim
@item @strong{--shebang-wrap} @item @strong{--shebang-wrap} (alpha testing)
@anchor{@strong{--shebang-wrap}} @anchor{@strong{--shebang-wrap} (alpha testing)}
GNU @strong{parallel} can parallelize scripts by wrapping the shebang GNU @strong{parallel} can parallelize scripts by wrapping the shebang
line. If the program can be run like this: line. If the program can be run like this:
@ -1681,8 +1681,8 @@ The sshloginfile '.' is special, it read sshlogins from
The sshloginfile '-' is special, too, it read sshlogins from stdin The sshloginfile '-' is special, too, it read sshlogins from stdin
(standard input). (standard input).
@item @strong{--slotreplace} @emph{replace-str} (alpha testing) @item @strong{--slotreplace} @emph{replace-str} (beta testing)
@anchor{@strong{--slotreplace} @emph{replace-str} (alpha testing)} @anchor{@strong{--slotreplace} @emph{replace-str} (beta testing)}
Use the replacement string @emph{replace-str} instead of @strong{@{%@}} for Use the replacement string @emph{replace-str} instead of @strong{@{%@}} for
job slot number. job slot number.

View file

@ -566,7 +566,7 @@ $Global::Initfile && unlink $Global::Initfile;
exit ($err); exit ($err);
sub parse_options { sub parse_options {
$Global::version = 20140613; $Global::version = 20140622;
$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

Binary file not shown.