diff --git a/NEWS b/NEWS index 48438397..3d34ad7f 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,20 @@ +20181222 + +* Better /proc/cpuinfo parser. + +* Simpler job scheduling flow. + +* MPGI Workshop: Job Parallelization with Task Arrays and GNU Parallel https://www.msi.umn.edu/tutorials/mpgi-workshop-module-4 + +* CONCOCT uses GNU Parallel https://media.readthedocs.org/pdf/concoct/latest/concoct.pdf + +* If you use SLURM read https://wiki.hpc.uconn.edu/index.php/Advanced_SLURM + +* すぐ忘れてしまう、仕事で使う技 https://qiita.com/hana_shin/items/53c3c78525c9c758ae7c + +* Bug fixes and man page updates. + + 20181122 * Experimental simpler job flow control. diff --git a/README b/README index 13f22c82..251b8b49 100644 --- a/README +++ b/README @@ -44,9 +44,9 @@ document. Full installation of GNU Parallel is as simple as: - wget https://ftpmirror.gnu.org/parallel/parallel-20181122.tar.bz2 - bzip2 -dc parallel-20181122.tar.bz2 | tar xvf - - cd parallel-20181122 + wget https://ftpmirror.gnu.org/parallel/parallel-20181222.tar.bz2 + bzip2 -dc parallel-20181222.tar.bz2 | tar xvf - + cd parallel-20181222 ./configure && make && sudo make install @@ -55,9 +55,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 ~/bin and ~/share: - wget https://ftpmirror.gnu.org/parallel/parallel-20181122.tar.bz2 - bzip2 -dc parallel-20181122.tar.bz2 | tar xvf - - cd parallel-20181122 + wget https://ftpmirror.gnu.org/parallel/parallel-20181222.tar.bz2 + bzip2 -dc parallel-20181222.tar.bz2 | tar xvf - + cd parallel-20181222 ./configure --prefix=$HOME && make && make install Or if your system lacks 'make' you can simply copy src/parallel diff --git a/configure b/configure index 0dea38d6..dbbd9461 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for parallel 20181122. +# Generated by GNU Autoconf 2.69 for parallel 20181222. # # Report bugs to . # @@ -579,8 +579,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='parallel' PACKAGE_TARNAME='parallel' -PACKAGE_VERSION='20181122' -PACKAGE_STRING='parallel 20181122' +PACKAGE_VERSION='20181222' +PACKAGE_STRING='parallel 20181222' PACKAGE_BUGREPORT='bug-parallel@gnu.org' PACKAGE_URL='' @@ -1214,7 +1214,7 @@ if test "$ac_init_help" = "long"; then # 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. cat <<_ACEOF -\`configure' configures parallel 20181122 to adapt to many kinds of systems. +\`configure' configures parallel 20181222 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1281,7 +1281,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of parallel 20181122:";; + short | recursive ) echo "Configuration of parallel 20181222:";; esac cat <<\_ACEOF @@ -1357,7 +1357,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -parallel configure 20181122 +parallel configure 20181222 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1374,7 +1374,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by parallel $as_me 20181122, which was +It was created by parallel $as_me 20181222, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2237,7 +2237,7 @@ fi # Define the identity of the package. PACKAGE='parallel' - VERSION='20181122' + VERSION='20181222' cat >>confdefs.h <<_ACEOF @@ -2880,7 +2880,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by parallel $as_me 20181122, which was +This file was extended by parallel $as_me 20181222, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -2942,7 +2942,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -parallel config.status 20181122 +parallel config.status 20181222 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 60218c2a..ff33d6b9 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([parallel], [20181122], [bug-parallel@gnu.org]) +AC_INIT([parallel], [20181222], [bug-parallel@gnu.org]) AM_INIT_AUTOMAKE([-Wall -Werror foreign]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_FILES([ diff --git a/doc/release_new_version b/doc/release_new_version index e95bd27b..36e50257 100644 --- a/doc/release_new_version +++ b/doc/release_new_version @@ -206,17 +206,30 @@ from:tange@gnu.org to:parallel@gnu.org, bug-parallel@gnu.org stable-bcc: Jesse Alama -Subject: GNU Parallel 20181222 ('InSight') released <<[stable]>> +Subject: GNU Parallel 20181222 ('Yellow Jacket/InSight/Jacob Sparre') released <<[stable]>> -GNU Parallel 20181222 ('') <<[stable]>> has been released. It is available for download at: http://ftpmirror.gnu.org/parallel/ +GNU Parallel 20181222 ('Jacob Sparre') <<[stable]>> has been released. It is available for download at: http://ftpmirror.gnu.org/parallel/ <> Quote of the month: + GNU parallel is a seriously powerful flexible and tool. + -- Greg Hurrell @wincent + New in this release: -* https://qiita.com/hana_shin/items/53c3c78525c9c758ae7c +* Better /proc/cpuinfo parser. + +* Simpler job scheduling flow. + +* MPGI Workshop: Job Parallelization with Task Arrays and GNU Parallel https://www.msi.umn.edu/tutorials/mpgi-workshop-module-4 + +* CONCOCT uses GNU Parallel https://media.readthedocs.org/pdf/concoct/latest/concoct.pdf + +* If you use SLURM read https://wiki.hpc.uconn.edu/index.php/Advanced_SLURM + +* すぐ忘れてしまう、仕事で使う技 https://qiita.com/hana_shin/items/53c3c78525c9c758ae7c * Bug fixes and man page updates. diff --git a/packager/obs/home:tange/parallel/.osc/_files b/packager/obs/home:tange/parallel/.osc/_files index 39541a53..dd9b1dcf 100644 --- a/packager/obs/home:tange/parallel/.osc/_files +++ b/packager/obs/home:tange/parallel/.osc/_files @@ -1,6 +1,6 @@ - - - - - + + + + + diff --git a/packager/obs/home:tange/parallel/.osc/parallel.spec b/packager/obs/home:tange/parallel/.osc/parallel.spec index df608706..c09353c8 100644 --- a/packager/obs/home:tange/parallel/.osc/parallel.spec +++ b/packager/obs/home:tange/parallel/.osc/parallel.spec @@ -1,7 +1,7 @@ Summary: Shell tool for executing jobs in parallel Name: parallel -Version: 20181122 +Version: 20181222 Release: 1.2 License: GPL Group: Productivity/File utilities diff --git a/packager/obs/home:tange/parallel/parallel.spec b/packager/obs/home:tange/parallel/parallel.spec index df608706..c09353c8 100644 --- a/packager/obs/home:tange/parallel/parallel.spec +++ b/packager/obs/home:tange/parallel/parallel.spec @@ -1,7 +1,7 @@ Summary: Shell tool for executing jobs in parallel Name: parallel -Version: 20181122 +Version: 20181222 Release: 1.2 License: GPL Group: Productivity/File utilities diff --git a/src/niceload b/src/niceload index ab53322e..59e7025d 100755 --- a/src/niceload +++ b/src/niceload @@ -24,7 +24,7 @@ use strict; use Getopt::Long; $Global::progname="niceload"; -$Global::version = 20181124; +$Global::version = 20181222; Getopt::Long::Configure("bundling","require_order"); get_options_from_array(\@ARGV) || die_usage(); if($opt::version) { diff --git a/src/parallel b/src/parallel index 46b07da3..29a8d8ff 100755 --- a/src/parallel +++ b/src/parallel @@ -1083,6 +1083,8 @@ sub options_hash { "gnu" => \$opt::gnu, "link|xapply" => \$opt::link, "linkinputsource|xapplyinputsource=i" => \@opt::linkinputsource, + # Before changing this line, please read + # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice "bibtex|citation" => \$opt::citation, "wc|willcite|will-cite|nn|nonotice|no-notice" => \$opt::willcite, # Termination and retries @@ -1186,6 +1188,8 @@ sub parse_options { my @argv_before = @ARGV; @ARGV = read_options(); + # Before changing this line, please read + # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice if(defined $opt::citation) { citation(\@argv_before,\@ARGV); wait_and_exit(0); @@ -1465,6 +1469,8 @@ sub parse_options { # runs. If that is too much trouble for you, why not use one of # the alternatives instead? # See a list in: 'man parallel_alternatives' + # + # Please read the above before changing this line. citation_notice(); parse_halt(); @@ -1565,7 +1571,7 @@ sub check_invalid_option_combinations { sub init_globals { # Defaults: - $Global::version = 20181202; + $Global::version = 20181222; $Global::progname = 'parallel'; $Global::infinity = 2**31; $Global::debug = 0; @@ -4275,6 +4281,8 @@ sub usage { " O. Tange (2018): GNU Parallel 2018, Mar 2018, ISBN 9781387509881,", " DOI https://doi.org/10.5281/zenodo.1146014", "", + # Before changing this line, please read + # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice "This helps funding further development; AND IT WON'T COST YOU A CENT.", "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.", "", @@ -4303,6 +4311,8 @@ sub citation_notice { " O. Tange (2018): GNU Parallel 2018, Mar 2018, ISBN 9781387509881,", " DOI https://doi.org/10.5281/zenodo.1146014", "", + # Before changing this line, please read + # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice "This helps funding further development; AND IT WON'T COST YOU A CENT.", "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.", "", @@ -4423,6 +4433,8 @@ sub citation { "", "(Feel free to use \\nocite{tange_ole_2018_1146014})", "", + # Before changing this line, please read + # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice "This helps funding further development; AND IT WON'T COST YOU A CENT.", "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.", "", diff --git a/src/parallel_design.pod b/src/parallel_design.pod index 7bf9f1f8..7ae4868d 100644 --- a/src/parallel_design.pod +++ b/src/parallel_design.pod @@ -1235,6 +1235,11 @@ saying "Do not show this again". But if that is too much trouble for you, why not use one of the alternatives instead? See a list in: B. +As the request for citation is not a legal requirement this is +acceptable under GPLv3 and cleared with Richard M. Stallman +himself. Thus it does not fall under this: +https://www.gnu.org/licenses/gpl-faq.en.html#RequireCitation + =head1 Ideas for new design diff --git a/src/sql b/src/sql index 18fa8de3..8515c03b 100755 --- a/src/sql +++ b/src/sql @@ -576,7 +576,7 @@ $Global::Initfile && unlink $Global::Initfile; exit ($err); sub parse_options { - $Global::version = 20181124; + $Global::version = 20181222; $Global::progname = 'sql'; # This must be done first as this may exec myself diff --git a/testsuite/tests-to-run/parallel-tutorial.sh b/testsuite/tests-to-run/parallel-tutorial.sh index 1eb60ad2..f9450c13 100644 --- a/testsuite/tests-to-run/parallel-tutorial.sh +++ b/testsuite/tests-to-run/parallel-tutorial.sh @@ -81,6 +81,7 @@ perl -ne '$/="\n\n"; /^Output/../^[^O]\S/ and next; /^ / and print;' ../../src/ s{rsync: link_stat ".*/home/parallel/input_file.out" .*\n}{}; s{rsync error: some files/attrs were not transferred .*\n}{}; s{.* GtkDialog .*\n}{}; + s{tried 1}{}; ' | perl -ne '/GTK2_RC_FILES/ and next; /GTK_RC_FILES/ and next; diff --git a/testsuite/wanted-results/parallel-tutorial b/testsuite/wanted-results/parallel-tutorial index bc618270..ca154b66 100644 --- a/testsuite/wanted-results/parallel-tutorial +++ b/testsuite/wanted-results/parallel-tutorial @@ -654,9 +654,9 @@ echo X; exit X completed 1 completed 2 completed 0 -tried 1 + tried 0 -tried 1 + show_signals() { perl -e 'for(keys %SIG) { $SIG{$_} = eval "sub { print \"Got $_\\n\"; }"; @@ -1440,8 +1440,8 @@ Start 4 Slow started Forced running after 1 sec Slow ended +Give up after 2 secs parallel: Warning: Semaphore timed out. Stealing the semaphore. -parallel: Warning: Semaphore timed out. Exiting. parallel --help Usage: