Released as 20140222 ('Euromaidan').

This commit is contained in:
Ole Tange 2014-02-22 11:32:42 +01:00
parent 36b22df1f3
commit 7f955d2427
14 changed files with 131 additions and 53 deletions

69
NEWS
View file

@ -1,3 +1,72 @@
20140222
New in this release:
* --tollef has been retired.
* --compress has be redesigned due to bugs.
* Format of --eta and --joblog has changed slightly.
* GNU Parallel was cited in: Speaker Verification and Keyword Spotting
Systems for Forensic Applications
http://lantana.tenet.res.in/website_files/thesis/Phd/srikanth.pdf
* GNU Parallel was cited in: Scaleable Code Clone Detection
http://scg.unibe.ch/archive/phd/schwarz-phd.pdf
* GNU Parallel was cited in: Clone Detection that scales
http://scg.unibe.ch/archive/masters/Vogt14a.pdf
* GNU Parallel was cited in: Scalable Positional Analysis for Studying
Evolution of Nodes in Networks
http://arxiv-web3.library.cornell.edu/pdf/1402.3797
* GNU Parallel was cited in: Aggregate Characterization of User
Behavior in Twitter and Analysis of the Retweet Graph
http://arxiv.org/pdf/1402.2671v1
* GNU Parallel was used (unfortunately without citation) in: Causal
Network Models for Predicting Compound Targets and Driving Pathways
in Cancer
http://jbx.sagepub.com/content/early/2014/02/10/1087057114522690.full
* GNU Parallel was used (unfortunately without citation) in:
Performance and Energy Efficiency of Common Compression /
Decompression Utilities
http://www.researchgate.net/publication/243962643_Performance_and_Energy_Efficiency_of_Common_CompressionDecompression_Utilities_An_Experimental_Study_in_Mobile_and_Workstation_Computer_Platforms/file/3deec51d1dbc0474f9.pdf
* GNU Parallel was used (unfortunately without citation) in: SpringFS:
Bridging Agility and Performance in Elastic Distributed Storage
http://www.istc-cc.cmu.edu/publications/papers/2014/SpringFS-FAST14.pdf
* GNU Parallel was recommended (without citation) in: Redesigning the
Specificity of Protein-DNA Interactions with Rosetta
http://link.springer.com/protocol/10.1007/978-1-62703-968-0_17
* GNU Parallel is co-distributed with RepeatExplorer
http://www.vcru.wisc.edu/simonlab/bioinformatics/programs/repeatexplorer/README.txt
* Convert MP3 to a scrolling spectrum waterfall plot video
http://jdesbonnet.blogspot.dk/2014/02/convert-mp3-to-scrolling-spectrum.html
* PHP wrapper class for the GNU Parallel tool
https://github.com/geopal-solutions/gnu-parallel-wrapper/tree/master
* Exploratory Data Analysis http://www.slideshare.net/thinrhino/gnunify
* Copias de archivos con rsync y parallel
http://linuxmanr4.com/2014/02/20/copias-de-archivos-con-rsync-y-parallel
* Single-Thread-Programme auf Multicore-Rechnern parallelisieren
http://www.adlerweb.info/blog/2014/02/08/linux-single-thread-programme-auf-multicore-rechnern-parallelisieren
* Распараллеливаем процессы для ускорения вычислений и выполнения
заданий в Linux http://savepearlharbor.com/?p=210480
* Bug fixes and man page updates.
20140122 20140122
* GNU Parallel was cited in: On the likelihood of multiple bit upsets * GNU Parallel was cited in: On the likelihood of multiple bit upsets

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

