parallel: --no-keep-order will reverse --keep-order. --no-notice => --will-cite.

This commit is contained in:
Ole Tange 2015-01-11 23:08:23 +01:00
parent 2c3fd52197
commit ca03efde42
3 changed files with 52 additions and 19 deletions

View file

@ -57,6 +57,8 @@ pushd
== Upload == == Upload ==
eval `gpg-agent --daemon`
YYYYMMDD=`yyyymmdd` YYYYMMDD=`yyyymmdd`
cp parallel-$YYYYMMDD.tar.bz2 parallel-latest.tar.bz2 cp parallel-$YYYYMMDD.tar.bz2 parallel-latest.tar.bz2
cp doc/parallel.directive parallel-$YYYYMMDD.tar.bz2.directive cp doc/parallel.directive parallel-$YYYYMMDD.tar.bz2.directive
@ -158,7 +160,7 @@ git diff
git commit -a git commit -a
Released as 20140x22 (''). Released as 20150x22 ('').
TAG=MyTag TAG=MyTag
YYYYMMDD=`yyyymmdd` YYYYMMDD=`yyyymmdd`
@ -226,7 +228,7 @@ 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 20150122 ('Manila QZ8501') released Subject: GNU Parallel 20150122 (' (((:~{> Hebdo Manila QZ8501') released
GNU Parallel 20150122 ('Hebdo Manila QZ8501') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/ GNU Parallel 20150122 ('Hebdo Manila QZ8501') has been released. It is available for download at: http://ftp.gnu.org/gnu/parallel/
@ -236,20 +238,46 @@ Haiku of the month:
New in this release: New in this release:
* Remote jobs now sends stderr (standard error) to stderr (standard error) instead of stdout (standard output) * Remote jobs now send stderr (standard error) to stderr (standard error) instead of stdout (standard output).
* Remote execution is now packed using hex encoded bzip2. That means that big environments (app. 250 KB) can be transferred. This change makes remote execution alpha quality. * Remote execution command is now packed using hex encoded bzip2. This means that big environments (app. 250 KB) can be transferred. This change makes remote execution alpha quality.
* --semaphoretimeout now takes a negative value. This means give up if the semaphore is not gotten within the timeout. * --semaphoretimeout now takes a negative value. This means give up if the semaphore is not gotten within the timeout.
* --halt -1 and -2 now means halt if a job succeeds (so the opposite of 1 and 2).
* Bash's second fix of shellshock caused --env to break again when exporting functions. This has been fixed again.
* A semibig refactoring of big functions. All non-trivial functions are now less than 100 lines. The refactoring makes this release beta quality. * A semibig refactoring of big functions. All non-trivial functions are now less than 100 lines. The refactoring makes this release beta quality.
* GNU Parallel was cited in: SlideToolkit: An Assistive Toolset for the Histological Quantification of Whole Slide Images http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0110289
* GNU Parallel was cited in: Improving Energy and Performance with Spintronics Caches in Multicore Systems http://link.springer.com/chapter/10.1007/978-3-319-14313-2_24
* GNU Parallel was cited in: Parallel post-processing with MPI-Bash http://dl.acm.org/citation.cfm?id=2691137 * GNU Parallel was cited in: Parallel post-processing with MPI-Bash http://dl.acm.org/citation.cfm?id=2691137
* GNU Parallel was cited in: Distinguishing cause from effect using observational data: methods and benchmarks http://arxiv-web3.library.cornell.edu/pdf/1412.3773.pdf * GNU Parallel was cited in: Distinguishing cause from effect using observational data: methods and benchmarks http://arxiv-web3.library.cornell.edu/pdf/1412.3773.pdf
* GNU Parallel was cited in: Bayesian Inference of Protein Structure from Chemical Shift Data https://peerj.com/preprints/692.pdf * GNU Parallel was cited in: Bayesian Inference of Protein Structure from Chemical Shift Data https://peerj.com/preprints/692.pdf
* GNU Parallel was cited in: Data Science at the Command Line http://cdn.oreillystatic.com/oreilly/booksamplers/9781491947852_sampler.pdf
* GNU Parallel was cited in: Speaker environment classification using rhythm metrics in Levantine Arabic dialect http://ieeexplore.ieee.org/xpl/abstractReferences.jsp?tp=&arnumber=6923918
* GNU Parallel was cited in: Resolution of Genetic Map Expansion Caused by Excess Heterozygosity in Plant Recombinant Inbred Populations http://www.g3journal.org/content/4/10/1963.full.pdf
* GNU Parallel was cited in: Bayesian Inference of Protein Structure from Chemical Shift Data https://peerj.com/preprints/692v1.pdf
* GNU Parallel was cited in: Clonal interference and Mullerʼs ratchet in spatial habitats http://iopscience.iop.org/1478-3975/11/5/056003
* GNU Parallel was cited in: Web-scale content reuse detection ftp://info.isi.edu/isi-pubs/tr-692.pdf
* GNU Parallel was cited in: Computação Verde na Camada de Aplicação https://linux.ime.usp.br/~tpaiva/mac0499/files/monografia.pdf
* GNU Parallel was cited in: Frameshift alignment: statistics and post-genomic applications http://bioinformatics.oxfordjournals.org/content/30/24/3575.full.pdf+html
* GNU Parallel was cited in: Towards Recommender Engineering Tools and Experiments for Identifying Recommender Differences http://elehack.net/research/thesis/mde-thesis.pdf
* GNU Parallel: Open Source For You (OSFY) magazine, October 2013 edition http://www.shakthimaan.com/posts/2014/11/27/gnu-parallel/news.html * GNU Parallel: Open Source For You (OSFY) magazine, October 2013 edition http://www.shakthimaan.com/posts/2014/11/27/gnu-parallel/news.html
* Multithreaded Encryption and Compression http://www.krazyworks.com/multithreaded-encryption-and-compression/ * Multithreaded Encryption and Compression http://www.krazyworks.com/multithreaded-encryption-and-compression/
@ -258,6 +286,8 @@ New in this release:
* How to build gnu parallel from source on Ubuntu PC? http://blog.ovidiuparvu.com/build-gnu-parallel-source-ubuntu-pc/ * How to build gnu parallel from source on Ubuntu PC? http://blog.ovidiuparvu.com/build-gnu-parallel-source-ubuntu-pc/
* GNU parallel for openaddr-process-one https://nelsonslog.wordpress.com/2015/01/09/gnu-parallel-for-openaddr-process-one/
* From SRA Project to FastQ http://danielecook.com/sra-project-fastq/ * From SRA Project to FastQ http://danielecook.com/sra-project-fastq/
* コマンドを並列に実行するGNU parallelがとても便利 http://bicycle1885.hatenablog.com/entry/2014/08/10/143612 * コマンドを並列に実行するGNU parallelがとても便利 http://bicycle1885.hatenablog.com/entry/2014/08/10/143612

