[-]
[+]
|
Changed |
_service:tar_git:parallel.spec
|
|
[-]
[+]
|
Changed |
_service
^
|
@@ -2,7 +2,7 @@
<service name="tar_git">
<param name="url">https://github.com/sailfishos-chum/parallel</param>
<param name="branch"></param>
- <param name="revision">20221022+git1</param>
+ <param name="revision">20221122+git1</param>
<param name="token"/>
<param name="debian">N</param>
<param name="dumb">N</param>
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/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:
@@ -8,21 +27,30 @@
News about GNU Parallel:
-* Distributed Task Processing with GNU Parallel https://www.youtube.com/watch?v=usbMLggdMgc
+* Distributed Task Processing with GNU Parallel
+ https://www.youtube.com/watch?v=usbMLggdMgc
-* GNU Parallel workflow for many small, independent runs https://docs.csc.fi/support/tutorials/many/
+* GNU Parallel workflow for many small, independent runs
+ https://docs.csc.fi/support/tutorials/many/
-* Copy a File To Multiple Directories With A Single Command on Linux https://www.linuxfordevices.com/tutorials/linux/copy-file-to-multiple-directories-with-one-command
+* Copy a File To Multiple Directories With A Single Command on Linux
+ https://www.linuxfordevices.com/tutorials/linux/copy-file-to-multiple-directories-with-one-command
-* Behind The Scenes: The Power Of Simple Command Line Tools At Cloud Scale https://blog.gdeltproject.org/behind-the-scenes-the-power-of-simple-command-line-tools-at-cloud-scale/
+* Behind The Scenes: The Power Of Simple Command Line Tools At Cloud
+ Scale
+ https://blog.gdeltproject.org/behind-the-scenes-the-power-of-simple-command-line-tools-at-cloud-scale/
-* Run lz4 compression in parallel using GNU parallel https://www.openguru.com/2022/09/
+* Run lz4 compression in parallel using GNU parallel
+ https://www.openguru.com/2022/09/
-* Xargs / Parallel With Code Examples https://www.folkstalk.com/2022/09/xargs-parallel-with-code-examples.html
+* Xargs / Parallel With Code Examples
+ https://www.folkstalk.com/2022/09/xargs-parallel-with-code-examples.html
-* Parallel processing on a single node with GNU Parallel https://www3.cs.stonybrook.edu/~cse416/Section01/Slides/SeaWulfIntro_CSE416_09222022.pdf
+* Parallel processing on a single node with GNU Parallel
+ https://www3.cs.stonybrook.edu/~cse416/Section01/Slides/SeaWulfIntro_CSE416_09222022.pdf
-* Using GNU parallel painlessly -- from basics to bioinformatics job orchestration https://www.youtube.com/watch?v=qypUdm-IE9c
+* Using GNU parallel painlessly -- from basics to bioinformatics job
+ orchestration https://www.youtube.com/watch?v=qypUdm-IE9c
20220922
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/README
^
|
@@ -57,11 +57,11 @@
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 @@
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 @@
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.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/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 <bug-parallel@gnu.org>.
#
@@ -610,8 +610,8 @@
# 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 @@
# 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 @@
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 @@
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 @@
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 @@
# Define the identity of the package.
PACKAGE='parallel'
- VERSION='20221022'
+ VERSION='20221122'
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -3026,7 +3026,7 @@
# 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 @@
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\\"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/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([
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/doc/haikus
^
|
@@ -204,6 +204,9 @@
=== 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
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/doc/release_new_version
^
|
@@ -176,6 +176,10 @@
torsocks git push origin $TAG
torsocks git push origin $YYYYMMDD
+git branch -d premaster
+git branch premaster
+
+
== Zenodo ==
Add tar.bz2 [Start upload] and [Publish].
@@ -226,7 +230,9 @@
// FreeCode is dying
http://freshmeat.net/projects/parallel/releases/new
-== Update Diaspora Twitter ==
+== Update Mastodon Twitter ==
+
+https://hostux.social/web/@GNU_Parallel
https://joindiaspora.com/stream
@@ -255,40 +261,32 @@
to:parallel@gnu.org, bug-parallel@gnu.org
stable-bcc: Jesse Alama <jessealama@fastmail.fm>
-Subject: GNU Parallel 20221022 ('Nord Stream') released
+Subject: GNU Parallel 20221122 ('Херсо́н') released
-GNU Parallel 20221022 ('Nord Stream') 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:
- If used properly, #gnuparallel actually enables time travel.
- -- Dr. James Wasmuth @jdwasmuth@twitter
+ [GNU Parallel] is the most amazing tool ever invented for bioinformatics!
+ -- Istvan Albert https://www.ialbert.me/
New in this release:
-* --latest-line chops line length at terminal width.
+* Support for IPv6 adresses and _ in hostnames in --sshlogin.
-* Determine max command length faster on Microsoft Windows.
-
-* Bug fixes and man page updates.
+* Use --total-jobs for --eta/--bar if generating jobs is slow.
-News about GNU Parallel:
+* A lot of bug fixed in --latest-line.
-* Distributed Task Processing with GNU Parallel https://www.youtube.com/watch?v=usbMLggdMgc
+* Better support MSYS2.
-* GNU Parallel workflow for many small, independent runs https://docs.csc.fi/support/tutorials/many/
+* Better Text::CSV error messages.
-* Copy a File To Multiple Directories With A Single Command on Linux https://www.linuxfordevices.com/tutorials/linux/copy-file-to-multiple-directories-with-one-command
+* --bar supports UTF8.
-* Behind The Scenes: The Power Of Simple Command Line Tools At Cloud Scale https://blog.gdeltproject.org/behind-the-scenes-the-power-of-simple-command-line-tools-at-cloud-scale/
+* GNU Parallel is now on Mastodon: @GNU_Parallel@hostux.social
-* Run lz4 compression in parallel using GNU parallel https://www.openguru.com/2022/09/
-
-* Xargs / Parallel With Code Examples https://www.folkstalk.com/2022/09/xargs-parallel-with-code-examples.html
-
-* Parallel processing on a single node with GNU Parallel https://www3.cs.stonybrook.edu/~cse416/Section01/Slides/SeaWulfIntro_CSE416_09222022.pdf
-
-* Using GNU parallel painlessly -- from basics to bioinformatics job orchestration https://www.youtube.com/watch?v=qypUdm-IE9c
+* Bug fixes and man page updates.
GNU Parallel - For people who live life in the parallel lane.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/packager/obs/home-tange/parallel/.osc/_files
^
|
@@ -1,7 +1,9 @@
-<directory name="parallel" rev="350" vrev="2" srcmd5="57bc8fc37f93dc2913993feaf20d195c">
- <entry name="PKGBUILD" md5="fb653a6d538ae7d2cc7302fd7e925d1c" size="1866" mtime="1663868896" />
- <entry name="parallel-20220922.tar.bz2" md5="fdc53e9ec55ee9e05c9df85462845961" size="2407079" mtime="1663868897" />
- <entry name="parallel.spec" md5="053f2744317b2365be9f67ea35c911ba" size="6224" mtime="1663868897" />
- <entry name="parallel_20220922.dsc" md5="0d50ad24164359e1475509873bc53862" size="556" mtime="1663868897" />
- <entry name="parallel_20220922.tar.gz" md5="493bd67d5ca1099fe7b0495c68ecb918" size="2667338" mtime="1663868897" />
+<directory name="parallel" rev="353" vrev="2" srcmd5="057a36e37939bfca0c9d9d5f74841ab9">
+ <entry name="PKGBUILD" md5="0dbd44569d0c8a8b6558b7820b843d01" size="1244" mtime="1669140752" />
+ <entry name="parallel-20221022.tar.bz2" md5="fa2081ee9e85fa3170081316a3b4ad48" size="2409471" mtime="1666458602" />
+ <entry name="parallel-20221122.tar.bz2" md5="f5e50aab8fd6407d3e7680e0af514c1a" size="2415504" mtime="1669140752" />
+ <entry name="parallel.spec" md5="7823cba794beabcac195db1195e23c22" size="6224" mtime="1669140753" />
+ <entry name="parallel_20221022.tar.gz" md5="e0c5ef89374787b30f23f601814973cb" size="2670976" mtime="1666457283" />
+ <entry name="parallel_20221122.dsc" md5="28d8f67882e59ae87b2139d2b7f8a958" size="556" mtime="1669140753" />
+ <entry name="parallel_20221122.tar.gz" md5="e06c172589a940b1a87f1299632a04c2" size="2678617" mtime="1669140753" />
</directory>
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/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
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/env_parallel.ash
^
|
@@ -395,7 +395,7 @@
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 <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/env_parallel.bash
^
|
@@ -397,7 +397,7 @@
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 <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/env_parallel.dash
^
|
@@ -395,7 +395,7 @@
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 <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/env_parallel.ksh
^
|
@@ -378,7 +378,7 @@
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 <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/env_parallel.mksh
^
|
@@ -380,7 +380,7 @@
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 <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/env_parallel.sh
^
|
@@ -395,7 +395,7 @@
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 <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/env_parallel.zsh
^
|
@@ -370,7 +370,7 @@
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 <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/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) {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/parallel
^
|
@@ -80,7 +80,7 @@
for my $s (@opt::a) {
# ::: are put into files and given a filehandle
# ignore these and only keep the filenames.
- fileno $s and next;
+ fileno $s and next;
for(@$command_ref, @Global::ret_files,
@Global::transfer_files, $opt::tagstring,
$opt::workdir, $opt::results, $opt::retries,
@@ -1922,6 +1922,8 @@
("eta[Show the estimated number of seconds before finishing]"
=> \$opt::eta),
"bar[Show progress as a progress bar]" => \$opt::bar,
+ ("total-jobs|totaljobs|total=s".
+ "[Set total number of jobs]" => \$opt::totaljobs),
"shuf[Shuffle jobs]" => \$opt::shuf,
("arg-sep|argsep=s".
"[Use sep-str instead of ::: as separator string]:sep-str"
@@ -2226,6 +2228,7 @@
}
if($opt::linebuffer or $opt::latestline) {
$Global::linebuffer = 1;
+ Job::latestline_init();
}
if(defined $opt::tag and not defined $opt::tagstring) {
# Default = {}
@@ -2234,10 +2237,10 @@
if(defined $opt::tagstring) {
$opt::tagstring = unquote_printf($opt::tagstring);
if($opt::tagstring =~
- /\Q$Global::parensleft\E.*\Q$Global::parensright\E/
+ /\Q$Global::parensleft\E.*\S+.*\Q$Global::parensright\E/
and
$Global::linebuffer) {
- # --tagstring contains {= =} and --linebuffer =>
+ # --tagstring contains {= ... =} and --linebuffer =>
# recompute replacement string for each use (do not cache)
$Global::cache_replacement_eval = 0;
}
@@ -2275,7 +2278,11 @@
if(defined $opt::tmuxpane) { $opt::tmux = $opt::tmuxpane; }
if(defined $opt::colsep) { $Global::trim = 'lr'; }
if(defined $opt::csv) {
- $Global::use{"Text::CSV"} ||= eval "use Text::CSV; 1;";
+ if(not $Global::use{"Text::CSV"} ||= eval "use Text::CSV; 1;") {
+ ::error("The perl module Text::CSV is not installed.");
+ ::error("Try installing libtext-csv-perl or perl-Text-CSV.");
+ wait_and_exit(255);
+ }
$opt::colsep = defined $opt::colsep ? $opt::colsep : ",";
my $csv_setting = { binary => 1, sep_char => $opt::colsep };
my $sep = $csv_setting->{sep_char};
@@ -2485,6 +2492,21 @@
if(defined $opt::eta) { $opt::progress = $opt::eta; }
if(defined $opt::bar) { $opt::progress = $opt::bar; }
+ if(defined $opt::bar or defined $opt::latestline) {
+ my $fh = $Global::status_fd || *STDERR;
+ eval q{
+ # Enable utf8 if possible
+ use utf8;
+ binmode $fh, "encoding(utf8)";
+ *decode_utf8 = \&Encode::decode_utf8;
+ };
+ if(eval { decode_utf8("x") }) {
+ # Great: decode works
+ } else {
+ # UTF8-decode not supported: Dummy decode
+ eval q{sub decode_utf8($;$) { $_[0]; }};
+ }
+ }
# Funding a free software project is hard. GNU Parallel is no
# exception. On top of that it seems the less visible a project
@@ -2680,7 +2702,7 @@
sub init_globals() {
# Defaults:
- $Global::version = 20221022;
+ $Global::version = 20221122;
$Global::progname = 'parallel';
$::name = "GNU Parallel";
$Global::infinity = 2**31;
@@ -3533,18 +3555,18 @@
# $string = string to be quoted
# Returns:
# $shell_quoted = string quoted as needed by the shell
- my $s = $_[0];
- if($s =~ /[^-_.+a-z0-9\/]/i) {
- $s =~ s/'/'"'"'/g; # "-quote single quotes
- $s = "'$s'"; # '-quote entire string
- $s =~ s/^''//; # Remove unneeded '' at ends
- $s =~ s/''$//; # (faster than s/^''|''$//g)
- return $s;
- } elsif ($s eq "") {
+ local $_ = $_[0];
+ if(/[^-_.+a-z0-9\/]/i) {
+ s/'/'"'"'/g; # "-quote '-quotes
+ $_ = "'$_'"; # '-quote entire string
+ s/^''//; # Remove unneeded '' at ends
+ s/''$//; # (faster than s/^''|''$//g)
+ return $_;
+ } elsif ($_ eq "") {
return "''";
} else {
# No quoting needed
- return $s;
+ return $_;
}
}
@@ -4396,9 +4418,7 @@
my $arg = $Global::newest_job ?
$Global::newest_job->{'commandline'}->
replace_placeholders(["\257<\257>"],0,0) : "";
- # These chars mess up display in the terminal in US-ASCII
- # and in some combinations as UTF8 (e.g. ঐ ও ঔ ক 𐅪 𐅫 𐅬)
- $arg =~ tr/[\011-\016\033\302-\365]//d;
+ $arg = decode_utf8($arg);
my $eta_dhms = ::seconds_to_time_units($eta);
my $bar_text =
sprintf("%d%% %d:%d=%s %s",
@@ -4420,36 +4440,62 @@
}
{
- my ($columns,$last_column_time);
+ my ($rows,$columns,$last_update_time);
+
+ sub compute_terminal_size() {
+ # && true is to force spawning a shell and not just exec'ing
+ my @tput = qx{ tput lines cols </dev/tty 2>/dev/null && true };
+ $rows = 0 + $tput[0];
+ $columns = 0 + $tput[1];
+ if(not ($rows && $columns)) {
+ # && true is to force spawning a shell and not just exec'ing
+ my $stty = qx{ stty -a </dev/tty 2>/dev/null && true };
+ # FreeBSD/OpenBSD/NetBSD/Dragonfly/MirOS
+ # MacOSX/IRIX/AIX/Tru64
+ $stty =~ /(\d+) columns/ and do { $columns = $1; };
+ $stty =~ /(\d+) rows/ and do { $rows = $1; };
+ # GNU/Linux/Solaris
+ $stty =~ /columns (\d+)/ and do { $columns = $1; };
+ $stty =~ /rows (\d+)/ and do { $rows = $1; };
+ # Solaris-x86/HPUX/SCOsysV/UnixWare/OpenIndiana
+ $stty =~ /columns = (\d+)/ and do { $columns = $1; };
+ $stty =~ /rows = (\d+)/ and do { $rows = $1; };
+ # QNX
+ $stty =~ /rows=(\d+),(\d+)/ and do { ($rows,$columns) = ($1,$2); };
+ }
+ if(not ($rows && $columns)) {
+ # && true is to force spawning a shell and not just exec'ing
+ my $resize = qx{ resize 2>/dev/null && true };
+ $resize =~ /COLUMNS=(\d+);/ and do { $columns ||= $1; };
+ $resize =~ /LINES=(\d+);/ and do { $rows ||= $1; };
+ }
+ $rows ||= 24;
+ $columns ||= 80;
+ }
+
+ sub update_terminal_size() {
+ # Only update once per second.
+ if($last_update_time < time) {
+ $last_update_time = time;
+ compute_terminal_size();
+ # Set signal WINdow CHange to force recompute
+ $SIG{WINCH} = \&compute_terminal_size;
+ }
+ }
+
+ sub terminal_rows() {
+ # Get the number of rows of the terminal.
+ # Returns:
+ # number of rows of the screen
+ update_terminal_size();
+ return $rows;
+ }
sub terminal_columns() {
# Get the number of columns of the terminal.
- # Only update once per second.
# Returns:
# number of columns of the screen
- if(not $columns or $last_column_time < time) {
- $last_column_time = time;
- $columns = $ENV{'COLUMNS'};
- if(not $columns) {
- # && true is to force spawning a shell and not just exec'ing
- my $stty = qx{stty -a </dev/tty 2>/dev/null && true};
- # FreeBSD/OpenBSD/NetBSD/Dragonfly/MirOS
- # MacOSX/IRIX/AIX/Tru64
- $stty =~ /(\d+) columns/ and do { $columns = $1; };
- # GNU/Linux/Solaris
- $stty =~ /columns (\d+)/ and do { $columns = $1; };
- # Solaris-x86/HPUX/SCOsysV/UnixWare/OpenIndiana
- $stty =~ /columns = (\d+)/ and do { $columns = $1; };
- # QNX
- $stty =~ /rows=\d+,(\d+)/ and do { $columns = $1; };
- }
- if(not $columns) {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/parallel.pod
^
|
@@ -543,7 +543,7 @@
See also: B<:::>
-=item B<--bar>
+=item B<--bar> (alpha testing)
Show progress as a progress bar.
@@ -556,6 +556,8 @@
2> >(perl -pe 'BEGIN{$/="\r";$|=1};s/\r/\n/g' |
zenity --progress --auto-kill) | wc
+See also: B<--eta> B<--progress> B<--total-jobs>
+
=item B<--basefile> I<file>
@@ -831,7 +833,7 @@
See also: B<--compress>
-=item B<--csv>
+=item B<--csv> (alpha testing)
Treat input as CSV-format.
@@ -986,15 +988,15 @@
Show the estimated number of seconds before finishing.
This forces GNU B<parallel> to read all jobs before starting to find
-the number of jobs. GNU B<parallel> normally only reads the next job
-to run.
+the number of jobs (unless you use B<--total-jobs>). GNU B<parallel>
+normally only reads the next job to run.
The estimate is based on the runtime of finished jobs, so the first
estimate will only be shown when the first job has finished.
Implies B<--progress>.
-See also: B<--bar> B<--progress>
+See also: B<--bar> B<--progress> B<--total-jobs>
=item B<--fg>
@@ -1026,6 +1028,9 @@
seq 1000000 | parallel --fifo echo This will block
seq 1000000 | parallel --fifo 'echo This will not block < {}'
+By using B<--fifo> instead of B<--cat> you may save I/O as B<--cat>
+will write to a temporary file, whereas B<--fifo> will not.
+
Implies B<--pipe> unless B<--pipe-part> is used.
See also: B<--cat> B<--pipe> B<--pipe-part>
@@ -1044,7 +1049,7 @@
See also: B<skip()> B<--no-run-if-empty>
-=item B<--filter-hosts>
+=item B<--filter-hosts> (alpha testing)
Remove down hosts.
@@ -1201,11 +1206,11 @@
=item Z<> --halt now,fail=1
-exit when the first job fails. Kill running jobs.
+exit when a job has failed. Kill running jobs.
=item Z<> --halt soon,fail=3
-exit when 3 jobs fail, but wait for running jobs to complete.
+exit when 3 jobs have failed, but wait for running jobs to complete.
=item Z<> --halt soon,fail=3%
@@ -1213,11 +1218,11 @@
=item Z<> --halt now,success=1
-exit when a job succeeds. Kill running jobs.
+exit when a job has succeeded. Kill running jobs.
=item Z<> --halt soon,success=3
-exit when 3 jobs succeeds, but wait for running jobs to complete.
+exit when 3 jobs have succeeded, but wait for running jobs to complete.
=item Z<> --halt now,success=3%
@@ -1225,11 +1230,11 @@
=item Z<> --halt now,done=1
-exit when one of the jobs finishes. Kill running jobs.
+exit when a job has finished. Kill running jobs.
=item Z<> --halt soon,done=3
-exit when 3 jobs finishes, but wait for running jobs to complete.
+exit when 3 jobs have finished, but wait for running jobs to complete.
=item Z<> --halt now,done=3%
@@ -1338,6 +1343,8 @@
=item B<--joblog> I<logfile>
+=item B<--jl> I<logfile>
+
Logfile for executed jobs.
Save a list of the executed jobs to I<logfile> in the following TAB
@@ -1578,9 +1585,8 @@
=item B<--ll> (alpha testing)
-Print the lastest line of each running job.
-
-This only works if the currently running jobs fit on the screen.
+Print the lastest line. Each job gets a single line that is updated
+with the lastest output from the job.
Example:
@@ -1589,7 +1595,7 @@
perl -ne '$|=1; for(split//){ print; select($a,$a,$a,0.03);}'
}
export -f slow_seq
- parallel --shuf -j10 --ll --tag --bar --color slow_seq {} ::: {1..100}
+ parallel --shuf -j99 --ll --tag --bar --color slow_seq {} ::: {1..300}
See also: B<--line-buffer>
@@ -3020,13 +3026,13 @@
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.
@@ -3053,6 +3059,10 @@
sshlogin must not require a password (B<ssh-agent> and B<ssh-copy-id>
may help with that).
+If the hostname is an IPv6 address, the port can be given separated
+with p or #. If the address is enclosed in [] you can also use :.
+E.g. ::1p2222 ::1#2222 [::1]:2222
+
The sshlogin ':' is special, it means 'no ssh' and will therefore run
on the local computer.
@@ -3215,7 +3225,7 @@
See also: B<--ungroup> B<--open-tty>
-=item B<--tag>
+=item B<--tag> (alpha testing)
Tag lines with arguments.
@@ -3228,7 +3238,7 @@
See also: B<--tagstring> B<--ctag>
-=item B<--tagstring> I<str>
+=item B<--tagstring> I<str> (alpha testing)
Tag lines with a string.
@@ -3280,6 +3290,20 @@
See also: B<--halt> B<--timeout> B<--memfree>
+=item B<--total-jobs> I<jobs> (alpha testing)
+
+=item B<--total> I<jobs> (alpha testing)
+
+Provide the total number of jobs for computing ETA which is also used
+for B<--bar>.
+
+Without B<--total-jobs> GNU Parallel will read all jobs before
+starting a job. B<--total-jobs> is useful if the input is generated
+slowly.
+
+See also: B<--bar> B<--eta>
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/parallel_examples.pod
^
|
@@ -772,13 +772,16 @@
Compare the output of:
- parallel wget --limit-rate=100k \
+ parallel wget --progress=dot --limit-rate=100k \
https://ftpmirror.gnu.org/parallel/parallel-20{}0822.tar.bz2 \
::: {12..16}
- parallel --line-buffer wget --limit-rate=100k \
+ parallel --line-buffer wget --progress=dot --limit-rate=100k \
https://ftpmirror.gnu.org/parallel/parallel-20{}0822.tar.bz2 \
::: {12..16}
- parallel -u wget --limit-rate=100k \
+ parallel --latest-line wget --progress=dot --limit-rate=100k \
+ https://ftpmirror.gnu.org/parallel/parallel-20{}0822.tar.bz2 \
+ ::: {12..16}
+ parallel -u wget --progress=dot --limit-rate=100k \
https://ftpmirror.gnu.org/parallel/parallel-20{}0822.tar.bz2 \
::: {12..16}
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/parsort
^
|
@@ -122,7 +122,7 @@
"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)]);
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/src/sql
^
|
@@ -667,7 +667,7 @@
exit ($err);
sub parse_options {
- $Global::version = 20221022;
+ $Global::version = 20221122;
$Global::progname = 'sql';
# This must be done first as this may exec myself
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-10s.sh
^
|
@@ -8,16 +8,37 @@
# Each should be taking 10-30s and be possible to run in parallel
# I.e.: No race conditions, no logins
+par_totaljobs() {
+ . `which env_parallel.bash`
+ myrun() {
+ total="$@"
+ slowseq() { seq "$@" | pv -qL 3; }
+ elapsed() { /usr/bin/time -f %e stdout "$@" 2>&1 >/dev/null; }
+ slowseq 5 | elapsed parallel -j 1 $total --bar 'sleep 1; true'
+ }
+ export -f myrun
+ parset mytime myrun ::: '' '--total 5'
+ # --total should run > 2 sec faster
+ perl -E 'say ((2+shift) < (shift) ? "Error: --total should be faster" : "OK")' ${mytime[0]} ${mytime[1]}
+}
+
par_ll_long_line() {
echo '### --latest-line with lines longer than terminal width'
COLUMNS=30 parallel --delay 0.3 --tagstring '{=$_.="x"x$_=}' \
- --ll 'echo {}00000 | sed -e "s/$/' {1..100} /'"' ::: {1..30}
+ --ll 'echo {}00000 | sed -e "s/$/' {1..100} /'"' ::: {01..30} |
+ perl -ne 's/.\[A//g;
+ /.\[K .{4}\[m/ and next;
+ /x\s*$/ and next;
+ /\S/ && print'| sort -u
}
par_ll_color_long_line() {
echo '### --latest-line --color with lines longer than terminal width'
COLUMNS=30 parallel --delay 0.3 --color --tagstring '{=$_.="x"x$_=}' \
- --ll 'echo {}00000 | sed -e "s/$/' {1..100} /'"' ::: {1..30}
+ --ll 'echo {}00000 | sed -e "s/$/' {1..100} /'"' ::: {01..30} |
+ perl -ne 's/.\[A//g;
+ /.\[K .{4}\[m/ and next;
+ /\S/ && print'| sort -u
}
par_reload_slf_every_second() {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-30s.sh
^
|
@@ -588,6 +588,27 @@
fi
}
+par_test_ipv6_format() {
+ echo '### Host as IPv6 address'
+ (
+ ifconfig |
+ # Get IPv6 addresses of local server
+ perl -nE '/inet6 ([0-9a-f:]+) .*(host|global)/ and
+ map {say $1,$_,22; say $1,$_,"ssh"} qw(: . # p q)' |
+ # 9999::9999:9999:22 => [9999::9999:9999]:22
+ # 9999::9999:9999q22 => 9999::9999:9999
+ perl -pe 's/(.*):(22|ssh)$/[$1]:$2/;s/q.*//;'
+ ifconfig |
+ # Get IPv4 addresses
+ perl -nE '/inet (\S+) / and
+ map {say $1,$_,22; say $1,$_,"ssh"} qw(: q)' |
+ # 9.9.9.9q22 => 9.9.9.9
+ perl -pe 's/q.*//;'
+ ) |
+ parallel -j30 --delay 0.1 --argsep , parallel -S {} true ::: 1 ||
+ echo Failed
+}
+
# was -j6 before segfault circus
export -f $(compgen -A function | grep par_)
compgen -A function | grep par_ | sort |
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-race01.sh
^
|
@@ -4,6 +4,13 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
+par_csv_not_installed() {
+ echo '### Give error if CSV.pm is not installed when using --csv'
+ sudo parallel mv {} {}.hidden ::: /usr/share/perl5/Text/CSV.pm
+ stdout parallel --csv echo ::: this should give an error
+ sudo parallel mv {}.hidden {} ::: /usr/share/perl5/Text/CSV.pm
+}
+
par_sem_dir() {
echo '### bug #58985: sem stall if .parallel/semaphores is chmod 0'
chmod 0 ~/.parallel/semaphores
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh8.sh
^
|
@@ -130,6 +130,11 @@
parallel -S csh@localhost 'echo $PARALLEL_PID $PARALLEL_SEQ {}| wc -w' ::: a
}
+par_filter_host_noise() {
+ echo '### bug #63296: --filter-hosts option gets confused by output from SSH command'
+ parallel --ssh "ssh -i id_rsa -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o GlobalKnownHostsFile=/dev/null " -S localhost --nonall --tag --filter-hosts echo OK
+ parallel --ssh "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o GlobalKnownHostsFile=/dev/null " -S localhost --nonall --tag --filter-hosts echo OK
+}
export -f $(compgen -A function | grep par_)
#compgen -A function | grep par_ | sort | parallel --delay $D -j$P --tag -k '{} 2>&1'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local10.sh
^
|
@@ -16,5 +16,6 @@
stdout strace -ff perl32 `which parallel` echo |
grep open |
grep perl |
+ grep -v '\$' |
grep -v '] read(6' |
grep -v input-files/perllib
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-0.3s
^
|
@@ -960,10 +960,10 @@
par_sem_quote echo
par_sem_quote
par_shellcompletion ### --shellcompletion
-par_shellcompletion 863f31c091219fc53dc89fd707f5995b -
-par_shellcompletion 863f31c091219fc53dc89fd707f5995b -
-par_shellcompletion 88a69a99c93b79b5ed6491c80e9762b0 -
-par_shellcompletion 88a69a99c93b79b5ed6491c80e9762b0 -
+par_shellcompletion 139a52b9a64a9fd8ec1f63c2d78ff9ac -
+par_shellcompletion 139a52b9a64a9fd8ec1f63c2d78ff9ac -
+par_shellcompletion 01947895bda95d99e1b8948a31b1c1f7 -
+par_shellcompletion 01947895bda95d99e1b8948a31b1c1f7 -
par_slow_pipe_regexp ### bug #53718: --pipe --regexp -N blocks
par_slow_pipe_regexp This should take a few ms, but took more than 2 hours
par_slow_pipe_regexp 0 1 1
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-10s
^
|
@@ -530,67 +530,67 @@
par_line_buffer 55 55 120
par_line_buffer These must diff: 1
par_ll_color_long_line ### --latest-line --color with lines longer than terminal width
-par_ll_color_long_line
par_ll_color_long_line 1x [48;5;134;38;5;231m[K100000 1 2 3 4 5 6 7 8(B[m
-par_ll_color_long_line
par_ll_color_long_line 2xx [48;5;021;38;5;231m[K200000 1 2 3 4 5 6 7 8(B[m
-par_ll_color_long_line
par_ll_color_long_line 3xxx [48;5;243;38;5;231m[K300000 1 2 3 4 5 6 7 8(B[m
-par_ll_color_long_line
par_ll_color_long_line 4xxxx [48;5;149;38;5;000m[K400000 1 2 3 4 5 6 7 8(B[m
-par_ll_color_long_line
par_ll_color_long_line 5xxxxx [48;5;102;38;5;231m[K500000 1 2 3 4 5 6 7 8(B[m
-par_ll_color_long_line
par_ll_color_long_line 6xxxxxx [48;5;231;38;5;000m[K600000 1 2 3 4 5 6 7 8(B[m
-par_ll_color_long_line
par_ll_color_long_line 7xxxxxxx [48;5;203;38;5;231m[K700000 1 2 3 4(B[m
-par_ll_color_long_line
par_ll_color_long_line 8xxxxxxxx [48;5;078;38;5;000m[K800000 1 2 3 4(B[m
-par_ll_color_long_line
par_ll_color_long_line 9xxxxxxxxx [48;5;073;38;5;231m[K900000 1 2 3 4(B[m
-par_ll_color_long_line
par_ll_color_long_line 10xxxxxxxxxx [48;5;208;38;5;000m[K1000000 1 2 3 (B[m
-par_ll_color_long_line
par_ll_color_long_line 11xxxxxxxxxxx [48;5;167;38;5;231m[K1100000 1 2 3 (B[m
-par_ll_color_long_line
par_ll_color_long_line 12xxxxxxxxxxxx [48;5;006;38;5;000m[K1200000 1 2 3 (B[m
-par_ll_color_long_line
par_ll_color_long_line 13xxxxxxxxxxxxx [48;5;044;38;5;231m[K1300000 1 2 3 (B[m
-par_ll_color_long_line
par_ll_color_long_line 14xxxxxxxxxxxxxx [48;5;022;38;5;231m[K140000(B[m
-par_ll_color_long_line
par_ll_color_long_line 15xxxxxxxxxxxxxxx [48;5;244;38;5;231m[K150000(B[m
-par_ll_color_long_line
par_ll_color_long_line 16xxxxxxxxxxxxxxxx [48;5;150;38;5;000m[K160000(B[m
-par_ll_color_long_line
par_ll_color_long_line 17xxxxxxxxxxxxxxxxx [48;5;103;38;5;231m[K170000(B[m
-par_ll_color_long_line
par_ll_color_long_line 18xxxxxxxxxxxxxxxxxx [48;5;249;38;5;000m[K180000(B[m
-par_ll_color_long_line
par_ll_color_long_line 19xxxxxxxxxxxxxxxxxxx [48;5;204;38;5;231m[K190000(B[m
-par_ll_color_long_line
par_ll_color_long_line 20xxxxxxxxxxxxxxxxxxxx [48;5;079;38;5;000m[K200000(B[m
-par_ll_color_long_line
par_ll_color_long_line 21xxxxxxxxxxxxxxxxxxxxx [48;5;074;38;5;231m[K210000(B[m
-par_ll_color_long_line
par_ll_color_long_line 22xxxxxxxxxxxxxxxxxxxxxx [48;5;209;38;5;000m[K(B[m
-par_ll_color_long_line
par_ll_color_long_line 23xxxxxxxxxxxxxxxxxxxxxxx [48;5;168;38;5;231m[K(B[m
-par_ll_color_long_line
par_ll_color_long_line 24xxxxxxxxxxxxxxxxxxxxxxxx [48;5;007;38;5;000m[K(B[m
-par_ll_color_long_line
par_ll_color_long_line 25xxxxxxxxxxxxxxxxxxxxxxxxx [48;5;045;38;5;231m[K(B[m
-par_ll_color_long_line
par_ll_color_long_line 26xxxxxxxxxxxxxxxxxxxxxxxxxx [48;5;186;38;5;000m[K(B[m
-par_ll_color_long_line
par_ll_color_long_line 27xxxxxxxxxxxxxxxxxxxxxxxxxxx [48;5;135;38;5;231m[K(B[m
-par_ll_color_long_line
par_ll_color_long_line 28xxxxxxxxxxxxxxxxxxxxxxxxxxxx[48;5;151;38;5;000m[K(B[m
-par_ll_color_long_line
par_ll_color_long_line 29xxxxxxxxxxxxxxxxxxxxxxxxxxxx[48;5;104;38;5;231m[K(B[m
-par_ll_color_long_line
par_ll_color_long_line 30xxxxxxxxxxxxxxxxxxxxxxxxxxxx[48;5;250;38;5;000m[K(B[m
+par_ll_color_long_line
par_ll_color_long_line 01x [48;5;134;38;5;231m[K0100000 1 2 3 4 5 6 7>(B[m
+par_ll_color_long_line
par_ll_color_long_line 02xx [48;5;021;38;5;231m[K0200000 1 2 3 4 5 6 7>(B[m
+par_ll_color_long_line
par_ll_color_long_line 03xxx [48;5;243;38;5;231m[K0300000 1 2 3 4 5 6 7>(B[m
+par_ll_color_long_line
par_ll_color_long_line 04xxxx [48;5;149;38;5;000m[K0400000 1 2 3 4 5 6 7>(B[m
+par_ll_color_long_line
par_ll_color_long_line 05xxxxx [48;5;102;38;5;231m[K0500000 1 2 3 4 5 6 7>(B[m
+par_ll_color_long_line
par_ll_color_long_line 06xxxxxx [48;5;231;38;5;000m[K0600000 1 2 3>(B[m
+par_ll_color_long_line
par_ll_color_long_line 07xxxxxxx [48;5;203;38;5;231m[K0700000 1 2 3>(B[m
+par_ll_color_long_line
par_ll_color_long_line 08xxxxxxxx [48;5;078;38;5;000m[K0800000 1 2 3>(B[m
+par_ll_color_long_line
par_ll_color_long_line 09xxxxxxxxx [48;5;073;38;5;231m[K0900000 1 2 3>(B[m
+par_ll_color_long_line
par_ll_color_long_line 10xxxxxxxxxx [48;5;208;38;5;000m[K1000000 1 2 3>(B[m
+par_ll_color_long_line
par_ll_color_long_line 11xxxxxxxxxxx [48;5;167;38;5;231m[K1100000 1 2 3>(B[m
+par_ll_color_long_line
par_ll_color_long_line 12xxxxxxxxxxxx [48;5;006;38;5;000m[K1200000 1 2 3>(B[m
+par_ll_color_long_line
par_ll_color_long_line 13xxxxxxxxxxxxx [48;5;044;38;5;231m[K1300000 1 2 3>(B[m
+par_ll_color_long_line
par_ll_color_long_line 14xxxxxxxxxxxxxx [48;5;022;38;5;231m[K14000>(B[m
+par_ll_color_long_line
par_ll_color_long_line 15xxxxxxxxxxxxxxx [48;5;244;38;5;231m[K15000>(B[m
+par_ll_color_long_line
par_ll_color_long_line 16xxxxxxxxxxxxxxxx [48;5;150;38;5;000m[K16000>(B[m
+par_ll_color_long_line
par_ll_color_long_line 17xxxxxxxxxxxxxxxxx [48;5;103;38;5;231m[K17000>(B[m
+par_ll_color_long_line
par_ll_color_long_line 18xxxxxxxxxxxxxxxxxx [48;5;249;38;5;000m[K18000>(B[m
+par_ll_color_long_line
par_ll_color_long_line 19xxxxxxxxxxxxxxxxxxx [48;5;204;38;5;231m[K19000>(B[m
+par_ll_color_long_line
par_ll_color_long_line 20xxxxxxxxxxxxxxxxxxxx [48;5;079;38;5;000m[K20000>(B[m
+par_ll_color_long_line
par_ll_color_long_line 21xxxxxxxxxxxxxxxxxxxxx [48;5;074;38;5;231m[K21000>(B[m
+par_ll_color_long_line
par_ll_color_long_line 22xxxxxxxxxxxxxxxxxxxxxx >[48;5;209;38;5;000m[K(B[m
+par_ll_color_long_line
par_ll_color_long_line 23xxxxxxxxxxxxxxxxxxxxxxx >[48;5;168;38;5;231m[K(B[m
+par_ll_color_long_line
par_ll_color_long_line 24xxxxxxxxxxxxxxxxxxxxxxxx >[48;5;007;38;5;000m[K(B[m
+par_ll_color_long_line
par_ll_color_long_line 25xxxxxxxxxxxxxxxxxxxxxxxxx >[48;5;045;38;5;231m[K(B[m
+par_ll_color_long_line
par_ll_color_long_line 26xxxxxxxxxxxxxxxxxxxxxxxxxx >[48;5;186;38;5;000m[K(B[m
+par_ll_color_long_line
par_ll_color_long_line 27xxxxxxxxxxxxxxxxxxxxxxxxxxx>[48;5;135;38;5;231m[K(B[m
+par_ll_color_long_line
par_ll_color_long_line 28xxxxxxxxxxxxxxxxxxxxxxxxxxx>[48;5;151;38;5;000m[K(B[m
+par_ll_color_long_line
par_ll_color_long_line 29xxxxxxxxxxxxxxxxxxxxxxxxxxx>[48;5;104;38;5;231m[K(B[m
+par_ll_color_long_line
par_ll_color_long_line 30xxxxxxxxxxxxxxxxxxxxxxxxxxx>[48;5;250;38;5;000m[K(B[m
par_ll_long_line ### --latest-line with lines longer than terminal width
-par_ll_long_line
par_ll_long_line 1x 100000 1 2 3 4 5 6 7 8
-par_ll_long_line
par_ll_long_line 2xx 200000 1 2 3 4 5 6 7 8
-par_ll_long_line
par_ll_long_line 3xxx 300000 1 2 3 4 5 6 7 8
-par_ll_long_line
par_ll_long_line 4xxxx 400000 1 2 3 4 5 6 7 8
-par_ll_long_line
par_ll_long_line 5xxxxx 500000 1 2 3 4 5 6 7 8
-par_ll_long_line
par_ll_long_line 6xxxxxx 600000 1 2 3 4 5 6 7 8
-par_ll_long_line
par_ll_long_line 7xxxxxxx 700000 1 2 3 4
-par_ll_long_line
par_ll_long_line 8xxxxxxxx 800000 1 2 3 4
-par_ll_long_line
par_ll_long_line 9xxxxxxxxx 900000 1 2 3 4
-par_ll_long_line
par_ll_long_line 10xxxxxxxxxx 1000000 1 2 3
-par_ll_long_line
par_ll_long_line 11xxxxxxxxxxx 1100000 1 2 3
-par_ll_long_line
par_ll_long_line 12xxxxxxxxxxxx 1200000 1 2 3
-par_ll_long_line
par_ll_long_line 13xxxxxxxxxxxxx 1300000 1 2 3
-par_ll_long_line
par_ll_long_line 14xxxxxxxxxxxxxx 140000
-par_ll_long_line
par_ll_long_line 15xxxxxxxxxxxxxxx 150000
-par_ll_long_line
par_ll_long_line 16xxxxxxxxxxxxxxxx 160000
-par_ll_long_line
par_ll_long_line 17xxxxxxxxxxxxxxxxx 170000
-par_ll_long_line
par_ll_long_line 18xxxxxxxxxxxxxxxxxx 180000
-par_ll_long_line
par_ll_long_line 19xxxxxxxxxxxxxxxxxxx 190000
-par_ll_long_line
par_ll_long_line 20xxxxxxxxxxxxxxxxxxxx 200000
-par_ll_long_line
par_ll_long_line 21xxxxxxxxxxxxxxxxxxxxx 210000
-par_ll_long_line
par_ll_long_line 22xxxxxxxxxxxxxxxxxxxxxx
-par_ll_long_line
par_ll_long_line 23xxxxxxxxxxxxxxxxxxxxxxx
-par_ll_long_line
par_ll_long_line 24xxxxxxxxxxxxxxxxxxxxxxxx
-par_ll_long_line
par_ll_long_line 25xxxxxxxxxxxxxxxxxxxxxxxxx
-par_ll_long_line
par_ll_long_line 26xxxxxxxxxxxxxxxxxxxxxxxxxx
-par_ll_long_line
par_ll_long_line 27xxxxxxxxxxxxxxxxxxxxxxxxxxx
-par_ll_long_line
par_ll_long_line 28xxxxxxxxxxxxxxxxxxxxxxxxxxxx
-par_ll_long_line
par_ll_long_line 29xxxxxxxxxxxxxxxxxxxxxxxxxxxx
-par_ll_long_line
par_ll_long_line 30xxxxxxxxxxxxxxxxxxxxxxxxxxxx
+par_ll_long_line
par_ll_long_line 01x 0100000 1 2 3 4 5 6 7>
+par_ll_long_line
par_ll_long_line 02xx 0200000 1 2 3 4 5 6 7>
+par_ll_long_line
par_ll_long_line 03xxx 0300000 1 2 3 4 5 6 7>
+par_ll_long_line
par_ll_long_line 04xxxx 0400000 1 2 3 4 5 6 7>
+par_ll_long_line
par_ll_long_line 05xxxxx 0500000 1 2 3 4 5 6 7>
+par_ll_long_line
par_ll_long_line 06xxxxxx 0600000 1 2 3>
+par_ll_long_line
par_ll_long_line 07xxxxxxx 0700000 1 2 3>
+par_ll_long_line
par_ll_long_line 08xxxxxxxx 0800000 1 2 3>
+par_ll_long_line
par_ll_long_line 09xxxxxxxxx 0900000 1 2 3>
+par_ll_long_line
par_ll_long_line 10xxxxxxxxxx 1000000 1 2 3>
+par_ll_long_line
par_ll_long_line 11xxxxxxxxxxx 1100000 1 2 3>
+par_ll_long_line
par_ll_long_line 12xxxxxxxxxxxx 1200000 1 2 3>
+par_ll_long_line
par_ll_long_line 13xxxxxxxxxxxxx 1300000 1 2 3>
+par_ll_long_line
par_ll_long_line 14xxxxxxxxxxxxxx 14000>
+par_ll_long_line
par_ll_long_line 15xxxxxxxxxxxxxxx 15000>
+par_ll_long_line
par_ll_long_line 16xxxxxxxxxxxxxxxx 16000>
+par_ll_long_line
par_ll_long_line 17xxxxxxxxxxxxxxxxx 17000>
+par_ll_long_line
par_ll_long_line 18xxxxxxxxxxxxxxxxxx 18000>
+par_ll_long_line
par_ll_long_line 19xxxxxxxxxxxxxxxxxxx 19000>
+par_ll_long_line
par_ll_long_line 20xxxxxxxxxxxxxxxxxxxx 20000>
+par_ll_long_line
par_ll_long_line 21xxxxxxxxxxxxxxxxxxxxx 21000>
+par_ll_long_line
par_ll_long_line 22xxxxxxxxxxxxxxxxxxxxxx >
+par_ll_long_line
par_ll_long_line 23xxxxxxxxxxxxxxxxxxxxxxx >
+par_ll_long_line
par_ll_long_line 24xxxxxxxxxxxxxxxxxxxxxxxx >
+par_ll_long_line
par_ll_long_line 25xxxxxxxxxxxxxxxxxxxxxxxxx >
+par_ll_long_line
par_ll_long_line 26xxxxxxxxxxxxxxxxxxxxxxxxxx >
+par_ll_long_line
par_ll_long_line 27xxxxxxxxxxxxxxxxxxxxxxxxxxx>
+par_ll_long_line
par_ll_long_line 28xxxxxxxxxxxxxxxxxxxxxxxxxxx>
+par_ll_long_line
par_ll_long_line 29xxxxxxxxxxxxxxxxxxxxxxxxxxx>
+par_ll_long_line
par_ll_long_line 30xxxxxxxxxxxxxxxxxxxxxxxxxxx>
par_load_blocks ### Test if --load blocks. Bug.
par_load_blocks 53d025127ae99ab79e8502aae2d9bea6 -
par_load_blocks 53d025127ae99ab79e8502aae2d9bea6 -
@@ -1072,6 +1072,7 @@
par_tmux_fg bug #50107: --tmux --fg should also write how to access it
par_tmux_fg See output with: tmux -S tmp attach
par_tmux_fg open terminal failed: not a terminal
+par_totaljobs OK
par_xargs_compat xargs compatibility
par_xargs_compat ### Test -L -l and --max-lines
par_xargs_compat a_b
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-30s
^
|
@@ -1858,3 +1858,4 @@
par_test_detected_shell test_known_shell_pipe zsh Global::shell /usr/bin/zsh
par_test_diff_roundrobin_k ### test there is difference on -k
par_test_diff_roundrobin_k OK
+par_test_ipv6_format ### Host as IPv6 address
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-race01
^
|
@@ -5,6 +5,9 @@
par_bug56403 1 job1a
par_bug56403 1 job1b
par_bug56403 2 job2cjob2d
+par_csv_not_installed ### Give error if CSV.pm is not installed when using --csv
+par_csv_not_installed parallel: Error: The perl module Text::CSV is not installed.
+par_csv_not_installed parallel: Error: Try installing libtext-csv-perl or perl-Text-CSV.
par_delay_Xauto TODO: --retries for those that fail and --sshdelay
par_delay_Xauto ### bug #58911: --delay Xauto
par_delay_Xauto 0
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-race02
^
|
@@ -120,7 +120,7 @@
par_kill_hup bash---pstree
par_ll_lb_color bug #62386: --color (--ctag but without --tag)
par_ll_lb_color bug #62438: See last line from multiple jobslots
-par_ll_lb_color 29fcbb4944fef7ba0cd0fa8358dba815 -
+par_ll_lb_color c9a124d7cbd2d04b1201b297ef7cefa1 -
par_more_than_9_relative_sshlogin ### Check more than 9(relative) simultaneous sshlogins
par_more_than_9_relative_sshlogin 1
par_more_than_9_relative_sshlogin 2
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20221122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-ssh8
^
|
@@ -4,6 +4,12 @@
par_bar_m 100
par_csh_environment_variables_set ### Check $PARALLEL_PID $PARALLEL_SEQ are set in csh
par_csh_environment_variables_set 3
+par_filter_host_noise ### bug #63296: --filter-hosts option gets confused by output from SSH command
+par_filter_host_noise localhost OK
+par_filter_host_noise localhost Warning: Identity file id_rsa not accessible: No such file or directory.
+par_filter_host_noise localhost Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
par_filter_host_noise localhost
+par_filter_host_noise localhost OK
+par_filter_host_noise localhost Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
par_filter_host_noise localhost
par_keep_order ### Test --keep-order
par_keep_order job0
par_keep_order job1
|