Merge security fix into stable.

This commit is contained in:
Ole Tange 2015-05-14 17:20:13 +02:00
commit 09fccc68fc
5 changed files with 105 additions and 98 deletions

View file

@ -11,6 +11,7 @@ When using programs that use GNU Parallel to process data for publication please
url = {http://www.gnu.org/s/parallel}, url = {http://www.gnu.org/s/parallel},
year = {2011}, year = {2011},
pages = {42-47} pages = {42-47}
doi = {10.5281/zenodo.16303}
} }
(Feel free to use \nocite{Tange2011a}) (Feel free to use \nocite{Tange2011a})

64
NEWS
View file

@ -2,45 +2,73 @@
New in this release: New in this release:
* Security fix. An attacker on the local system could make you overwrite one of your own files with a single byte. The problem exist when you use --compress or --tmux or --pipe or --cat or --fifo. The attacker must figure out the randomly chosen file name and create a symlink within a time window of 15 ms. * Security fix. An attacker on the local system could make you
overwrite one of your own files with a single byte. The problem
exist when you use --compress or --tmux or --pipe or --cat or
--fifo. The attacker must figure out the randomly chosen file name
and create a symlink within a time window of 15 ms.
* --shuf will generate all jobs, and shuffle them before running them. This is useful to get a quick preview of the results before running the full batch. * --shuf will generate all jobs, and shuffle them before running
them. This is useful to get a quick preview of the results before
running the full batch.
* GNU Parallel now has a DOI: https://dx.doi.org/10.5281/zenodo.16303 * GNU Parallel now has a DOI: https://dx.doi.org/10.5281/zenodo.16303
* GNU Parallel was cited in: Scaling Machine Learning for Target Prediction in Drug Discovery using Apache Spark https://cris.cumulus.vub.ac.be/portal/files/5147244/spark.pdf * GNU Parallel was cited in: Scaling Machine Learning for Target
Prediction in Drug Discovery using Apache Spark
https://cris.cumulus.vub.ac.be/portal/files/5147244/spark.pdf
* GNU Parallel was cited in: Bayesian inference of protein structure from chemical shift data https://peerj.com/articles/861/ * GNU Parallel was cited in: Bayesian inference of protein structure
from chemical shift data https://peerj.com/articles/861/
* GNU Parallel was cited in: Toward Enhanced Metadata Quality of Large-Scale Digital Libraries: Estimating Volume Time Range https://www.ideals.illinois.edu/bitstream/handle/2142/73656/186_ready.pdf * GNU Parallel was cited in: Toward Enhanced Metadata Quality of
Large-Scale Digital Libraries: Estimating Volume Time Range
https://www.ideals.illinois.edu/bitstream/handle/2142/73656/186_ready.pdf
* GNU Parallel was cited in: Contrasting regional architectures of schizophrenia and other complex diseases using fast variance components analysis http://biorxiv.org/content/biorxiv/early/2015/03/13/016527.full.pdf * GNU Parallel was cited in: Contrasting regional architectures of
schizophrenia and other complex diseases using fast variance
components analysis
http://biorxiv.org/content/biorxiv/early/2015/03/13/016527.full.pdf
* GNU Parallel was cited in: Experimental study on the Wind Farm Substation Cable Installation Problem http://i11www.iti.uni-karlsruhe.de/_media/teaching/theses/ma-schmitz-14.pdf * GNU Parallel was cited in: Experimental study on the Wind Farm
Substation Cable Installation Problem
http://i11www.iti.uni-karlsruhe.de/_media/teaching/theses/ma-schmitz-14.pdf
* GNU Parallel was used in: landsat-gifworks https://github.com/KAPPS-/landsat-gifworks * GNU Parallel was used in: landsat-gifworks
https://github.com/KAPPS-/landsat-gifworks
* GNU Parallel was used in: https://github.com/exascience/elprep * GNU Parallel was used in: https://github.com/exascience/elprep
* GNU Parallel was used in: http://search.cpan.org/~jillrowe/HPC-Runner-GnuParallel-0.01/ * GNU Parallel was used in:
http://search.cpan.org/~jillrowe/HPC-Runner-GnuParallel-0.01/
* GNU Parallel was used in: http://search.cpan.org/~ajpage/Bio-Roary-2.0.7/lib/Bio/Roary/JobRunner/Parallel.pm * GNU Parallel was used in:
http://search.cpan.org/~ajpage/Bio-Roary-2.0.7/lib/Bio/Roary/JobRunner/Parallel.pm
* GNU Parallel was used in: Rapid haploid SNP calling https://github.com/tseemann/snippy * GNU Parallel was used in: Rapid haploid SNP calling
https://github.com/tseemann/snippy
* Pictures and Metadata http://www.ozzy.no/2015/02/05/pictures-and-metadata/ * Pictures and Metadata
http://www.ozzy.no/2015/02/05/pictures-and-metadata/
* Task automation with bash and parallel https://biowize.wordpress.com/2015/03/23/task-automation-with-bash-and-parallel/ * Task automation with bash and parallel
https://biowize.wordpress.com/2015/03/23/task-automation-with-bash-and-parallel/
* How To: Speed Up File Transfers in Linux using RSync with GNU Parallel http://www.yourownlinux.com/2015/04/speed-up-file-transfers-using-rsync-with-gnu-parallel.html * How To: Speed Up File Transfers in Linux using RSync with GNU
Parallel
http://www.yourownlinux.com/2015/04/speed-up-file-transfers-using-rsync-with-gnu-parallel.html
* Mirroring a Git Repository https://avacariu.me/articles/mirroring-a-git-repository.html * Mirroring a Git Repository
https://avacariu.me/articles/mirroring-a-git-repository.html
* Add an ENVI header to JAXA Global Mangrove Watch PALSAR tiles https://spectraldifferences.wordpress.com/2015/03/24/add-an-envi-header-to-jaxa-global-mangrove-watch-palsar-tiles/ * Add an ENVI header to JAXA Global Mangrove Watch PALSAR tiles
https://spectraldifferences.wordpress.com/2015/03/24/add-an-envi-header-to-jaxa-global-mangrove-watch-palsar-tiles/
* GNU Parallel (Sebuah Uji Coba) http://kaka.prakasa.my.id/2014/09/04/gnu-parallel-sebuah-uji-coba/ * GNU Parallel (Sebuah Uji Coba)
http://kaka.prakasa.my.id/2014/09/04/gnu-parallel-sebuah-uji-coba/
* 你见过的最牛逼的命令行程序是什么? http://www.zhihu.com/question/29257300 * 你见过的最牛逼的命令行程序是什么?
http://www.zhihu.com/question/29257300
* Bug fixes and man page updates. * Bug fixes and man page updates.