@ -124,6 +124,7 @@ https://build.opensuse.org/package/show?package=parallel&project=home%3Atange
YYYYMMDD=`yyyymmdd` YYYYMMDD=`yyyymmdd`
pushd /tmp pushd /tmp
rm -rf parallel-${YYYYMMDD}* rm -rf parallel-${YYYYMMDD}*
# This can take 7 minutes
while ! wget http://ftp.gnu.org/gnu/parallel/parallel-$YYYYMMDD.tar.bz2 ; do sleep 2; done while ! wget http://ftp.gnu.org/gnu/parallel/parallel-$YYYYMMDD.tar.bz2 ; do sleep 2; done
#wget http://alpha.gnu.org/gnu/parallel/parallel-$YYYYMMDD.tar.bz2 #wget http://alpha.gnu.org/gnu/parallel/parallel-$YYYYMMDD.tar.bz2
tar xjvf parallel-$YYYYMMDD.tar.bz2 tar xjvf parallel-$YYYYMMDD.tar.bz2
@ -186,6 +187,8 @@ https://lists.gnu.org/mailman/admindb/bug-parallel
https://lists.gnu.org/mailman/admindb/parallel https://lists.gnu.org/mailman/admindb/parallel
<<<<< <<<<<
file:///home/tange/privat/parallel/doc/release_new_version
from:tange@gnu.org from:tange@gnu.org
to:parallel@gnu.org, bug-parallel@gnu.org to:parallel@gnu.org, bug-parallel@gnu.org
cc:Sandro Cazzaniga <kharec@mandriva.org>, cc:Sandro Cazzaniga <kharec@mandriva.org>,
@ -204,9 +207,9 @@ cc:Sandro Cazzaniga <kharec@mandriva.org>,
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 20140222 ('Со́чи/Euromaidan') released Subject: GNU Parallel 20140222 ('Euromaidan') released
GNU Parallel 20140222 ('Со́чи/Euromaidan') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/ GNU Parallel 20140222 ('Euromaidan') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/
Packagers that default to --tollef should take note that --tollef is now retired after a full year of being obsolete. Packagers that default to --tollef should take note that --tollef is now retired after a full year of being obsolete.
@ -219,6 +222,8 @@ New in this release:
* --compress has be redesigned due to bugs. * --compress has be redesigned due to bugs.
* Format of --eta and --joblog has changed slightly.
* GNU Parallel was cited in: Speaker Verification and Keyword Spotting Systems for Forensic Applications http://lantana.tenet.res.in/website_files/thesis/Phd/srikanth.pdf * GNU Parallel was cited in: Speaker Verification and Keyword Spotting Systems for Forensic Applications http://lantana.tenet.res.in/website_files/thesis/Phd/srikanth.pdf
* GNU Parallel was cited in: Scaleable Code Clone Detection http://scg.unibe.ch/archive/phd/schwarz-phd.pdf * GNU Parallel was cited in: Scaleable Code Clone Detection http://scg.unibe.ch/archive/phd/schwarz-phd.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: 20140122 Version: 20140222
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 = 20140122; $Global::version = 20140222;
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

