Released as 20150822 ('HansVibeke')

This commit is contained in:
Ole Tange 2015-08-22 11:47:09 +02:00
parent 3e5393b1c0
commit 074ed8bfc6
11 changed files with 78 additions and 38 deletions

43
NEWS
View file

@ -1,3 +1,46 @@
20150822
* If $job->skip() is called in {= =} the job will not be run.
* @arg can now be used in {= =}: parallel echo '{= $arg[2] < 5 and
$_="j" =}' ::: 1 2 3 ::: 4 5 6
* Version of GNU Parallel that uses PostgreSQL as backend
https://github.com/stephen-fralich/parallel-sql/
* A composite genome approach to identify phylogenetically informative
data from next-generation sequencing
http://www.biomedcentral.com/content/pdf/s12859-015-0632-y.pdf
* SpeedSeq: ultra-fast personal genome analysis and interpretation
http://www.nature.com/nmeth/journal/vaop/ncurrent/full/nmeth.3505.html
* GNU Parallel is used in elPrep: https://github.com/ExaScience/elprep
* Who actually reads the code?
http://www.fsf.org/blogs/community/who-actually-reads-the-code
* Introduction to GNU Parallel
http://erictleung.com/2015/08/06/intro-to-gnu-parallel/
* ¿Alguien se lee el código?
http://www.taringa.net/post/linux/18854759/Alguien-se-lee-el-codigo.html
* ¿Quién se lee el código fuente?
https://victorhckinthefreeworld.wordpress.com/2015/08/12/quien-se-lee-el-codigo-fuente/
* Distribution des traitements avec GNU Parallel
http://blog.inovia-conseil.fr/?p=226#4
* Эксперимент по проверке, читают ли код открытых проектов
http://www.opennet.ru/opennews/art.shtml?num=42718
* 多核心主機搭配 GNU parallel
http://blog.zeroplex.tw/2015/08/gnu-parallel.html
* Bug fixes and man page updates.
20150722 20150722
* If a record fits in a block, --block only reads upto the size of * If a record fits in a block, --block only reads upto the size of

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-20150722.tar.bz2 wget http://ftpmirror.gnu.org/parallel/parallel-20150822.tar.bz2
bzip2 -dc parallel-20150722.tar.bz2 | tar xvf - bzip2 -dc parallel-20150822.tar.bz2 | tar xvf -
cd parallel-20150722 cd parallel-20150822
./configure && make && sudo make install ./configure && make && sudo 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-20150722.tar.bz2 wget http://ftpmirror.gnu.org/parallel/parallel-20150822.tar.bz2
bzip2 -dc parallel-20150722.tar.bz2 | tar xvf - bzip2 -dc parallel-20150822.tar.bz2 | tar xvf -
cd parallel-20150722 cd parallel-20150822
./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 20150722. # Generated by GNU Autoconf 2.69 for parallel 20150822.
# #
# 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='20150722' PACKAGE_VERSION='20150822'
PACKAGE_STRING='parallel 20150722' PACKAGE_STRING='parallel 20150822'
PACKAGE_BUGREPORT='bug-parallel@gnu.org' PACKAGE_BUGREPORT='bug-parallel@gnu.org'
PACKAGE_URL='' PACKAGE_URL=''
@ -1203,7 +1203,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 20150722 to adapt to many kinds of systems. \`configure' configures parallel 20150822 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1269,7 +1269,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 20150722:";; short | recursive ) echo "Configuration of parallel 20150822:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1345,7 +1345,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 20150722 parallel configure 20150822
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.
@ -1362,7 +1362,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 20150722, which was It was created by parallel $as_me 20150822, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@ $ $0 $@
@ -2225,7 +2225,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='parallel' PACKAGE='parallel'
VERSION='20150722' VERSION='20150822'
cat >>confdefs.h <<_ACEOF cat >>confdefs.h <<_ACEOF
@ -2867,7 +2867,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 20150722, which was This file was extended by parallel $as_me 20150822, 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
@ -2929,7 +2929,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 20150722 parallel config.status 20150822
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], [20150722], [bug-parallel@gnu.org]) AC_INIT([parallel], [20150822], [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

@ -209,11 +209,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 20150822 ('天津') released <<[stable]>> Subject: GNU Parallel 20150822 ('Hans Vibeke') released
GNU Parallel 20150822 ('天津') <<[stable]>> has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/ GNU Parallel 20150822 ('Hans Vibeke') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/
<<No new functionality was introduced so this is a good candidate for a stable release.>>
Haiku of the month: Haiku of the month:
@ -230,12 +228,6 @@ New in this release:
* Version of GNU Parallel that uses PostgreSQL as backend https://github.com/stephen-fralich/parallel-sql/ * Version of GNU Parallel that uses PostgreSQL as backend https://github.com/stephen-fralich/parallel-sql/
* <<Har angiveligt submittet ny version - afventer opdatering>> GNU Parallel was used (unfortunately without citation) in: MUGBAS: a species free gene-based programme suite for post-GWAS analysis http://www.ncbi.nlm.nih.gov/pubmed/25765345
* <<Afventer updateret publisering>> GNU Parallel was used in: Large Scale Author Name Disambiguation in Digital Libraries http://ieeexplore.ieee.org/xpl/abstractReferences.jsp?tp=&arnumber=7004487&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D7004487
* <<kontaktet 2015-06-22 Afventer svar fra journal>> GNU Parallel was used (unfortunately with wrong citation) in: TADSim: Discrete Event-Based Performance Prediction for Temperature-Accelerated Dynamics http://vruehle.de/publications/2015c.pdf
* A composite genome approach to identify phylogenetically informative data from next-generation sequencing http://www.biomedcentral.com/content/pdf/s12859-015-0632-y.pdf * A composite genome approach to identify phylogenetically informative data from next-generation sequencing http://www.biomedcentral.com/content/pdf/s12859-015-0632-y.pdf
* SpeedSeq: ultra-fast personal genome analysis and interpretation http://www.nature.com/nmeth/journal/vaop/ncurrent/full/nmeth.3505.html * SpeedSeq: ultra-fast personal genome analysis and interpretation http://www.nature.com/nmeth/journal/vaop/ncurrent/full/nmeth.3505.html

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: 20150722 Version: 20150822
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 = 20150722; $Global::version = 20150822;
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

@ -1090,7 +1090,7 @@ sub parse_options {
sub init_globals { sub init_globals {
# Defaults: # Defaults:
$Global::version = 20150813; $Global::version = 20150822;
$Global::progname = 'parallel'; $Global::progname = 'parallel';
$Global::infinity = 2**31; $Global::infinity = 2**31;
$Global::debug = 0; $Global::debug = 0;

View file

@ -85,7 +85,10 @@ B<Bash functions>: B<export -f> the function first.
B<Bash aliases>: Copy the full environment using this and use B<env_parallel> instead of B<parallel>. B<Bash aliases>: Copy the full environment using this and use B<env_parallel> instead of B<parallel>.
env_parallel() { env_parallel() {
export PARALLEL_ENV="$(echo "shopt -s expand_aliases 2>/dev/null"; alias;typeset -p | grep -vFf <(readonly; echo GROUPS; echo FUNCNAME; echo DIRSTACK; echo _; echo PIPESTATUS; echo USERNAME) | grep -v BASH_;typeset -f)"; export PARALLEL_ENV="$(echo "shopt -s expand_aliases 2>/dev/null"; alias;typeset -p |
grep -vFf <(readonly) |
grep -v 'declare .. (GROUPS|FUNCNAME|DIRSTACK|_|PIPESTATUS|USERNAME|BASH_[A-Z_]+) ';
typeset -f)";
`which parallel` "$@"; `which parallel` "$@";
unset PARALLEL_ENV; unset PARALLEL_ENV;
} }
@ -103,7 +106,7 @@ B<Ksh functions>: If it is a Ksh function you can encode the function in a varia
To export all functions and also make them available when running remote: To export all functions and also make them available when running remote:
env_parallel() { env_parallel() {
export PARALLEL_ENV="$(alias | perl -pe 's/^/alias /';typeset -p;typeset -f)"; export PARALLEL_ENV="$(alias | perl -pe 's/^/alias /';typeset -p|egrep -v 'typeset( -i)? -r|PIPESTATUS';typeset -f)";
`which parallel` "$@"; `which parallel` "$@";
unset PARALLEL_ENV; unset PARALLEL_ENV;
} }
@ -122,9 +125,11 @@ B<Zsh functions>: If it is a Zsh function you can encode the function in a varia
To export all functions and also make them available when running remote: To export all functions and also make them available when running remote:
env_parallel() { env_parallel() {
PARALLEL_ENV="$(alias | perl -pe 's/^/alias /';typeset -f)"; export PARALLEL_ENV="$(alias | perl -pe 's/^/alias /';typeset -p |
export PARALLEL_ENV grep -aFvf <(typeset -pr)|egrep -iav 'ZSH_EVAL_CONTEXT|LINENO=| _=|aliases|^typeset [a-z_]+$'|
`which parallel` "$@"; egrep -av '^(typeset IFS=|..$)|cyan';
typeset -f)";
parallel "$@";
unset PARALLEL_ENV; unset PARALLEL_ENV;
} }
# call as: # call as:

View file

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

@ -165,12 +165,12 @@ func_echo() {
} }
env_parallel() { env_parallel() {
unset PARALLEL_ENV;
export PARALLEL_ENV="$(alias | perl -pe 's/^/alias /';typeset -p | export PARALLEL_ENV="$(alias | perl -pe 's/^/alias /';typeset -p |
grep -aFvf <(typeset -pr)|egrep -iav 'ZSH_EVAL_CONTEXT|LINENO=| _=|aliases|^typeset [a-z_]+$'| grep -aFvf <(typeset -pr)|egrep -iav 'ZSH_EVAL_CONTEXT|LINENO=| _=|aliases|^typeset [a-z_]+$'|
egrep -av '^(typeset IFS=|..$)|cyan'; egrep -av '^(typeset IFS=|..$)|cyan';
typeset -f)"; typeset -f)";
parallel "$@"; parallel "$@";
unset PARALLEL_ENV;
} }
# alias does not work: http://unix.stackexchange.com/questions/223534/defining-an-alias-and-immediately-use-it # alias does not work: http://unix.stackexchange.com/questions/223534/defining-an-alias-and-immediately-use-it
@ -200,9 +200,9 @@ func_echo() {
} }
env_parallel() { env_parallel() {
unset PARALLEL_ENV;
export PARALLEL_ENV="$(alias | perl -pe 's/^/alias /';typeset -p|egrep -v 'typeset( -i)? -r|PIPESTATUS';typeset -f)"; export PARALLEL_ENV="$(alias | perl -pe 's/^/alias /';typeset -p|egrep -v 'typeset( -i)? -r|PIPESTATUS';typeset -f)";
`which parallel` "$@"; `which parallel` "$@";
unset PARALLEL_ENV;
} }
env_parallel alias_echo ::: alias_works env_parallel alias_echo ::: alias_works
env_parallel func_echo ::: function_works env_parallel func_echo ::: function_works