View file

@ -58,6 +58,7 @@ pushd
== Upload == == Upload ==
export YYYYMMDD=`yyyymmdd` export YYYYMMDD=`yyyymmdd`
eval `gpg-agent --daemon`
make upload make upload
# Only needed for alpha: # Only needed for alpha:
@ -141,8 +142,7 @@ YYYYMMDD=`yyyymmdd`
TAG=MyTag TAG=MyTag
echo "Released as $YYYYMMDD ('$TAG')." echo "Released as $YYYYMMDD ('$TAG')."
git commit -a git commit -a -m "Released as $YYYYMMDD ('$TAG')"
git tag -s -m "Released as $YYYYMMDD ('$TAG')" $TAG git tag -s -m "Released as $YYYYMMDD ('$TAG')" $TAG
git tag -s -m "Released as $YYYYMMDD ('$TAG')" $YYYYMMDD git tag -s -m "Released as $YYYYMMDD ('$TAG')" $YYYYMMDD
@ -209,66 +209,43 @@ 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 20150422 ('Germanwings') released Subject: GNU Parallel 20150522 ('Nepal') released
GNU Parallel 20150422 ('Germanwings') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/ GNU Parallel 20150522 ('Nepal') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/
Haiku of the month: Haiku of the month:
SSH set up? Many jobs to run.
Instant cluster needed now? Idle cores is not your thing.
Use GNU Parallel. Use GNU Parallel.
-- Ole Tange -- Ole Tange
New in this release: New in this release:
* Security fix. An attacker on the local system could make you overwrite one of your own files with a single byte. The problem exist when you use --compress or --tmux or --pipe or --cat or --fifo. The attacker must figure out the randomly chosen file name and create a symlink within a time window of 15 ms.
* GNU Parallel now has a DOI: https://dx.doi.org/10.5281/zenodo.16303
* GNU Parallel was cited in: Scaling Machine Learning for Target Prediction in Drug Discovery using Apache Spark https://cris.cumulus.vub.ac.be/portal/files/5147244/spark.pdf
* GNU Parallel was cited in: Bayesian inference of protein structure from chemical shift data https://peerj.com/articles/861/
* GNU Parallel was cited in: Toward Enhanced Metadata Quality of Large-Scale Digital Libraries: Estimating Volume Time Range https://www.ideals.illinois.edu/bitstream/handle/2142/73656/186_ready.pdf
* GNU Parallel was cited in: Contrasting regional architectures of schizophrenia and other complex diseases using fast variance components analysis http://biorxiv.org/content/biorxiv/early/2015/03/13/016527.full.pdf
* GNU Parallel was cited in: Experimental study on the Wind Farm Substation Cable Installation Problem http://i11www.iti.uni-karlsruhe.de/_media/teaching/theses/ma-schmitz-14.pdf
* <<afventer - rykket >> Comparing the CarbonTracker and TM5-4DVar data assimilation systems for CO2 surface flux inversions http://www.atmos-chem-phys-discuss.net/15/8883/2015/acpd-15-8883-2015-discussion.html * <<afventer - rykket >> Comparing the CarbonTracker and TM5-4DVar data assimilation systems for CO2 surface flux inversions http://www.atmos-chem-phys-discuss.net/15/8883/2015/acpd-15-8883-2015-discussion.html
* <<afventer opdatering>> CIDER: a pipeline for detecting waves of coordinated transcriptional regulation in gene expression time-course data http://biorxiv.org/content/biorxiv/early/2015/03/17/012518.full.pdf * <<afventer opdatering>> CIDER: a pipeline for detecting waves of coordinated transcriptional regulation in gene expression time-course data http://biorxiv.org/content/biorxiv/early/2015/03/17/012518.full.pdf
* <<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 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
taxator-tk http://algbio.cs.uni-duesseldorf.de/webapps/wa-download/ (check it) taxator-tk http://algbio.cs.uni-duesseldorf.de/webapps/wa-download/ (check it)
* << afventer svar fra Rachel >> GNU Parallel was used in: SISRS: Site Identification from Short Read Sequences https://github.com/rachelss/SISRS/ * << afventer svar fra Rachel >> GNU Parallel was used in: SISRS: Site Identification from Short Read Sequences https://github.com/rachelss/SISRS/
* GNU Parallel was used in: landsat-gifworks https://github.com/KAPPS-/landsat-gifworks * GNU Parallel was cited in: Sequencing the cap-snatching repertoire of H1N1 influenza provides insight into the mechanism of viral transcription initiation http://nar.oxfordjournals.org/content/early/2015/04/20/nar.gkv333.full.pdf
* GNU Parallel was used in: https://github.com/exascience/elprep * GNU Parallel was cited in: Genome assemblyusing Nanopore-guided long and error-free DNA reads http://www.biomedcentral.com/content/pdf/s12864-015-1519-z.pdf
* GNU Parallel was used in: http://search.cpan.org/~jillrowe/HPC-Runner-GnuParallel-0.01/ * GNU Parallel was cited in: Contrasting regional architectures of schizophrenia and other complex diseases using fast variance components analysis http://biorxiv.org/content/biorxiv/early/2015/03/13/016527.full.pdf
* GNU Parallel was used in: http://search.cpan.org/~ajpage/Bio-Roary-2.0.7/lib/Bio/Roary/JobRunner/Parallel.pm * <<kontakt>> 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
* GNU Parallel was used in: Rapid haploid SNP calling https://github.com/tseemann/snippy * GNU Parallel was used in: Gene Set Omic Analysis (GSOA) method https://bitbucket.org/srp33/gsoa
* Pictures and Metadata http://www.ozzy.no/2015/02/05/pictures-and-metadata/ * Execute commands on multiple computers using GNU Parallel (setting up a cluster on the cheap) https://spectraldifferences.wordpress.com/2015/04/26/execute-commands-on-multiple-computers-using-gnu-parallel-setting-up-a-cluster-on-the-cheap/
* Task automation with bash and parallel https://biowize.wordpress.com/2015/03/23/task-automation-with-bash-and-parallel/ * Functions and GNU parallel for effective cluster load management http://genomespot.blogspot.dk/2015/04/functions-and-gnu-parallel-for.html
* How To: Speed Up File Transfers in Linux using RSync with GNU Parallel http://www.yourownlinux.com/2015/04/speed-up-file-transfers-using-rsync-with-gnu-parallel.html
* Mirroring a Git Repository https://avacariu.me/articles/mirroring-a-git-repository.html
* Add an ENVI header to JAXA Global Mangrove Watch PALSAR tiles https://spectraldifferences.wordpress.com/2015/03/24/add-an-envi-header-to-jaxa-global-mangrove-watch-palsar-tiles/
* GNU Parallel (Sebuah Uji Coba) http://kaka.prakasa.my.id/2014/09/04/gnu-parallel-sebuah-uji-coba/
* 你见过的最牛逼的命令行程序是什么? http://www.zhihu.com/question/29257300
* Bug fixes and man page updates. * Bug fixes and man page updates.

