diff --git a/NEWS b/NEWS index 070bd416..3b823dc2 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,22 @@ +20221122 + +* Support for IPv6 adresses and _ in hostnames in --sshlogin. + +* Use --total-jobs for --eta/--bar if generating jobs is slow. + +* A lot of bug fixed in --latest-line. + +* Better support MSYS2. + +* Better Text::CSV error messages. + +* --bar supports UTF8. + +* GNU Parallel is now on Mastodon: @GNU_Parallel@hostux.social + +* Bug fixes and man page updates. + + 20221022 New in this release: diff --git a/README b/README index 0445853e..1199e71e 100644 --- a/README +++ b/README @@ -57,11 +57,11 @@ document. Full installation of GNU Parallel is as simple as: - wget https://ftpmirror.gnu.org/parallel/parallel-20221022.tar.bz2 - wget https://ftpmirror.gnu.org/parallel/parallel-20221022.tar.bz2.sig - gpg parallel-20221022.tar.bz2.sig - bzip2 -dc parallel-20221022.tar.bz2 | tar xvf - - cd parallel-20221022 + wget https://ftpmirror.gnu.org/parallel/parallel-20221122.tar.bz2 + wget https://ftpmirror.gnu.org/parallel/parallel-20221122.tar.bz2.sig + gpg parallel-20221122.tar.bz2.sig + bzip2 -dc parallel-20221122.tar.bz2 | tar xvf - + cd parallel-20221122 ./configure && make && sudo make install @@ -70,11 +70,11 @@ 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-20221022.tar.bz2 - wget https://ftpmirror.gnu.org/parallel/parallel-20221022.tar.bz2.sig - gpg parallel-20221022.tar.bz2.sig - bzip2 -dc parallel-20221022.tar.bz2 | tar xvf - - cd parallel-20221022 + wget https://ftpmirror.gnu.org/parallel/parallel-20221122.tar.bz2 + wget https://ftpmirror.gnu.org/parallel/parallel-20221122.tar.bz2.sig + gpg parallel-20221122.tar.bz2.sig + bzip2 -dc parallel-20221122.tar.bz2 | tar xvf - + cd parallel-20221122 ./configure --prefix=$HOME && make && make install Or if your system lacks 'make' you can simply copy src/parallel @@ -122,8 +122,8 @@ will love you for it. When using programs that use GNU Parallel to process data for publication please cite: - Tange, O. (2022, October 22). GNU Parallel 20221022 ('Nord Stream'). - Zenodo. https://doi.org/10.5281/zenodo.7239559 + Tange, O. (2022, November 22). GNU Parallel 20221122 ('Херсо́н'). + Zenodo. https://doi.org/10.5281/zenodo.7347980 Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software Foundation, Inc. diff --git a/configure b/configure index 3272798e..1e0be610 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.71 for parallel 20221022. +# Generated by GNU Autoconf 2.71 for parallel 20221122. # # Report bugs to . # @@ -610,8 +610,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='parallel' PACKAGE_TARNAME='parallel' -PACKAGE_VERSION='20221022' -PACKAGE_STRING='parallel 20221022' +PACKAGE_VERSION='20221122' +PACKAGE_STRING='parallel 20221122' PACKAGE_BUGREPORT='bug-parallel@gnu.org' PACKAGE_URL='' @@ -1246,7 +1246,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 20221022 to adapt to many kinds of systems. +\`configure' configures parallel 20221122 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1313,7 +1313,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of parallel 20221022:";; + short | recursive ) echo "Configuration of parallel 20221122:";; esac cat <<\_ACEOF @@ -1390,7 +1390,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -parallel configure 20221022 +parallel configure 20221122 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -1427,7 +1427,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 20221022, which was +It was created by parallel $as_me 20221122, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -2379,7 +2379,7 @@ fi # Define the identity of the package. PACKAGE='parallel' - VERSION='20221022' + VERSION='20221122' printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h @@ -3026,7 +3026,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 20221022, which was +This file was extended by parallel $as_me 20221122, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -3090,7 +3090,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -parallel config.status 20221022 +parallel config.status 20221122 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 9ecd9ad1..5877df25 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([parallel],[20221022],[bug-parallel@gnu.org]) +AC_INIT([parallel],[20221122],[bug-parallel@gnu.org]) AM_INIT_AUTOMAKE([-Wall -Werror foreign]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_FILES([ diff --git a/doc/haikus b/doc/haikus index ed047a2d..feab8487 100644 --- a/doc/haikus +++ b/doc/haikus @@ -4,9 +4,6 @@ Quote of the month: - [GNU Parallel] is the most amazing tool ever invented for bioinformatics! - -- Istvan Albert https://www.ialbert.me/ - Got around to using GNU parallel for the first time from a suggestion by @jdwasmuth ... now I'm wishing I started using this years ago -- Stefan Gavriliuc @GavriliucStefan@twitter @@ -207,6 +204,9 @@ https://negfeedback.blogspot.com/2020/05/indispensable-command-line-tools.html === Used === + [GNU Parallel] is the most amazing tool ever invented for bioinformatics! + -- Istvan Albert https://www.ialbert.me/ + If used properly, #gnuparallel actually enables time travel. -- Dr. James Wasmuth @jdwasmuth@twitter diff --git a/doc/release_new_version b/doc/release_new_version index c5306efa..5e912ea7 100644 --- a/doc/release_new_version +++ b/doc/release_new_version @@ -261,34 +261,33 @@ from:tange@gnu.org to:parallel@gnu.org, bug-parallel@gnu.org stable-bcc: Jesse Alama -Subject: GNU Parallel 20221122 ('Херсо́н/Lula/#MashaAmina') released +Subject: GNU Parallel 20221122 ('Херсо́н') released -GNU Parallel 20221122 ('<<>>') has been released. It is available for download at: lbry://@GnuParallel:4 +GNU Parallel 20221122 ('Херсо́н') has been released. It is available for download at: lbry://@GnuParallel:4 Quote of the month: - <<>> + [GNU Parallel] is the most amazing tool ever invented for bioinformatics! + -- Istvan Albert https://www.ialbert.me/ New in this release: -* JoinDiaspora is closing. New Mastodon account: @GNU_Parallel@hostux.social +* Support for IPv6 adresses and _ in hostnames in --sshlogin. -* Allow IPv6 and _ in hostname. +* Use --total-jobs for --eta/--bar if generating jobs is slow. -* Use --total-jobs if you use --bar and input is generated slowly. +* A lot of bug fixed in --latest-line. -* --latest-line deals correcly with jobs not visible yet. +* Better support MSYS2. -* --bar supports utf8 +* Better Text::CSV error messages. -* <<>> +* --bar supports UTF8. + +* GNU Parallel is now on Mastodon: @GNU_Parallel@hostux.social * Bug fixes and man page updates. -News about GNU Parallel: - -* <<>> - GNU Parallel - For people who live life in the parallel lane. diff --git a/packager/obs/home-tange/parallel/.osc/_files b/packager/obs/home-tange/parallel/.osc/_files index 51d3ddf8..2439249a 100644 --- a/packager/obs/home-tange/parallel/.osc/_files +++ b/packager/obs/home-tange/parallel/.osc/_files @@ -1,7 +1,9 @@ - - - - - - + + + + + + + + diff --git a/packager/obs/home-tange/parallel/.osc/parallel.spec b/packager/obs/home-tange/parallel/.osc/parallel.spec index 9c5b1315..4bb7da15 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: 20220922 +Version: 20221122 Release: 2.1 License: GPL-3.0-or-later Group: Productivity/File utilities diff --git a/src/env_parallel.ash b/src/env_parallel.ash index 3d857081..a3a24d5f 100755 --- a/src/env_parallel.ash +++ b/src/env_parallel.ash @@ -395,7 +395,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20221022 (GNU parallel `parallel --minversion 1`)" + echo "parset 20221122 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software" echo "Foundation, Inc." echo "License GPLv3+: GNU GPL version 3 or later " diff --git a/src/env_parallel.bash b/src/env_parallel.bash index 757b2f19..1165a605 100755 --- a/src/env_parallel.bash +++ b/src/env_parallel.bash @@ -397,7 +397,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20221022 (GNU parallel `parallel --minversion 1`)" + echo "parset 20221122 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software" echo "Foundation, Inc." echo "License GPLv3+: GNU GPL version 3 or later " diff --git a/src/env_parallel.dash b/src/env_parallel.dash index a986a7b3..e73991d6 100755 --- a/src/env_parallel.dash +++ b/src/env_parallel.dash @@ -395,7 +395,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20221022 (GNU parallel `parallel --minversion 1`)" + echo "parset 20221122 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software" echo "Foundation, Inc." echo "License GPLv3+: GNU GPL version 3 or later " diff --git a/src/env_parallel.ksh b/src/env_parallel.ksh index bf956374..a6e3b535 100755 --- a/src/env_parallel.ksh +++ b/src/env_parallel.ksh @@ -378,7 +378,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20221022 (GNU parallel `parallel --minversion 1`)" + echo "parset 20221122 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software" echo "Foundation, Inc." echo "License GPLv3+: GNU GPL version 3 or later " diff --git a/src/env_parallel.mksh b/src/env_parallel.mksh index 23e34cf8..52cd1bb8 100644 --- a/src/env_parallel.mksh +++ b/src/env_parallel.mksh @@ -380,7 +380,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20221022 (GNU parallel `parallel --minversion 1`)" + echo "parset 20221122 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software" echo "Foundation, Inc." echo "License GPLv3+: GNU GPL version 3 or later " diff --git a/src/env_parallel.sh b/src/env_parallel.sh index 929d8e72..666c9be1 100755 --- a/src/env_parallel.sh +++ b/src/env_parallel.sh @@ -395,7 +395,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20221022 (GNU parallel `parallel --minversion 1`)" + echo "parset 20221122 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software" echo "Foundation, Inc." echo "License GPLv3+: GNU GPL version 3 or later " diff --git a/src/env_parallel.zsh b/src/env_parallel.zsh index 2b2d6adb..13201424 100755 --- a/src/env_parallel.zsh +++ b/src/env_parallel.zsh @@ -370,7 +370,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20221022 (GNU parallel `parallel --minversion 1`)" + echo "parset 20221122 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software" echo "Foundation, Inc." echo "License GPLv3+: GNU GPL version 3 or later " diff --git a/src/niceload b/src/niceload index 2f5f8889..2e59aee1 100755 --- a/src/niceload +++ b/src/niceload @@ -26,7 +26,7 @@ use strict; use Getopt::Long; $Global::progname="niceload"; -$Global::version = 20221022; +$Global::version = 20221122; 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 4f37a2c0..e0b654e1 100755 --- a/src/parallel +++ b/src/parallel @@ -2702,7 +2702,7 @@ sub check_invalid_option_combinations() { sub init_globals() { # Defaults: - $Global::version = 20221115; + $Global::version = 20221122; $Global::progname = 'parallel'; $::name = "GNU Parallel"; $Global::infinity = 2**31; @@ -5615,8 +5615,8 @@ sub usage() { "If you use programs that use GNU Parallel to process data for an article in a", "scientific publication, please cite:", "", - " Tange, O. (2022, October 22). GNU Parallel 20221022 ('Nord Stream').", - " Zenodo. https://doi.org/10.5281/zenodo.7239559", + " Tange, O. (2022, November 22). GNU Parallel 20221122 ('Херсо́н').", + " Zenodo. https://doi.org/10.5281/zenodo.7347980", "", # Before changing these lines, please read # https://www.gnu.org/software/parallel/parallel_design.html#citation-notice @@ -5648,8 +5648,8 @@ sub citation_notice() { "If you use programs that use GNU Parallel to process data for an article in a", "scientific publication, please cite:", "", - " Tange, O. (2022, October 22). GNU Parallel 20221022 ('Nord Stream').", - " Zenodo. https://doi.org/10.5281/zenodo.7239559", + " Tange, O. (2022, November 22). GNU Parallel 20221122 ('Херсо́н').", + " Zenodo. https://doi.org/10.5281/zenodo.7347980", "", # Before changing these line, please read # https://www.gnu.org/software/parallel/parallel_design.html#citation-notice and @@ -5776,20 +5776,20 @@ sub citation() { "If you use programs that use GNU Parallel to process data for an article in a", "scientific publication, please cite:", "", - "\@software{tange_2022_7239559,", + "\@software{tange_2022_7347980,", " author = {Tange, Ole},", - " title = {GNU Parallel 20221022 ('Nord Stream')},", - " month = Oct,", + " title = {GNU Parallel 20221122 ('Херсо́н')},", + " month = Nov,", " year = 2022,", " note = {{GNU Parallel is a general parallelizer to run", " multiple serial command line programs in parallel", " without changing them.}},", " publisher = {Zenodo},", - " doi = {10.5281/zenodo.7239559},", - " url = {https://doi.org/10.5281/zenodo.7239559}", + " doi = {10.5281/zenodo.7347980},", + " url = {https://doi.org/10.5281/zenodo.7347980}", "}", "", - "(Feel free to use \\nocite{tange_2022_7239559})", + "(Feel free to use \\nocite{tange_2022_7347980})", "", # Before changing these lines, please read # https://www.gnu.org/software/parallel/parallel_design.html#citation-notice and diff --git a/src/parallel.pod b/src/parallel.pod index f57b45de..4101e6ae 100644 --- a/src/parallel.pod +++ b/src/parallel.pod @@ -543,7 +543,7 @@ string that is not in the command line. See also: B<:::> -=item B<--bar> +=item B<--bar> (alpha testing) Show progress as a progress bar. @@ -833,7 +833,7 @@ to stdout (standard output) unless B<--decompress-program> is given. See also: B<--compress> -=item B<--csv> +=item B<--csv> (alpha testing) Treat input as CSV-format. @@ -1049,7 +1049,7 @@ Outputs: 1,1 1,2 1,3 2,2 2,3 3,3 See also: B B<--no-run-if-empty> -=item B<--filter-hosts> +=item B<--filter-hosts> (alpha testing) Remove down hosts. @@ -3026,13 +3026,13 @@ I is in seconds, but can be postfixed with s, m, h, or d. See also: TIME POSTFIXES B<--sshlogin> B<--delay> -=item B<--sshlogin> I<[@hostgroups/][ncpus/]sshlogin[,[@hostgroups/][ncpus/]sshlogin[,...]]> (beta testing) +=item B<--sshlogin> I<[@hostgroups/][ncpus/]sshlogin[,[@hostgroups/][ncpus/]sshlogin[,...]]> (alpha testing) -=item B<--sshlogin> I<@hostgroup> (beta testing) +=item B<--sshlogin> I<@hostgroup> (alpha testing) -=item B<-S> I<[@hostgroups/][ncpus/]sshlogin[,[@hostgroups/][ncpus/]sshlogin[,...]]> (beta testing) +=item B<-S> I<[@hostgroups/][ncpus/]sshlogin[,[@hostgroups/][ncpus/]sshlogin[,...]]> (alpha testing) -=item B<-S> I<@hostgroup> (beta testing) +=item B<-S> I<@hostgroup> (alpha testing) Distribute jobs to remote computers. @@ -3225,7 +3225,7 @@ then killed. Process groups are dependant on the tty. See also: B<--ungroup> B<--open-tty> -=item B<--tag> +=item B<--tag> (alpha testing) Tag lines with arguments. @@ -3238,7 +3238,7 @@ B<--tag> is ignored when using B<-u>. See also: B<--tagstring> B<--ctag> -=item B<--tagstring> I +=item B<--tagstring> I (alpha testing) Tag lines with a string. diff --git a/src/parsort b/src/parsort index 3cc64d71..64c64c00 100755 --- a/src/parsort +++ b/src/parsort @@ -122,7 +122,7 @@ GetOptions( "help" => \$opt::dummy, ) || exit(255); $Global::progname = ($0 =~ m:(^|/)([^/]+)$:)[1]; -$Global::version = 20221022; +$Global::version = 20221122; if($opt::version) { version(); exit 0; } @Global::sortoptions = grep { ! /^-D$/ } shell_quote(@ARGV_before[0..($#ARGV_before-$#ARGV-1)]); diff --git a/src/sql b/src/sql index b19f82ae..822c07c6 100755 --- a/src/sql +++ b/src/sql @@ -667,7 +667,7 @@ $Global::Initfile && unlink $Global::Initfile; exit ($err); sub parse_options { - $Global::version = 20221022; + $Global::version = 20221122; $Global::progname = 'sql'; # This must be done first as this may exec myself