diff --git a/Makefile.am b/Makefile.am index ce3e0d5b..5b4296d2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -68,8 +68,7 @@ upload: gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-latest.tar.bz2.sig gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-$(YYYYMMDD).tar.bz2.sig - -# "|| true" needed if already uploaded + lftp --version p=`echo parallel-latest.tar.bz2*{,.sig,.asc}`; lftp -e "put $$p; bye" ftp://anonymous:ole=tange.dk@ftp-upload.gnu.org/incoming/ftp/ || true p=`echo parallel-$(YYYYMMDD).tar.bz2*{,.sig,.asc}`; lftp -e "put $$p; bye" ftp://anonymous:ole=tange.dk@ftp-upload.gnu.org/incoming/ftp/ || true diff --git a/Makefile.in b/Makefile.in index 9b224f03..0a7f63e5 100644 --- a/Makefile.in +++ b/Makefile.in @@ -836,8 +836,7 @@ upload: gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-latest.tar.bz2.sig gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-$(YYYYMMDD).tar.bz2.sig - -# "|| true" needed if already uploaded + lftp --version p=`echo parallel-latest.tar.bz2*{,.sig,.asc}`; lftp -e "put $$p; bye" ftp://anonymous:ole=tange.dk@ftp-upload.gnu.org/incoming/ftp/ || true p=`echo parallel-$(YYYYMMDD).tar.bz2*{,.sig,.asc}`; lftp -e "put $$p; bye" ftp://anonymous:ole=tange.dk@ftp-upload.gnu.org/incoming/ftp/ || true diff --git a/NEWS b/NEWS index 670cd772..2431e06f 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,16 @@ +20240622 + +New in this release: + +* Bug fixes and man page updates. + +News about GNU Parallel: + +* Howto - Parallel: lanciare comandi in simultanea https://github.com/linuxhubit/linuxhub.it/blob/main/_posts/2024-06-14-howto-parallel-per-lanciare-comandi-in-simultanea.md + +* Implementing Concurrency in Shell Scripts https://dev.to/siddhantkcode/implementing-concurrency-in-shell-scripts-521o + + 20240522 New in this release: diff --git a/README b/README index e4f76be4..df2cf8f7 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-20240522.tar.bz2 - wget https://ftpmirror.gnu.org/parallel/parallel-20240522.tar.bz2.sig - gpg parallel-20240522.tar.bz2.sig - bzip2 -dc parallel-20240522.tar.bz2 | tar xvf - - cd parallel-20240522 + wget https://ftpmirror.gnu.org/parallel/parallel-20240622.tar.bz2 + wget https://ftpmirror.gnu.org/parallel/parallel-20240622.tar.bz2.sig + gpg parallel-20240622.tar.bz2.sig + bzip2 -dc parallel-20240622.tar.bz2 | tar xvf - + cd parallel-20240622 ./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-20240522.tar.bz2 - wget https://ftpmirror.gnu.org/parallel/parallel-20240522.tar.bz2.sig - gpg parallel-20240522.tar.bz2.sig - bzip2 -dc parallel-20240522.tar.bz2 | tar xvf - - cd parallel-20240522 + wget https://ftpmirror.gnu.org/parallel/parallel-20240622.tar.bz2 + wget https://ftpmirror.gnu.org/parallel/parallel-20240622.tar.bz2.sig + gpg parallel-20240622.tar.bz2.sig + bzip2 -dc parallel-20240622.tar.bz2 | tar xvf - + cd parallel-20240622 ./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. (2024, May 22). GNU Parallel 20240522 ('Tbilisi'). - Zenodo. https://doi.org/10.5281/zenodo.11247979 + Tange, O. (2024, June 22). GNU Parallel 20240622 ('34 counts'). + Zenodo. https://doi.org/10.5281/zenodo.12518196 Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software Foundation, Inc. diff --git a/configure b/configure index 4c6db518..e05195cc 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 20240522. +# Generated by GNU Autoconf 2.71 for parallel 20240622. # # Report bugs to . # @@ -610,8 +610,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='parallel' PACKAGE_TARNAME='parallel' -PACKAGE_VERSION='20240522' -PACKAGE_STRING='parallel 20240522' +PACKAGE_VERSION='20240622' +PACKAGE_STRING='parallel 20240622' 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 20240522 to adapt to many kinds of systems. +\`configure' configures parallel 20240622 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 20240522:";; + short | recursive ) echo "Configuration of parallel 20240622:";; 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 20240522 +parallel configure 20240622 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 20240522, which was +It was created by parallel $as_me 20240622, 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='20240522' + VERSION='20240622' 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 20240522, which was +This file was extended by parallel $as_me 20240622, 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 20240522 +parallel config.status 20240622 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index cd79243e..f018a512 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([parallel],[20240522],[bug-parallel@gnu.org]) +AC_INIT([parallel],[20240622],[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 669c89ea..241f94d8 100644 --- a/doc/haikus +++ b/doc/haikus @@ -18,9 +18,6 @@ write a haiku about gnu parallel and the :::+ option GNU Parallel and Tmux are the two tools I rely on daily for my work. Indispensable. -- @mitchelvalentino1569@YouTube - The most glorious 15,000 lines of Perl ever written. - -- @nibblrrr7124@YouTube - parallel is frickin great for launching jobs on multiple machines. Ansible and Jenkins and others may be good too but I was @@ -224,6 +221,9 @@ https://negfeedback.blogspot.com/2020/05/indispensable-command-line-tools.html === Used === + The most glorious 15,000 lines of Perl ever written. + -- @nibblrrr7124@YouTube + GNU Parallel é mais um daqueles "como eu vivia sem isso?!" -- Ivan Augusto @ivanaugustobd@twitter diff --git a/doc/release_new_version b/doc/release_new_version index f5d929a1..0976978c 100644 --- a/doc/release_new_version +++ b/doc/release_new_version @@ -27,7 +27,6 @@ niceload --prg firefox & cd testsuite; # With 23 GB RAM free this takes 3m43s make mem; -make polar; # Estimated time: 13m make long # Estimated time: 42m @@ -273,33 +272,24 @@ from:tange@gnu.org to:parallel@gnu.org, bug-parallel@gnu.org stable-bcc: Jesse Alama -Subject: GNU Parallel 20240622 ('Versailles/34 counts/(Raisi-IRAN preæsentdt)/spurlock(supersize)') released +Subject: GNU Parallel 20240622 ('34 counts') released -GNU Parallel 20240122 ('Frederik X') has been released. It is available for download at: lbry://@GnuParallel:4 +GNU Parallel 20240622 ('34 counts') has been released. It is available for download at: lbry://@GnuParallel:4 Quote of the month: - GNU Parallel alone provides more value than moreutils - -- Ferret7446@news.ycombinator.com + The most glorious 15,000 lines of Perl ever written. + -- @nibblrrr7124@YouTube New in this release: -* --sshlogin supports ranges: server[01-12,15] 10.0.[1-10].[2-254] - -* --plus enables {slot-1} and {seq-1} = {%}-1 and {#}-1 to count from 0. - -* env_parallel.{sh,ash,dash,bash,ksh,zsh} is now the same script. - * Bug fixes and man page updates. News about GNU Parallel: -https://dev.to/siddhantkcode/implementing-concurrency-in-shell-scripts-521o +* Howto - Parallel: lanciare comandi in simultanea https://github.com/linuxhubit/linuxhub.it/blob/main/_posts/2024-06-14-howto-parallel-per-lanciare-comandi-in-simultanea.md -Howto Parallel per lanciare comandi in simultanea -https://github.com/linuxhubit/linuxhub.it/blob/main/_posts/2024-06-14-howto-parallel-per-lanciare-comandi-in-simultanea.md - -* <<>> +* Implementing Concurrency in Shell Scripts https://dev.to/siddhantkcode/implementing-concurrency-in-shell-scripts-521o 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 ee07a30f..67084521 100644 --- a/packager/obs/home-tange/parallel/.osc/_files +++ b/packager/obs/home-tange/parallel/.osc/_files @@ -1,8 +1,8 @@ - + - - - - - + + + + + diff --git a/packager/obs/home-tange/parallel/.osc/parallel.spec b/packager/obs/home-tange/parallel/.osc/parallel.spec index f241e394..900ecdbc 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: 20240522 +Version: 20240622 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 98e4b9c2..1396ebec 100755 --- a/src/env_parallel.ash +++ b/src/env_parallel.ash @@ -601,7 +601,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20240523 (GNU parallel `parallel --minversion 1`)" + echo "parset 20240622 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2024 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 087c8f52..2c16c153 100755 --- a/src/env_parallel.bash +++ b/src/env_parallel.bash @@ -605,7 +605,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20240523 (GNU parallel `parallel --minversion 1`)" + echo "parset 20240622 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2024 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 e76b8251..bfb236a5 100755 --- a/src/env_parallel.dash +++ b/src/env_parallel.dash @@ -601,7 +601,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20240523 (GNU parallel `parallel --minversion 1`)" + echo "parset 20240622 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2024 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 619d3ad3..1c887265 100755 --- a/src/env_parallel.ksh +++ b/src/env_parallel.ksh @@ -601,7 +601,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20240523 (GNU parallel `parallel --minversion 1`)" + echo "parset 20240622 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2024 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 6e5b3b7e..f40f8988 100644 --- a/src/env_parallel.mksh +++ b/src/env_parallel.mksh @@ -570,7 +570,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20240523 (GNU parallel `parallel --minversion 1`)" + echo "parset 20240622 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2024 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 b2f06118..47c85652 100755 --- a/src/env_parallel.sh +++ b/src/env_parallel.sh @@ -601,7 +601,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20240523 (GNU parallel `parallel --minversion 1`)" + echo "parset 20240622 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2024 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 004fe0b5..cd3e1219 100755 --- a/src/env_parallel.zsh +++ b/src/env_parallel.zsh @@ -601,7 +601,7 @@ _parset_main() { fi if [ "$_parset_NAME" = "--version" ] ; then # shellcheck disable=SC2006 - echo "parset 20240523 (GNU parallel `parallel --minversion 1`)" + echo "parset 20240622 (GNU parallel `parallel --minversion 1`)" echo "Copyright (C) 2007-2024 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 54f8adb7..cde6bfa7 100755 --- a/src/niceload +++ b/src/niceload @@ -26,7 +26,7 @@ use strict; use Getopt::Long; $Global::progname="niceload"; -$Global::version = 20240523; +$Global::version = 20240622; 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 0c10f187..d71d5e1d 100755 --- a/src/parallel +++ b/src/parallel @@ -2794,7 +2794,7 @@ sub check_invalid_option_combinations() { sub init_globals() { # Defaults: - $Global::version = 20240523; + $Global::version = 20240622; $Global::progname = 'parallel'; $::name = "GNU Parallel"; $Global::infinity = 2**31; @@ -5848,8 +5848,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. (2024, May 22). GNU Parallel 20240522 ('Tbilisi').", - " Zenodo. https://doi.org/10.5281/zenodo.11247979", + " Tange, O. (2024, June 22). GNU Parallel 20240622 ('34 counts').", + " Zenodo. https://doi.org/10.5281/zenodo.12518196", "", # Before changing these lines, please read # https://www.gnu.org/software/parallel/parallel_design.html#citation-notice @@ -5881,8 +5881,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. (2024, May 22). GNU Parallel 20240522 ('Tbilisi').", - " Zenodo. https://doi.org/10.5281/zenodo.11247979", + " Tange, O. (2024, June 22). GNU Parallel 20240622 ('34 counts').", + " Zenodo. https://doi.org/10.5281/zenodo.12518196", "", # Before changing these line, please read # https://www.gnu.org/software/parallel/parallel_design.html#citation-notice and @@ -6009,20 +6009,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_2024_11247979,", + "\@software{tange_2024_12518196,", " author = {Tange, Ole},", - " title = {GNU Parallel 20240522 ('Tbilisi')},", - " month = May,", + " title = {GNU Parallel 20240622 ('34 counts')},", + " month = Jun,", " year = 2023,", " 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.11247979},", - " url = {https://doi.org/10.5281/zenodo.11247979}", + " doi = {10.5281/zenodo.12518196},", + " url = {https://doi.org/10.5281/zenodo.12518196}", "}", "", - "(Feel free to use \\nocite{tange_2024_11247979})", + "(Feel free to use \\nocite{tange_2024_12518196})", "", # Before changing these lines, please read # https://www.gnu.org/software/parallel/parallel_design.html#citation-notice and diff --git a/src/parsort b/src/parsort index e6765cc6..ef26e1c4 100755 --- a/src/parsort +++ b/src/parsort @@ -137,7 +137,7 @@ GetOptions( "help" => \$opt::dummy, ) || exit(255); $Global::progname = ($0 =~ m:(^|/)([^/]+)$:)[1]; -$Global::version = 20240523; +$Global::version = 20240622; if($opt::version) { version(); exit 0; } # Remove -D and --parallel=N my @s = (grep { ! /^-D$|^--parallel=\S+$/ } diff --git a/src/sql b/src/sql index 9469f111..70104a0e 100755 --- a/src/sql +++ b/src/sql @@ -670,7 +670,7 @@ $Global::Initfile && unlink $Global::Initfile; exit ($err); sub parse_options { - $Global::version = 20240523; + $Global::version = 20240622; $Global::progname = 'sql'; # This must be done first as this may exec myself