View file

@ -600,8 +600,8 @@ sub options_hash {
"resume" => \$opt::resume, "resume" => \$opt::resume,
"resume-failed|resumefailed" => \$opt::resume_failed, "resume-failed|resumefailed" => \$opt::resume_failed,
"silent" => \$opt::silent, "silent" => \$opt::silent,
#"silent-error|silenterror" => \$opt::silent_error,
"keep-order|keeporder|k" => \$opt::keeporder, "keep-order|keeporder|k" => \$opt::keeporder,
"no-keep-order|nokeeporder|nok|no-k" => \$opt::nokeeporder,
"group" => \$opt::group, "group" => \$opt::group,
"g" => \$opt::retired, "g" => \$opt::retired,
"ungroup|u" => \$opt::ungroup, "ungroup|u" => \$opt::ungroup,
@ -681,10 +681,10 @@ sub options_hash {
"files|output-as-files|outputasfiles" => \$opt::files, "files|output-as-files|outputasfiles" => \$opt::files,
"block|block-size|blocksize=s" => \$opt::blocksize, "block|block-size|blocksize=s" => \$opt::blocksize,
"tollef" => \$opt::retired, "tollef" => \$opt::retired,
"gnu" => \$opt::gnu, "gnu" => \$opt::ignored_option,
"xapply" => \$opt::xapply, "xapply" => \$opt::xapply,
"bibtex" => \$opt::bibtex, "bibtex" => \$opt::bibtex,
"nn|nonotice|no-notice" => \$opt::no_notice, "wc|willcite|will-cite|nn|nonotice|no-notice" => \$opt::willcite,
"memfree=s" => \$opt::memfree, "memfree=s" => \$opt::memfree,
# xargs-compatibility - implemented, man, testsuite # xargs-compatibility - implemented, man, testsuite
"max-procs|P=s" => \$opt::jobs, "max-procs|P=s" => \$opt::jobs,
@ -774,6 +774,10 @@ sub parse_options {
init_globals(); init_globals();
@ARGV=read_options(); @ARGV=read_options();
# no-* overrides *
if($opt::nokeeporder) { $opt::keeporder = undef; }
if($opt::noctrlc) { $opt::ctrlc = undef; }
if(@opt::v) { $Global::verbose = $#opt::v+1; } # Convert -v -v to v=2 if(@opt::v) { $Global::verbose = $#opt::v+1; } # Convert -v -v to v=2
$Global::debug = $opt::D; $Global::debug = $opt::D;
$Global::shell = $ENV{'PARALLEL_SHELL'} || parent_shell($$) || $ENV{'SHELL'} || "/bin/sh"; $Global::shell = $ENV{'PARALLEL_SHELL'} || parent_shell($$) || $ENV{'SHELL'} || "/bin/sh";
@ -2699,7 +2703,7 @@ sub onall {
(@opt::env ? map { "--env ".::shell_quote_scalar($_) } @opt::env : ""), (@opt::env ? map { "--env ".::shell_quote_scalar($_) } @opt::env : ""),
); );
::debug("init", "| $0 $options\n"); ::debug("init", "| $0 $options\n");
open(my $parallel_fh, "|-", "$0 --no-notice -j0 $options") || open(my $parallel_fh, "|-", "$0 --will-cite -j0 $options") ||
::die_bug("This does not run GNU Parallel: $0 $options"); ::die_bug("This does not run GNU Parallel: $0 $options");
my @joblogs; my @joblogs;
for my $host (sort keys %Global::host) { for my $host (sort keys %Global::host) {
@ -2914,11 +2918,11 @@ sub usage {
sub citation_notice { sub citation_notice {
# if --no-notice or --plain: do nothing # if --will-cite or --plain: do nothing
# if stderr redirected: do nothing # if stderr redirected: do nothing
# if ~/.parallel/will-cite: do nothing # if ~/.parallel/will-cite: do nothing
# else: print citation notice to stderr # else: print citation notice to stderr
if($opt::no_notice if($opt::willcite
or or
$opt::plain $opt::plain
or or
@ -2937,7 +2941,7 @@ sub citation_notice {
"This helps funding further development; and it won't cost you a cent.\n", "This helps funding further development; and it won't cost you a cent.\n",
"If you pay 10000 EUR you should feel free to use GNU Parallel without citing.\n", "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.\n",
"\n", "\n",
"To silence this citation notice run 'parallel --bibtex' once or use '--no-notice'.\n\n", "To silence this citation notice run 'parallel --bibtex' once or use '--will-cite'.\n\n",
); );
} }
} }
@ -2979,9 +2983,6 @@ sub die_bug {
sub version { sub version {
# Returns: N/A # Returns: N/A
if($opt::tollef and not $opt::gnu) {
print "WARNING: YOU ARE USING --tollef. IF THINGS ARE ACTING WEIRD USE --gnu.\n";
}
print join("\n", print join("\n",
"GNU $Global::progname $Global::version", "GNU $Global::progname $Global::version",
"Copyright (C) 2007,2008,2009,2010,2011,2012,2013,2014,2015 Ole Tange", "Copyright (C) 2007,2008,2009,2010,2011,2012,2013,2014,2015 Ole Tange",
@ -2998,9 +2999,6 @@ sub version {
sub bibtex { sub bibtex {
# Returns: N/A # Returns: N/A
if($opt::tollef and not $opt::gnu) {
print "WARNING: YOU ARE USING --tollef. IF THINGS ARE ACTING WEIRD USE --gnu.\n";
}
print join("\n", print join("\n",
"Academic tradition requires you to cite works you base your article on.", "Academic tradition requires you to cite works you base your article on.",
"When using programs that use GNU Parallel to process data for publication please cite:", "When using programs that use GNU Parallel to process data for publication please cite:",
@ -3022,8 +3020,10 @@ sub bibtex {
"", "",
"This helps funding further development.", "This helps funding further development.",
"", "",
"If you pay 10000 EUR you should feel free to use GNU Parallel without citing.\n", "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.",
"" "",
"If you send a copy of your published article to tange\@gnu.org, it will be",
"mentioned in the release notes of next version of GNU Parallel.\n\n",
); );
while(not -e $ENV{'HOME'}."/.parallel/will-cite") { while(not -e $ENV{'HOME'}."/.parallel/will-cite") {
print "\nType: 'will cite' and press enter.\n> "; print "\nType: 'will cite' and press enter.\n> ";

View file

@ -4263,6 +4263,9 @@ change your alias to a script.
Report bugs to <bug-parallel@gnu.org> or Report bugs to <bug-parallel@gnu.org> or
https://savannah.gnu.org/bugs/?func=additem&group=parallel https://savannah.gnu.org/bugs/?func=additem&group=parallel
See a perfect bug report on
https://lists.gnu.org/archive/html/bug-parallel/2015-01/msg00000.html
Your bug report should always include: Your bug report should always include:
=over 2 =over 2