View file

@ -725,7 +725,6 @@ sub options_hash {
"use-cpus-instead-of-cores" => \$opt::use_cpus_instead_of_cores, "use-cpus-instead-of-cores" => \$opt::use_cpus_instead_of_cores,
"shellquote|shell_quote|shell-quote" => \$opt::shellquote, "shellquote|shell_quote|shell-quote" => \$opt::shellquote,
"nice=i" => \$opt::nice, "nice=i" => \$opt::nice,
"timeout=s" => \$opt::timeout,
"tag" => \$opt::tag, "tag" => \$opt::tag,
"tagstring|tag-string=s" => \$opt::tagstring, "tagstring|tag-string=s" => \$opt::tagstring,
"onall" => \$opt::onall, "onall" => \$opt::onall,
@ -751,9 +750,7 @@ sub options_hash {
"compress" => \$opt::compress, "compress" => \$opt::compress,
"tty" => \$opt::tty, "tty" => \$opt::tty,
"T" => \$opt::retired, "T" => \$opt::retired,
"halt-on-error|halt=s" => \$opt::halt,
"H=i" => \$opt::retired, "H=i" => \$opt::retired,
"retries=i" => \$opt::retries,
"dry-run|dryrun" => \$opt::dryrun, "dry-run|dryrun" => \$opt::dryrun,
"progress" => \$opt::progress, "progress" => \$opt::progress,
"eta" => \$opt::eta, "eta" => \$opt::eta,
@ -779,7 +776,11 @@ sub options_hash {
"xapply" => \$opt::xapply, "xapply" => \$opt::xapply,
"bibtex" => \$opt::bibtex, "bibtex" => \$opt::bibtex,
"wc|willcite|will-cite|nn|nonotice|no-notice" => \$opt::willcite, "wc|willcite|will-cite|nn|nonotice|no-notice" => \$opt::willcite,
# Termination and retries
"halt-on-error|halt=s" => \$opt::halt,
"memfree=s" => \$opt::memfree, "memfree=s" => \$opt::memfree,
"retries=i" => \$opt::retries,
"timeout=s" => \$opt::timeout,
# xargs-compatibility - implemented, man, testsuite # xargs-compatibility - implemented, man, testsuite
"max-procs|P=s" => \$opt::jobs, "max-procs|P=s" => \$opt::jobs,
"delimiter|d=s" => \$opt::d, "delimiter|d=s" => \$opt::d,
@ -1053,7 +1054,7 @@ sub parse_options {
sub init_globals { sub init_globals {
# Defaults: # Defaults:
$Global::version = 20150422; $Global::version = 20150424;
$Global::progname = 'parallel'; $Global::progname = 'parallel';
$Global::infinity = 2**31; $Global::infinity = 2**31;
$Global::debug = 0; $Global::debug = 0;

View file

@ -488,7 +488,7 @@ I<regexp> is a Perl Regular Expression:
http://perldoc.perl.org/perlre.html http://perldoc.perl.org/perlre.html
=item B<--compress> (beta testing) =item B<--compress>
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 this will take up less disk space in $TMPDIR and possibly be faster
@ -499,9 +499,9 @@ 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> (beta testing) =item B<--compress-program> I<prg>
=item B<--decompress-program> I<prg> (beta testing) =item B<--decompress-program> I<prg>
Use I<prg> for (de)compressing temporary files. It is assumed that I<prg 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
@ -514,9 +514,9 @@ If receiving SIGNING, GNU B<parallel> will send SIGINT to tasks
running on remote computers thus killing them. running on remote computers thus killing them.
=item B<--delimiter> I<delim> (beta testing) =item B<--delimiter> I<delim>
=item B<-d> I<delim> (beta testing) =item B<-d> I<delim>
Input items are terminated by I<delim>. Quotes and backslash are not Input items are terminated by I<delim>. Quotes and backslash are not
special; every character in the input is taken literally. Disables special; every character in the input is taken literally. Disables
@ -568,7 +568,7 @@ If I<eof-str> is omitted, there is no end of file string. If neither
B<-E> nor B<-e> is used, no end of file string is used. B<-E> nor B<-e> is used, no end of file string is used.
=item B<--env> I<var> (alpha testing) =item B<--env> I<var> (beta testing)
Copy environment variable I<var>. This will copy I<var> to the Copy environment variable I<var>. This will copy I<var> to the
environment that the command is run in. This is especially useful for environment that the command is run in. This is especially useful for
@ -782,7 +782,7 @@ specified, and for B<-I>{} otherwise. This option is deprecated;
use B<-I> instead. use B<-I> instead.
=item B<--joblog> I<logfile> (beta testing) =item B<--joblog> I<logfile>
Logfile for executed jobs. Save a list of the executed jobs to Logfile for executed jobs. Save a list of the executed jobs to
I<logfile> in the following TAB separated format: sequence number, I<logfile> in the following TAB separated format: sequence number,
@ -1039,9 +1039,9 @@ of each job is saved in a file and the filename is then printed.
See also: B<--results> See also: B<--results>
=item B<--pipe> (beta testing) =item B<--pipe>
=item B<--spreadstdin> (beta testing) =item B<--spreadstdin>
Spread input to jobs on stdin (standard input). Read a block of data Spread input to jobs on stdin (standard input). Read a block of data
from stdin (standard input) and give one block of data as input to one from stdin (standard input) and give one block of data as input to one
@ -1068,7 +1068,7 @@ B<--files> is often used with B<--pipe>.
See also: B<--recstart>, B<--recend>, B<--fifo>, B<--cat>, B<--pipepart>. See also: B<--recstart>, B<--recend>, B<--fifo>, B<--cat>, B<--pipepart>.
=item B<--pipepart> (alpha testing) =item B<--pipepart> (beta testing)
Pipe parts of a physical file. B<--pipepart> works similar to Pipe parts of a physical file. B<--pipepart> works similar to
B<--pipe>, but is much faster. It has a few limitations: B<--pipe>, but is much faster. It has a few limitations:
@ -1162,13 +1162,13 @@ exit (used by GNU B<parallel> itself to determine the line length
on remote computers). on remote computers).
=item B<--number-of-cpus> (beta testing) =item B<--number-of-cpus>
Print the number of physical CPUs and exit (used by GNU B<parallel> Print the number of physical CPUs and exit (used by GNU B<parallel>
itself to determine the number of physical CPUs on remote computers). itself to determine the number of physical CPUs on remote computers).
=item B<--number-of-cores> (beta testing) =item B<--number-of-cores>
Print the number of CPU cores and exit (used by GNU B<parallel> itself Print the number of CPU cores and exit (used by GNU B<parallel> itself
to determine the number of CPU cores on remote computers). to determine the number of CPU cores on remote computers).
@ -1180,7 +1180,7 @@ Overrides an earlier B<--keep-order> (e.g. if set in
B<~/.parallel/config>). B<~/.parallel/config>).
=item B<--nice> I<niceness> (beta testing) =item B<--nice> I<niceness>
Run the command at this niceness. For simple commands you can just add Run the command at this niceness. For simple commands you can just add
B<nice> in front of the command. But if the command consists of more B<nice> in front of the command. But if the command consists of more
@ -1441,7 +1441,7 @@ B<--keep-order> will not work with B<--round-robin> as it is
impossible to track which input block corresponds to which output. impossible to track which input block corresponds to which output.
=item B<--rpl> 'I<tag> I<perl expression>' (beta testing) =item B<--rpl> 'I<tag> I<perl expression>'
Use I<tag> as a replacement string for I<perl expression>. This makes Use I<tag> as a replacement string for I<perl expression>. This makes
it possible to define your own replacement strings. GNU B<parallel>'s it possible to define your own replacement strings. GNU B<parallel>'s
@ -1616,7 +1616,7 @@ Does not run the command but quotes it. Useful for making quoted
composed commands for GNU B<parallel>. composed commands for GNU B<parallel>.
=item B<--shuf> (alpha testing) =item B<--shuf> (beta testing)
Shuffle jobs. When having multiple input sources it is hard to Shuffle jobs. When having multiple input sources it is hard to
randomize jobs. --shuf will generate all jobs, and shuffle them before randomize jobs. --shuf will generate all jobs, and shuffle them before
@ -1781,7 +1781,7 @@ the lines will be prepended with the sshlogin instead.
B<--tag> is ignored when using B<-u>. B<--tag> is ignored when using B<-u>.
=item B<--tagstring> I<str> (beta testing) =item B<--tagstring> I<str>
Tag lines with a string. Each output line will be prepended with Tag lines with a string. Each output line will be prepended with
I<str> and TAB (\t). I<str> can contain replacement strings such as I<str> and TAB (\t). I<str> can contain replacement strings such as
@ -1798,7 +1798,7 @@ different dir for the files. Setting B<--tmpdir> is equivalent to
setting $TMPDIR. setting $TMPDIR.
=item B<--tmux> (beta testing) =item B<--tmux>
Use B<tmux> for output. Start a B<tmux> session and run each job in a Use B<tmux> for output. Start a B<tmux> session and run each job in a
window in that session. No other output will be produced. window in that session. No other output will be produced.