@ -626,7 +626,7 @@ sub get_options_from_array {
sub parse_options { sub parse_options {
# Returns: N/A # Returns: N/A
# Defaults: # Defaults:
$Global::version = 20140221; $Global::version = 20140222;
$Global::progname = 'parallel'; $Global::progname = 'parallel';
$Global::infinity = 2**31; $Global::infinity = 2**31;
$Global::debug = 0; $Global::debug = 0;
@ -4103,7 +4103,6 @@ sub cattail {
sub openoutputfiles { sub openoutputfiles {
# Open files for STDOUT and STDERR # Open files for STDOUT and STDERR
# Set file handles in $self->fh # Set file handles in $self->fh
# TODO non-blocking $opt::linebuffer
my $self = shift; my $self = shift;
my ($outfhw, $errfhw, $outname, $errname); my ($outfhw, $errfhw, $outname, $errname);
if($opt::results) { if($opt::results) {

Binary file not shown.

View file

@ -412,7 +412,7 @@ I<regexp> is a Perl Regular Expression:
http://perldoc.perl.org/perlre.html http://perldoc.perl.org/perlre.html
=item B<--compress> =item B<--compress> (alpha testing)
Compress temporary files. If the output is big and very compressible Compress temporary files. If the output is big and very compressible
this will take up less disk space in $TMPDIR and possibly be faster due to less this will take up less disk space in $TMPDIR and possibly be faster due to less
@ -423,11 +423,13 @@ B<plzip>, B<bzip2>, B<lzma>, B<lzip>, B<xz> in that order, and use the
first available. first available.
=item B<--compress-program> I<prg> =item B<--compress-program> I<prg> (alpha testing)
Use I<prg> for compressing temporary files. It is assumed that I<prg =item B<--decompress-program> I<prg> (alpha testing)
Use I<prg> for (de)compressing temporary files. It is assumed that I<prg
-dc> will decompress stdin (standard input) to stdout (standard -dc> will decompress stdin (standard input) to stdout (standard
output). output) unless B<--decompress-program> is given.
=item B<--ctrlc> =item B<--ctrlc>
@ -524,7 +526,7 @@ See also B<--bg>, B<man sem>.
Implies B<--semaphore>. Implies B<--semaphore>.
=item B<--filter-hosts> (beta testing) =item B<--filter-hosts>
Remove down hosts. For each remote host: check that login through ssh Remove down hosts. For each remote host: check that login through ssh
works. If not: do not use this host. works. If not: do not use this host.
@ -744,7 +746,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> =item B<--line-buffer> (alpha 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
@ -813,7 +815,7 @@ This is useful for scripts that depend on features only available from
a certain version of GNU B<parallel>. a certain version of GNU B<parallel>.
=item B<--nonall> (beta testing) =item B<--nonall>
B<--onall> with no arguments. Run the command on all computers given B<--onall> with no arguments. Run the command on all computers given
with B<--sshlogin> but take no arguments. GNU B<parallel> will log with B<--sshlogin> but take no arguments. GNU B<parallel> will log
@ -824,7 +826,7 @@ This is useful for running the same command (e.g. uptime) on a list of
servers. servers.
=item B<--onall> (beta testing) =item B<--onall>
Run all the jobs on all computers given with B<--sshlogin>. GNU Run all the jobs on all computers given with B<--sshlogin>. GNU
B<parallel> will log into B<--jobs> number of computers in parallel B<parallel> will log into B<--jobs> number of computers in parallel
@ -1606,9 +1608,9 @@ Use B<-v> B<-v> to print the wrapping ssh command when running remotely.
Print the version GNU B<parallel> and exit. Print the version GNU B<parallel> and exit.
=item B<--workdir> I<mydir> (beta testing) =item B<--workdir> I<mydir>
=item B<--wd> I<mydir> (beta testing) =item B<--wd> I<mydir>
Files transferred using B<--transfer> and B<--return> will be relative Files transferred using B<--transfer> and B<--return> will be relative
to I<mydir> on remote computers, and the command will be executed in to I<mydir> on remote computers, and the command will be executed in

View file

@ -434,8 +434,8 @@ separating the columns. The n'th column can be access using
@emph{regexp} is a Perl Regular Expression: @emph{regexp} is a Perl Regular Expression:
http://perldoc.perl.org/perlre.html http://perldoc.perl.org/perlre.html
@item @strong{--compress} @item @strong{--compress} (alpha testing)
@anchor{@strong{--compress}} @anchor{@strong{--compress} (alpha testing)}
Compress temporary files. If the output is big and very compressible Compress temporary files. If the output is big and very compressible
this will take up less disk space in $TMPDIR and possibly be faster due to less this will take up less disk space in $TMPDIR and possibly be faster due to less
@ -445,12 +445,15 @@ GNU @strong{parallel} will try @strong{lzop}, @strong{pigz}, @strong{gzip}, @str
@strong{plzip}, @strong{bzip2}, @strong{lzma}, @strong{lzip}, @strong{xz} in that order, and use the @strong{plzip}, @strong{bzip2}, @strong{lzma}, @strong{lzip}, @strong{xz} in that order, and use the
first available. first available.
@item @strong{--compress-program} @emph{prg} @item @strong{--compress-program} @emph{prg} (alpha testing)
@anchor{@strong{--compress-program} @emph{prg}} @anchor{@strong{--compress-program} @emph{prg} (alpha testing)}
Use @emph{prg} for compressing temporary files. It is assumed that @emph{prg @item @strong{--decompress-program} @emph{prg} (alpha testing)
@anchor{@strong{--decompress-program} @emph{prg} (alpha testing)}
Use @emph{prg} for (de)compressing temporary files. It is assumed that @emph{prg
-dc} will decompress stdin (standard input) to stdout (standard -dc} will decompress stdin (standard input) to stdout (standard
output). output) unless @strong{--decompress-program} is given.
@item @strong{--ctrlc} @item @strong{--ctrlc}
@anchor{@strong{--ctrlc}} @anchor{@strong{--ctrlc}}
@ -550,8 +553,8 @@ See also @strong{--bg}, @strong{man sem}.
Implies @strong{--semaphore}. Implies @strong{--semaphore}.
@item @strong{--filter-hosts} (beta testing) @item @strong{--filter-hosts}
@anchor{@strong{--filter-hosts} (beta testing)} @anchor{@strong{--filter-hosts}}
Remove down hosts. For each remote host: check that login through ssh Remove down hosts. For each remote host: check that login through ssh
works. If not: do not use this host. works. If not: do not use this host.
@ -794,8 +797,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} @item @strong{--line-buffer} (alpha testing)
@anchor{@strong{--line-buffer}} @anchor{@strong{--line-buffer} (alpha 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
@ -864,8 +867,8 @@ GNU @strong{parallel} is less than @emph{version} the exit code is
This is useful for scripts that depend on features only available from This is useful for scripts that depend on features only available from
a certain version of GNU @strong{parallel}. a certain version of GNU @strong{parallel}.
@item @strong{--nonall} (beta testing) @item @strong{--nonall}
@anchor{@strong{--nonall} (beta testing)} @anchor{@strong{--nonall}}
@strong{--onall} with no arguments. Run the command on all computers given @strong{--onall} with no arguments. Run the command on all computers given
with @strong{--sshlogin} but take no arguments. GNU @strong{parallel} will log with @strong{--sshlogin} but take no arguments. GNU @strong{parallel} will log
@ -875,8 +878,8 @@ computer. @strong{-j} adjusts how many computers to log into in parallel.
This is useful for running the same command (e.g. uptime) on a list of This is useful for running the same command (e.g. uptime) on a list of
servers. servers.
@item @strong{--onall} (beta testing) @item @strong{--onall}
@anchor{@strong{--onall} (beta testing)} @anchor{@strong{--onall}}
Run all the jobs on all computers given with @strong{--sshlogin}. GNU Run all the jobs on all computers given with @strong{--sshlogin}. GNU
@strong{parallel} will log into @strong{--jobs} number of computers in parallel @strong{parallel} will log into @strong{--jobs} number of computers in parallel
@ -1720,11 +1723,11 @@ Use @strong{-v} @strong{-v} to print the wrapping ssh command when running remot
Print the version GNU @strong{parallel} and exit. Print the version GNU @strong{parallel} and exit.
@item @strong{--workdir} @emph{mydir} (beta testing) @item @strong{--workdir} @emph{mydir}
@anchor{@strong{--workdir} @emph{mydir} (beta testing)} @anchor{@strong{--workdir} @emph{mydir}}
@item @strong{--wd} @emph{mydir} (beta testing) @item @strong{--wd} @emph{mydir}
@anchor{@strong{--wd} @emph{mydir} (beta testing)} @anchor{@strong{--wd} @emph{mydir}}
Files transferred using @strong{--transfer} and @strong{--return} will be relative Files transferred using @strong{--transfer} and @strong{--return} will be relative
to @emph{mydir} on remote computers, and the command will be executed in to @emph{mydir} on remote computers, and the command will be executed in

View file

@ -124,7 +124,7 @@
.\" ======================================================================== .\" ========================================================================
.\" .\"
.IX Title "PARALLEL_TUTORIAL 1" .IX Title "PARALLEL_TUTORIAL 1"
.TH PARALLEL_TUTORIAL 1 "2014-01-25" "20140122" "parallel" .TH PARALLEL_TUTORIAL 1 "2014-01-25" "20140222" "parallel"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents. .\" way too many mistakes in technical documents.
.if n .ad l .if n .ad l

View file

@ -556,7 +556,7 @@ $Global::Initfile && unlink $Global::Initfile;
exit ($err); exit ($err);
sub parse_options { sub parse_options {
$Global::version = 20140122; $Global::version = 20140222;
$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.