[-]
[+]
|
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">20231122+git1</param>
+ <param name="revision">20240122+git1</param>
<param name="token"/>
<param name="debian">N</param>
<param name="dumb">N</param>
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20231122+git1.tar.bz2/upstream/testsuite/vagrant/FritsHoogland/centos39-oracle817/Vagrantfile
^
|
@@ -1,84 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby :
-
-# SPDX-FileCopyrightText: 2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
-#
-# SPDX-License-Identifier: GPL-3.0-or-later
-
-# All Vagrant configuration is done below. The "2" in Vagrant.configure
-# configures the configuration version (we support older styles for
-# backwards compatibility). Please don't change it unless you know what
-# you're doing.
-Vagrant.configure("2") do |config|
- # The most common configuration options are documented and commented below.
- # For a complete reference, please see the online documentation at
- # https://docs.vagrantup.com.
-
- # Every Vagrant development environment requires a box. You can search for
- # boxes at https://vagrantcloud.com/search.
- config.vm.box = "FritsHoogland/centos39-oracle817"
-
- # Disable automatic box update checking. If you disable this, then
- # boxes will only be checked for updates when the user runs
- # `vagrant box outdated`. This is not recommended.
- # config.vm.box_check_update = false
-
- # Create a forwarded port mapping which allows access to a specific port
- # within the machine from a port on the host machine. In the example below,
- # accessing "localhost:8080" will access port 80 on the guest machine.
- # NOTE: This will enable public access to the opened port
- # config.vm.network "forwarded_port", guest: 80, host: 8080
- config.vm.network :forwarded_port, guest: 22, host: 50136, id: 'ssh'
-
- # Create a forwarded port mapping which allows access to a specific port
- # within the machine from a port on the host machine and only allow access
- # via 127.0.0.1 to disable public access
- # config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
-
- # Create a private network, which allows host-only access to the machine
- # using a specific IP.
- config.vm.network "private_network", ip: "172.27.27.3"
-
- # Create a public network, which generally matched to bridged network.
- # Bridged networks make the machine appear as another physical device on
- # your network.
- # config.vm.network "public_network"
-
- # Share an additional folder to the guest VM. The first argument is
- # the path on the host to the actual folder. The second argument is
- # the path on the guest to mount the folder. And the optional third
- # argument is a set of non-required options.
- # config.vm.synced_folder "../data", "/vagrant_data"
-
- # Provider-specific configuration so you can fine-tune various
- # backing providers for Vagrant. These expose provider-specific options.
- # Example for VirtualBox:
- #
- config.vm.provider "virtualbox" do |vb|
- # # Display the VirtualBox GUI when booting the machine
- # vb.gui = true
- #
- # # Customize the amount of memory on the VM:
-# vb.memory = "512"
- vb.memory = "300"
- vb.customize ["modifyvm", :id, "--usb", "on"]
- vb.customize ["modifyvm", :id, "--usbehci", "off"]
- end
- #
- # View the documentation for the provider you are using for more
- # information on available options.
-
- # Enable provisioning with a shell script. Additional provisioners such as
- # Ansible, Chef, Docker, Puppet and Salt are also available. Please see the
- # documentation for more information about their specific syntax and use.
- config.vm.provision "shell" do |s|
- ssh_pub_key = File.readlines("../../authorized_keys").first.strip
- s.inline = <<-SHELL
- mkdir /root/.ssh
- echo #{ssh_pub_key} >> /home/vagrant/.ssh/authorized_keys
- echo #{ssh_pub_key} >> /root/.ssh/authorized_keys
- sudo apt install rsync || sudo yum install -y rsync || sudo pkg install -y rsync
- sudo apt install perl || sudo yum install -y perl || sudo pkg install -y perl
- SHELL
- end
-end
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20231122+git1.tar.bz2/upstream/testsuite/vagrant/tange/centos3-gone/Vagrantfile
^
|
@@ -1,81 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby :
-
-# SPDX-FileCopyrightText: 2022 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
-#
-# SPDX-License-Identifier: GPL-3.0-or-later
-
-# All Vagrant configuration is done below. The "2" in Vagrant.configure
-# configures the configuration version (we support older styles for
-# backwards compatibility). Please don't change it unless you know what
-# you're doing.
-Vagrant.configure("2") do |config|
- # The most common configuration options are documented and commented below.
- # For a complete reference, please see the online documentation at
- # https://docs.vagrantup.com.
-
- # Every Vagrant development environment requires a box. You can search for
- # boxes at https://vagrantcloud.com/search.
- config.vm.box = "tange/centos3"
-
- # Disable automatic box update checking. If you disable this, then
- # boxes will only be checked for updates when the user runs
- # `vagrant box outdated`. This is not recommended.
- # config.vm.box_check_update = false
-
- # Create a forwarded port mapping which allows access to a specific port
- # within the machine from a port on the host machine. In the example below,
- # accessing "localhost:8080" will access port 80 on the guest machine.
- # NOTE: This will enable public access to the opened port
- config.vm.network :forwarded_port, guest: 22, host: 50036, id: 'ssh'
-
- config.vm.boot_timeout = 600
-
- # Create a forwarded port mapping which allows access to a specific port
- # within the machine from a port on the host machine and only allow access
- # via 127.0.0.1 to disable public access
- # config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
-
- # Create a private network, which allows host-only access to the machine
- # using a specific IP.
- config.vm.network "private_network", ip: "172.27.27.3"
-
- # Create a public network, which generally matched to bridged network.
- # Bridged networks make the machine appear as another physical device on
- # your network.
- # config.vm.network "public_network"
-
- # Share an additional folder to the guest VM. The first argument is
- # the path on the host to the actual folder. The second argument is
- # the path on the guest to mount the folder. And the optional third
- # argument is a set of non-required options.
- # config.vm.synced_folder "../data", "/vagrant_data"
-
- # Provider-specific configuration so you can fine-tune various
- # backing providers for Vagrant. These expose provider-specific options.
- # Example for VirtualBox:
- #
- config.vm.provider "virtualbox" do |vb|
- # # Display the VirtualBox GUI when booting the machine
- # vb.gui = true
- #
- # # Customize the amount of memory on the VM:
- vb.memory = "256"
- end
- #
- # View the documentation for the provider you are using for more
- # information on available options.
-
- # Enable provisioning with a shell script. Additional provisioners such as
- # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
- # documentation for more information about their specific syntax and use.
- config.vm.provision "shell" do |s|
- ssh_pub_key = File.readlines("../../authorized_keys").first.strip
- s.inline = <<-SHELL
- mkdir /root/.ssh
- echo #{ssh_pub_key} >> /home/vagrant/.ssh/authorized_keys
- echo #{ssh_pub_key} >> /root/.ssh/authorized_keys
- sudo apt install rsync || sudo yum install -y rsync || sudo pkg install -y rsync
- SHELL
- end
-end
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/NEWS
^
|
@@ -1,3 +1,33 @@
+20240122
+
+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.
+
+
+20231222
+
+New in this release:
+
+* --combine-exec combines GNU Parallel with any executable.
+
+* Bug fixes and man page updates.
+
+News about GNU Parallel:
+
+* The first GNU Parallel video that seems to be completely AI
+ generated: https://www.youtube.com/watch?v=Ie8eAhlEHOg
+
+* GNU Parallel and “fail immediately if any fails” problem
+ https://antiarchitect.medium.com/gnu-parallel-and-fail-immediately-if-any-fails-problem-481ddea690ba
+
+
20231122
New in this release:
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+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-20231122.tar.bz2
- wget https://ftpmirror.gnu.org/parallel/parallel-20231122.tar.bz2.sig
- gpg parallel-20231122.tar.bz2.sig
- bzip2 -dc parallel-20231122.tar.bz2 | tar xvf -
- cd parallel-20231122
+ wget https://ftpmirror.gnu.org/parallel/parallel-20240122.tar.bz2
+ wget https://ftpmirror.gnu.org/parallel/parallel-20240122.tar.bz2.sig
+ gpg parallel-20240122.tar.bz2.sig
+ bzip2 -dc parallel-20240122.tar.bz2 | tar xvf -
+ cd parallel-20240122
./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-20231122.tar.bz2
- wget https://ftpmirror.gnu.org/parallel/parallel-20231122.tar.bz2.sig
- gpg parallel-20231122.tar.bz2.sig
- bzip2 -dc parallel-20231122.tar.bz2 | tar xvf -
- cd parallel-20231122
+ wget https://ftpmirror.gnu.org/parallel/parallel-20240122.tar.bz2
+ wget https://ftpmirror.gnu.org/parallel/parallel-20240122.tar.bz2.sig
+ gpg parallel-20240122.tar.bz2.sig
+ bzip2 -dc parallel-20240122.tar.bz2 | tar xvf -
+ cd parallel-20240122
./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. (2023, November 22). GNU Parallel 20231122 ('Grindavík').
- Zenodo. https://doi.org/10.5281/zenodo.10199085
+ Tange, O. (2024, January 22). GNU Parallel 20240122 ('Frederik X').
+ Zenodo. https://doi.org/10.5281/zenodo.10558745
Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+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 20231122.
+# Generated by GNU Autoconf 2.71 for parallel 20240122.
#
# Report bugs to <bug-parallel@gnu.org>.
#
@@ -610,8 +610,8 @@
# Identity of this package.
PACKAGE_NAME='parallel'
PACKAGE_TARNAME='parallel'
-PACKAGE_VERSION='20231122'
-PACKAGE_STRING='parallel 20231122'
+PACKAGE_VERSION='20240122'
+PACKAGE_STRING='parallel 20240122'
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 20231122 to adapt to many kinds of systems.
+\`configure' configures parallel 20240122 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 20231122:";;
+ short | recursive ) echo "Configuration of parallel 20240122:";;
esac
cat <<\_ACEOF
@@ -1390,7 +1390,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-parallel configure 20231122
+parallel configure 20240122
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 20231122, which was
+It was created by parallel $as_me 20240122, 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='20231122'
+ VERSION='20240122'
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 20231122, which was
+This file was extended by parallel $as_me 20240122, 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 20231122
+parallel config.status 20240122
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/configure.ac
^
|
@@ -1,4 +1,4 @@
-AC_INIT([parallel],[20231122],[bug-parallel@gnu.org])
+AC_INIT([parallel],[20240122],[bug-parallel@gnu.org])
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_FILES([
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/doc/haikus
^
|
@@ -4,6 +4,7 @@
Quote of the month:
+
GNU parallel ftw
-- hostux.social/@rmpr @_paulmairo@twitter
@@ -15,6 +16,23 @@
write a haiku about gnu parallel and the :::+ option
+ Stop paralyzing start parallelizing
+ -- @harshgandhi100@YouTube
+
+ 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
+ able to jump right in with parallel.
+ -- dwhite21787@reddit
+
+ Big fan of GNU parallel!
+ -- lovelyloafers@reddit
I’m a big fan of GNU parallel!
-- Scott Cain @scottjcain@twitter
@@ -213,6 +231,12 @@
=== Used ===
+ GNU Parallel alone provides more value than moreutils
+ -- Ferret7446@news.ycombinator.com
+
+Parallel is so damn good! You’ve got to use it.
+ -- @ThePrimeTimeagen@youtube.com
+
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
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/doc/release_new_version
^
|
@@ -38,7 +38,7 @@
https://zenodo.org/deposit/new
Do you already have a DOI for this upload? No
-(Reserve DOI)
+(Get a DOI now!)
Resource type: Software
GNU Parallel 20xxxx22 ('Xxxx')
Add creator: Person
@@ -54,8 +54,7 @@
[Save]
-10.5281/zenodo.4381888
-DOINO=3956817
+DOI=10.5281/zenodo.4381888
SPCTAG='Privacy Shield'
# Update version
@@ -274,27 +273,28 @@
to:parallel@gnu.org, bug-parallel@gnu.org
stable-bcc: Jesse Alama <jessealama@fastmail.fm>
-Subject: GNU Parallel 20231122 ('Perry<<>>') released <<[stable]>>
+Subject: GNU Parallel 20240122 ('Frederik X') released
-GNU Parallel 20231122 ('<<>>') has been released. It is available for download at: lbry://@GnuParallel:4
+GNU Parallel 20240122 ('Frederik X') has been released. It is available for download at: lbry://@GnuParallel:4
Quote of the month:
- 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
-
+ GNU Parallel alone provides more value than moreutils
+ -- Ferret7446@news.ycombinator.com
+
New in this release:
-* -a file1 -a +file2 will link file2 to file1 similar to ::::+
+* --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.
-* --bar shows total time when all jobs are done.
+* env_parallel.{sh,ash,dash,bash,ksh,zsh} is now the same script.
* Bug fixes and man page updates.
News about GNU Parallel:
-* Using GNU Parallel in bash scripts to optimize python processes
- https://climate-cms.org/posts/2023-11-02-gnu-parallel.html
+* <<>>
GNU Parallel - For people who live life in the parallel lane.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/packager/obs/README
^
|
@@ -1,4 +1,6 @@
make
-Edit home\:tange/parallel/parallel.spec
-Then go to https://build.opensuse.org/package/files?package=parallel&project=home%3Atange
-and add all the files
+Check that the .spec looks ok: home\:tange/parallel/parallel.spec
+
+Then go to
+https://build.opensuse.org/package/files?package=parallel&project=home%3Atange
+for status.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/packager/obs/home-tange/parallel/.osc/_files
^
|
@@ -1,8 +1,8 @@
-<directory name="parallel" rev="380" vrev="2" srcmd5="b4c607559e7426c692eea3e056a82bb7">
+<directory name="parallel" rev="383" vrev="2" srcmd5="bff8bdaf4b92073489319c65b662e66d">
<entry name="Makefile" md5="a165cdcca90c744dc5a5b17cde72ad8e" size="1182" mtime="1698101769" />
- <entry name="PKGBUILD" md5="31dcf1dd50e82729f300b954b2f6ce1e" size="714" mtime="1700699803" />
- <entry name="parallel-20231122.tar.bz2" md5="ea1d46d922bbe0f8c179f01d06046ba7" size="2526069" mtime="1700699804" />
- <entry name="parallel.spec" md5="240e17b0a3a255a05de17097afe5a991" size="6224" mtime="1700699804" />
- <entry name="parallel_20231122.dsc" md5="657c77879e09eb8d5fa1bc80111931f9" size="556" mtime="1700699804" />
- <entry name="parallel_20231122.tar.gz" md5="f85f6ce79a4b1ea64a282effc1059e21" size="2802667" mtime="1700699805" />
+ <entry name="PKGBUILD" md5="f3824101e43b5d4b0274d8faeaf8a42b" size="714" mtime="1706058997" />
+ <entry name="parallel-20240122.tar.bz2" md5="b127719ee7084fe359385805eddb96d7" size="2586008" mtime="1706059000" />
+ <entry name="parallel.spec" md5="287678d487318da5021591b141f83e70" size="6224" mtime="1706059001" />
+ <entry name="parallel_20240122.dsc" md5="b118659d64cbb338fb3545925f135b60" size="556" mtime="1706059002" />
+ <entry name="parallel_20240122.tar.gz" md5="afaf310110de5b00ea50acdf1c5e77f7" size="2830093" mtime="1706059005" />
</directory>
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+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: 20231122
+Version: 20240122
Release: 2.1
License: GPL-3.0-or-later
Group: Productivity/File utilities
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/packager/releasescripts/updateversion
^
|
@@ -3,25 +3,31 @@
# SPDX-FileCopyrightText: 2021-2022 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
+# Set DOI and SPCTAG then run this
+
updater() {
- export DOINO
+ export DOI
export TAG
export SPCTAG
export YYYYMMDD=`yyyymmdd`
- export DOI=10.5281/zenodo.$DOINO
export YYYY=${YYYYMMDD:0:4}
export YYYYMM=${YYYYMMDD:0:6}
export YYYYMMDD=${YYYYMM}22
export MON=`date +%b`
export MONTH=`date +%B`
+ # Space Tag => SpaceTag
TAG=$(echo $SPCTAG | perl -pe 's/ //g')
- echo Tag=$TAG=\"$SPCTAG\" Date:$YYYYMMDD Year:$YYYY Mon:$MON Month:$MONTH DOI:$DOI
+ # DOI=10.5281/zenodo.
+ # DOINO=10428184
+ DOINO=$(echo $DOI | perl -pe 's/.*\.//')
+ export DOINO
+ echo Tag=$TAG=\"$SPCTAG\" Date:$YYYYMMDD Year:$YYYY Mon:$MON Month:$MONTH DOI:$DOI DOINO=$DOINO
export TITLE="GNU Parallel $YYYYMMDD ('$SPCTAG')"
- if [ -z "$DOINO" ] ; then
- echo '*** Set DOINO and try again ***'
- echo 'https://zenodo.org/deposit/new (Reserve DOI)'
- echo '[Save]'
+ if [ -z "$DOI" ] ; then
+ echo '*** Set DOI and try again ***'
+ echo 'https://zenodo.org/deposit/new (Get a DOI now!)'
+ echo '[Save draft]'
cat .last-doitag.txt
echo . .last-doitag.txt
return
@@ -32,11 +38,12 @@
echo . .last-doitag.txt
return
fi
- echo "export DOINO=$DOINO" > .last-doitag.txt
+ echo "export DOI=$DOI" > .last-doitag.txt
+ echo "export DOINO=$DOINO" >> .last-doitag.txt
echo "export TAG='$TAG'" >> .last-doitag.txt
echo "export SPCTAG='$SPCTAG'" >> .last-doitag.txt
echo "export YYYYMMDD=$YYYYMMDD" >> .last-doitag.txt
- echo 'echo "$DOINO $YYYYMMDD ($TAG)"' >> .last-doitag.txt
+ echo 'echo "$DOINO $DOI $YYYYMMDD ($TAG)"' >> .last-doitag.txt
perl -i -pe "s/20\d\d\d\d\d\d/$YYYYMMDD/" configure.ac
perl -i -pe "/version/ and s/20\d\d\d\d\d\d/$YYYYMMDD/" src/sql
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/Makefile.am
^
|
@@ -1,4 +1,4 @@
-# SPDX-FileCopyrightText: 2002-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2002-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/christmastree
^
|
@@ -18,7 +18,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
=head1 NAME
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -18,7 +18,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
grepq() {
@@ -79,9 +79,11 @@
cat <<'_EOS'
+You have called the dummy script "env_parallel".
+
env_parallel only works if it is a function.
-Do this and restart your shell:
+You need to do this and restart your shell:
bash: Put this in $HOME/.bashrc: . env_parallel.bash
E.g. by doing: echo '. env_parallel.bash' >> $HOME/.bashrc
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.ash
^
|
@@ -1,13 +1,19 @@
#!/usr/bin/env ash
-# This file must be sourced in ash:
+# This file must be sourced in sh/ash/dash/bash/ksh/mksh/zsh:
#
-# . env_parallel.ash
+# . env_parallel.sh
+# source env_parallel.ash
+# source env_parallel.dash
+# source env_parallel.bash
+# source env_parallel.ksh
+# source env_parallel.mksh
+# source env_parallel.zsh
#
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,14 +31,36 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
-# shellcheck disable=SC2006 shell=dash
+# shellcheck disable=SC2006
env_parallel() {
- # based on env_parallel.sh
+ # env_parallel.{sh,ash,dash,bash,ksh,mksh,zsh}
+ # Check shell dialect
+ if [ -n "$BASH_VERSION" ]; then
+ _shell_DIALECT=bash
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=_prefix_PARALLEL_ENV_bash
+ elif [ -n "$ZSH_VERSION" ]; then
+ _shell_DIALECT=zsh
+ _eval_needed=true
+ _prefix_PARALLEL_ENV=false
+ elif [ -n "$KSH_VERSION" ]; then
+ _shell_DIALECT=ksh
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ else
+ # Dash/ash - can these be detected better?
+ _shell_DIALECT="sh"
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ fi
_names_of_ALIASES() {
+ _names_of_ALIASES_$_shell_DIALECT
+ }
+ _names_of_ALIASES_sh() {
# alias fails on Unixware 5
for _i in `alias 2>/dev/null | perl -ne 's/^alias //;s/^(\S+)=.*/$1/ && print' 2>/dev/null`; do
# Check if this name really is an alias
@@ -42,7 +70,22 @@
fi
done
}
+ _names_of_ALIASES_bash() {
+ # No aliases will return false. This error should be ignored.
+ # shellcheck disable=SC3044
+ compgen -a || true
+ }
+ _names_of_ALIASES_ksh() {
+ alias | perl -pe 's/=.*//'
+ }
+ _names_of_ALIASES_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)aliases}
+ }
_bodies_of_ALIASES() {
+ _bodies_of_ALIASES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_ALIASES_sh() {
# alias may return:
# myalias='definition' (GNU/Linux ash)
# alias myalias='definition' (FreeBSD ash)
@@ -51,23 +94,104 @@
echo 'alias '"`alias "$_i" | perl -pe '1..1 and s/^alias //'`"
done
}
+ _bodies_of_ALIASES_bash() {
+ # shellcheck disable=SC3043
+ local _i
+ for _i in "$@"; do
+ # shellcheck disable=SC2046
+ if [ $(alias "$_i" | wc -l) = 1 ] ; then
+ true Alias is a single line. Good.
+ else
+ _warning_PAR "Alias '$_i' contains newline."
+ _warning_PAR "Make sure the command has at least one newline after '$_i'."
+ _warning_PAR "See BUGS in 'man env_parallel'."
+ fi
+ done
+ alias "$@"
+ }
+ _bodies_of_ALIASES_ksh() {
+ alias "$@" | perl -pe 's/^/alias /;
+ sub warning { print STDERR "env_parallel: Warning: @_\n"; }
+ if(/^alias (\S+)=\$.*\\n/) {
+ warning("Alias \"$1\" contains newline.");
+ warning("Make sure the command has at least one newline after \"$1\".");
+ warning("See BUGS in \"man env_parallel\".");
+ }'
+
+ }
+ _bodies_of_ALIASES_zsh() {
+ # shellcheck disable=SC3043
+ local _i
+ for _i in "$@"; do
+ echo 'alias '"$(alias "$_i")"
+ done
+ }
+ _names_of_FUNCTIONS() {
+ _names_of_FUNCTIONS_$_shell_DIALECT
+ }
+ _names_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ compgen -A function
+ }
_names_of_maybe_FUNCTIONS() {
set | perl -ne '/^([A-Z_0-9]+)\s*\(\)\s*\{?$/i and print "$1\n"'
}
- _names_of_FUNCTIONS() {
+ _names_of_FUNCTIONS_sh() {
# myfunc is a function
# shellcheck disable=SC2046
LANG=C type `_names_of_maybe_FUNCTIONS` |
perl -ne '/^(\S+) is a function$/ and not $seen{$1}++ and print "$1\n"'
}
+ _names_of_FUNCTIONS_ksh() {
+ # shellcheck disable=SC3044
+ typeset +f | perl -pe 's/\(\).*//; s/ .*//;'
+ }
+ _names_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)functions}
+ }
_bodies_of_FUNCTIONS() {
+ _bodies_of_FUNCTIONS_$_shell_DIALECT "$@"
+ }
+ _bodies_of_FUNCTIONS_sh() {
LANG=C type "$@" | perl -ne '/^(\S+) is a function$/ or print'
}
+ _bodies_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ typeset -f "$@"
+ }
+ _bodies_of_FUNCTIONS_ksh() {
+ functions "$@"
+ }
+ _bodies_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC3044
+ typeset -f "$@"
+ }
_names_of_VARIABLES() {
+ _names_of_VARIABLES_$_shell_DIALECT
+ }
+ _names_of_VARIABLES_sh() {
# This may screw up if variables contain \n and =
set | perl -ne 's/^(\S+?)=.*/$1/ and print;'
}
+ _names_of_VARIABLES_bash() {
+ # shellcheck disable=SC3044
+ compgen -A variable
+ }
+ _names_of_VARIABLES_ksh() {
+ # shellcheck disable=SC3044
+ typeset +p |
+ perl -pe 's/^(type)?set( [-+][a-zA-Z0-9]*)* //; s/(\[\d+\])?=.*//' |
+ uniq
+ }
+ _names_of_VARIABLES_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)parameters}
+ }
_bodies_of_VARIABLES() {
+ _bodies_of_VARIABLES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_VARIABLES_sh() {
# Crappy typeset -p
for _i in "$@"
do
@@ -77,13 +201,44 @@
echo
done
}
+ _bodies_of_VARIABLES_bash() {
+ # shellcheck disable=SC3044
+ typeset -p "$@"
+ }
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.bash
^
|
@@ -1,13 +1,19 @@
#!/usr/bin/env bash
-# This file must be sourced in bash:
+# This file must be sourced in sh/ash/dash/bash/ksh/mksh/zsh:
#
+# . env_parallel.sh
+# source env_parallel.ash
+# source env_parallel.dash
# source env_parallel.bash
+# source env_parallel.ksh
+# source env_parallel.mksh
+# source env_parallel.zsh
#
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,22 +31,75 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
# shellcheck disable=SC2006
env_parallel() {
- # env_parallel.bash
+ # env_parallel.{sh,ash,dash,bash,ksh,mksh,zsh}
+ # Check shell dialect
+ if [ -n "$BASH_VERSION" ]; then
+ _shell_DIALECT=bash
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=_prefix_PARALLEL_ENV_bash
+ elif [ -n "$ZSH_VERSION" ]; then
+ _shell_DIALECT=zsh
+ _eval_needed=true
+ _prefix_PARALLEL_ENV=false
+ elif [ -n "$KSH_VERSION" ]; then
+ _shell_DIALECT=ksh
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ else
+ # Dash/ash - can these be detected better?
+ _shell_DIALECT="sh"
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ fi
_names_of_ALIASES() {
+ _names_of_ALIASES_$_shell_DIALECT
+ }
+ _names_of_ALIASES_sh() {
+ # alias fails on Unixware 5
+ for _i in `alias 2>/dev/null | perl -ne 's/^alias //;s/^(\S+)=.*/$1/ && print' 2>/dev/null`; do
+ # Check if this name really is an alias
+ # or just part of a multiline alias definition
+ if alias "$_i" >/dev/null 2>/dev/null; then
+ echo "$_i"
+ fi
+ done
+ }
+ _names_of_ALIASES_bash() {
# No aliases will return false. This error should be ignored.
+ # shellcheck disable=SC3044
compgen -a || true
}
+ _names_of_ALIASES_ksh() {
+ alias | perl -pe 's/=.*//'
+ }
+ _names_of_ALIASES_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)aliases}
+ }
_bodies_of_ALIASES() {
+ _bodies_of_ALIASES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_ALIASES_sh() {
+ # alias may return:
+ # myalias='definition' (GNU/Linux ash)
+ # alias myalias='definition' (FreeBSD ash)
+ # so remove 'alias ' from first line
+ for _i in "$@"; do
+ echo 'alias '"`alias "$_i" | perl -pe '1..1 and s/^alias //'`"
+ done
+ }
+ _bodies_of_ALIASES_bash() {
+ # shellcheck disable=SC3043
local _i
for _i in "$@"; do
# shellcheck disable=SC2046
- if [ $(alias "$_i" | wc -l) == 1 ] ; then
+ if [ $(alias "$_i" | wc -l) = 1 ] ; then
true Alias is a single line. Good.
else
_warning_PAR "Alias '$_i' contains newline."
@@ -50,26 +109,140 @@
done
alias "$@"
}
+ _bodies_of_ALIASES_ksh() {
+ alias "$@" | perl -pe 's/^/alias /;
+ sub warning { print STDERR "env_parallel: Warning: @_\n"; }
+ if(/^alias (\S+)=\$.*\\n/) {
+ warning("Alias \"$1\" contains newline.");
+ warning("Make sure the command has at least one newline after \"$1\".");
+ warning("See BUGS in \"man env_parallel\".");
+ }'
+
+ }
+ _bodies_of_ALIASES_zsh() {
+ # shellcheck disable=SC3043
+ local _i
+ for _i in "$@"; do
+ echo 'alias '"$(alias "$_i")"
+ done
+ }
_names_of_FUNCTIONS() {
+ _names_of_FUNCTIONS_$_shell_DIALECT
+ }
+ _names_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
compgen -A function
}
+ _names_of_maybe_FUNCTIONS() {
+ set | perl -ne '/^([A-Z_0-9]+)\s*\(\)\s*\{?$/i and print "$1\n"'
+ }
+ _names_of_FUNCTIONS_sh() {
+ # myfunc is a function
+ # shellcheck disable=SC2046
+ LANG=C type `_names_of_maybe_FUNCTIONS` |
+ perl -ne '/^(\S+) is a function$/ and not $seen{$1}++ and print "$1\n"'
+ }
+ _names_of_FUNCTIONS_ksh() {
+ # shellcheck disable=SC3044
+ typeset +f | perl -pe 's/\(\).*//; s/ .*//;'
+ }
+ _names_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)functions}
+ }
_bodies_of_FUNCTIONS() {
+ _bodies_of_FUNCTIONS_$_shell_DIALECT "$@"
+ }
+ _bodies_of_FUNCTIONS_sh() {
+ LANG=C type "$@" | perl -ne '/^(\S+) is a function$/ or print'
+ }
+ _bodies_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ typeset -f "$@"
+ }
+ _bodies_of_FUNCTIONS_ksh() {
+ functions "$@"
+ }
+ _bodies_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC3044
typeset -f "$@"
}
_names_of_VARIABLES() {
+ _names_of_VARIABLES_$_shell_DIALECT
+ }
+ _names_of_VARIABLES_sh() {
+ # This may screw up if variables contain \n and =
+ set | perl -ne 's/^(\S+?)=.*/$1/ and print;'
+ }
+ _names_of_VARIABLES_bash() {
+ # shellcheck disable=SC3044
compgen -A variable
}
+ _names_of_VARIABLES_ksh() {
+ # mksh: typeset +p |
+ # perl -pe 's/^(type)?set( [-+][a-zA-Z0-9]*)* //; s/(\[\d+\])?=.*//' |
+ # uniq
+ # ksh: typeset +p | perl -pe 's/^typeset .. //'
+ # shellcheck disable=SC3044
+ typeset +p |
+ perl -pe 's/^(type)?set( [-+][a-zA-Z0-9]*)* //; s/(\[\d+\])?=.*//' |
+ uniq
+ }
+ _names_of_VARIABLES_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)parameters}
+ }
_bodies_of_VARIABLES() {
+ _bodies_of_VARIABLES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_VARIABLES_sh() {
+ # Crappy typeset -p
+ for _i in "$@"
+ do
+ perl -e 'print @ARGV' "$_i="
+ eval echo "\"\$$_i\"" | perl -e '$/=undef; $a=<>; chop($a); print $a' |
+ perl -pe 's/[\002-\011\013-\032\\\#\?\`\(\)\{\}\[\]\^\*\<\=\>\~\|\; \"\!\$\&\202-\377]/\\$&/go;'"s/'/\\\'/g; s/[\n]/'\\n'/go;";
+ echo
+ done
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.csh
^
|
@@ -7,7 +7,7 @@
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,7 +25,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
set _parallel_exit_CODE=0
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.dash
^
|
@@ -1,13 +1,19 @@
#!/usr/bin/env dash
-# This file must be sourced in dash:
+# This file must be sourced in sh/ash/dash/bash/ksh/mksh/zsh:
#
-# . env_parallel.dash
+# . env_parallel.sh
+# source env_parallel.ash
+# source env_parallel.dash
+# source env_parallel.bash
+# source env_parallel.ksh
+# source env_parallel.mksh
+# source env_parallel.zsh
#
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,14 +31,36 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
# shellcheck disable=SC2006
env_parallel() {
- # based on env_parallel.sh
+ # env_parallel.{sh,ash,dash,bash,ksh,mksh,zsh}
+ # Check shell dialect
+ if [ -n "$BASH_VERSION" ]; then
+ _shell_DIALECT=bash
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=_prefix_PARALLEL_ENV_bash
+ elif [ -n "$ZSH_VERSION" ]; then
+ _shell_DIALECT=zsh
+ _eval_needed=true
+ _prefix_PARALLEL_ENV=false
+ elif [ -n "$KSH_VERSION" ]; then
+ _shell_DIALECT=ksh
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ else
+ # Dash/ash - can these be detected better?
+ _shell_DIALECT="sh"
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ fi
_names_of_ALIASES() {
+ _names_of_ALIASES_$_shell_DIALECT
+ }
+ _names_of_ALIASES_sh() {
# alias fails on Unixware 5
for _i in `alias 2>/dev/null | perl -ne 's/^alias //;s/^(\S+)=.*/$1/ && print' 2>/dev/null`; do
# Check if this name really is an alias
@@ -42,7 +70,22 @@
fi
done
}
+ _names_of_ALIASES_bash() {
+ # No aliases will return false. This error should be ignored.
+ # shellcheck disable=SC3044
+ compgen -a || true
+ }
+ _names_of_ALIASES_ksh() {
+ alias | perl -pe 's/=.*//'
+ }
+ _names_of_ALIASES_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)aliases}
+ }
_bodies_of_ALIASES() {
+ _bodies_of_ALIASES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_ALIASES_sh() {
# alias may return:
# myalias='definition' (GNU/Linux ash)
# alias myalias='definition' (FreeBSD ash)
@@ -51,23 +94,104 @@
echo 'alias '"`alias "$_i" | perl -pe '1..1 and s/^alias //'`"
done
}
+ _bodies_of_ALIASES_bash() {
+ # shellcheck disable=SC3043
+ local _i
+ for _i in "$@"; do
+ # shellcheck disable=SC2046
+ if [ $(alias "$_i" | wc -l) = 1 ] ; then
+ true Alias is a single line. Good.
+ else
+ _warning_PAR "Alias '$_i' contains newline."
+ _warning_PAR "Make sure the command has at least one newline after '$_i'."
+ _warning_PAR "See BUGS in 'man env_parallel'."
+ fi
+ done
+ alias "$@"
+ }
+ _bodies_of_ALIASES_ksh() {
+ alias "$@" | perl -pe 's/^/alias /;
+ sub warning { print STDERR "env_parallel: Warning: @_\n"; }
+ if(/^alias (\S+)=\$.*\\n/) {
+ warning("Alias \"$1\" contains newline.");
+ warning("Make sure the command has at least one newline after \"$1\".");
+ warning("See BUGS in \"man env_parallel\".");
+ }'
+
+ }
+ _bodies_of_ALIASES_zsh() {
+ # shellcheck disable=SC3043
+ local _i
+ for _i in "$@"; do
+ echo 'alias '"$(alias "$_i")"
+ done
+ }
+ _names_of_FUNCTIONS() {
+ _names_of_FUNCTIONS_$_shell_DIALECT
+ }
+ _names_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ compgen -A function
+ }
_names_of_maybe_FUNCTIONS() {
set | perl -ne '/^([A-Z_0-9]+)\s*\(\)\s*\{?$/i and print "$1\n"'
}
- _names_of_FUNCTIONS() {
+ _names_of_FUNCTIONS_sh() {
# myfunc is a function
# shellcheck disable=SC2046
LANG=C type `_names_of_maybe_FUNCTIONS` |
perl -ne '/^(\S+) is a function$/ and not $seen{$1}++ and print "$1\n"'
}
+ _names_of_FUNCTIONS_ksh() {
+ # shellcheck disable=SC3044
+ typeset +f | perl -pe 's/\(\).*//; s/ .*//;'
+ }
+ _names_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)functions}
+ }
_bodies_of_FUNCTIONS() {
+ _bodies_of_FUNCTIONS_$_shell_DIALECT "$@"
+ }
+ _bodies_of_FUNCTIONS_sh() {
LANG=C type "$@" | perl -ne '/^(\S+) is a function$/ or print'
}
+ _bodies_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ typeset -f "$@"
+ }
+ _bodies_of_FUNCTIONS_ksh() {
+ functions "$@"
+ }
+ _bodies_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC3044
+ typeset -f "$@"
+ }
_names_of_VARIABLES() {
+ _names_of_VARIABLES_$_shell_DIALECT
+ }
+ _names_of_VARIABLES_sh() {
# This may screw up if variables contain \n and =
set | perl -ne 's/^(\S+?)=.*/$1/ and print;'
}
+ _names_of_VARIABLES_bash() {
+ # shellcheck disable=SC3044
+ compgen -A variable
+ }
+ _names_of_VARIABLES_ksh() {
+ # shellcheck disable=SC3044
+ typeset +p |
+ perl -pe 's/^(type)?set( [-+][a-zA-Z0-9]*)* //; s/(\[\d+\])?=.*//' |
+ uniq
+ }
+ _names_of_VARIABLES_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)parameters}
+ }
_bodies_of_VARIABLES() {
+ _bodies_of_VARIABLES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_VARIABLES_sh() {
# Crappy typeset -p
for _i in "$@"
do
@@ -77,13 +201,44 @@
echo
done
}
+ _bodies_of_VARIABLES_bash() {
+ # shellcheck disable=SC3044
+ typeset -p "$@"
+ }
+ _bodies_of_VARIABLES_ksh() {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.fish
^
|
@@ -7,7 +7,7 @@
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,7 +25,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
# If you are a fisherman feel free to improve the code
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.ksh
^
|
@@ -1,13 +1,19 @@
#!/usr/bin/env ksh
-# This file must be sourced in ksh:
+# This file must be sourced in sh/ash/dash/bash/ksh/mksh/zsh:
#
+# . env_parallel.sh
+# source env_parallel.ash
+# source env_parallel.dash
+# source env_parallel.bash
# source env_parallel.ksh
+# source env_parallel.mksh
+# source env_parallel.zsh
#
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,17 +31,85 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
# shellcheck disable=SC2006
env_parallel() {
- # env_parallel.ksh
+ # env_parallel.{sh,ash,dash,bash,ksh,mksh,zsh}
+ # Check shell dialect
+ if [ -n "$BASH_VERSION" ]; then
+ _shell_DIALECT=bash
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=_prefix_PARALLEL_ENV_bash
+ elif [ -n "$ZSH_VERSION" ]; then
+ _shell_DIALECT=zsh
+ _eval_needed=true
+ _prefix_PARALLEL_ENV=false
+ elif [ -n "$KSH_VERSION" ]; then
+ _shell_DIALECT=ksh
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ else
+ # Dash/ash - can these be detected better?
+ _shell_DIALECT="sh"
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ fi
_names_of_ALIASES() {
+ _names_of_ALIASES_$_shell_DIALECT
+ }
+ _names_of_ALIASES_sh() {
+ # alias fails on Unixware 5
+ for _i in `alias 2>/dev/null | perl -ne 's/^alias //;s/^(\S+)=.*/$1/ && print' 2>/dev/null`; do
+ # Check if this name really is an alias
+ # or just part of a multiline alias definition
+ if alias "$_i" >/dev/null 2>/dev/null; then
+ echo "$_i"
+ fi
+ done
+ }
+ _names_of_ALIASES_bash() {
+ # No aliases will return false. This error should be ignored.
+ # shellcheck disable=SC3044
+ compgen -a || true
+ }
+ _names_of_ALIASES_ksh() {
alias | perl -pe 's/=.*//'
}
+ _names_of_ALIASES_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)aliases}
+ }
_bodies_of_ALIASES() {
+ _bodies_of_ALIASES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_ALIASES_sh() {
+ # alias may return:
+ # myalias='definition' (GNU/Linux ash)
+ # alias myalias='definition' (FreeBSD ash)
+ # so remove 'alias ' from first line
+ for _i in "$@"; do
+ echo 'alias '"`alias "$_i" | perl -pe '1..1 and s/^alias //'`"
+ done
+ }
+ _bodies_of_ALIASES_bash() {
+ # shellcheck disable=SC3043
+ local _i
+ for _i in "$@"; do
+ # shellcheck disable=SC2046
+ if [ $(alias "$_i" | wc -l) = 1 ] ; then
+ true Alias is a single line. Good.
+ else
+ _warning_PAR "Alias '$_i' contains newline."
+ _warning_PAR "Make sure the command has at least one newline after '$_i'."
+ _warning_PAR "See BUGS in 'man env_parallel'."
+ fi
+ done
+ alias "$@"
+ }
+ _bodies_of_ALIASES_ksh() {
alias "$@" | perl -pe 's/^/alias /;
sub warning { print STDERR "env_parallel: Warning: @_\n"; }
if(/^alias (\S+)=\$.*\\n/) {
@@ -45,28 +119,126 @@
}'
}
- _names_of_maybe_FUNCTIONS() {
- true not used
+ _bodies_of_ALIASES_zsh() {
+ # shellcheck disable=SC3043
+ local _i
+ for _i in "$@"; do
+ echo 'alias '"$(alias "$_i")"
+ done
}
_names_of_FUNCTIONS() {
- typeset +p -f | perl -pe 's/\(\).*//'
+ _names_of_FUNCTIONS_$_shell_DIALECT
+ }
+ _names_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ compgen -A function
+ }
+ _names_of_maybe_FUNCTIONS() {
+ set | perl -ne '/^([A-Z_0-9]+)\s*\(\)\s*\{?$/i and print "$1\n"'
+ }
+ _names_of_FUNCTIONS_sh() {
+ # myfunc is a function
+ # shellcheck disable=SC2046
+ LANG=C type `_names_of_maybe_FUNCTIONS` |
+ perl -ne '/^(\S+) is a function$/ and not $seen{$1}++ and print "$1\n"'
+ }
+ _names_of_FUNCTIONS_ksh() {
+ # shellcheck disable=SC3044
+ typeset +f | perl -pe 's/\(\).*//; s/ .*//;'
+ }
+ _names_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)functions}
}
_bodies_of_FUNCTIONS() {
+ _bodies_of_FUNCTIONS_$_shell_DIALECT "$@"
+ }
+ _bodies_of_FUNCTIONS_sh() {
+ LANG=C type "$@" | perl -ne '/^(\S+) is a function$/ or print'
+ }
+ _bodies_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ typeset -f "$@"
+ }
+ _bodies_of_FUNCTIONS_ksh() {
functions "$@"
}
+ _bodies_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC3044
+ typeset -f "$@"
+ }
_names_of_VARIABLES() {
- typeset +p | perl -pe 's/^typeset .. //'
+ _names_of_VARIABLES_$_shell_DIALECT
+ }
+ _names_of_VARIABLES_sh() {
+ # This may screw up if variables contain \n and =
+ set | perl -ne 's/^(\S+?)=.*/$1/ and print;'
+ }
+ _names_of_VARIABLES_bash() {
+ # shellcheck disable=SC3044
+ compgen -A variable
+ }
+ _names_of_VARIABLES_ksh() {
+ # shellcheck disable=SC3044
+ typeset +p |
+ perl -pe 's/^(type)?set( [-+][a-zA-Z0-9]*)* //; s/(\[\d+\])?=.*//' |
+ uniq
+ }
+ _names_of_VARIABLES_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)parameters}
}
_bodies_of_VARIABLES() {
+ _bodies_of_VARIABLES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_VARIABLES_sh() {
+ # Crappy typeset -p
+ for _i in "$@"
+ do
+ perl -e 'print @ARGV' "$_i="
+ eval echo "\"\$$_i\"" | perl -e '$/=undef; $a=<>; chop($a); print $a' |
+ perl -pe 's/[\002-\011\013-\032\\\#\?\`\(\)\{\}\[\]\^\*\<\=\>\~\|\; \"\!\$\&\202-\377]/\\$&/go;'"s/'/\\\'/g; s/[\n]/'\\n'/go;";
+ echo
+ done
+ }
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.mksh
^
|
@@ -1,13 +1,19 @@
#!/usr/bin/env ksh
-# This file must be sourced in mksh:
+# This file must be sourced in sh/ash/dash/bash/ksh/mksh/zsh:
#
+# . env_parallel.sh
+# source env_parallel.ash
+# source env_parallel.dash
+# source env_parallel.bash
+# source env_parallel.ksh
# source env_parallel.mksh
+# source env_parallel.zsh
#
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,17 +31,82 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
# shellcheck disable=SC2006
env_parallel() {
- # env_parallel.mksh
+ # env_parallel.{sh,ash,dash,bash,ksh,mksh,zsh}
+ # Check shell dialect
+ if [ -n "$BASH_VERSION" ]; then
+ _shell_DIALECT=bash
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=_prefix_PARALLEL_ENV_bash
+ elif [ -n "$ZSH_VERSION" ]; then
+ _shell_DIALECT=zsh
+ _eval_needed=true
+ _prefix_PARALLEL_ENV=false
+ elif [ -n "$KSH_VERSION" ]; then
+ _shell_DIALECT=ksh
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ else
+ # Dash/ash - can these be detected better?
+ _shell_DIALECT=sh
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ fi
_names_of_ALIASES() {
+ _names_of_ALIASES_$_shell_DIALECT
+ }
+ _names_of_ALIASES_sh() {
+ # alias fails on Unixware 5
+ for _i in `alias 2>/dev/null | perl -ne 's/^alias //;s/^(\S+)=.*/$1/ && print' 2>/dev/null`; do
+ # Check if this name really is an alias
+ # or just part of a multiline alias definition
+ if alias "$_i" >/dev/null 2>/dev/null; then
+ echo "$_i"
+ fi
+ done
+ }
+ _names_of_ALIASES_bash() {
+ # No aliases will return false. This error should be ignored.
+ compgen -a || true
+ }
+ _names_of_ALIASES_ksh() {
alias | perl -pe 's/=.*//'
}
+ _names_of_ALIASES_zsh() {
+ print -l ${(k)aliases}
+ }
_bodies_of_ALIASES() {
+ _bodies_of_ALIASES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_ALIASES_sh() {
+ # alias may return:
+ # myalias='definition' (GNU/Linux ash)
+ # alias myalias='definition' (FreeBSD ash)
+ # so remove 'alias ' from first line
+ for _i in "$@"; do
+ echo 'alias '"`alias "$_i" | perl -pe '1..1 and s/^alias //'`"
+ done
+ }
+ _bodies_of_ALIASES_bash() {
+ local _i
+ for _i in "$@"; do
+ # shellcheck disable=SC2046
+ if [ $(alias "$_i" | wc -l) == 1 ] ; then
+ true Alias is a single line. Good.
+ else
+ _warning_PAR "Alias '$_i' contains newline."
+ _warning_PAR "Make sure the command has at least one newline after '$_i'."
+ _warning_PAR "See BUGS in 'man env_parallel'."
+ fi
+ done
+ alias "$@"
+ }
+ _bodies_of_ALIASES_ksh() {
alias "$@" | perl -pe 's/^/alias /;
sub warning { print STDERR "env_parallel: Warning: @_\n"; }
if(/^alias (\S+)=\$.*\\n/) {
@@ -45,30 +116,120 @@
}'
}
- _names_of_maybe_FUNCTIONS() {
- true not used
+ _bodies_of_ALIASES_zsh() {
+ local _i
+ for _i in "$@"; do
+ echo 'alias '"$(alias $_i)"
+ done
}
_names_of_FUNCTIONS() {
- typeset +f
+ _names_of_FUNCTIONS_$_shell_DIALECT
+ }
+ _names_of_FUNCTIONS_bash() {
+ compgen -A function
+ }
+ _names_of_maybe_FUNCTIONS() {
+ set | perl -ne '/^([A-Z_0-9]+)\s*\(\)\s*\{?$/i and print "$1\n"'
+ }
+ _names_of_FUNCTIONS_sh() {
+ # myfunc is a function
+ # shellcheck disable=SC2046
+ LANG=C type `_names_of_maybe_FUNCTIONS` |
+ perl -ne '/^(\S+) is a function$/ and not $seen{$1}++ and print "$1\n"'
+ }
+ _names_of_FUNCTIONS_ksh() {
+ # mksh = typeset +f
+ # ksh = typeset +p -f | perl -pe 's/\(\).*//'
+ typeset +f | perl -pe 's/\(\).*//; s/ .*//;'
+ }
+ _names_of_FUNCTIONS_zsh() {
+ print -l ${(k)functions}
}
_bodies_of_FUNCTIONS() {
+ _bodies_of_FUNCTIONS_$_shell_DIALECT "$@"
+ }
+ _bodies_of_FUNCTIONS_sh() {
+ LANG=C type "$@" | perl -ne '/^(\S+) is a function$/ or print'
+ }
+ _bodies_of_FUNCTIONS_bash() {
+ typeset -f "$@"
+ }
+ _bodies_of_FUNCTIONS_ksh() {
+ functions "$@"
+ }
+ _bodies_of_FUNCTIONS_zsh() {
typeset -f "$@"
}
_names_of_VARIABLES() {
+ _names_of_VARIABLES_$_shell_DIALECT
+ }
+ _names_of_VARIABLES_sh() {
+ # This may screw up if variables contain \n and =
+ set | perl -ne 's/^(\S+?)=.*/$1/ and print;'
+ }
+ _names_of_VARIABLES_bash() {
+ compgen -A variable
+ }
+ _names_of_VARIABLES_ksh() {
+ # mksh: typeset +p |
+ # perl -pe 's/^(type)?set( [-+][a-zA-Z0-9]*)* //; s/(\[\d+\])?=.*//' |
+ # uniq
+ # ksh: typeset +p | perl -pe 's/^typeset .. //'
typeset +p |
perl -pe 's/^(type)?set( [-+][a-zA-Z0-9]*)* //; s/(\[\d+\])?=.*//' |
uniq
}
+ _names_of_VARIABLES_zsh() {
+ print -l ${(k)parameters}
+ }
_bodies_of_VARIABLES() {
+ _bodies_of_VARIABLES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_VARIABLES_sh() {
+ # Crappy typeset -p
+ for _i in "$@"
+ do
+ perl -e 'print @ARGV' "$_i="
+ eval echo "\"\$$_i\"" | perl -e '$/=undef; $a=<>; chop($a); print $a' |
+ perl -pe 's/[\002-\011\013-\032\\\#\?\`\(\)\{\}\[\]\^\*\<\=\>\~\|\; \"\!\$\&\202-\377]/\\$&/go;'"s/'/\\\'/g; s/[\n]/'\\n'/go;";
+ echo
+ done
+ }
+ _bodies_of_VARIABLES_bash() {
+ typeset -p "$@"
+ }
+ _bodies_of_VARIABLES_ksh() {
+ typeset -p "$@"
+ }
+ _bodies_of_VARIABLES_zsh() {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.pdksh
^
|
@@ -7,7 +7,7 @@
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,7 +25,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
env_parallel() {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl -w
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
@@ -25,37 +25,44 @@
If the shell function is not loaded, a dummy script will be run
instead that explains how to install the function.
-B<env_parallel> is 100 ms slower at startup than pure GNU
-B<parallel>, and takes up to 30% longer to start a job (typically 15 ms).
+B<env_parallel> is 100 ms slower at startup than pure GNU B<parallel>,
+and takes up to 30% longer to start a job (typically 15 ms).
-Due to the problem with environment space (see below) the recommended
-usage is either:
+Due to the problem with environment space (see below) you are
+recommended only to transfer the environment that you need.
- # Do --record-env into $PARALLEL_IGNORED_NAMES
- env_parallel --session
+To help you do that, you can mark names that should not be
+transferred. This can be done with either B<--session> or
+B<--record-env>.
+
+ # Record the "clean" environment (this only needs to be run once)
+ env_parallel --record-env
+
+ # Optionally edit ~/.parallel/ignored_vars (only needed once)
# Define whatever you want to use
myfunc() { myalias and functions $myvar work. $1.; }
alias myalias='echo Aliases'
myvar='and variables'
- # env_parallel will not export names in $PARALLEL_IGNORED_NAMES
- env_parallel -S localhost myfunc ::: Hooray
+ # Use --env _ to only transfer the names not in the "empty" environment
+ env_parallel --env _ -S localhost myfunc ::: Hooray
Or:
- # Record the "clean" environment (this only needs to be run once)
- env_parallel --record-env
-
- # Optionally edit ~/.parallel/ignored_vars (only needed once)
+ # Do --record-env into $PARALLEL_IGNORED_NAMES
+ env_parallel --session
# Define whatever you want to use
myfunc() { myalias and functions $myvar work. $1.; }
alias myalias='echo Aliases'
myvar='and variables'
- # Use --env _ to only transfer the names not in the "empty" environment
- env_parallel --env _ -S localhost myfunc ::: Hooray
+ # env_parallel will not export names in $PARALLEL_IGNORED_NAMES
+ env_parallel -S localhost myfunc ::: Hooray
+
+ # Optionally
+ env_parallel --end-session
In B<csh> B<--session> is not supported:
@@ -807,7 +814,7 @@
Copyright (C) 2008-2010 Ole Tange, http://ole.tange.dk
-Copyright (C) 2010-2023 Ole Tange, http://ole.tange.dk and Free
+Copyright (C) 2010-2024 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.sh
^
|
@@ -1,13 +1,19 @@
#!/usr/bin/env sh
-# This file must be sourced in sh:
+# This file must be sourced in sh/ash/dash/bash/ksh/mksh/zsh:
#
-# . `which env_parallel.sh`
+# . env_parallel.sh
+# source env_parallel.ash
+# source env_parallel.dash
+# source env_parallel.bash
+# source env_parallel.ksh
+# source env_parallel.mksh
+# source env_parallel.zsh
#
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,14 +31,36 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
# shellcheck disable=SC2006
env_parallel() {
- # env_parallel.sh
+ # env_parallel.{sh,ash,dash,bash,ksh,mksh,zsh}
+ # Check shell dialect
+ if [ -n "$BASH_VERSION" ]; then
+ _shell_DIALECT=bash
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=_prefix_PARALLEL_ENV_bash
+ elif [ -n "$ZSH_VERSION" ]; then
+ _shell_DIALECT=zsh
+ _eval_needed=true
+ _prefix_PARALLEL_ENV=false
+ elif [ -n "$KSH_VERSION" ]; then
+ _shell_DIALECT=ksh
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ else
+ # Dash/ash - can these be detected better?
+ _shell_DIALECT="sh"
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ fi
_names_of_ALIASES() {
+ _names_of_ALIASES_$_shell_DIALECT
+ }
+ _names_of_ALIASES_sh() {
# alias fails on Unixware 5
for _i in `alias 2>/dev/null | perl -ne 's/^alias //;s/^(\S+)=.*/$1/ && print' 2>/dev/null`; do
# Check if this name really is an alias
@@ -42,7 +70,22 @@
fi
done
}
+ _names_of_ALIASES_bash() {
+ # No aliases will return false. This error should be ignored.
+ # shellcheck disable=SC3044
+ compgen -a || true
+ }
+ _names_of_ALIASES_ksh() {
+ alias | perl -pe 's/=.*//'
+ }
+ _names_of_ALIASES_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)aliases}
+ }
_bodies_of_ALIASES() {
+ _bodies_of_ALIASES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_ALIASES_sh() {
# alias may return:
# myalias='definition' (GNU/Linux ash)
# alias myalias='definition' (FreeBSD ash)
@@ -51,23 +94,104 @@
echo 'alias '"`alias "$_i" | perl -pe '1..1 and s/^alias //'`"
done
}
+ _bodies_of_ALIASES_bash() {
+ # shellcheck disable=SC3043
+ local _i
+ for _i in "$@"; do
+ # shellcheck disable=SC2046
+ if [ $(alias "$_i" | wc -l) = 1 ] ; then
+ true Alias is a single line. Good.
+ else
+ _warning_PAR "Alias '$_i' contains newline."
+ _warning_PAR "Make sure the command has at least one newline after '$_i'."
+ _warning_PAR "See BUGS in 'man env_parallel'."
+ fi
+ done
+ alias "$@"
+ }
+ _bodies_of_ALIASES_ksh() {
+ alias "$@" | perl -pe 's/^/alias /;
+ sub warning { print STDERR "env_parallel: Warning: @_\n"; }
+ if(/^alias (\S+)=\$.*\\n/) {
+ warning("Alias \"$1\" contains newline.");
+ warning("Make sure the command has at least one newline after \"$1\".");
+ warning("See BUGS in \"man env_parallel\".");
+ }'
+
+ }
+ _bodies_of_ALIASES_zsh() {
+ # shellcheck disable=SC3043
+ local _i
+ for _i in "$@"; do
+ echo 'alias '"$(alias "$_i")"
+ done
+ }
+ _names_of_FUNCTIONS() {
+ _names_of_FUNCTIONS_$_shell_DIALECT
+ }
+ _names_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ compgen -A function
+ }
_names_of_maybe_FUNCTIONS() {
set | perl -ne '/^([A-Z_0-9]+)\s*\(\)\s*\{?$/i and print "$1\n"'
}
- _names_of_FUNCTIONS() {
+ _names_of_FUNCTIONS_sh() {
# myfunc is a function
# shellcheck disable=SC2046
LANG=C type `_names_of_maybe_FUNCTIONS` |
perl -ne '/^(\S+) is a function$/ and not $seen{$1}++ and print "$1\n"'
}
+ _names_of_FUNCTIONS_ksh() {
+ # shellcheck disable=SC3044
+ typeset +f | perl -pe 's/\(\).*//; s/ .*//;'
+ }
+ _names_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)functions}
+ }
_bodies_of_FUNCTIONS() {
+ _bodies_of_FUNCTIONS_$_shell_DIALECT "$@"
+ }
+ _bodies_of_FUNCTIONS_sh() {
LANG=C type "$@" | perl -ne '/^(\S+) is a function$/ or print'
}
+ _bodies_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ typeset -f "$@"
+ }
+ _bodies_of_FUNCTIONS_ksh() {
+ functions "$@"
+ }
+ _bodies_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC3044
+ typeset -f "$@"
+ }
_names_of_VARIABLES() {
+ _names_of_VARIABLES_$_shell_DIALECT
+ }
+ _names_of_VARIABLES_sh() {
# This may screw up if variables contain \n and =
set | perl -ne 's/^(\S+?)=.*/$1/ and print;'
}
+ _names_of_VARIABLES_bash() {
+ # shellcheck disable=SC3044
+ compgen -A variable
+ }
+ _names_of_VARIABLES_ksh() {
+ # shellcheck disable=SC3044
+ typeset +p |
+ perl -pe 's/^(type)?set( [-+][a-zA-Z0-9]*)* //; s/(\[\d+\])?=.*//' |
+ uniq
+ }
+ _names_of_VARIABLES_zsh() {
+ # shellcheck disable=SC2086,SC2296
+ print -l ${(k)parameters}
+ }
_bodies_of_VARIABLES() {
+ _bodies_of_VARIABLES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_VARIABLES_sh() {
# Crappy typeset -p
for _i in "$@"
do
@@ -77,13 +201,44 @@
echo
done
}
+ _bodies_of_VARIABLES_bash() {
+ # shellcheck disable=SC3044
+ typeset -p "$@"
+ }
+ _bodies_of_VARIABLES_ksh() {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.tcsh
^
|
@@ -7,7 +7,7 @@
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,7 +25,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
set _parallel_exit_CODE=0
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/env_parallel.zsh
^
|
@@ -1,13 +1,19 @@
#!/usr/bin/env zsh
-# This file must be sourced in zsh:
+# This file must be sourced in sh/ash/dash/bash/ksh/mksh/zsh:
#
-# source =env_parallel.zsh
+# . env_parallel.sh
+# source env_parallel.ash
+# source env_parallel.dash
+# source env_parallel.bash
+# source env_parallel.ksh
+# source env_parallel.mksh
+# source env_parallel.zsh
#
# after which 'env_parallel' works
#
#
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,40 +31,214 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
# shellcheck disable=SC2006
env_parallel() {
- # env_parallel.zsh
+ # env_parallel.{sh,ash,dash,bash,ksh,mksh,zsh}
+ # Check shell dialect
+ if [ -n "$BASH_VERSION" ]; then
+ _shell_DIALECT=bash
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=_prefix_PARALLEL_ENV_bash
+ elif [ -n "$ZSH_VERSION" ]; then
+ _shell_DIALECT=zsh
+ _eval_needed=true
+ _prefix_PARALLEL_ENV=false
+ elif [ -n "$KSH_VERSION" ]; then
+ _shell_DIALECT=ksh
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ else
+ # Dash/ash - can these be detected better?
+ _shell_DIALECT="sh"
+ _eval_needed=false
+ _prefix_PARALLEL_ENV=false
+ fi
_names_of_ALIASES() {
+ _names_of_ALIASES_$_shell_DIALECT
+ }
+ _names_of_ALIASES_sh() {
+ # alias fails on Unixware 5
+ for _i in `alias 2>/dev/null | perl -ne 's/^alias //;s/^(\S+)=.*/$1/ && print' 2>/dev/null`; do
+ # Check if this name really is an alias
+ # or just part of a multiline alias definition
+ if alias "$_i" >/dev/null 2>/dev/null; then
+ echo "$_i"
+ fi
+ done
+ }
+ _names_of_ALIASES_bash() {
+ # No aliases will return false. This error should be ignored.
+ # shellcheck disable=SC3044
+ compgen -a || true
+ }
+ _names_of_ALIASES_ksh() {
+ alias | perl -pe 's/=.*//'
+ }
+ _names_of_ALIASES_zsh() {
+ # shellcheck disable=SC2086,SC2296
print -l ${(k)aliases}
}
_bodies_of_ALIASES() {
+ _bodies_of_ALIASES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_ALIASES_sh() {
+ # alias may return:
+ # myalias='definition' (GNU/Linux ash)
+ # alias myalias='definition' (FreeBSD ash)
+ # so remove 'alias ' from first line
+ for _i in "$@"; do
+ echo 'alias '"`alias "$_i" | perl -pe '1..1 and s/^alias //'`"
+ done
+ }
+ _bodies_of_ALIASES_bash() {
+ # shellcheck disable=SC3043
+ local _i
+ for _i in "$@"; do
+ # shellcheck disable=SC2046
+ if [ $(alias "$_i" | wc -l) = 1 ] ; then
+ true Alias is a single line. Good.
+ else
+ _warning_PAR "Alias '$_i' contains newline."
+ _warning_PAR "Make sure the command has at least one newline after '$_i'."
+ _warning_PAR "See BUGS in 'man env_parallel'."
+ fi
+ done
+ alias "$@"
+ }
+ _bodies_of_ALIASES_ksh() {
+ alias "$@" | perl -pe 's/^/alias /;
+ sub warning { print STDERR "env_parallel: Warning: @_\n"; }
+ if(/^alias (\S+)=\$.*\\n/) {
+ warning("Alias \"$1\" contains newline.");
+ warning("Make sure the command has at least one newline after \"$1\".");
+ warning("See BUGS in \"man env_parallel\".");
+ }'
+
+ }
+ _bodies_of_ALIASES_zsh() {
+ # shellcheck disable=SC3043
local _i
- for _i ($@); do
- echo 'alias '"$(alias $_i)"
+ for _i in "$@"; do
+ echo 'alias '"$(alias "$_i")"
done
}
_names_of_FUNCTIONS() {
+ _names_of_FUNCTIONS_$_shell_DIALECT
+ }
+ _names_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ compgen -A function
+ }
+ _names_of_maybe_FUNCTIONS() {
+ set | perl -ne '/^([A-Z_0-9]+)\s*\(\)\s*\{?$/i and print "$1\n"'
+ }
+ _names_of_FUNCTIONS_sh() {
+ # myfunc is a function
+ # shellcheck disable=SC2046
+ LANG=C type `_names_of_maybe_FUNCTIONS` |
+ perl -ne '/^(\S+) is a function$/ and not $seen{$1}++ and print "$1\n"'
+ }
+ _names_of_FUNCTIONS_ksh() {
+ # shellcheck disable=SC3044
+ typeset +f | perl -pe 's/\(\).*//; s/ .*//;'
+ }
+ _names_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC2086,SC2296
print -l ${(k)functions}
}
_bodies_of_FUNCTIONS() {
+ _bodies_of_FUNCTIONS_$_shell_DIALECT "$@"
+ }
+ _bodies_of_FUNCTIONS_sh() {
+ LANG=C type "$@" | perl -ne '/^(\S+) is a function$/ or print'
+ }
+ _bodies_of_FUNCTIONS_bash() {
+ # shellcheck disable=SC3044
+ typeset -f "$@"
+ }
+ _bodies_of_FUNCTIONS_ksh() {
+ functions "$@"
+ }
+ _bodies_of_FUNCTIONS_zsh() {
+ # shellcheck disable=SC3044
typeset -f "$@"
}
_names_of_VARIABLES() {
+ _names_of_VARIABLES_$_shell_DIALECT
+ }
+ _names_of_VARIABLES_sh() {
+ # This may screw up if variables contain \n and =
+ set | perl -ne 's/^(\S+?)=.*/$1/ and print;'
+ }
+ _names_of_VARIABLES_bash() {
+ # shellcheck disable=SC3044
+ compgen -A variable
+ }
+ _names_of_VARIABLES_ksh() {
+ # shellcheck disable=SC3044
+ typeset +p |
+ perl -pe 's/^(type)?set( [-+][a-zA-Z0-9]*)* //; s/(\[\d+\])?=.*//' |
+ uniq
+ }
+ _names_of_VARIABLES_zsh() {
+ # shellcheck disable=SC2086,SC2296
print -l ${(k)parameters}
}
_bodies_of_VARIABLES() {
+ _bodies_of_VARIABLES_$_shell_DIALECT "$@"
+ }
+ _bodies_of_VARIABLES_sh() {
+ # Crappy typeset -p
+ for _i in "$@"
+ do
+ perl -e 'print @ARGV' "$_i="
+ eval echo "\"\$$_i\"" | perl -e '$/=undef; $a=<>; chop($a); print $a' |
+ perl -pe 's/[\002-\011\013-\032\\\#\?\`\(\)\{\}\[\]\^\*\<\=\>\~\|\; \"\!\$\&\202-\377]/\\$&/go;'"s/'/\\\'/g; s/[\n]/'\\n'/go;";
+ echo
+ done
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/niceload
^
|
@@ -2,7 +2,7 @@
# Copyright (C) 2004-2010 Ole Tange, http://ole.tange.dk
#
-# Copyright (C) 2010-2023 Ole Tange, http://ole.tange.dk and
+# Copyright (C) 2010-2024 Ole Tange, http://ole.tange.dk and
# Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -20,13 +20,13 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
use strict;
use Getopt::Long;
$Global::progname="niceload";
-$Global::version = 20231122;
+$Global::version = 20240122;
Getopt::Long::Configure("bundling","require_order");
get_options_from_array(\@ARGV) || die_usage();
if($opt::version) {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/niceload.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl -w
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
@@ -309,7 +309,7 @@
Copyright (C) 2005-2010 Ole Tange, http://ole.tange.dk
-Copyright (C) 2010-2023 Ole Tange, http://ole.tange.dk and Free
+Copyright (C) 2010-2024 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
=head1 LICENSE
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parallel
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/env perl
-# Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -18,7 +18,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2007-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2007-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
# open3 used in Job::start
@@ -299,7 +299,7 @@
my $file = shift;
my $output_fd = shift;
open(my $fh, "<", $file) || do {
- print STDERR "parcat: Cannot open $file\n";
+ print STDERR "parcat: Cannot open $file: $!\n";
exit(1);
};
# Remove file when it has been opened
@@ -597,9 +597,9 @@
}
sub pipe_part_files(@) {
- # Given the bigfile
- # find header and split positions
- # make commands that 'cat's the partial file
+ # Given the bigfile:
+ # - find header and split positions
+ # - make commands that 'cat's the partial file
# Input:
# $file = the file to read
# Returns:
@@ -612,7 +612,7 @@
::wait_and_exit(255);
}
- my $fh = open_or_exit($file);
+ my $fh = open_or_exit("<",$file);
my $firstlinelen = 0;
if($opt::skip_first_line) {
my $newline;
@@ -694,7 +694,7 @@
my @pos;
my ($recstart,$recend) = recstartrecend();
my $recendrecstart = $recend.$recstart;
- my $fh = ::open_or_exit($file);
+ my $fh = ::open_or_exit("<",$file);
push(@pos,$skiplen);
for(my $pos = $block+$skiplen; $pos < $size; $pos += $block) {
my $buf;
@@ -812,7 +812,7 @@
my ($file,$size,$block,$header,$firstlinelen) = @_;
my @pos;
- $fh = open_or_exit($file);
+ $fh = open_or_exit("<",$file);
# Set $Global::group_by_column $Global::group_by_perlexpr
group_by_loop($fh,$opt::recsep);
if($opt::max_args) {
@@ -2132,6 +2132,10 @@
"embed[Embed GNU parallel in a shell script]" => \$opt::embed,
("filter=s[Only run jobs where filter is true]:filter"
=> \@opt::filter),
+ "combineexec|combine-exec|combineexecutable|combine-executable=s".
+ "[Embed GNU parallel in a shell script]" => \$opt::combineexec,
+ ("filter=s[Only run jobs where filter is true]:filter"
+ => \@opt::filter),
"_parset=s[Generate shell code for parset]" => \$opt::_parset,
("shell-completion|shellcompletion=s".
"[Generate shell code for shell completion]:shell:(bash zsh)"
@@ -2222,7 +2226,6 @@
init_globals();
my @argv_before = @ARGV;
@ARGV = read_options();
-
# Before changing these line, please read
# https://www.gnu.org/software/parallel/parallel_design.html#citation-notice
# https://git.savannah.gnu.org/cgit/parallel.git/tree/doc/citation-notice-faq.txt
@@ -2367,16 +2370,8 @@
push @Global::transfer_files, @opt::transfer_files;
if(%opt::template) {
while (my ($source, $template_name) = each %opt::template) {
- if(open(my $tmpl, "<", $source)) {
- local $/; # $/ = undef => slurp whole file
- my $content = <$tmpl>;
- push @Global::template_names, $template_name;
- push @Global::template_contents, $content;
- ::debug("tmpl","Name: $template_name\n$content\n");
- } else {
- ::error("Cannot open '$source'.");
- wait_and_exit(255);
- }
+ push @Global::template_names, $template_name;
+ push @Global::template_contents, slurp_or_exit($source);
}
}
if(not defined $opt::recstart and
@@ -2523,7 +2518,12 @@
$Global::ContextReplace = 1;
}
# Deal with ::: :::+ :::: ::::+ and -a +file
+ my @ARGV_with_argsep = @ARGV;
@ARGV = read_args_from_command_line();
+ if(defined $opt::combineexec) {
+ pack_combined_executable(\@argv_before,\@ARGV_with_argsep,\@ARGV);
+ exit(0);
+ }
parse_semaphore();
if(defined $opt::eta) { $opt::progress = $opt::eta; }
@@ -2652,11 +2652,7 @@
delete $ENV{'PARALLEL_ENV'};
if(-e $penv) {
# This is a file/fifo: Replace envvar with content of file
- open(my $parallel_env, "<", $penv) ||
- ::die_bug("Cannot read parallel_env from $penv");
- local $/; # Put <> in slurp mode
- $penv = <$parallel_env>;
- close $parallel_env;
+ $penv = slurp_or_exit($penv);
}
# Map \001 to \n to make it easer to quote \n in $PARALLEL_ENV
$penv =~ s/\001/\n/g;
@@ -2798,7 +2794,7 @@
sub init_globals() {
# Defaults:
- $Global::version = 20231122;
+ $Global::version = 20240122;
$Global::progname = 'parallel';
$::name = "GNU Parallel";
$Global::infinity = 2**31;
@@ -2846,12 +2842,16 @@
'{uniq}' => 'if(::uniq(@arg) != @arg) { skip(); }',
# {##} = number of jobs
'{##}' => '1 $_=total_jobs()',
+ # {0#} = 0-padded seq
+ '{0#}' => ('1 $f=1+int((log(total_jobs())/log(10)));'.
+ '$_=sprintf("%0${f}d",seq())'),
# {0%} = 0-padded jobslot
'{0%}' => ('1 $f=1+int((log($Global::max_jobs_running||1)/log(10)));'.
'$_=sprintf("%0${f}d",slot())'),
- # {0%} = 0-padded seq
- '{0#}' => ('1 $f=1+int((log(total_jobs())/log(10)));'.
- '$_=sprintf("%0${f}d",seq())'),
+ # {seq-1} = seq-1 = counting from 0
+ '{seq(.*?)}' => '$_=eval q{$job->seq()}.qq{$$1}',
+ # {seq-1} = jobslot-1 = counting from 0
+ '{slot(.*?)}' => '$_=eval q{$job->slot()}.qq{$$1}',
## Bash inspired replacement strings
# Bash ${a:-myval}
@@ -3143,12 +3143,7 @@
# Record current %ENV-keys in $PARALLEL_HOME/ignored_vars
# Returns: N/A
my $ignore_filename = $Global::config_dir . "/ignored_vars";
- if(open(my $vars_fh, ">", $ignore_filename)) {
- print $vars_fh map { $_,"\n" } keys %ENV;
- } else {
- ::error("Cannot write to $ignore_filename.");
- ::wait_and_exit(255);
- }
+ write_or_exit($ignore_filename,map { $_,"\n" } keys %ENV);
}
sub open_joblog() {
@@ -3256,24 +3251,17 @@
}
if($opt::dryrun) {
# Do not write to joblog in a dry-run
- if(not open($Global::joblog, ">", "/dev/null")) {
- ::error("Cannot write to --joblog $opt::joblog.");
- ::wait_and_exit(255);
- }
+
} elsif($append) {
# Append to joblog
- if(not open($Global::joblog, ">>", $opt::joblog)) {
- ::error("Cannot append to --joblog $opt::joblog.");
- ::wait_and_exit(255);
- }
+ $Global::joblog = open_or_exit(">>", $opt::joblog);
} else {
if($opt::joblog eq "-") {
# Use STDOUT as joblog
$Global::joblog = $Global::fh{1};
- } elsif(not open($Global::joblog, ">", $opt::joblog)) {
+ } else {
# Overwrite the joblog
- ::error("Cannot write to --joblog $opt::joblog.");
- ::wait_and_exit(255);
+ $Global::joblog = open_or_exit(">", $opt::joblog);
}
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parallel.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl -w
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
@@ -536,9 +536,9 @@
See also: B<--delimiter>
-=item B<--arg-file> I<input-file> (alpha testing)
+=item B<--arg-file> I<input-file>
-=item B<-a> I<input-file> (alpha testing)
+=item B<-a> I<input-file>
Use I<input-file> as input source.
@@ -841,6 +841,50 @@
See also: B<--csv> B<{>I<n>B<}> B<--trim> B<--link>
+=item B<--combineexec> I<name> (beta testing)
+
+=item B<--combine-executable> I<name> (beta testing)
+
+Combine GNU B<parallel> with another program into a single executable.
+
+Let us say you have developed I<myprg> which takes a single
+argument. You do not want to parallelize it yourself.
+
+You could write a wrapper that uses GNU B<parallel> called B<myparprg>:
+
+ #!/bin/sh
+
+ parallel myprg ::: "$@"
+
+But for others to use this, they need to install: GNU B<parallel>,
+B<myprg>, and B<myparprg>.
+
+It would be easier to install if all could be packed into a single
+executable.
+
+If B<myprg> is written in shell, you can use B<--embed>.
+
+If B<myprg> is a binary you can use B<--combineexec>.
+
+Here we use B<gzip> as example:
+
+ parallel --combineexec pargzip gzip -9 :::
+
+You can now do:
+
+ ./pargzip foo bar baz
+
+If you want to pass options to B<gzip> you can do:
+
+ parallel --combineexec pargzip gzip
+
+Followed by:
+
+ ./pargzip -1 ::: foo bar baz
+
+See also: B<--embed> B<--shebang> B<--shebang-wrap>
+
+
=item B<--compress>
Compress temporary files.
@@ -1755,10 +1799,10 @@
suspend some of the running jobs. If the available memory falls below
I<size>, only one job will be running.
-If a single job takes up at most I<size> RAM, all jobs will complete
-without running out of memory. If you have swap available, you can
-usually lower I<size> to around half the size of a single job - with
-the slight risk of swapping a little.
+If a single job fits in the given size, all jobs will complete without
+running out of memory. If you have swap available, you can usually
+lower I<size> to around half the size of a single job - with the slight
+risk of swapping a little.
Jobs will be resumed when more RAM is available - typically when the
oldest job completes.
@@ -1997,6 +2041,10 @@
B<{0#}> zero-padded sequence number.
+B<{slot-1}> jobslot - 1 (i.e. counting from 0).
+
+B<{seq-1}> sequence number - 1 (i.e. counting from 0).
+
B<{choose_k}> is inspired by n choose k: Given a list of n elements,
choose k. k is the number of input sources and n is the number of
arguments in an input source. The content of the input sources must
@@ -2642,6 +2690,8 @@
log(10))); $_=sprintf("%0${f}d",slot())'
--rpl '{0#} 1 $f=1+int((log(total_jobs())/log(10)));
$_=sprintf("%0${f}d",seq())'
+ --rpl '{seq(.*?)} $_=eval q{$job->seq()}.qq{$$1}'
+ --rpl '{slot(.*?)} $_=eval q{$job->slot()}.qq{$$1}'
--rpl '{:-([^}]+?)} $_ ||= $$1'
--rpl '{:(\d+?)} substr($_,0,$$1) = ""'
@@ -3102,6 +3152,13 @@
with p or #. If the address is enclosed in [] you can also use :.
E.g. ::1p2222 ::1#2222 [::1]:2222
+Ranges of hostnames can be given in [] like this: server[1,3,8-10]
+(for server1, server3, server8, server9, server10) or
+server[001,003,008-010] (for server001, server003, server008,
+server009, server010). With Bash's brace expansion you can do:
+-S{dev,prod}[001-100] to get -Sdev[001-100] -Sprod[001-100]
+More [] are allowed: server[1-10].cluster[1-5].example.net
+
The sshlogin ':' is special, it means 'no ssh' and will therefore run
on the local computer.
@@ -4423,7 +4480,7 @@
Copyright (C) 2008-2010 Ole Tange, http://ole.tange.dk
-Copyright (C) 2010-2023 Ole Tange, http://ole.tange.dk and Free
+Copyright (C) 2010-2024 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
Parts of the manual concerning B<xargs> compatibility is inspired by
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parallel_alternatives.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl -w
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
@@ -4276,6 +4276,87 @@
(Last checked: 2023-10)
+=head2 DIFFERENCES BETWEEN repeater AND GNU Parallel
+
+Summary (see legend above):
+
+=over
+
+=item - - - - - - -
+
+=item - - - - - -
+
+=item - O2 O3 N/A - O6 - x x ?O10
+
+=item E1 - - - E5 - -
+
+=item - - - - - - - - -
+
+=item - -
+
+=back
+
+B<repeater> runs the same job repeatedly. In other words: It does not
+read arguments, thus is it an alternative for GNU B<parallel> for only
+quite limited applications.
+
+B<repeater> has an overhead of around 0.23 ms/job. Compared to GNU
+B<parallel>'s 2-3 ms this is fast. Compared to B<bash-parallel>'s 0.05
+ms/job it is slow.
+
+=head3 Memory use and run time for large output
+
+Output takes O(n^2) time for output of size n. 10 MB takes ~1 second,
+30 MB takes ~7 seconds, 100 MB takes ~60 seconds, 300 MB takes ~480
+seconds, 1000 GB takes
+
+100 MB of output takes around 1 GB of RAM.
+
+ # Run time = 15 sec
+ # Memory use = 20 MB
+ # Output = 1 GB per job
+ \time -v parallel -j1 seq ::: 120000000 120000000 >/dev/null
+
+ # Run time = 4.7 sec
+ # Memory use = 95 MB
+ # Output = 8 MB per job
+ \time -v repeater -w 1 -n 2 -reportFile ./run_output seq 1200000 >/dev/null
+
+ # Run time = 42 sec
+ # Memory use = 277 MB
+ # Output = 27 MB per job
+ \time -v repeater -w 1 -n 2 -reportFile ./run_output seq 3600000 >/dev/null
+
+ # Run time = 530 sec
+ # Memory use = 1000 MB
+ # Output = 97 MB per job
+ \time -v repeater -w 1 -n 2 -reportFile ./run_output seq 12000000 >/dev/null
+
+ # Run time = 2h41m
+ # Memory use = 8.6 GB
+ # Output = 1 GB per job
+ \time -v repeater -w 1 -n 2 -reportFile ./run_output seq 120000000 >/dev/null
+
+For even just moderate sized outputs GNU B<parallel> will be faster
+and use less memory.
+
+
+=head3 EXAMPLES
+
+ 1$ repeater -n 100 -w 10 -reportFile ./run_output
+ -output REPORT_FILE -progress BOTH curl example.com
+
+ 1$ seq 100 | parallel --joblog run.log --eta curl example.com > output
+
+ 2$ repeater -n 100 -increment -progress HIDDEN -reportFile foo
+ echo "this is increment: " INC
+ 2$ seq 100 | parallel echo {}
+ 2$ seq 100 | parallel echo '{= $_ = ++$myvar =}'
+
+https://github.com/baalimago/repeater
+(Last checked: 2023-12)
+
+
=head2 Todo
https://github.com/justanhduc/task-spooler
@@ -4553,7 +4634,7 @@
Copyright (C) 2008-2010 Ole Tange, http://ole.tange.dk
-Copyright (C) 2010-2023 Ole Tange, http://ole.tange.dk and Free
+Copyright (C) 2010-2024 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
Parts of the manual concerning B<xargs> compatibility is inspired by
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parallel_book.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl -w
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parallel_design.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl -w
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parallel_examples.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl -w
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
@@ -241,6 +241,23 @@
command; otherwise a green OK will be printed followed by the command.
+=head2 EXAMPLE: Identify few failing jobs
+
+B<--bar> works best if jobs have no output. If the failing jobs have
+output you can identify the jobs like this:
+
+ job-with-few-failures() {
+ # Force reproducibility
+ RANDOM=$1
+ # This fails 1% (328 of 32768)
+ if [ $RANDOM -lt 328 ] ; then
+ echo Failed $1
+ fi
+ }
+ export -f job-with-few-failures
+ seq 1000 | parallel --bar --tag job-with-few-failures
+
+
=head2 EXAMPLE: Continously show the latest line of output
It can be useful to monitor the output of running jobs.
@@ -1867,7 +1884,7 @@
Often it is not obvious which package you should install to get that
file. Debian has `apt-file` to search for a file. `tracefile` from
-https://gitlab.com/ole.tange/tangetools can tell which files a program
+https://codeberg.org/tange/tangetools can tell which files a program
tried to access. In this case we are interested in one of the last
files:
@@ -1888,7 +1905,7 @@
Copyright (C) 2008-2010 Ole Tange, http://ole.tange.dk
-Copyright (C) 2010-2023 Ole Tange, http://ole.tange.dk and Free
+Copyright (C) 2010-2024 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
Parts of the manual concerning B<xargs> compatibility is inspired by
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parallel_tutorial.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl -w
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
@@ -3003,7 +3003,7 @@
Output:
GNU parallel 20230122
- Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free Software
+ Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free Software
Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
@@ -3164,7 +3164,7 @@
=back
-(C) 2013-2023 Ole Tange, GFDLv1.3+ (See
+(C) 2013-2024 Ole Tange, GFDLv1.3+ (See
LICENSES/GFDL-1.3-or-later.txt)
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parcat
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -18,7 +18,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
use Symbol qw(gensym);
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parcat.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
@@ -71,7 +71,7 @@
=head1 AUTHOR
-Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
=head1 LICENSE
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parset
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
-# Copyright (C) 2016-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2016-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -18,7 +18,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
grepq() {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parset.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl -w
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
@@ -202,7 +202,7 @@
Copyright (C) 2008-2010 Ole Tange, http://ole.tange.dk
-Copyright (C) 2010-2023 Ole Tange, http://ole.tange.dk and Free
+Copyright (C) 2010-2024 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/parsort
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
=pod
@@ -60,7 +60,7 @@
=head1 AUTHOR
-Copyright (C) 2020-2023 Ole Tange,
+Copyright (C) 2020-2024 Ole Tange,
http://ole.tange.dk and Free Software Foundation, Inc.
@@ -137,7 +137,7 @@
"help" => \$opt::dummy,
) || exit(255);
$Global::progname = ($0 =~ m:(^|/)([^/]+)$:)[1];
-$Global::version = 20231122;
+$Global::version = 20240122;
if($opt::version) { version(); exit 0; }
# Remove -D and --parallel=N
my @s = (grep { ! /^-D$|^--parallel=\S+$/ }
@@ -274,7 +274,7 @@
print join
("\n",
"GNU $Global::progname $Global::version",
- "Copyright (C) 2020-2023 Ole Tange, http://ole.tange.dk and Free Software",
+ "Copyright (C) 2020-2024 Ole Tange, http://ole.tange.dk and Free Software",
"Foundation, Inc.",
"License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>",
"This is free software: you are free to change and redistribute it.",
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/pod2graph
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl
-# Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -18,7 +18,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
# Convert .pod file containing:
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/sem.pod
^
|
@@ -1,6 +1,6 @@
#!/usr/bin/perl -w
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GFDL-1.3-or-later
# SPDX-License-Identifier: CC-BY-SA-4.0
@@ -255,7 +255,7 @@
=head1 AUTHOR
-Copyright (C) 2010-2023 Ole Tange, http://ole.tange.dk and Free
+Copyright (C) 2010-2024 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/sql
^
|
@@ -2,7 +2,7 @@
# Copyright (C) 2008-2010 Ole Tange, http://ole.tange.dk
#
-# Copyright (C) 2010-2023 Ole Tange, http://ole.tange.dk and
+# Copyright (C) 2010-2024 Ole Tange, http://ole.tange.dk and
# Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -20,7 +20,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2008-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2008-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
# SPDX-License-Identifier: GFDL-1.3-or-later
@@ -388,7 +388,7 @@
Copyright (C) 2008-2010 Ole Tange http://ole.tange.dk
-Copyright (C) 2010-2023 Ole Tange, http://ole.tange.dk and Free
+Copyright (C) 2010-2024 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
=head1 LICENSE
@@ -670,7 +670,7 @@
exit ($err);
sub parse_options {
- $Global::version = 20231122;
+ $Global::version = 20240122;
$Global::progname = 'sql';
# This must be done first as this may exec myself
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/src/testurls
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright (C) 2022-2023 Ole Tange, http://ole.tange.dk and Free
+# Copyright (C) 2022-2024 Ole Tange, http://ole.tange.dk and Free
# Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -18,7 +18,7 @@
# or write to the Free Software Foundation, Inc., 51 Franklin St,
# Fifth Floor, Boston, MA 02110-1301 USA
#
-# SPDX-FileCopyrightText: 2022-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2022-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
# SPDX-License-Identifier: GPL-3.0-or-later
grep -hv '(dead)' ../src/* |
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/Fixed.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/Makefile
^
|
@@ -1,4 +1,4 @@
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -103,26 +103,33 @@
prereqlocal: installparallel startvm
${REQUIRE}
- parallel -j1 ssh-keygen -R parallel-server{} ::: 1 2 3 4 || true
- (parallel 'ssh vagrant@parallel-server{} mkdir -p bin; scp `which parallel` vagrant@parallel-server{}:bin/' ::: 1 2 3 4)&
+ (parallel 'ssh -oStrictHostKeyChecking=accept-new vagrant@parallel-server{} mkdir -p bin; scp `which parallel` vagrant@parallel-server{}:bin/' ::: 1 2 3 4)&
prereqremote: installparallel startvm
- parallel -j0 --timeout 10 --tag ssh vagrant@parallel-server{} parallel --minversion 20121021 ::: 1 2 || (echo parallel on remote required for testsuite; /bin/true)
+ parallel -j0 --timeout 10 --tag ssh -oStrictHostKeyChecking=accept-new vagrant@parallel-server{} parallel --minversion 20121021 ::: 1 2 || (echo parallel on remote required for testsuite; /bin/true)
ignore=bytes.of.data|ping.statistics|packets.transmitted|64.bytes.from|\
- min/avg/max/mdev|default
+ min/avg/max/mdev|default|known.hosts|Host.*found
start=(stdout ping -w 1 -c 1 {} || \
- (cd vagrant/*/{} && vagrant up; \
- wssh vagrant@{} echo {} is up) ) | \
+ (cd vagrant/*/{} 2>/dev/null && vagrant up ; \
+ echo {} | grep -q centos3 && \
+ (cat ../../authorized_keys | vagrant ssh -c "cat >>.ssh/authorized_keys"; \
+ vagrant ssh -c "sudo /sbin/ifconfig eth1 172.27.27.3"); \
+ ssh-keygen -R {}; \
+ stdout wssh -oStrictHostKeyChecking=accept-new vagrant@{} echo {} is up) ) | \
grep -Ev "${ignore}"
+
stop=(stdout ping -w 1 -c 1 {} && \
(cd vagrant/*/{} && vagrant suspend) ) | \
grep -Ev "${ignore}"
+namedservers=centos8 freebsd13 freebsd14 rhel8 centos3
+servers=parallel-server1 parallel-server2 parallel-server3 parallel-server4 ${namedservers}
+
startvm:
- parallel -j0 --tag -k '${start}' ::: centos8 freebsd13 freebsd12 rhel8 centos3 &
+ parallel -j0 --tag -k '${start}' ::: ${servers} &
stopvm:
- parallel -j0 --tag -k '${stop}' ::: centos8 freebsd13 freebsd12 rhel8 centos3 || true
+ parallel -j0 --tag -k '${stop}' ::: ${namedservers} || true
startdb:
true TODO should start Oracle in vagrant
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/Portable.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/REQUIREMENTS
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2002-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2002-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -15,6 +15,7 @@
test_pkgs="$test_pkgs mono-csharp-shell libevent-dev tcl libtext-csv-perl"
test_pkgs="$test_pkgs xterm libc6-i386 libcrypt1:i386 vagrant virtualbox"
test_pkgs="$test_pkgs libtest-nowarnings-perl xemacs21 pv zenity"
+ test_pkgs="$test_pkgs lsh-client lsh-utils torsocks net-tools"
# Debian package
packaging_pkgs="dpkg-dev build-essential debhelper osc cvs automake"
@@ -44,8 +45,7 @@
# Build Tools
build_pkgs="bison libxxhash-dev libzstd-dev liblz4-dev libssl-dev"
build_pkgs="$build_pkgs python3-cmarkgfm libpod-pom-view-restructured-perl"
- build_pkgs="$build_pkgs graphviz"
-
+ build_pkgs="$build_pkgs graphviz yodl libreoffice"
sudo dpkg --add-architecture i386; sudo apt update
if $INSTALL $test_pkgs $packaging_pkgs $shebang_pkgs $sql_pkgs \
$compression_pkgs $shell_pkgs $database_pkgs $build_pkgs ; then
@@ -109,13 +109,6 @@
# test it works: sql oracle://
}
-setup_virtual_box_network() {
- echo "Adding IP-range to virtualbox"
- sudo mkdir -p /etc/vbox
- (cat; echo '* 172.27.27.0/24') < /etc/vbox/networks.conf | uniq |
- sudo tee /etc/vbox/networks.conf
-}
-
setup_databases() {
# DATABASES
echo '# Create PostgreSQL'
@@ -142,11 +135,31 @@
sudo sql "$dburl" "CREATE DATABASE `whoami`;CREATE USER '`whoami`'@'localhost' IDENTIFIED BY '`whoami`'; GRANT ALL ON `whoami`.* TO '`whoami`'@'localhost';"
}
+setup_virtual_box_network() {
+ echo "Adding IP-range to virtualbox"
+ sudo mkdir -p /etc/vbox
+ sudo touch /etc/vbox/networks.conf
+ (cat; echo '* 172.27.27.0/24') < /etc/vbox/networks.conf | uniq |
+ sudo tee /etc/vbox/networks.conf
+}
+
add_server_to_hosts() {
add_ssh_key_to_authorized() {
(cat vagrant/authorized_keys; cat ~/.ssh/*.pub) |
uniq > vagrant/authorized_keys.$$
mv vagrant/authorized_keys.$$ vagrant/authorized_keys
+ # Problem:
+ # https://developer.hashicorp.com/vagrant/docs/v2.4.0/vagrantfile/ssh_settings
+ # says:
+ #
+ # (non-interactive SSH connections use the internal SSH
+ # communicator which is unaffected by this setting).
+ #
+ # We need to force Ruby's Net::SSH to use ~/.ssh/config
+ # or -oKexAlgorithms=diffie-hellman-group1-sha1
+ #
+ # VAGRANT_PREFER_SYSTEM_BIN=1 ought to fix it, but does not.
+
# Fix:
# could not settle on kex algorithm
@@ -158,7 +171,14 @@
#debug2: ciphers stoc: aes128-ctr,aes192-ctr,aes256-ctr,aes256-cbc,aes192-cbc,aes128-cbc,3des-cbc
#debug2: MACs ctos: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
#debug2: MACs stoc: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
-#
+ #
+
+ # Fix: .ssh/config
+ #Host centos3 127.0.0.1
+ # KexAlgorithms +diffie-hellman-group1-sha1
+ # Ciphers +3des-cbc,aes128-cbc,aes192-cbc,aes256-cbc
+ # HostKeyAlgorithms +ssh-rsa,ssh-dss
+ # sshpass -p vagrant ssh -v -p 50136 vagrant@127.0.0.1
}
insert_in_etc_hosts() {
@@ -168,7 +188,7 @@
# skip
true
else
- printf "$1\t$2\n" |
+ echo "$@" |
sudo tee -a /etc/hosts
fi
}
@@ -181,7 +201,7 @@
grep 172 Vagrantfile | grep -v '#' |
perl -pe 's/.*(172.27[\.0-9]+).*/$1/';
}
- insert_in_etc_hosts $(vagrant_ip $1) $1
+ insert_in_etc_hosts $(vagrant_ip $1) "$@"
}
export -f add_single_vagrant_to_etc_hosts
@@ -189,36 +209,44 @@
insert_in_etc_hosts 127.1.2.3 server
insert_in_etc_hosts 127.0.0.2 lo
- parallel add_single_vagrant_to_etc_hosts ::: centos8 freebsd11 freebsd12 freebsd13 rhel8 centos3 centos39-oracle817
- # TODO alias
- # 172.27.27.8 centos8 parallel-server1 server1
- # 172.27.27.72 freebsd12 parallel-server3 server3
- # 172.27.27.108 rhel8 parallel-server4 server4
- # 172.27.27.73 freebsd13 parallel-server2 server2
- # TODO
- # $ cat /etc/vbox/networks.conf
- # * 172.27.0.0/16
- # TODO
+ parallel add_single_vagrant_to_etc_hosts {} parallel-server{#} ::: centos8 freebsd13 freebsd14 rhel8 centos3
+}
+
+vagrant_up() {
+ parallel -j0 --ll --tag 'cd {};vagrant up' ::: vagrant/*/*
+ # After this you should be able to 'vagrant ssh'
+}
+
+add_key_to_auth_key() {
sshaddvagrant() {
+ ssh-keygen -f ~/.ssh/known_hosts -R $1
cat ~/.ssh/*.pub | (cd vagrant/*/$1 && vagrant ssh -c 'cat >>.ssh/authorized_keys')
sshpass -p vagrant ssh-copy-id -o StrictHostKeyChecking=accept-new vagrant@$1
ssh vagrant@$1 echo vagrant@$1 OK
}
export -f sshaddvagrant
- parallel sshaddvagrant ::: centos8 freebsd11 freebsd12 freebsd13 rhel8 centos3 centos39-oracle817
- parallel ssh -o StrictHostKeyChecking=accept-new vagrant@{} ::: parallel-server{1..4} centos3
+ parallel --tag sshaddvagrant ::: centos8 freebsd13 freebsd14 rhel8 centos3
+ parallel --tag ssh -o StrictHostKeyChecking=accept-new vagrant@{} ::: parallel-server{1..4} centos3
+ cat ~/.ssh/*pub >> ~/.ssh/authorized_keys
# TODO find ipv6
ipv6=
- parallel ssh -o StrictHostKeyChecking=accept-new {} ::: lo localhost 172.27.27.1 127.0.0.1 ::1 $ipv6
+ parallel --tag ssh -o StrictHostKeyChecking=accept-new {} ::: lo localhost 172.27.27.1 127.0.0.1 ::1 $ipv6
# parallel sshpass -p vagrant ssh-copy-id vagrant@{} ::: parallel-server{1..4} centos3
# ssh-copy-id vagrant@parallel-server1..4 centos3
}
+install_rsync_on_vagrant() {
+ parallel --tag ssh vagrant@{} "'
+ sudo apt install rsync || sudo yum install -y rsync || sudo pkg install -y rsync;
+ sudo apt install perl || sudo yum install -y perl || sudo pkg install -y perl;
+ '" ::: parallel-server{1..4} centos3
+}
+
shellsplus() {
shells="bash sh csh ash dash tcsh zsh ksh ksh93 fish fizsh mksh"
shells="$shells posh rc sash yash nopathbash nopathcsh"
- shellsplus="parallel $shells"
+ shellsplus=$(whoami)" parallel $shells"
parallel -k echo ::: $shellsplus
}
@@ -265,6 +293,9 @@
(shellsplus; echo withpassword) |
parallel --lb --halt soon,fail=1 --timeout 1000% --retries 5 --tag -j1 del_add_user ||
(echo Creation failed: $?; false)
+ # Homedir must be readable by others
+ umask 0002
+ (shellsplus; echo withpassword) | sudo parallel chmod +rX ~{}
}
copy_ssh_keys() {
@@ -323,10 +354,11 @@
# Remove env_parallel from .profile
ssh nopathbash@lo 'perl -i.bak -pe s/.*env_parallel.*// .profile .bashrc'
ssh nopathcsh@lo 'echo >> .cshrc setenv PATH /bin:/usr/bin'
+ ssh nopathcsh@lo 'echo >> .tcshrc setenv PATH /bin:/usr/bin'
ssh nopathcsh@lo 'echo >> .login setenv PATH /bin:/usr/bin'
- ssh nopathbash@lo 'echo $PATH; echo 1 | parallel echo' ||
+ ssh nopathbash@lo 'echo $PATH; echo NOT OK | parallel echo' ||
echo Great - this should FAIL: parallel should not be found
- ssh nopathcsh@lo 'echo $PATH; echo 1 | parallel echo' ||
+ ssh nopathcsh@lo 'echo $PATH; echo NOT OK | parallel echo' ||
echo Great - this should FAIL: parallel should not be found
)
}
@@ -365,15 +397,16 @@
#
# There is no longer an overlap: LSH is unsupported until there is
# a common algorithm again
- shellsplus | parallel --bar --timeout 5 export_key_to_local_users
- shellsplus | parallel --bar --timeout 5 'lsh -l {} lo true || export_key_to_local_users {}'
- shellsplus | parallel --bar --timeout 5 'lsh -l {} lo true || echo Fail {}'
+ (whoami; shellsplus) | parallel --bar --timeout 5 --retries 5 export_key_to_local_users
+ (whoami; shellsplus) | parallel --bar --timeout 5 --retries 5 'lsh -l {} lo true || export_key_to_local_users {}'
+ (whoami; shellsplus) | parallel --bar --timeout 5 --retries 5 'lsh -l {} lo true || echo Fail {}'
}
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/Start.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash -x
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/niceload01.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/niceload02.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/niceload03.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/niceload04.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-android.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-centos3.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-freebsd.sh
^
|
@@ -1,11 +1,11 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
echo "### These tests requires VirtualBox running with the following images"
-SERVER1=freebsd12
+SERVER1=freebsd14
SSHUSER1=vagrant
SSHLOGIN1=$SSHUSER1@$SERVER1
echo $SSHUSER1@$SERVER1
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-install.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-0.3s.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -236,15 +236,17 @@
par_do_not_export_PARALLEL_ENV() {
echo '### Do not export $PARALLEL_ENV to children'
+ . env_parallel.bash
+ env_parallel --session
doit() {
echo Should be 0
echo "$PARALLEL_ENV" | wc
echo Should give 60k and not overflow
PARALLEL_ENV="$PARALLEL_ENV" parallel echo '{=$_="\""x$_=}' ::: 60000 | wc
}
- . env_parallel.bash
# Make PARALLEL_ENV as big as possible
- PARALLEL_ENV="a='$(seq 100000 | head -c $((139000-$(set|wc -c) )) )'"
+ PARALLEL_ENV="a='$(seq 100000 | head -c $((149000-$(set|wc -c) )) )'"
+ PARALLEL_ENV="a=b"
env_parallel doit ::: 1
}
@@ -608,6 +610,7 @@
par_extglob() {
bash -O extglob -c '. env_parallel.bash;
+ env_parallel --session
_longopt () {
case "$prev" in
--+([-a-z0-9_]))
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-100s.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-10s.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -620,7 +620,7 @@
}
export -f $(compgen -A function | grep par_)
-compgen -A function | grep par_ | LC_ALL=C sort |
+compgen -A function | G par_ "$@" | LC_ALL=C sort |
parallel --timeout 1000% -j10 --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1' |
perl -pe 's/,31,0/,15,0/' |
# Replace $PWD with . even if given as ~/...
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-1s.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -8,6 +8,14 @@
# Each should be taking 1-3s and be possible to run in parallel
# I.e.: No race conditions, no logins
+par_progress() {
+ (
+ parallel --progress --use-sockets-instead-of-threads true ::: a b c
+ parallel --progress --use-cores-instead-of-threads true ::: a b c
+ parallel --progress --use-cpus-instead-of-cores true ::: a b c
+ ) 2>&1 | perl -pe 's/.*\r//; s/\d.\ds/9.9s/'
+}
+
par_citation_no_config_dir() {
echo '### bug #64329: parallel --citation will loop forever unless the config dir exists'
t=$(mktemp -d)
@@ -76,35 +84,6 @@
stdout parallel -Y
}
-par__plus() {
- echo '### --plus'
- echo '(It is OK to start with extra / or end with extra .)'
- parallel -k --plus echo {} = {+/}/{/} = {.}.{+.} = {+/}/{/.}.{+.} = \
- {..}.{+..} = {+/}/{/..}.{+..} = {...}.{+...} = \
- {+/}/{/...}.{+...} \
- ::: a a.b a.b.c a.b.c.d a/1 a.b/1.2 a.b.c/1.2.3 a.b.c.d/1.2.3.4 \
- a. a.b. a.b.c. a.b.c.d. a/1. a.b/1.2. a.b.c/1.2.3. a.b.c.d/1.2.3.4. \
- a.. a.b.. a.b.c.. a.b.c.d.. a./1. a.b./1.2.. \
- a.b.c./1.2.3.. a.b.c.d./1.2.3.4.. \
-
- echo '### Test {%...} {%%...} {#...} {##...}'
- a=z.z.z.foo
- echo ${a#z*z.}
- parallel --plus echo {#z.*z.} ::: z.z.z.foo
- echo ${a##z*z.}
- parallel --plus echo {##z.*z.} ::: z.z.z.foo
-
- a=foo.z.z.z
- echo ${a%.z.z}
- parallel --plus echo {%.z.z} ::: foo.z.z.z
- echo ${a%%.z*z}
- parallel --plus echo {%%.z.*z} ::: foo.z.z.z
-
- parallel -k --plus echo {uniq} ::: A B C ::: A B C ::: A B C
- parallel -k --plus echo {1uniq}+{2uniq}+{3uniq} ::: A B C ::: A B C ::: A B C
- parallel -k --plus echo {choose_k} ::: A B C D ::: A B C D ::: A B C D
-}
-
par_file_rpl() {
echo '### file as replacement string'
TMPDIR=/tmp/parallel-local-1s/" "/bar
@@ -238,14 +217,6 @@
rm -r "$tmpdir"
}
-par__I_X_m() {
- echo '### Test -I with -X and -m'
-
- seq 10 | parallel -k 'seq 1 {.} | parallel -k -I :: echo {.} ::'
- seq 10 | parallel -k 'seq 1 {.} | parallel -j1 -X -k -I :: echo a{.} b::'
- seq 10 | parallel -k 'seq 1 {.} | parallel -j1 -m -k -I :: echo a{.} b::'
-}
-
par_open_files_blocks() {
echo 'bug #38439: "open files" with --files --pipe blocks after a while'
ulimit -n 28
@@ -530,17 +501,6 @@
stdout parallel --compress --compress-program pxz true ::: OK-if-no-output
}
-par__test_XI_mI() {
- echo "### Test -I"
- seq 1 10 | parallel -k 'seq 1 {} | parallel -k -I :: echo {} ::'
-
- echo "### Test -X -I"
- seq 1 10 | parallel -k 'seq 1 {} | parallel -j1 -X -k -I :: echo a{} b::'
-
- echo "### Test -m -I"
- seq 1 10 | parallel -k 'seq 1 {} | parallel -j1 -m -k -I :: echo a{} b::'
-}
-
par_result() {
echo "### Test --results"
mkdir -p /tmp/parallel_results_test
@@ -674,488 +634,6 @@
seq 3000 | parallel -Xj1 'echo {} {} {} {} {} {} {} {} {} {} {} {} {} {} | wc'
}
-par__test_cpu_detection_cpuinfo() {
- pack() { zstd -19 | mmencode; }
- unpack() { mmencode -u | zstd -d; }
- export -f unpack
- # ssh server cat /proc/cpuinfo | pack
-
- cpu1() {
- echo '2-8-8-8 Xeon 8 core server in Germany'
- echo '
- KLUv/QRYbRIARmlzIxBtqgDhSWTqT86MkL9zqf+EhavXzwbElKKZVR0oAgBg5J4gcQBiAGEA
- sLnXDwczA4YzTNLcWTvx+utwzbFmQQYUDEZyZ60JhQYkubMk+Zi3NptQSECQAeUFvwJhFAiH
- cDh4wAOAnBvxgAeAO2tjk1+UO2vBhWZkzZ31gC+26BM7BrfKhZVvkptwZ0HvoROSSzHkzqKz
- e92kzALNss2vjU/N6N5c/Ep8Sms8b5+gcl8Xv41PO951/TZ/oW+kPnF0Z62WGmQJtiR3Flxq
- 4aE3sZPzVV5X7TNxxHofd9aaOGLIncP26pPPPW5Lp/vEbkHvS6djzJ3Vknyw8ZohD81Bjw7i
- U67Vm6RyX7a7r8T6KlKH7J6GTmd9csYzTW+F/iQfmlN6eOm7Nt6N5csZI7r8OBxtd12fKltt
- Od0jfCUPYXP96G+DH+ur491XtvvbfdpV9CrGP3btXaE7eoIRdA/MYrEsFE2jNIxCkSgUhkES
- ZlmWZVEURUGSJEmYU+XGlZps8XQlJjPYpkofxVzgXV/jBN1LIagxprmzqtwopQfbw7AFMoAw
- GMud1fzilGaDPeqj81GuFkZ/UVKXmFBz9EO5PsIncjT4pVpXTx5mux83IFADQJsOKpW46nns
- Is7U2ZTFVYV3C3OmxEovTmU8sZyTYlYqcdTzmEUsR6PYOlV4tzAnSqz04lTGE8s5KWalEkc9
- j1nEqahrvJxROjsHSSvQhQq1tpf4zCUJFtpLU3TfUioW5HyRY49kj+F7XHNrWzFtIuMXRNui
- cMxHAZLOSIU=
- ' | unpack
- }
- cpu2() {
- echo '1-4-8-4 Core i7-3632QM Acer laptop'
- echo '
- KLUv/QRYBRkANvyjJDBtnADAQSgjJ0We2YiUIhYo1GYrjfN9LZSRbXi0c1gXhgBQJaUAjQCQ
- AFstjEt/y7WLjrldy3NJYZ2SHbJMae46JVsalxR2RPcoxwvjbzHHk8cuBwx/Hia6pGiF4+uD
- LbZEjWjxPA9zSVEqFBoYjYRxSdEmmZzMwaXgkuKIbleblwqFBEazaG5wCQeENzw0TuQMELgH
- NEQA6JQID4AAuKQoXPEN6JKiPG0SLtElZfIcXNUhy5anHRc0OkjUhEtKc9OULWpkYVxSpmRW
- JucuAfLJlS35WxnfpHRMq/Pc1JnSfZSwmrrTg811xj11XM1RssP3ZdxtXhL/3mI84Su1h/1+
- nPmNMl+ZP1lSXQLh3bJ17vYHQ1712CNHed9rH5GQfTF4deznbPhVfkPCrgxe134yPOO+8l7b
- FUYO2eqSorBjvaVYHOaS8jSi781BlkXpepVJdIJstbBOLikKJA6u3txG3quftJvSzZXoq+5g
- jJxCtvXgaW5/Kdd8ail3npR7o5jvek+tvh9kVRN8U/VY7y2u2eZZxFSXRNY1slhy1vWp0PWk
- 0b22tE2M+x3Zyj1zuxrJG2Z6lPnNsT1kbT+3JY8YCbujzPwG9pv1Ehj5WzZx+5TtooR/ItZu
- n2gTDwIf27u4r6buWtkcZfzEEQQETgMtGA5BFDlQg1k8EBRBEEMALSDoeZpGAbRoGo/jNAWN
- RcHjNA3DMNCCYZ6GYSDoWTCPwyxSR4XqWHHBT6WQu7wF6ekijecC53bUI+eSwsw6W1vLE11S
- OiqMDvfW9CxPs2AUOOugdEhqqZp5Z147oSadsnlqmMiks5kuP1LI1k/hBFkGoZbGvOnc+/j2
- veb6au5w6qPbeyWc+lXIV14UBzsgIKMZ0jAPK+HdMhUFdRtVjCeXO5JNULexYjxRJq2g2EaV
- 8O7CRoIUlGysjsfKBCko2ag6HruIkWyCuo0V44ky2YRS1xX8jOLIPpdShdsmd5zFkNBhyRjs
- jWqiDxsGiQbeb74N2hniRTgqfc6PK/sOQHV9UrS1UtKWyvnmCMjuOeEbaVqYTWLEy8KHcwab
- fNdt
- ' | unpack
- }
- cpu3() {
- echo '1-2-4-2 Core i5-2410M laptop firewall'
- echo '
- KLUv/QRYTRUAdrWRJCBtLACzSvaJv8mdRORLLoVMJ3pdprIRArYowWEZLgRCIHoEDZEAfQCA
- ALM94qbc+9LZVuOOaol8MPJ6MQ5Ze00x4WWw8MXBYO6orXj9nTTWluJ4LCCQRrmjVEUCA1Mm
- xh21brZJ24vLcUdJ5GPe2qsiAYHBLJYXHKLh4AwMpbEMELwHMDwALJ0HD3AAuKM2MvmlcUcp
- uG7G1dxRFPBFBj3ituBWqbDyRXIR7ij3HjqdXGkx7ig6u7dNyitytkd4bl0d/SQPIWtN0d8I
- P9bXybu/bPe3+7Qn6FOMf9zYu7pPOoIQbG+YbX5lfGnGdtbiV8KntMbz9h9T+7b4ZXza8a3r
- t/nrvlF6xNAdpVrCIE8sRrmj4EoL717ETc5Xedu0T8TQ6qW4o1TE0GLcOWSvPvnaY7aWO6qX
- Bo/wgSYMfpLYV2I9vZedbnz1WfmgY+ue1vVVNp789pgt0xflaWz33Wv82Byfcp3eKFM7s939
- JdbX3k9ROuT2tDud9ckZ32h6q7uEk4BRhI3/JD9iiK6E7SG6zLO2nPIUkgknzzod8pR3c0oe
- XvqukXdk+XJGiC4/k0bZW9enSlY7DONoIIvFQcAsiwJhIAvHY1EUAgZj8WiU5VS5cSVMsni6
- E5MXZFGlT3o0LvCuL/KGuaO6e6lzbDWaO6rKjVLyIHsazXoQLCAPAn5xSmZkLYr0LK1tuS8n
- pqtw4xNxiyKrK19CfmWUnbn3SHdS3StP91h65T1FfXQ+ytNC6C9K6RPTsUk/lOvp9mMRj/AG
- JSDQIqIi7LRUwrvFZJLUAVuxPLHcLdUEdcBUDE/UqSanrs9zRmXkcaNU+bZlG7hrcxA2mUBy
- T8tuUnd4augwnjSRdwOqb6To3FJWLMn5yBHIbnjCtm86kCEx8rLwgZ4B68GiZg==
- ' | unpack
- }
- cpu4() {
- echo '1-2-2-2 AMD Opteron 244 dual core laptop(?)'
- echo '
- KLUv/QRYvQoANtlJIkBprACDMMQtkTstiphu+tF3RsomRkcLaiECKgDo7qgtvyZCAEQAOQCP
- WWerZUFc4QE7AaJ0dHLCDRiLr6TL4r9SgsrIVQLJV2KAb5n7w00ZMBbtzaiO+Sy+EvMajmSi
- Qgr5So7s1iYdVgErQYUUnnkPtyjfZG2RNh52qpXhK6WHHVvZHIK4CR1Kxq/UPAsN6DFOFSB8
- QWjD66ujsaYGFOWgQBTJV0oNBwwk+UpNDE5H7tHuHf1AB9sTijZ/Mj4kt521vTZ8x5l71n57
- zK6I2rXtlfGd3ree1+Yrc13oD7uvlLphkB8qeQvBIZEonvPMg848955fM+pqwyLbO/qQrJaE
- GlAOBElC+UrNb2UjF9SM9CEjo3zhZ6TR7qN4CFlrhj5Cu6/dDxAAAieJgnrpvudbNgNUIOzA
- MqSoSuBmxjF3/rkp5oAwr3m0DVcImxgIDpyVKKrENj8=
- ' | unpack
- }
- cpu5() {
- echo '2-24-48-24 24-core (maxwell?)'
- echo '
- KLUv/QRYdSQAGkNoCyQADcMCI0TLks4mlR/lnQWq4v01q/9MCZihKMz3R7P+/yfjrxe5AKIA
- pAAKdnLCyuueNSgYcfRSeGMYCkYcyJs7DVYooYPcjoTeGL10uivYGQ9+6XTHSm+MTkjoHGAf
- yJ3mYFNY4MMAgyNJQdQbYyvA/i645o6FGAIMk6Q3hlFBQYNkIeiNsW+6SR2Mx3pjJCRk3tpH
- BQUJEIVAeoGnxRUmSQMYgkNwcOABHgCQcyM8wAMAb4yNTT4lbwzD2TfjkbwxKDgwNsQV7A5n
- q1ywEirkJnhjPGig88ldHMgbg87udZPyERXKGb+S3vou4UlwFNFxfCj5CkbQTbQ9gi7zrC2n
- PIXEdCbP+vzNmTDw0nc9vA/LlzMi6LJhwdF219VQZastp3t0zq7roz8k0PLjP/KO01xT6O+B
- H+vrwruftvvbfdoP4k+Mh+zau74vtMJBOO6J2ubXxl/M6N5c/Cb4lNZ43v7yuK+L38anHe+6
- fpu/7xsXVzDijWF0ojk84VDojeHsYp0/GMdK3hhVbpQJ6DRDcqSFAMMo9sZohnEm5uHoSPe8
- sb/dDp1oxB/kxSvvKVRIJ6T8rIM4jHLxCfO1hTZQrl8Jncl16WHlR7oL9b0rXzr8yvPA+9po
- e3vw0TEgFprzJxt99C5BiD+L9l20ft7bTjfCalgJndf2GVzXV+l48h3klp4nZFjb/ebeH3T8
- 6B6fcn2eoMddbXc/xfra+yf2n7i4w87Q73QGDGOYojCFJYwxxpZiii3EEGMUwyxJKYbQQmsh
- i2EUoyhpUQohRSmFEiUpibHE0lJJJaVQQikphBikEFoQhRjDMGtRFKUwlhKFkIQQsha2MJWw
- hKXFFkMpscSQhDCEMcyyLEtKTEEWslayLIolSVprIbUkpRCEUkIpIYSYlNCCEKMgtCQIMbYs
- ayWJUmullBJCR1Plxk002eLpTph8OE1RKVws6wLeFR6erDdGdy99rwWA56ixqCwgIiKDAAhC
- MCMAACxsAhKoQBgGIBAIxsEIwTkOEfxPwgUfLJZYP9vKZrhEZep2u7k7XFK1ZLTlxfNql0Dp
- yIyLNj3Wy9LeMRJXK8cgHu09Fq1Yq8b0XW09VsBqLc3ckYn047pXflSABeQzkYdcPcePl78l
- oEW3htyWDCvcopK7b0uGSt6uFhO7XBKlKikuaCWPOa6tcXOiBR1jXNPFta0FfQxn6O1mJGr5
- 2Luq5WO+pnaPdalaeiyWdukXgH8mpTAUl1kS47K2M8j8mHlcElJyq2RtiZDCbSm5+7ZkGJQZ
- l7eixcwul0SpiowL2tRYJ0t7x0hcrRyDeLT3WLSiVo7pM9pyrIDRyjFUlvv8H/M+JvuQKzUY
- kM7MMXFBQ7TYyblwJnts2KkJO02wk27ZTOpjv06V+jple920PkaXcca67lrtscV1V9y9WuCx
- xLUirn8t9NjMkJcZXC01dpO13hjFq01jyqKWjd272jEWZke+Xv7966LvqzZTC0zEIma1yNpX
- ketyZer/0g6AFe7sFs2nePnngUV+Cv9cPO6zftzOuDDzXMWe+8I/vwr+ll9K
- ' | unpack
- }
- cpu6() {
- echo '1-2-2-2 HP Laptop Compaq 6530b'
- echo '
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-300s.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-30s.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-3s.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -8,6 +8,736 @@
# Each should be taking 3-10s and be possible to run in parallel
# I.e.: No race conditions, no logins
+par__test_cpu_detection_topology() {
+ pack() { zstd -19 | mmencode; }
+ unpack() { mmencode -u | zstd -d; }
+ repack() { tmp=$(mktemp -d); cd "$tmp" && unpack | tar x && tar c . | pack; }
+ export -f unpack
+ # ssh s "(cd /sys/devices/system/cpu; tar c cpu*/topology)" | pack | repack
+ # repack due to: File shrank by 4093 bytes; padding with zeros
+
+ cpu18() {
+ echo '1-4-8-4 Lenovo E540 i7-4712MQ'
+ echo '
+ KLUv/QRoHAsAMk0mHWC1cQMAQXg43q4Vap89AAAg2t0lEnmtAQSEjEgBuozI2UgR9pHWQngK
+ UfLvBgNkXYcUWANgzlhLksiMpACVFKMlxdyBoBzuH4wVNf////+DNYGsu9jxACIOmi8qcyr2
+ VfXPsWY4Y1lN8enTCG1xQJKWKMlrxfx2gQyKKgT/Qgrp3ZglPWf41zw5MfGL8iTqruZzO4/Y
+ +EIQQ6CBmdKUxKC0WjPxHREMiWQkoKo7/XWAkGfsKr9OCaDqVAANMEBgH9mALjUBaAMWTA3I
+ p9MAD/jUHrIBUfUMMDmtwGw3FJAlZAHuHzs1ecDClAH4j/ZPIPoaoyYTGycHGCDoH1PVBxQm
+ D6eGIDdlgH2SOdU8IE8dsCeY/wFy/2RUmKA34QDfT1btMe0/ZseAzCMr/ov9gFFnADBAHKD8
+ BCjyBpgCQHO0WFkAwM5sJqtVlUD+A0wsE3rcMFDlzfe5NYAA+dSJAeQEANBjb3I0MjUxczUy
+ NTMxNzQyMzQ2NTEyMjUyMiSgQG8HYaHQCE8JFPQO/QF4sgGZeoiUAGw7sgGbOojUaFaBACVt
+ QOyrgAyQDSUAD1jaSYa6mwJgG0nAAIv1RDYgUPMBCyb+boABgr2QDSCk4hKrCHjA3J0xVPEB
+ LJQMyG8DDLCsD9mAZbU7oLFTSUC/JzED3IdsgMXV71ONGjTPqnwDAGAyMjI1MjIyMjIyMjIg
+ 6LFO/Ew0swcR/P//P9cM7w78Gy4bwIZDFgAPsgFLB1EA2sgGWPZBhGnxAHoTMgH4ywYoEh4h
+ AMPIBsSABFpUSAKQSDZgojwsAD7ZgFSFQABc2QB6+pEAsGUD1iXgCOd3TRQEAJgyMjIwNDAz
+ MDAtMDAwMDU3MDAwI+ihWvxMMIHZARH8//8/2Jygdgf8BZyNZANcJiE8ajGAw/cw5bQYYFd2
+ GABR5kEIAIHZAJv3AAD8ZTYgw4MEAFjK/S+AsZINmDAhRzMQhAYQHwCjzQZMsg8IAIBsQGwI
+ CEAhG0A4IICAOv0hLxw0AwAoMDAwMDAb6MBS/Eya2gYQFOH//9+WaSwO+wHMPAAkAQMsFrIB
+ CZAkAItsAEEMkaEWD8i4HkYArrIB9PEDJLUYwEAVbDTAA4Rh2YCV9gAtyH8BqbSyAd0Y6Azw
+ gA+2bEAoJEiAOsB8BACINjUyNjM2NjY3NjY3NjY2NmMk6JGt8FNmptQDETgE////YjYa3QH9
+ gcoG4P4FvxpggGDKBkygAsQGeMDnRzYgDGSALEQEzn8C0soGODsfSwCibACx8AAEYCobgF4Q
+ IgZIIRuQ+AECwMwGDMWPQQAWRzYgLx5VCoAHGK6yARzQA4K0ARitRyDa/QATcD7AAzwDAHA2
+ NjYyNjY0MDQyNDQtNRv4EBTh///fpkFqHPonRNkA+KoPaNIGJHsfMdqAAKQWDwhLA1iXgAGW
+ h2xAPMQFIEI2gOBBMABOWTZA/zxAARhPNmBRHy0C8F+AF2zZgKdaATSA9v40/AIUBABoNDQ0
+ NjQ0NDQzNDA0NCS4YB8RNAT///9zyWDmhQP9B2QDvBkg/moxgLX+ES0AA2orkw2wUAZaA4xQ
+ NgB3FKw0wADBKdmATgvKNsADPgrZgAxIFQDGsgHOYg9TLQZwuMcMAGk2AL1/jAAwJUMPLQC0
+ sgG2fFwBOFo2wFDjYQT6d9wXvAIASDQ0MTQxMTExMRr8/AWYDVA4PDoARs0G+L1HXABe1QZA
+ NIq/BcADaqiZDfChekClDbioCoGWNuDYfHQE4JDdAKwEDLA8ywZIWB4pAHOyAYQB0QqAavEC
+ DAQASDE1NzExMTExMSW4oG8RNAzh///fi0bTwgH8BTAbkHoBYEvAAMtHNiAA0QIQlQ3oHIeN
+ LR5wRh9FAFKzAW1nR60s/+eyARBfwbkBlsoG5OECVAYYIDizAbhvwfcCPOBDZi0kaAAM8EHV
+ bEAN8sMqtRhA/jwCAVhANmACObbv/94XLAMAYDc1NzM3Nzc3Nzc3Nx7sQCc/k1nw/SFANiCB
+ aAFYZQNq6EcLgKc2wBlEoQEgmQ0wQXpUALBkA8IQFQCX2YAheHQBGJUNoMYf7gLwAIuosgEc
+ OA+MtAEXEX4g0gYcqx9v9Geq0gGsAwBgNzc3Nzc3Nzc1NTM1IOhRnvh3Zh8RNAT///9z1Wh2
+ B/2bywb4oHiopQ24qPcQ0wYc2w7RRC0e8Ho+IgC6bIAzxMMFoJYNcHw/VgBeZQOCQB4sAK1s
+ gOzrUQFYzQbEwR2aAFzKBgBKHloAUmUDJvjRA/19vhiEAwBQNTU1NTU1NTU1NSDo0cbfhBPU
+ HRE0BP///1NVwQRtB/2D2YA4BEcKwHPZANz8UQGQygbwYh5AALaRDUhBWgDIsgE18MMEYFAb
+ 4AwoeAAYZgPQ+9EFoJQNUJg8LACDsgE29OACMFg2gJp/OFb/RAsU/QEAKDU1NTU1EOBQJ/9t
+ 6f21XxYPuNOdB1UA3pcNcIb6I1UAvCcbQKgGQgnA3csGBKGqByUA1C8bQP/qDygC8AUI6jiN
+ 2w==
+ '
+ }
+ export -f $(compgen -A function | grep ^cpu)
+
+ test_one() {
+ eval $1 | head -n1
+ export PARALLEL_CPUPREFIX=$(mktemp -d)
+ cd "$PARALLEL_CPUPREFIX" && eval $1 | tail -n +2 | unpack | tar xf -
+ echo $(parallel --number-of-sockets) \
+ $(parallel --number-of-cores) \
+ $(parallel --number-of-threads) \
+ $(parallel --number-of-cpus)
+ rm -r "$PARALLEL_CPUPREFIX"
+ }
+ export -f test_one
+ compgen -A function | grep ^cpu | sort | parallel -j0 -k test_one
+ rm ~/.parallel/tmp/sshlogin/*/cpuspec 2>/dev/null
+}
+
+par__test_cpu_detection_cpuinfo() {
+ pack() { zstd -19 | mmencode; }
+ unpack() { mmencode -u | zstd -d; }
+ export -f unpack
+ # ssh server cat /proc/cpuinfo | pack
+
+ cpu1() {
+ echo '2-8-8-8 Xeon 8 core server in Germany'
+ echo '
+ KLUv/QRYbRIARmlzIxBtqgDhSWTqT86MkL9zqf+EhavXzwbElKKZVR0oAgBg5J4gcQBiAGEA
+ sLnXDwczA4YzTNLcWTvx+utwzbFmQQYUDEZyZ60JhQYkubMk+Zi3NptQSECQAeUFvwJhFAiH
+ cDh4wAOAnBvxgAeAO2tjk1+UO2vBhWZkzZ31gC+26BM7BrfKhZVvkptwZ0HvoROSSzHkzqKz
+ e92kzALNss2vjU/N6N5c/Ep8Sms8b5+gcl8Xv41PO951/TZ/oW+kPnF0Z62WGmQJtiR3Flxq
+ 4aE3sZPzVV5X7TNxxHofd9aaOGLIncP26pPPPW5Lp/vEbkHvS6djzJ3Vknyw8ZohD81Bjw7i
+ U67Vm6RyX7a7r8T6KlKH7J6GTmd9csYzTW+F/iQfmlN6eOm7Nt6N5csZI7r8OBxtd12fKltt
+ Od0jfCUPYXP96G+DH+ur491XtvvbfdpV9CrGP3btXaE7eoIRdA/MYrEsFE2jNIxCkSgUhkES
+ ZlmWZVEURUGSJEmYU+XGlZps8XQlJjPYpkofxVzgXV/jBN1LIagxprmzqtwopQfbw7AFMoAw
+ GMud1fzilGaDPeqj81GuFkZ/UVKXmFBz9EO5PsIncjT4pVpXTx5mux83IFADQJsOKpW46nns
+ Is7U2ZTFVYV3C3OmxEovTmU8sZyTYlYqcdTzmEUsR6PYOlV4tzAnSqz04lTGE8s5KWalEkc9
+ j1nEqahrvJxROjsHSSvQhQq1tpf4zCUJFtpLU3TfUioW5HyRY49kj+F7XHNrWzFtIuMXRNui
+ cMxHAZLOSIU=
+ ' | unpack
+ }
+ cpu2() {
+ echo '1-4-8-4 Core i7-3632QM Acer laptop'
+ echo '
+ KLUv/QRYBRkANvyjJDBtnADAQSgjJ0We2YiUIhYo1GYrjfN9LZSRbXi0c1gXhgBQJaUAjQCQ
+ AFstjEt/y7WLjrldy3NJYZ2SHbJMae46JVsalxR2RPcoxwvjbzHHk8cuBwx/Hia6pGiF4+uD
+ LbZEjWjxPA9zSVEqFBoYjYRxSdEmmZzMwaXgkuKIbleblwqFBEazaG5wCQeENzw0TuQMELgH
+ NEQA6JQID4AAuKQoXPEN6JKiPG0SLtElZfIcXNUhy5anHRc0OkjUhEtKc9OULWpkYVxSpmRW
+ JucuAfLJlS35WxnfpHRMq/Pc1JnSfZSwmrrTg811xj11XM1RssP3ZdxtXhL/3mI84Su1h/1+
+ nPmNMl+ZP1lSXQLh3bJ17vYHQ1712CNHed9rH5GQfTF4deznbPhVfkPCrgxe134yPOO+8l7b
+ FUYO2eqSorBjvaVYHOaS8jSi781BlkXpepVJdIJstbBOLikKJA6u3txG3quftJvSzZXoq+5g
+ jJxCtvXgaW5/Kdd8ail3npR7o5jvek+tvh9kVRN8U/VY7y2u2eZZxFSXRNY1slhy1vWp0PWk
+ 0b22tE2M+x3Zyj1zuxrJG2Z6lPnNsT1kbT+3JY8YCbujzPwG9pv1Ehj5WzZx+5TtooR/ItZu
+ n2gTDwIf27u4r6buWtkcZfzEEQQETgMtGA5BFDlQg1k8EBRBEEMALSDoeZpGAbRoGo/jNAWN
+ RcHjNA3DMNCCYZ6GYSDoWTCPwyxSR4XqWHHBT6WQu7wF6ekijecC53bUI+eSwsw6W1vLE11S
+ OiqMDvfW9CxPs2AUOOugdEhqqZp5Z147oSadsnlqmMiks5kuP1LI1k/hBFkGoZbGvOnc+/j2
+ veb6au5w6qPbeyWc+lXIV14UBzsgIKMZ0jAPK+HdMhUFdRtVjCeXO5JNULexYjxRJq2g2EaV
+ 8O7CRoIUlGysjsfKBCko2ag6HruIkWyCuo0V44ky2YRS1xX8jOLIPpdShdsmd5zFkNBhyRjs
+ jWqiDxsGiQbeb74N2hniRTgqfc6PK/sOQHV9UrS1UtKWyvnmCMjuOeEbaVqYTWLEy8KHcwab
+ fNdt
+ ' | unpack
+ }
+ cpu3() {
+ echo '1-2-4-2 Core i5-2410M laptop firewall'
+ echo '
+ KLUv/QRYTRUAdrWRJCBtLACzSvaJv8mdRORLLoVMJ3pdprIRArYowWEZLgRCIHoEDZEAfQCA
+ ALM94qbc+9LZVuOOaol8MPJ6MQ5Ze00x4WWw8MXBYO6orXj9nTTWluJ4LCCQRrmjVEUCA1Mm
+ xh21brZJ24vLcUdJ5GPe2qsiAYHBLJYXHKLh4AwMpbEMELwHMDwALJ0HD3AAuKM2MvmlcUcp
+ uG7G1dxRFPBFBj3ituBWqbDyRXIR7ij3HjqdXGkx7ig6u7dNyitytkd4bl0d/SQPIWtN0d8I
+ P9bXybu/bPe3+7Qn6FOMf9zYu7pPOoIQbG+YbX5lfGnGdtbiV8KntMbz9h9T+7b4ZXza8a3r
+ t/nrvlF6xNAdpVrCIE8sRrmj4EoL717ETc5Xedu0T8TQ6qW4o1TE0GLcOWSvPvnaY7aWO6qX
+ Bo/wgSYMfpLYV2I9vZedbnz1WfmgY+ue1vVVNp789pgt0xflaWz33Wv82Byfcp3eKFM7s939
+ JdbX3k9ROuT2tDud9ckZ32h6q7uEk4BRhI3/JD9iiK6E7SG6zLO2nPIUkgknzzod8pR3c0oe
+ XvqukXdk+XJGiC4/k0bZW9enSlY7DONoIIvFQcAsiwJhIAvHY1EUAgZj8WiU5VS5cSVMsni6
+ E5MXZFGlT3o0LvCuL/KGuaO6e6lzbDWaO6rKjVLyIHsazXoQLCAPAn5xSmZkLYr0LK1tuS8n
+ pqtw4xNxiyKrK19CfmWUnbn3SHdS3StP91h65T1FfXQ+ytNC6C9K6RPTsUk/lOvp9mMRj/AG
+ JSDQIqIi7LRUwrvFZJLUAVuxPLHcLdUEdcBUDE/UqSanrs9zRmXkcaNU+bZlG7hrcxA2mUBy
+ T8tuUnd4augwnjSRdwOqb6To3FJWLMn5yBHIbnjCtm86kCEx8rLwgZ4B68GiZg==
+ ' | unpack
+ }
+ cpu4() {
+ echo '1-2-2-2 AMD Opteron 244 dual core laptop(?)'
+ echo '
+ KLUv/QRYvQoANtlJIkBprACDMMQtkTstiphu+tF3RsomRkcLaiECKgDo7qgtvyZCAEQAOQCP
+ WWerZUFc4QE7AaJ0dHLCDRiLr6TL4r9SgsrIVQLJV2KAb5n7w00ZMBbtzaiO+Sy+EvMajmSi
+ Qgr5So7s1iYdVgErQYUUnnkPtyjfZG2RNh52qpXhK6WHHVvZHIK4CR1Kxq/UPAsN6DFOFSB8
+ QWjD66ujsaYGFOWgQBTJV0oNBwwk+UpNDE5H7tHuHf1AB9sTijZ/Mj4kt521vTZ8x5l71n57
+ zK6I2rXtlfGd3ree1+Yrc13oD7uvlLphkB8qeQvBIZEonvPMg848955fM+pqwyLbO/qQrJaE
+ GlAOBElC+UrNb2UjF9SM9CEjo3zhZ6TR7qN4CFlrhj5Cu6/dDxAAAieJgnrpvudbNgNUIOzA
+ MqSoSuBmxjF3/rkp5oAwr3m0DVcImxgIDpyVKKrENj8=
+ ' | unpack
+ }
+ cpu5() {
+ echo '2-24-48-24 24-core (maxwell?)'
+ echo '
+ KLUv/QRYdSQAGkNoCyQADcMCI0TLks4mlR/lnQWq4v01q/9MCZihKMz3R7P+/yfjrxe5AKIA
+ pAAKdnLCyuueNSgYcfRSeGMYCkYcyJs7DVYooYPcjoTeGL10uivYGQ9+6XTHSm+MTkjoHGAf
+ yJ3mYFNY4MMAgyNJQdQbYyvA/i645o6FGAIMk6Q3hlFBQYNkIeiNsW+6SR2Mx3pjJCRk3tpH
+ BQUJEIVAeoGnxRUmSQMYgkNwcOABHgCQcyM8wAMAb4yNTT4lbwzD2TfjkbwxKDgwNsQV7A5n
+ q1ywEirkJnhjPGig88ldHMgbg87udZPyERXKGb+S3vou4UlwFNFxfCj5CkbQTbQ9gi7zrC2n
+ PIXEdCbP+vzNmTDw0nc9vA/LlzMi6LJhwdF219VQZastp3t0zq7roz8k0PLjP/KO01xT6O+B
+ H+vrwruftvvbfdoP4k+Mh+zau74vtMJBOO6J2ubXxl/M6N5c/Cb4lNZ43v7yuK+L38anHe+6
+ fpu/7xsXVzDijWF0ojk84VDojeHsYp0/GMdK3hhVbpQJ6DRDcqSFAMMo9sZohnEm5uHoSPe8
+ sb/dDp1oxB/kxSvvKVRIJ6T8rIM4jHLxCfO1hTZQrl8Jncl16WHlR7oL9b0rXzr8yvPA+9po
+ e3vw0TEgFprzJxt99C5BiD+L9l20ft7bTjfCalgJndf2GVzXV+l48h3klp4nZFjb/ebeH3T8
+ 6B6fcn2eoMddbXc/xfra+yf2n7i4w87Q73QGDGOYojCFJYwxxpZiii3EEGMUwyxJKYbQQmsh
+ i2EUoyhpUQohRSmFEiUpibHE0lJJJaVQQikphBikEFoQhRjDMGtRFKUwlhKFkIQQsha2MJWw
+ hKXFFkMpscSQhDCEMcyyLEtKTEEWslayLIolSVprIbUkpRCEUkIpIYSYlNCCEKMgtCQIMbYs
+ ayWJUmullBJCR1Plxk002eLpTph8OE1RKVws6wLeFR6erDdGdy99rwWA56ixqCwgIiKDAAhC
+ MCMAACxsAhKoQBgGIBAIxsEIwTkOEfxPwgUfLJZYP9vKZrhEZep2u7k7XFK1ZLTlxfNql0Dp
+ yIyLNj3Wy9LeMRJXK8cgHu09Fq1Yq8b0XW09VsBqLc3ckYn047pXflSABeQzkYdcPcePl78l
+ oEW3htyWDCvcopK7b0uGSt6uFhO7XBKlKikuaCWPOa6tcXOiBR1jXNPFta0FfQxn6O1mJGr5
+ 2Luq5WO+pnaPdalaeiyWdukXgH8mpTAUl1kS47K2M8j8mHlcElJyq2RtiZDCbSm5+7ZkGJQZ
+ l7eixcwul0SpiowL2tRYJ0t7x0hcrRyDeLT3WLSiVo7pM9pyrIDRyjFUlvv8H/M+JvuQKzUY
+ kM7MMXFBQ7TYyblwJnts2KkJO02wk27ZTOpjv06V+jple920PkaXcca67lrtscV1V9y9WuCx
+ xLUirn8t9NjMkJcZXC01dpO13hjFq01jyqKWjd272jEWZke+Xv7966LvqzZTC0zEIma1yNpX
+ ketyZer/0g6AFe7sFs2nePnngUV+Cv9cPO6zftzOuDDzXMWe+8I/vwr+ll9K
+ ' | unpack
+ }
+ cpu6() {
+ echo '1-2-2-2 HP Laptop Compaq 6530b'
+ echo '
+ KLUv/QRY1Q8A1iZsIyBvqwA3o23SyJIQjJ06dkMYGMYDOkA5MLcI3iHqFTCAyKAwaQBhAFkA
+ BstXShcNEAYKi5SvtE7UKLU9pSxfKQIb885WFw0MioNgOcKvKEpj4hQRCl8ZFQYcgxYeIAEA
+ o1y3Cl9pH4NvML5ScuvEp5qvZOHaY88hVuV2QoeFDYLL8JWc9pDRgTtRyleSsXs1SlYBy/iy
+ 37Xnt/nrfN/kED9fKXWEOa5QjeUruZ2su9MgVhjb5NVoHxA/qtfiKyWIH6V83bE2G2zamK2M
+ eog1Oe0royrGV+oIbA7SWil3TFtbSFglPJxh7EXrr0SZqoVhCAoOAjudN8h/5DK74wjfE/KG
+ LB/G98jlh0Qlu/Z8TMhmw6h/7hG8c0zbor8Q/pufknefsd3f7suOnkfvvbGy93Quacg9Tt80
+ tvmT8Sfx6Zm+b4Qv5Xzn7Tsi/ep7y7Isak24byMMsne5FZGVY9CUbeJgLvCeDfKme6XjMMU0
+ X2nCfTDSHHswjXI4CJSDgsZXam4vRiJEQRD15Eqm8+cej4S574R19KcOX/KM3iyRvrHdfcab
+ d6yPdi7jbDC+M00HGgDJQBXgHVgYGFDCduKMmpHxiUzAByptDXwxQm8Orkb8MKwzCJ2GRGOh
+ S1UsIOebOfYk2efwPdf8XqtmFQx7uDu4QYQPJQq2DBQj
+ ' | unpack
+ }
+ cpu7() {
+ echo '1-8-8-8 Huawei P Smart Octa-core (4x2.36 GHz Cortex-A53 & 4x1.7 GHz Cortex-A53)'
+ echo '
+ KLUv/QRYZQUAwkkgH1BnrABA24MVyJENxj4WLhwSzxygdYSSvS59MzORDgyGAoEto0jsDTHx
+ 9XOWl0pYpXrUG5qMPlbneFtuptv5FMdasGcns3AXCd8HEEQylmN3Q5V+oUp/WRoo36uHPHs6
+ +wS+1kuCN9TLzdRNJHYM1hsSQAACYkE8JPWGOHaviyxTDgAkQAkMUAcDFIMBSmCAOhigGAwo
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-load.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-mem.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-parsort.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-race01.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -171,6 +171,6 @@
}
export -f $(compgen -A function | grep par_)
-compgen -A function | grep par_ | sort |
+compgen -A function | G par_ "$@" | sort |
# parallel --joblog /tmp/jl-`basename $0` -j10 --tag -k '{} 2>&1'
parallel --joblog /tmp/jl-`basename $0` -j1 --tag -k '{} 2>&1'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-race02.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -42,6 +42,17 @@
}
ctrlz_should_suspend_children
+par_totaljob_repl() {
+ echo '{##} bug #45841: Replacement string for total no of jobs'
+
+ parallel -k --plus echo {##} ::: {a..j};
+ parallel -k 'echo {= $::G++ > 3 and ($_=$Global::JobQueue->total_jobs());=}' ::: {1..10}
+ parallel -k -N7 --plus echo {#} {##} ::: {1..14}
+ parallel -k -N7 --plus echo {#} {##} ::: {1..15}
+ parallel -k -S 8/: -X --plus echo {#} {##} ::: {1..15}
+ parallel -k --plus --delay 0.01 -j 10 'sleep 2; echo {0#}/{##}:{0%}' ::: {1..5} ::: {1..4}
+}
+
par_semaphore() {
echo '### Test if parallel invoked as sem will run parallel --semaphore'
sem --id as_sem -u -j2 'echo job1a 1; sleep 3; echo job1b 3'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-sql.sh
^
|
@@ -1,146 +1,7 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
-#
-# SPDX-License-Identifier: GPL-3.0-or-later
-
-export SQLITE=sqlite3:///%2Frun%2Fshm%2Fparallel.db
-export PG=pg://`whoami`:`whoami`@lo/`whoami`
-export MYSQL=mysql://`whoami`:`whoami`@lo/`whoami`
-
-export DEBUG=false
-
-p_showsqlresult() {
- SERVERURL=$1
- TABLE=$2
- # No hostname as it can differ
- sql $SERVERURL "select Command,V1,V2,Stdout,Stderr from $TABLE order by seq;"
-}
-
-p_wrapper() {
- INNER=$1
- SERVERURL=$(eval echo $2)
- TABLE=TBL$RANDOM
- DBURL=$SERVERURL/$TABLE
- T1=$(mktemp)
- T2=$(mktemp)
- eval "$INNER"
- echo Exit=$?
- wait
- echo Exit=$?
- $DEBUG && sort -u "$T1" "$T2";
- rm "$T1" "$T2"
- p_showsqlresult $SERVERURL $TABLE
- $DEBUG || sql $SERVERURL "drop table $TABLE;" >/dev/null 2>/dev/null
-}
-
-p_template() {
- (
- # Make sure all jobs are inserted before starting a worker
- sleep 10;
- parallel --sqlworker $DBURL "$@" sleep .3\;echo >"$T1"
- ) &
- parallel --sqlandworker $DBURL "$@" sleep .3\;echo ::: {1..5} ::: {a..e} >"$T2";
-}
-
-par_sqlandworker() {
- p_template
-}
-
-par_sqlandworker_lo() {
- p_template -S lo
-}
-
-par_sqlandworker_results() {
- p_template --results /tmp/out--sql
-}
-
-par_sqlandworker_tag() {
- p_template --tag
-}
-
-par_sqlandworker_unbuffer() {
- p_template -u
-}
-
-par_sqlandworker_total_jobs() {
- p_template echo {#} of '{=1 $_=total_jobs(); =};'
-}
-
-par_append_different_cmd() {
- parallel --sqlmaster "$DBURL" sleep .3\;echo ::: {1..5} ::: {a..e} >"$T2";
- parallel --sqlmaster +"$DBURL" sleep .3\;echo {2}-{1} ::: {11..15} ::: {A..E} >>"$T2";
- parallel --sqlworker "$DBURL" >"$T1"
-}
-
-par_shuf() {
- MD5=$(echo "$SERVERURL" | md5sum | perl -pe 's/(...).*/$1/')
- T=/tmp/parallel-bug49791-" <$MD5"
- [ -e "$T" ] && rm -rf "$T"
- export PARALLEL="--shuf --result '$T'"
- parallel --sqlandworker $DBURL sleep .3\;echo \
- ::: {1..5} ::: {a..e} >"$T2";
- parallel --sqlworker $DBURL >"$T2" &
- parallel --sqlworker $DBURL >"$T2" &
- parallel --sqlworker $DBURL >"$T2" &
- parallel --sqlworker $DBURL >"$T2" &
- unset PARALLEL
- wait;
- # Did it compute correctly?
- cat "$T"/1/*/*/*/stdout
- # Did it shuffle
- SHUF=$(sql "$SERVERURL" "select Host,Command,V1,V2,Stdout,Stderr from $TABLE order by seq;")
- export PARALLEL="--result '$T'"
- parallel --sqlandworker "$DBURL" sleep .3\;echo \
- ::: {1..5} ::: {a..e} >"$T2";
- parallel --sqlworker "$DBURL" >"$T2" &
- parallel --sqlworker "$DBURL" >"$T2" &
- parallel --sqlworker "$DBURL" >"$T2" &
- parallel --sqlworker "$DBURL" >"$T2" &
- unset PARALLEL
- wait;
- NOSHUF=$(sql $SERVERURL "select Host,Command,V1,V2,Stdout,Stderr from $TABLE order by seq;")
- DIFFSIZE=$(diff <(echo "$SHUF") <(echo "$NOSHUF") | wc -c)
- if [ $DIFFSIZE -gt 2500 ]; then
- echo OK: Diff bigger than 2500 char
- fi
- [ -e "$T" ] && rm -rf "$T"
- touch "$T1"
-}
-
-par_sql_joblog() {
- echo '### should only give a single --joblog heading'
- echo '### --sqlmaster/--sqlworker'
- parallel -k --joblog - --sqlmaster $DBURL --wait sleep .3\;echo ::: {1..5} ::: {a..e} |
- perl -pe 's/\d+\.\d+/999.999/g' | sort -n &
- sleep 0.5
- T=$(mktemp)
- parallel -k --joblog - --sqlworker $DBURL > "$T"
- wait
- # Needed because of race condition
- cat "$T"; rm "$T"
- echo '### --sqlandworker'
- parallel -k --joblog - --sqlandworker $DBURL sleep .3\;echo ::: {1..5} ::: {a..e} |
- perl -pe 's/\d+\.\d+/999.999/g' | sort -n
- # TODO --sqlandworker --wait
-}
-
-par_no_table() {
- echo 'bug #50018: --dburl without table dies'
- parallel --sqlworker $SERVERURL
- echo $?
- parallel --sqlandworker $SERVERURL echo ::: no_output
- echo $?
- parallel --sqlmaster $SERVERURL echo ::: no_output
- echo $?
- # For p_wrapper to remove table
- parallel --sqlandworker $DBURL true ::: dummy ::: dummy
-}
-
-export -f $(compgen -A function | egrep 'p_|par_')
-# Tested that -j0 in parallel is fastest (up to 15 jobs)
-# more than 3 jobs: sqlite locks
-export LC_ALL=C
-compgen -A function | grep par_ | sort |
- stdout parallel --timeout 2000 -vj50% -k --tag --joblog /tmp/jl-`basename $0` p_wrapper \
- :::: - ::: \$MYSQL \$PG \$SQLITE
+# # SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# #
+# # SPDX-License-Identifier: GPL-3.0-or-later
+#
+# Moved to sql01.sh
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-sql01.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -8,14 +8,28 @@
# The tests must be able to run in parallel
export SQLITE=sqlite3:///%2Frun%2Fshm%2Fparallel.db
-export PG=pg://`whoami`:`whoami`@lo/`whoami`
-export MYSQL=mysql://`whoami`:`whoami`@lo/`whoami`
+export PG=pg://`whoami`:`whoami`@localhost/`whoami`
+export MYSQL=mysql://`whoami`:`whoami`@localhost/`whoami`
export CSV=csv:///%2Frun%2Fshm
+export INFLUX=influx:///parallel
export DEBUG=false
rm -f /run/shm/parallel.db
mkdir -p /run/shm/csv
+overlay_mysql() {
+ # MySQL is rediculously slow: Force it to work in RAM
+ sudo service mysql stop
+ mysqldir=/var/lib/mysql
+ upper=/dev/shm/mysql
+ work=/dev/shm/mysql-work
+ sudo umount $mysqldir 2>/dev/null
+ mkdir -p $upper $work
+ sudo mount -t overlay overlay -o lowerdir=$mysqldir,upperdir=$upper,workdir=$work $mysqldir
+ sudo chown mysql:mysql $mysqldir
+ sudo service mysql start
+}
+
p_showsqlresult() {
# print results stored in $SERVERURL/$TABLE
SERVERURL=$1
@@ -46,11 +60,11 @@
}
p_template() {
- # Run the
+ # Run the jobs with both master and worker
(
# Make sure there is work to be done
sleep 6;
- parallel --sqlworker $DBURL "$@" sleep .3\;echo >"$T1"
+ parallel --sqlworker $DBURL "$@" sleep .3\;echo >"$T1"
) &
parallel --sqlandworker $DBURL "$@" sleep .3\;echo ::: {1..5} ::: {a..e} >"$T2";
}
@@ -137,17 +151,54 @@
true;
}
-hostname=`hostname`
-export -f $(compgen -A function | egrep 'p_|par_')
-# Tested that -j0 in parallel is fastest (up to 15 jobs)
-# -j5: SQLite complains about locked database.
-compgen -A function | grep par_ | sort |
- stdout parallel -vj4 -k --tag --joblog /tmp/jl-`basename $0` p_wrapper \
- :::: - ::: \$MYSQL \$PG \$SQLITE \$CSV |
- perl -pe 's/tbl\d+/TBL99999/gi;' |
- perl -pe 's/(from TBL99999 order) .*/$1/g' |
- perl -pe 's/ *\b'"$hostname"'\b */hostname/g' |
- grep -v -- --------------- |
- perl -pe 's/ *\bhost\b */host/g' |
- perl -pe 's/ +/ /g'
-
+par_sql_joblog() {
+ echo '### should only give a single --joblog heading'
+ echo '### --sqlmaster/--sqlworker'
+ parallel -k --joblog - --sqlmaster $DBURL --wait sleep .3\;echo ::: {1..5} ::: {a..e} |
+ perl -pe 's/\d+\.\d+/999.999/g' | sort -n &
+ sleep 0.5
+ T=$(mktemp)
+ parallel -k --joblog - --sqlworker $DBURL > "$T"
+ wait
+ # Needed because of race condition
+ cat "$T"; rm "$T"
+ echo '### --sqlandworker'
+ parallel -k --joblog - --sqlandworker $DBURL sleep .3\;echo ::: {1..5} ::: {a..e} |
+ perl -pe 's/\d+\.\d+/999.999/g' | sort -n
+ # TODO --sqlandworker --wait
+}
+
+par_no_table() {
+ echo 'bug #50018: --dburl without table dies'
+ parallel --sqlworker $SERVERURL
+ echo $?
+ parallel --sqlandworker $SERVERURL echo ::: no_output
+ echo $?
+ parallel --sqlmaster $SERVERURL echo ::: no_output
+ echo $?
+ # For p_wrapper to remove table
+ parallel --sqlandworker $DBURL true ::: dummy ::: dummy
+}
+
+export -f $(compgen -A function | grep p_)
+export -f $(compgen -A function | G par_ "$@")
+
+# Run the DBURLs in parallel, but only one of the same DBURL at the same time
+
+joblog=/tmp/jl-`basename $0`
+true > $joblog
+
+do_dburl() {
+ export dbvar=$1
+ hostname=`hostname`
+ compgen -A function | G par_ | sort |
+ stdout parallel -vj1 -k --tag --joblog +$joblog p_wrapper {} \$$dbvar |
+ perl -pe 's/tbl\d+/TBL99999/gi;' |
+ perl -pe 's/(from TBL99999 order) .*/$1/g' |
+ perl -pe 's/ *\b'"$hostname"'\b */hostname/g' |
+ grep -v -- --------------- |
+ perl -pe 's/ *\bhost\b */host/g' |
+ perl -pe 's/ +/ /g'
+}
+export -f do_dburl
+parallel -vk --tag do_dburl ::: CSV INFLUX MYSQL PG SQLITE
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-sql02.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -8,7 +8,7 @@
# The tests must be able to run in parallel
export SQLITE=sqlite3:///%2Frun%2Fshm%2Fparallel.db
-export PG=pg://`whoami`:`whoami`@lo/`whoami`
+export PG=pg://`whoami`:`whoami`@localhost/`whoami`
export MYSQL=mysql://`whoami`:`whoami`@lo/`whoami`
export CSV=csv:///%2Frun%2Fshm%2Fcsv
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh1.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -223,7 +223,7 @@
par_hgrp_agrp_comma() {
echo '### bug #63722: hostgroup with , breaks parser'
- stdout parallel --hgrp ::: id@csh@lo,tcsh@lo id@csh@lo,tcsh@lo | sort
+ stdout parallel --hgrp ::: whoami@csh@lo,tcsh@lo whoami@csh@lo,tcsh@lo | sort
}
par_hgrp_agrp() {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh2.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh3.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -142,4 +142,4 @@
# Tested with -j1..8
# -j6 was fastest
#compgen -A function | grep par_ | sort | parallel --delay $D -j$P --tag -k '{} 2>&1'
-compgen -A function | grep par_ | sort | parallel --delay 0.1 -j2 --tag -k '{} 2>&1'
+compgen -A function | G par_ "$@" | sort | parallel --delay 0.1 -j2 --tag -k '{} 2>&1'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh4.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -233,6 +233,6 @@
}
export -f $(compgen -A function | grep par_)
-compgen -A function | grep par_ | LC_ALL=C sort |
+compgen -A function | G par_ "$@" | LC_ALL=C sort |
parallel --timeout 10000% -j6 --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1' |
perl -pe 's:/usr/bin:/bin:g;'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh5.sh
^
|
@@ -1,19 +1,17 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
# SSH only allowed to localhost/lo
-
-
par_ssh_cmd_with_newline() {
echo '### Check --ssh with \n works'
ssh=$(mktemp)
cp -a /usr/bin/ssh "$ssh"
qssh=$(parallel -0 --shellquote "$ssh")
- parallel --ssh "$qssh" -S sh@lo ::: id
+ parallel --ssh "$qssh" -S sh@lo ::: whoami
}
par_controlmaster() {
@@ -153,6 +151,6 @@
}
export -f $(compgen -A function | grep par_)
-compgen -A function | grep par_ | sort |
+compgen -A function | G par_ "$@" | sort |
# 2019-07-14 100% slowed down 4 threads/16GB
parallel -j75% --joblog /tmp/jl-`basename $0` -j3 --tag -k --delay 0.1 --retries 3 '{} 2>&1'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh6.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh7.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -1650,8 +1650,8 @@
par_environment_too_big_ash() {
myscript=$(cat <<'_EOF'
echo 'bug #50815: env_parallel should warn if the environment is too big'
- len_var=63
- len_var_remote=47
+ len_var=53
+ len_var_remote=37
len_var_quote=31
len_var_quote_remote=21
len_fun=1
@@ -1720,11 +1720,11 @@
par_environment_too_big_bash() {
myscript=$(cat <<'_EOF'
echo 'bug #50815: env_parallel should warn if the environment is too big'
- len_overhead=-10-$( (shopt;alias;typeset -f;typeset -p) | wc -c)/1000
+ len_overhead=-27-$( (shopt;alias;typeset -f;typeset -p) | wc -c)/1000
len_var=$len_overhead+56
len_var_remote=$len_overhead+40
- len_var_quote=$len_overhead+31
- len_var_quote_remote=$len_overhead+22
+ len_var_quote=$len_overhead+41
+ len_var_quote_remote=$len_overhead+32
len_fun=$len_overhead+56
len_fun_remote=$len_overhead+40
len_fun_quote=$len_overhead+56
@@ -1795,8 +1795,8 @@
par_environment_too_big_dash() {
myscript=$(cat <<'_EOF'
echo 'bug #50815: env_parallel should warn if the environment is too big'
- len_var=63
- len_var_remote=47
+ len_var=53
+ len_var_remote=37
len_var_quote=31
len_var_quote_remote=21
len_fun=1
@@ -1870,8 +1870,8 @@
par_environment_too_big_ksh() {
myscript=$(cat <<'_EOF'
echo 'bug #50815: env_parallel should warn if the environment is too big'
- len_functions=-$(functions|wc -c)/1000
- len_variables=-$(typeset -p | wc -c)/1000
+ len_functions=-20-$(functions|wc -c)/1000
+ len_variables=-20-$(typeset -p | wc -c)/1000
len_var=$len_variables+40
len_var_remote=$len_variables+30
len_var_quote=$len_variables+43
@@ -1942,14 +1942,14 @@
par_environment_too_big_mksh() {
myscript=$(cat <<'_EOF'
echo 'bug #50815: env_parallel should warn if the environment is too big'
- len_var=46
- len_var_remote=31
- len_var_quote=46
- len_var_quote_remote=31
+ len_var=46-15
+ len_var_remote=$len_var-15
+ len_var_quote=$len_var
+ len_var_quote_remote=$len_var-15
len_fun=28
len_fun_remote=13
len_fun_quote=28
- len_fun_quote_remote=23
+ len_fun_quote_remote=18
. `which env_parallel.mksh`;
@@ -2013,8 +2013,8 @@
par_environment_too_big_sh() {
myscript=$(cat <<'_EOF'
echo 'bug #50815: env_parallel should warn if the environment is too big'
- len_var=63
- len_var_remote=47
+ len_var=58
+ len_var_remote=42
len_var_quote=31
len_var_quote_remote=21
len_fun=1 # unsupported
@@ -3321,7 +3321,7 @@
#compgen -A function | grep par_ | sort | parallel --delay $D -j$P --tag -k '{} 2>&1'
#compgen -A function | grep par_ | sort |
-compgen -A function | grep par_ | LC_ALL=C sort |
+compgen -A function | G par_ "$@" | LC_ALL=C sort |
# parallel --joblog /tmp/jl-`basename $0` --delay $D -j$P --tag -k '{} 2>&1'
# 2019-07-14 200% too high for 16 GB/4 thread
parallel --joblog /tmp/jl-`basename $0` -j75% --retries 2 --tag -k '{} 2>&1' |
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh8.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -143,6 +143,6 @@
export -f $(compgen -A function | grep par_)
#compgen -A function | grep par_ | sort | parallel --delay $D -j$P --tag -k '{} 2>&1'
-compgen -A function | grep par_ | LC_ALL=C sort |
+compgen -A function | G par_ "$@" | LC_ALL=C sort |
parallel --joblog /tmp/jl-`basename $0` --delay 0.1 -j10 --tag -k '{} 2>&1'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh9.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -136,7 +136,7 @@
grep -v .zshenv:.:1
}
-par_propagate_env() {
+par__propagate_env() {
echo '### bug #41805: Idea: propagate --env for parallel --number-of-cores'
# csh complains if MANPATH is unset. Provoke this.
unset MANPATH
@@ -153,10 +153,11 @@
par_env_parallel_big_env() {
echo '### bug #54128: command too long when exporting big env'
- . `which env_parallel.bash`
- a=`rand | perl -pe 's/\0//g'| head -c 15000`
+ . env_parallel.bash
+ env_parallel --session
+ a=`rand | perl -pe 's/\0//g'| head -c 40000`
env_parallel -Slo echo should not ::: fail 2>&1
- a=`rand | perl -pe 's/\0//g'| head -c 25000`
+ a=`rand | perl -pe 's/\0//g'| head -c 45000`
env_parallel -Slo echo should ::: fail 2>/dev/null || echo OK
}
@@ -190,11 +191,12 @@
# Filter the list 5 times to make sure to get good hosts
export -f findhosts
export -f filterhosts
- nice bash -c '
+ # Run this in the background
+ nice tmux new-session -d -s filterhosts$$-$RANDOM -c '
findhosts | filterhosts | filterhosts | filterhosts |
filterhosts | filterhosts | head > /tmp/filtered.$$
mv /tmp/filtered.$$ /tmp/filtered.hosts
- '
+ ' &
) &
(
# We just need one of each to complete
@@ -217,7 +219,7 @@
parallel --nonall -S nopathbash@lo --filter-hosts echo OK
}
-par_d_filter_hosts() {
+par__d_filter_hosts() {
echo '### --filter-hosts and -0'
echo '### https://lists.gnu.org/archive/html/parallel/2022-07/msg00002.html'
printf 'OKa OKb ' | parallel -k -d ' ' --filter-hosts -S lo echo
@@ -227,11 +229,31 @@
printf 'OKa\0OKb\0' | parallel -k -0 --filter-hosts -S lo echo
}
+par__sshlogin_range() {
+ echo '### --sshlogin with ranges'
+ echo '### Jobs fail, but the important is the name of the hosts'
+ doit() {
+ stdout parallel --dr "$@" echo ::: 1 | sort
+ }
+ cluster() {
+ doit -S a[00-12].nx-dom,b[2,3,5,7-11]c[1,4,6].nx-dom
+ }
+ devprod() {
+ doit -S{prod,dev}[000-010,098-101].nx-dom
+ }
+ ipaddr() {
+ doit -Sip'2[49-51].0.[9-11].1[09-11]'
+ }
+ export -f doit cluster devprod ipaddr
+ parallel -k ::: cluster devprod ipaddr
+
+}
+
export -f $(compgen -A function | grep par_)
#compgen -A function | grep par_ | sort | parallel --delay $D -j$P --tag -k '{} 2>&1'
#compgen -A function | grep par_ | sort |
-compgen -A function | grep par_ | LANG=C sort -ri |
+compgen -A function | G par_ "$@" | LANG=C sort |
# parallel --joblog /tmp/jl-`basename $0` --delay $D -j$P --tag -k '{} 2>&1'
- parallel --joblog /tmp/jl-`basename $0` --delay 0.1 -j200% --tag -k '{} 2>&1' |
+ parallel --joblog /tmp/jl-`basename $0` --timeout 100 --delay 0.1 -j200% --tag -k '{} 2>&1' |
perl -pe 's/line \d\d\d+:/line XXX:/' |
perl -pe 's/\[\d\d\d+\]:/[XXX]:/'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-utf8.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local1.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local10.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local105.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local108.sh
^
|
@@ -1,5 +1,5 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
\ No newline at end of file
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local114.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local12.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local129.sh
^
|
@@ -1,5 +1,5 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
\ No newline at end of file
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local13.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash -x
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local14.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local140.sh
^
|
@@ -1,5 +1,5 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
\ No newline at end of file
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local15.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local150.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -14,7 +14,7 @@
nice parallel -k --load 30 sleep 0.1\;echo ::: 1 2 3
echo '### Test --timeout'
- nice parallel -j0 -k --timeout 2 echo {}\; sleep {}\; echo {} ::: 1.1 7.7 8.8 9.9
+ nice stdout parallel -j0 -k --timeout 2 echo {}\; sleep {}\; echo {} ::: 1.1 7.7 8.8 9.9
echo '### Test --joblog followed by --resume --joblog'
rm -f /tmp/joblog;
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local152.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local154.sh
^
|
@@ -1,5 +1,5 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
\ No newline at end of file
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local157.sh
^
|
@@ -1,5 +1,5 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
\ No newline at end of file
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local18.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local19.sh
^
|
@@ -1,5 +1,5 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
\ No newline at end of file
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local2.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local20.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local21.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local22.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local23.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local4.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local5.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local6.sh
^
|
@@ -1,5 +1,5 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
\ No newline at end of file
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local7.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local8.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local9.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-localhost1.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-macos.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-manual.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-polarhome.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-remote1.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-tutorial.sh
^
|
@@ -1,17 +1,18 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
cleanup() {
find {"$TMPDIR",/var/tmp,/tmp}/{fif,tms,par[^a]}* -mmin -10 -print0 2>/dev/null |
parallel -0 rm 2>/dev/null
-}
+}
cleanup
touch ~/.parallel/will-cite
echo '### test parallel_tutorial'
+unset DISPLAY
TMPDIR=/tmp/parllel-tutorial
mkdir -p "$TMPDIR"
cd "$TMPDIR"
@@ -119,6 +120,8 @@
s:/tmp/par-job-\S+:script:g;
s:par......par:tempfile:g;
s:^tempfile\n::g;
+ #+(zenity:2012805): Gtk-WARNING **: 02:25:32.662: cannot open display:
+ s,.zenity.*cannot open display:,,;
# --progress => 1:local / 4 / 4
s,1:local / . / .,1:local / 9 / 9,;
# bash: -c: line 1: .set a="tempfile"; if( { test -d "$a" } ) echo "$a is a dir"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-virtualbox1.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/parsort-local-01.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/sem01.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/sem02.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/sql01.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -132,7 +132,7 @@
echo
}
-par__listproc() {
+par_listproc() {
echo "### Test --show-processlist|proclist|listproc";
# Take the minimum of 3 runs to avoid error counting
# if one of the other jobs happens to be running
@@ -194,5 +194,5 @@
export -f $(compgen -A function | grep par_)
-compgen -A function | grep par_ | LC_ALL=C sort |
- parallel --timeout 3000% -j6 --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1'
+compgen -A function | G par_ "$@" | LC_ALL=C sort |
+ parallel --timeout 10 -j0 --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/sql02.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/sql03.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test13.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test17.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test18.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test19.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test21.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test23.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test30.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test32.sh
^
|
@@ -1,5 +1,5 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
\ No newline at end of file
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test35.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test36.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test37.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test41.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test45.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test46.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test47.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test60.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/tests-to-run/test61.sh
^
|
@@ -1,6 +1,6 @@
#!/bin/bash
-# SPDX-FileCopyrightText: 2021-2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+# SPDX-FileCopyrightText: 2021-2024 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/vagrant/FritsHoogland/centos3/Vagrantfile
^
|
@@ -67,6 +67,10 @@
#
# View the documentation for the provider you are using for more
# information on available options.
+ config.vm.boot_timeout = 100
+ # SSH configuration
+ config.ssh.config = "/home/tange/.ssh/config"
+ config.ssh.dsa_authentication = true
# Enable provisioning with a shell script. Additional provisioners such as
# Ansible, Chef, Docker, Puppet and Salt are also available. Please see the
|
[-]
[+]
|
Added |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/vagrant/generic/centos8/Vagrantfile
^
|
@@ -0,0 +1,76 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+# All Vagrant configuration is done below. The "2" in Vagrant.configure
+# configures the configuration version (we support older styles for
+# backwards compatibility). Please don't change it unless you know what
+# you're doing.
+Vagrant.configure("2") do |config|
+ # The most common configuration options are documented and commented below.
+ # For a complete reference, please see the online documentation at
+ # https://docs.vagrantup.com.
+
+ # Every Vagrant development environment requires a box. You can search for
+ # boxes at https://vagrantcloud.com/search.
+ config.vm.box = "generic/centos8"
+
+ # Disable automatic box update checking. If you disable this, then
+ # boxes will only be checked for updates when the user runs
+ # `vagrant box outdated`. This is not recommended.
+ # config.vm.box_check_update = false
+
+ # Create a forwarded port mapping which allows access to a specific port
+ # within the machine from a port on the host machine. In the example below,
+ # accessing "localhost:8080" will access port 80 on the guest machine.
+ # NOTE: This will enable public access to the opened port
+ # config.vm.network "forwarded_port", guest: 80, host: 8080
+
+ # Create a forwarded port mapping which allows access to a specific port
+ # within the machine from a port on the host machine and only allow access
+ # via 127.0.0.1 to disable public access
+ # config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
+
+ # Create a private network, which allows host-only access to the machine
+ # using a specific IP.
+ config.vm.network "private_network", ip: "172.27.27.8"
+
+ # Create a public network, which generally matched to bridged network.
+ # Bridged networks make the machine appear as another physical device on
+ # your network.
+ # config.vm.network "public_network"
+
+ # Share an additional folder to the guest VM. The first argument is
+ # the path on the host to the actual folder. The second argument is
+ # the path on the guest to mount the folder. And the optional third
+ # argument is a set of non-required options.
+ # config.vm.synced_folder "../data", "/vagrant_data"
+
+ # Provider-specific configuration so you can fine-tune various
+ # backing providers for Vagrant. These expose provider-specific options.
+ # Example for VirtualBox:
+ #
+ config.vm.provider "virtualbox" do |vb|
+ # # Display the VirtualBox GUI when booting the machine
+ # vb.gui = true
+ #
+ # # Customize the amount of memory on the VM:
+# vb.memory = "512"
+ vb.memory = "300"
+ end
+ #
+ # View the documentation for the provider you are using for more
+ # information on available options.
+
+ # Enable provisioning with a shell script. Additional provisioners such as
+ # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
+ # documentation for more information about their specific syntax and use.
+ config.vm.provision "shell" do |s|
+ ssh_pub_key = File.readlines("../../authorized_keys").first.strip
+ s.inline = <<-SHELL
+ mkdir /root/.ssh
+ echo #{ssh_pub_key} >> /home/vagrant/.ssh/authorized_keys
+ echo #{ssh_pub_key} >> /root/.ssh/authorized_keys
+ sudo apt install rsync || sudo yum install -y rsync || sudo pkg install -y rsync
+ SHELL
+ end
+end
|
[-]
[+]
|
Added |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/vagrant/generic/freebsd14/Vagrantfile
^
|
@@ -0,0 +1,80 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+# SPDX-FileCopyrightText: 2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+# All Vagrant configuration is done below. The "2" in Vagrant.configure
+# configures the configuration version (we support older styles for
+# backwards compatibility). Please don't change it unless you know what
+# you're doing.
+Vagrant.configure("2") do |config|
+ # The most common configuration options are documented and commented below.
+ # For a complete reference, please see the online documentation at
+ # https://docs.vagrantup.com.
+
+ # Every Vagrant development environment requires a box. You can search for
+ # boxes at https://vagrantcloud.com/search.
+ config.vm.box = "generic/freebsd14"
+
+ # Disable automatic box update checking. If you disable this, then
+ # boxes will only be checked for updates when the user runs
+ # `vagrant box outdated`. This is not recommended.
+ # config.vm.box_check_update = false
+
+ # Create a forwarded port mapping which allows access to a specific port
+ # within the machine from a port on the host machine. In the example below,
+ # accessing "localhost:8080" will access port 80 on the guest machine.
+ # NOTE: This will enable public access to the opened port
+ # config.vm.network "forwarded_port", guest: 80, host: 8080
+
+ # Create a forwarded port mapping which allows access to a specific port
+ # within the machine from a port on the host machine and only allow access
+ # via 127.0.0.1 to disable public access
+ # config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
+
+ # Create a private network, which allows host-only access to the machine
+ # using a specific IP.
+ config.vm.network "private_network", ip: "172.27.27.74"
+
+ # Create a public network, which generally matched to bridged network.
+ # Bridged networks make the machine appear as another physical device on
+ # your network.
+ # config.vm.network "public_network"
+
+ # Share an additional folder to the guest VM. The first argument is
+ # the path on the host to the actual folder. The second argument is
+ # the path on the guest to mount the folder. And the optional third
+ # argument is a set of non-required options.
+ # config.vm.synced_folder "../data", "/vagrant_data"
+
+ # Provider-specific configuration so you can fine-tune various
+ # backing providers for Vagrant. These expose provider-specific options.
+ # Example for VirtualBox:
+ #
+ config.vm.provider "virtualbox" do |vb|
+ # # Display the VirtualBox GUI when booting the machine
+ # vb.gui = true
+ #
+ # # Customize the amount of memory on the VM:
+ vb.memory = "512"
+# vb.memory = "300"
+ end
+ #
+ # View the documentation for the provider you are using for more
+ # information on available options.
+
+ # Enable provisioning with a shell script. Additional provisioners such as
+ # Ansible, Chef, Docker, Puppet and Salt are also available. Please see the
+ # documentation for more information about their specific syntax and use.
+ config.vm.provision "shell" do |s|
+ ssh_pub_key = File.readlines("../../authorized_keys").first.strip
+ s.inline = <<-SHELL
+ mkdir /root/.ssh
+ echo #{ssh_pub_key} >> /home/vagrant/.ssh/authorized_keys
+ echo #{ssh_pub_key} >> /root/.ssh/authorized_keys
+ sudo apt install rsync || sudo yum install -y rsync || sudo pkg install -y rsync
+ SHELL
+ end
+end
|
[-]
[+]
|
Added |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/vagrant/generic/rhel8/Vagrantfile
^
|
@@ -0,0 +1,79 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+# SPDX-FileCopyrightText: 2023 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+# All Vagrant configuration is done below. The "2" in Vagrant.configure
+# configures the configuration version (we support older styles for
+# backwards compatibility). Please don't change it unless you know what
+# you're doing.
+Vagrant.configure("2") do |config|
+ # The most common configuration options are documented and commented below.
+ # For a complete reference, please see the online documentation at
+ # https://docs.vagrantup.com.
+
+ # Every Vagrant development environment requires a box. You can search for
+ # boxes at https://vagrantcloud.com/search.
+ config.vm.box = "generic/rhel8"
+
+ # Disable automatic box update checking. If you disable this, then
+ # boxes will only be checked for updates when the user runs
+ # `vagrant box outdated`. This is not recommended.
+ # config.vm.box_check_update = false
+
+ # Create a forwarded port mapping which allows access to a specific port
+ # within the machine from a port on the host machine. In the example below,
+ # accessing "localhost:8080" will access port 80 on the guest machine.
+ # NOTE: This will enable public access to the opened port
+ # config.vm.network "forwarded_port", guest: 80, host: 8080
+
+ # Create a forwarded port mapping which allows access to a specific port
+ # within the machine from a port on the host machine and only allow access
+ # via 127.0.0.1 to disable public access
+ # config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
+
+ # Create a private network, which allows host-only access to the machine
+ # using a specific IP.
+ config.vm.network "private_network", ip: "172.27.27.108"
+
+ # Create a public network, which generally matched to bridged network.
+ # Bridged networks make the machine appear as another physical device on
+ # your network.
+ # config.vm.network "public_network"
+
+ # Share an additional folder to the guest VM. The first argument is
+ # the path on the host to the actual folder. The second argument is
+ # the path on the guest to mount the folder. And the optional third
+ # argument is a set of non-required options.
+ # config.vm.synced_folder "../data", "/vagrant_data"
+
+ # Provider-specific configuration so you can fine-tune various
+ # backing providers for Vagrant. These expose provider-specific options.
+ # Example for VirtualBox:
+ #
+ config.vm.provider "virtualbox" do |vb|
+ # # Display the VirtualBox GUI when booting the machine
+ # vb.gui = true
+ #
+ # # Customize the amount of memory on the VM:
+ vb.memory = "300"
+ end
+ #
+ # View the documentation for the provider you are using for more
+ # information on available options.
+
+ # Enable provisioning with a shell script. Additional provisioners such as
+ # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
+ # documentation for more information about their specific syntax and use.
+ config.vm.provision "shell" do |s|
+ ssh_pub_key = File.readlines("../../authorized_keys").first.strip
+ s.inline = <<-SHELL
+ mkdir /root/.ssh
+ echo #{ssh_pub_key} >> /home/vagrant/.ssh/authorized_keys
+ echo #{ssh_pub_key} >> /root/.ssh/authorized_keys
+ sudo apt install rsync || sudo yum install -y rsync || sudo pkg install -y rsync
+ SHELL
+ end
+end
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-freebsd
^
|
@@ -1,5 +1,5 @@
### These tests requires VirtualBox running with the following images
-vagrant@freebsd12
+vagrant@freebsd14
par_compress_pipe par_compress_pipe 2>&1
par_compress_pipe Test --compress --pipe
par_compress_pipe 1000 1000 3893
|
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-0.3s
^
|
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-10s
^
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-1s
^
|
@@ -1,79 +1,3 @@
-par__I_X_m ### Test -I with -X and -m
-par__I_X_m 1 1
-par__I_X_m 2 1
-par__I_X_m 2 2
-par__I_X_m 3 1
-par__I_X_m 3 2
-par__I_X_m 3 3
-par__I_X_m 4 1
-par__I_X_m 4 2
-par__I_X_m 4 3
-par__I_X_m 4 4
-par__I_X_m 5 1
-par__I_X_m 5 2
-par__I_X_m 5 3
-par__I_X_m 5 4
-par__I_X_m 5 5
-par__I_X_m 6 1
-par__I_X_m 6 2
-par__I_X_m 6 3
-par__I_X_m 6 4
-par__I_X_m 6 5
-par__I_X_m 6 6
-par__I_X_m 7 1
-par__I_X_m 7 2
-par__I_X_m 7 3
-par__I_X_m 7 4
-par__I_X_m 7 5
-par__I_X_m 7 6
-par__I_X_m 7 7
-par__I_X_m 8 1
-par__I_X_m 8 2
-par__I_X_m 8 3
-par__I_X_m 8 4
-par__I_X_m 8 5
-par__I_X_m 8 6
-par__I_X_m 8 7
-par__I_X_m 8 8
-par__I_X_m 9 1
-par__I_X_m 9 2
-par__I_X_m 9 3
-par__I_X_m 9 4
-par__I_X_m 9 5
-par__I_X_m 9 6
-par__I_X_m 9 7
-par__I_X_m 9 8
-par__I_X_m 9 9
-par__I_X_m 10 1
-par__I_X_m 10 2
-par__I_X_m 10 3
-par__I_X_m 10 4
-par__I_X_m 10 5
-par__I_X_m 10 6
-par__I_X_m 10 7
-par__I_X_m 10 8
-par__I_X_m 10 9
-par__I_X_m 10 10
-par__I_X_m a1 b1
-par__I_X_m a2 b1 b2
-par__I_X_m a3 b1 b2 b3
-par__I_X_m a4 b1 b2 b3 b4
-par__I_X_m a5 b1 b2 b3 b4 b5
-par__I_X_m a6 b1 b2 b3 b4 b5 b6
-par__I_X_m a7 b1 b2 b3 b4 b5 b6 b7
-par__I_X_m a8 b1 b2 b3 b4 b5 b6 b7 b8
-par__I_X_m a9 b1 b2 b3 b4 b5 b6 b7 b8 b9
-par__I_X_m a10 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10
-par__I_X_m a1 b1
-par__I_X_m a2 b1 2
-par__I_X_m a3 b1 2 3
-par__I_X_m a4 b1 2 3 4
-par__I_X_m a5 b1 2 3 4 5
-par__I_X_m a6 b1 2 3 4 5 6
-par__I_X_m a7 b1 2 3 4 5 6 7
-par__I_X_m a8 b1 2 3 4 5 6 7 8
-par__I_X_m a9 b1 2 3 4 5 6 7 8 9
-par__I_X_m a10 b1 2 3 4 5 6 7 8 9 10
par__arg_sep ### Test basic --arg-sep
par__arg_sep a
par__arg_sep b
@@ -106,214 +30,6 @@
par__arg_sep cat
par__arg_sep echo b
par__arg_sep b
-par__plus ### --plus
-par__plus (It is OK to start with extra / or end with extra .)
-par__plus a = /a = a. = /a. = a. = /a. = a. = /a.
-par__plus a.b = /a.b = a.b = /a.b = a.b. = /a.b. = a.b. = /a.b.
-par__plus a.b.c = /a.b.c = a.b.c = /a.b.c = a.b.c = /a.b.c = a.b.c. = /a.b.c.
-par__plus a.b.c.d = /a.b.c.d = a.b.c.d = /a.b.c.d = a.b.c.d = /a.b.c.d = a.b.c.d = /a.b.c.d
-par__plus a/1 = a/1 = a/1. = a/1. = a/1. = a/1. = a/1. = a/1.
-par__plus a.b/1.2 = a.b/1.2 = a.b/1.2 = a.b/1.2 = a.b/1.2. = a.b/1.2. = a.b/1.2. = a.b/1.2.
-par__plus a.b.c/1.2.3 = a.b.c/1.2.3 = a.b.c/1.2.3 = a.b.c/1.2.3 = a.b.c/1.2.3 = a.b.c/1.2.3 = a.b.c/1.2.3. = a.b.c/1.2.3.
-par__plus a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4
-par__plus a. = /a. = a. = /a. = a.. = /a.. = a.. = /a..
-par__plus a.b. = /a.b. = a.b. = /a.b. = a.b. = /a.b. = a.b.. = /a.b..
-par__plus a.b.c. = /a.b.c. = a.b.c. = /a.b.c. = a.b.c. = /a.b.c. = a.b.c. = /a.b.c.
-par__plus a.b.c.d. = /a.b.c.d. = a.b.c.d. = /a.b.c.d. = a.b.c.d. = /a.b.c.d. = a.b.c.d. = /a.b.c.d.
-par__plus a/1. = a/1. = a/1. = a/1. = a/1.. = a/1.. = a/1.. = a/1..
-par__plus a.b/1.2. = a.b/1.2. = a.b/1.2. = a.b/1.2. = a.b/1.2. = a.b/1.2. = a.b/1.2.. = a.b/1.2..
-par__plus a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3.
-par__plus a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4.
-par__plus a.. = /a.. = a.. = /a.. = a.. = /a.. = a... = /a...
-par__plus a.b.. = /a.b.. = a.b.. = /a.b.. = a.b.. = /a.b.. = a.b.. = /a.b..
-par__plus a.b.c.. = /a.b.c.. = a.b.c.. = /a.b.c.. = a.b.c.. = /a.b.c.. = a.b.c.. = /a.b.c..
-par__plus a.b.c.d.. = /a.b.c.d.. = a.b.c.d.. = /a.b.c.d.. = a.b.c.d.. = /a.b.c.d.. = a.b.c.d.. = /a.b.c.d..
-par__plus a./1. = a./1. = a./1. = a./1. = a./1.. = a./1.. = a./1.. = a./1..
-par__plus a.b./1.2.. = a.b./1.2.. = a.b./1.2.. = a.b./1.2.. = a.b./1.2.. = a.b./1.2.. = a.b./1.2.. = a.b./1.2..
-par__plus a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3..
-par__plus a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4..
-par__plus ### Test {%...} {%%...} {#...} {##...}
-par__plus z.foo
-par__plus z.foo
-par__plus foo
-par__plus foo
-par__plus foo.z
-par__plus foo.z
-par__plus foo
-par__plus foo
-par__plus A B C
-par__plus A C B
-par__plus B A C
-par__plus B C A
-par__plus C A B
-par__plus C B A
-par__plus A+B+C
-par__plus A+C+B
-par__plus B+A+C
-par__plus B+C+A
-par__plus C+A+B
-par__plus C+B+A
-par__plus A B C
-par__plus A B D
-par__plus A C D
-par__plus B C D
-par__sql_colsep ### SQL should add Vn columns for --colsep
-par__sql_colsep /a/A/1/11/
-par__sql_colsep /a/A/2/22/
-par__sql_colsep /a/A/3/33/
-par__sql_colsep /b/B/1/11/
-par__sql_colsep /b/B/2/22/
-par__sql_colsep /b/B/3/33/
-par__sql_colsep /c/C/1/11/
-par__sql_colsep /c/C/2/22/
-par__sql_colsep /c/C/3/33/
-par__sql_colsep /a/A/1/11/
-par__sql_colsep /a/A/2/22/
-par__sql_colsep /a/A/3/33/
-par__sql_colsep /b/B/1/11/
-par__sql_colsep /b/B/2/22/
-par__sql_colsep /b/B/3/33/
-par__sql_colsep /c/C/1/11/
-par__sql_colsep /c/C/2/22/
-par__sql_colsep /c/C/3/33/
-par__sql_colsep a A 1 11 a A 2 22 a A 3 33
-par__sql_colsep a A 4 44 a A 5 55 a A 6 66
-par__sql_colsep b B 1 11 b B 2 22 b B 3 33
-par__sql_colsep b B 4 44 b B 5 55 b B 6 66
-par__sql_colsep c C 1 11 c C 2 22 c C 3 33
-par__sql_colsep c C 4 44 c C 5 55 c C 6 66
-par__sql_colsep a A 1 11 a A 2 22 a A 3 33
-par__sql_colsep a A 4 44 a A 5 55 a A 6 66
-par__sql_colsep b B 1 11 b B 2 22 b B 3 33
-par__sql_colsep b B 4 44 b B 5 55 b B 6 66
-par__sql_colsep c C 1 11 c C 2 22 c C 3 33
-par__sql_colsep c C 4 44 c C 5 55 c C 6 66
-par__test_XI_mI ### Test -I
-par__test_XI_mI 1 1
-par__test_XI_mI 2 1
-par__test_XI_mI 2 2
-par__test_XI_mI 3 1
-par__test_XI_mI 3 2
-par__test_XI_mI 3 3
-par__test_XI_mI 4 1
-par__test_XI_mI 4 2
-par__test_XI_mI 4 3
-par__test_XI_mI 4 4
-par__test_XI_mI 5 1
-par__test_XI_mI 5 2
-par__test_XI_mI 5 3
-par__test_XI_mI 5 4
-par__test_XI_mI 5 5
-par__test_XI_mI 6 1
-par__test_XI_mI 6 2
-par__test_XI_mI 6 3
-par__test_XI_mI 6 4
-par__test_XI_mI 6 5
-par__test_XI_mI 6 6
-par__test_XI_mI 7 1
-par__test_XI_mI 7 2
-par__test_XI_mI 7 3
-par__test_XI_mI 7 4
-par__test_XI_mI 7 5
-par__test_XI_mI 7 6
-par__test_XI_mI 7 7
-par__test_XI_mI 8 1
-par__test_XI_mI 8 2
-par__test_XI_mI 8 3
-par__test_XI_mI 8 4
-par__test_XI_mI 8 5
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-300s
^
|
@@ -315,6 +315,10 @@
par_test_build_and_install make[0]: Entering directory '~/privat/parallel/src'
par_test_build_and_install make distdir-am
par_test_build_and_install make[0]: Entering directory '~/privat/parallel/src'
+par_test_build_and_install pod2pdf --output-file "."/parallel_alternatives.pdf "."/parallel_alternatives.pod --title "GNU Parallel alternatives" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_alternatives.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_alternatives.pdf
par_test_build_and_install make[0]: Leaving directory '~/privat/parallel/src'
par_test_build_and_install make[0]: Leaving directory '~/privat/parallel/src'
par_test_build_and_install test -n " \
@@ -345,6 +349,54 @@
par_test_build_and_install make[0]: Entering directory '/tmp/parallel-00000000'
par_test_build_and_install Making install in src
par_test_build_and_install make[0]: Entering directory '/tmp/parallel-00000000/src'
+par_test_build_and_install pod2pdf --output-file "."/parallel.pdf "."/parallel.pod --title "GNU Parallel" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel.pdf
+par_test_build_and_install pod2pdf --output-file "."/env_parallel.pdf "."/env_parallel.pod --title "GNU Parallel with environment" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old env_parallel.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old env_parallel.pdf
+par_test_build_and_install pod2pdf --output-file "."/sem.pdf "."/sem.pod --title "GNU sem" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old sem.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old sem.pdf
+par_test_build_and_install pod2pdf --output-file "."/sql.pdf "."/sql --title "GNU SQL" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old sql.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old sql.pdf
+par_test_build_and_install pod2pdf --output-file "."/niceload.pdf "."/niceload.pod --title "GNU niceload" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old niceload.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old niceload.pdf
+par_test_build_and_install pod2pdf --output-file "."/parallel_examples.pdf "."/parallel_examples.pod --title "GNU Parallel Examples" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_examples.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_examples.pdf
+par_test_build_and_install pod2pdf --output-file "."/parallel_tutorial.pdf "."/parallel_tutorial.pod --title "GNU Parallel Tutorial" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_tutorial.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_tutorial.pdf
+par_test_build_and_install pod2pdf --output-file "."/parallel_book.pdf "."/parallel_book.pod --title "GNU Parallel Book" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_book.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_book.pdf
+par_test_build_and_install pod2pdf --output-file "."/parallel_design.pdf "."/parallel_design.pod --title "GNU Parallel Design" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_design.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_design.pdf
+par_test_build_and_install pod2pdf --output-file "."/parallel_alternatives.pdf "."/parallel_alternatives.pod --title "GNU Parallel alternatives" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_alternatives.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_alternatives.pdf
+par_test_build_and_install pod2pdf --output-file "."/parcat.pdf "."/parcat.pod --title "GNU parcat" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parcat.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parcat.pdf
+par_test_build_and_install pod2pdf --output-file "."/parset.pdf "."/parset.pod --title "GNU parset" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parset.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parset.pdf
par_test_build_and_install make[0]: Entering directory '/tmp/parallel-00000000/src'
par_test_build_and_install /bin/mkdir -p '/tmp/parallel-install/bin'
par_test_build_and_install /bin/install -c parallel sql niceload parcat parset parsort env_parallel env_parallel.ash env_parallel.bash env_parallel.csh env_parallel.dash env_parallel.fish env_parallel.ksh env_parallel.mksh env_parallel.pdksh env_parallel.sh env_parallel.tcsh env_parallel.zsh '/tmp/parallel-install/bin'
@@ -353,6 +405,54 @@
par_test_build_and_install rm "/tmp/parallel-install/bin"/sem || true
par_test_build_and_install ln -s parallel "/tmp/parallel-install/bin"/sem
par_test_build_and_install make[0]: Leaving directory '/tmp/parallel-00000000/src'
+par_test_build_and_install pod2pdf --output-file "."/parallel.pdf "."/parallel.pod --title "GNU Parallel" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel.pdf
+par_test_build_and_install pod2pdf --output-file "."/env_parallel.pdf "."/env_parallel.pod --title "GNU Parallel with environment" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old env_parallel.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old env_parallel.pdf
+par_test_build_and_install pod2pdf --output-file "."/sem.pdf "."/sem.pod --title "GNU sem" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old sem.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old sem.pdf
+par_test_build_and_install pod2pdf --output-file "."/sql.pdf "."/sql --title "GNU SQL" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old sql.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old sql.pdf
+par_test_build_and_install pod2pdf --output-file "."/niceload.pdf "."/niceload.pod --title "GNU niceload" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old niceload.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old niceload.pdf
+par_test_build_and_install pod2pdf --output-file "."/parallel_examples.pdf "."/parallel_examples.pod --title "GNU Parallel Examples" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_examples.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_examples.pdf
+par_test_build_and_install pod2pdf --output-file "."/parallel_tutorial.pdf "."/parallel_tutorial.pod --title "GNU Parallel Tutorial" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_tutorial.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_tutorial.pdf
+par_test_build_and_install pod2pdf --output-file "."/parallel_book.pdf "."/parallel_book.pod --title "GNU Parallel Book" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_book.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_book.pdf
+par_test_build_and_install pod2pdf --output-file "."/parallel_design.pdf "."/parallel_design.pod --title "GNU Parallel Design" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_design.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_design.pdf
+par_test_build_and_install pod2pdf --output-file "."/parallel_alternatives.pdf "."/parallel_alternatives.pod --title "GNU Parallel alternatives" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parallel_alternatives.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parallel_alternatives.pdf
+par_test_build_and_install pod2pdf --output-file "."/parcat.pdf "."/parcat.pod --title "GNU parcat" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parcat.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parcat.pdf
+par_test_build_and_install pod2pdf --output-file "."/parset.pdf "."/parset.pod --title "GNU parset" \
+par_test_build_and_install || echo "Warning: pod2pdf not found. Using old parset.pdf"
+par_test_build_and_install /bin/bash: line 1: pod2pdf: command not found
+par_test_build_and_install Warning: pod2pdf not found. Using old parset.pdf
par_test_build_and_install /bin/mkdir -p '/tmp/parallel-install/share/doc/parallel'
par_test_build_and_install /bin/install -c -m 644 parallel.html env_parallel.html sem.html sql.html niceload.html parallel_examples.html parallel_tutorial.html parallel_book.html parallel_design.html parallel_alternatives.html parcat.html parset.html parsort.html parallel.texi env_parallel.texi sem.texi sql.texi niceload.texi parallel_examples.texi parallel_tutorial.texi parallel_book.texi parallel_design.texi parallel_alternatives.texi parcat.texi parset.texi parsort.texi parallel.rst env_parallel.rst sem.rst sql.rst niceload.rst parallel_examples.rst parallel_tutorial.rst parallel_book.rst parallel_design.rst parallel_alternatives.rst parcat.rst parset.rst parsort.rst parallel.pdf '/tmp/parallel-install/share/doc/parallel'
par_test_build_and_install /bin/install -c -m 644 env_parallel.pdf sem.pdf sql.pdf niceload.pdf parallel_examples.pdf parallel_tutorial.pdf parallel_book.pdf parallel_design.pdf parallel_alternatives.pdf parcat.pdf parset.pdf parsort.pdf parallel_cheat_bw.pdf parallel_options_map.pdf '/tmp/parallel-install/share/doc/parallel'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-3s
^
|
@@ -12,6 +12,82 @@
par__10000_5_rpl_X 4
par__10000_5_rpl_X 3
par__10000_5_rpl_X 2
+par__I_X_m ### Test -I with -X and -m
+par__I_X_m 1 1
+par__I_X_m 2 1
+par__I_X_m 2 2
+par__I_X_m 3 1
+par__I_X_m 3 2
+par__I_X_m 3 3
+par__I_X_m 4 1
+par__I_X_m 4 2
+par__I_X_m 4 3
+par__I_X_m 4 4
+par__I_X_m 5 1
+par__I_X_m 5 2
+par__I_X_m 5 3
+par__I_X_m 5 4
+par__I_X_m 5 5
+par__I_X_m 6 1
+par__I_X_m 6 2
+par__I_X_m 6 3
+par__I_X_m 6 4
+par__I_X_m 6 5
+par__I_X_m 6 6
+par__I_X_m 7 1
+par__I_X_m 7 2
+par__I_X_m 7 3
+par__I_X_m 7 4
+par__I_X_m 7 5
+par__I_X_m 7 6
+par__I_X_m 7 7
+par__I_X_m 8 1
+par__I_X_m 8 2
+par__I_X_m 8 3
+par__I_X_m 8 4
+par__I_X_m 8 5
+par__I_X_m 8 6
+par__I_X_m 8 7
+par__I_X_m 8 8
+par__I_X_m 9 1
+par__I_X_m 9 2
+par__I_X_m 9 3
+par__I_X_m 9 4
+par__I_X_m 9 5
+par__I_X_m 9 6
+par__I_X_m 9 7
+par__I_X_m 9 8
+par__I_X_m 9 9
+par__I_X_m 10 1
+par__I_X_m 10 2
+par__I_X_m 10 3
+par__I_X_m 10 4
+par__I_X_m 10 5
+par__I_X_m 10 6
+par__I_X_m 10 7
+par__I_X_m 10 8
+par__I_X_m 10 9
+par__I_X_m 10 10
+par__I_X_m a1 b1
+par__I_X_m a2 b1 b2
+par__I_X_m a3 b1 b2 b3
+par__I_X_m a4 b1 b2 b3 b4
+par__I_X_m a5 b1 b2 b3 b4 b5
+par__I_X_m a6 b1 b2 b3 b4 b5 b6
+par__I_X_m a7 b1 b2 b3 b4 b5 b6 b7
+par__I_X_m a8 b1 b2 b3 b4 b5 b6 b7 b8
+par__I_X_m a9 b1 b2 b3 b4 b5 b6 b7 b8 b9
+par__I_X_m a10 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10
+par__I_X_m a1 b1
+par__I_X_m a2 b1 2
+par__I_X_m a3 b1 2 3
+par__I_X_m a4 b1 2 3 4
+par__I_X_m a5 b1 2 3 4 5
+par__I_X_m a6 b1 2 3 4 5 6
+par__I_X_m a7 b1 2 3 4 5 6 7
+par__I_X_m a8 b1 2 3 4 5 6 7 8
+par__I_X_m a9 b1 2 3 4 5 6 7 8 9
+par__I_X_m a10 b1 2 3 4 5 6 7 8 9 10
par__argfile_plus -- -a file +file ++file
par__argfile_plus parallel: Error: It is unclear whether you mean +./file or ./+file
par__argfile_plus -- -a file +./file ++file
@@ -241,6 +317,57 @@
par__parset_assoc_arr zsh@lo ls: cannot access 'no-such-file': No such file or directory
par__parset_assoc_arr zsh@lo ls: cannot access 'no-such-file1': No such file or directory
par__parset_assoc_arr zsh@lo ls: cannot access 'no-such-file2': No such file or directory
+par__plus ### --plus
+par__plus (It is OK to start with extra / or end with extra .)
+par__plus a = /a = a. = /a. = a. = /a. = a. = /a.
+par__plus a.b = /a.b = a.b = /a.b = a.b. = /a.b. = a.b. = /a.b.
+par__plus a.b.c = /a.b.c = a.b.c = /a.b.c = a.b.c = /a.b.c = a.b.c. = /a.b.c.
+par__plus a.b.c.d = /a.b.c.d = a.b.c.d = /a.b.c.d = a.b.c.d = /a.b.c.d = a.b.c.d = /a.b.c.d
+par__plus a/1 = a/1 = a/1. = a/1. = a/1. = a/1. = a/1. = a/1.
+par__plus a.b/1.2 = a.b/1.2 = a.b/1.2 = a.b/1.2 = a.b/1.2. = a.b/1.2. = a.b/1.2. = a.b/1.2.
+par__plus a.b.c/1.2.3 = a.b.c/1.2.3 = a.b.c/1.2.3 = a.b.c/1.2.3 = a.b.c/1.2.3 = a.b.c/1.2.3 = a.b.c/1.2.3. = a.b.c/1.2.3.
+par__plus a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4 = a.b.c.d/1.2.3.4
+par__plus a. = /a. = a. = /a. = a.. = /a.. = a.. = /a..
+par__plus a.b. = /a.b. = a.b. = /a.b. = a.b. = /a.b. = a.b.. = /a.b..
+par__plus a.b.c. = /a.b.c. = a.b.c. = /a.b.c. = a.b.c. = /a.b.c. = a.b.c. = /a.b.c.
+par__plus a.b.c.d. = /a.b.c.d. = a.b.c.d. = /a.b.c.d. = a.b.c.d. = /a.b.c.d. = a.b.c.d. = /a.b.c.d.
+par__plus a/1. = a/1. = a/1. = a/1. = a/1.. = a/1.. = a/1.. = a/1..
+par__plus a.b/1.2. = a.b/1.2. = a.b/1.2. = a.b/1.2. = a.b/1.2. = a.b/1.2. = a.b/1.2.. = a.b/1.2..
+par__plus a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3. = a.b.c/1.2.3.
+par__plus a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4. = a.b.c.d/1.2.3.4.
+par__plus a.. = /a.. = a.. = /a.. = a.. = /a.. = a... = /a...
+par__plus a.b.. = /a.b.. = a.b.. = /a.b.. = a.b.. = /a.b.. = a.b.. = /a.b..
+par__plus a.b.c.. = /a.b.c.. = a.b.c.. = /a.b.c.. = a.b.c.. = /a.b.c.. = a.b.c.. = /a.b.c..
+par__plus a.b.c.d.. = /a.b.c.d.. = a.b.c.d.. = /a.b.c.d.. = a.b.c.d.. = /a.b.c.d.. = a.b.c.d.. = /a.b.c.d..
+par__plus a./1. = a./1. = a./1. = a./1. = a./1.. = a./1.. = a./1.. = a./1..
+par__plus a.b./1.2.. = a.b./1.2.. = a.b./1.2.. = a.b./1.2.. = a.b./1.2.. = a.b./1.2.. = a.b./1.2.. = a.b./1.2..
+par__plus a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3.. = a.b.c./1.2.3..
+par__plus a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4.. = a.b.c.d./1.2.3.4..
+par__plus ### Test {%...} {%%...} {#...} {##...}
+par__plus z.foo
+par__plus z.foo
+par__plus foo
+par__plus foo
+par__plus foo.z
+par__plus foo.z
+par__plus foo
+par__plus foo
+par__plus A B C
+par__plus A C B
+par__plus B A C
+par__plus B C A
+par__plus C A B
+par__plus C B A
+par__plus A+B+C
+par__plus A+C+B
+par__plus B+A+C
+par__plus B+C+A
+par__plus C+A+B
+par__plus C+B+A
+par__plus A B C
+par__plus A B D
+par__plus A C D
+par__plus B C D
par__prefix_for_L_n_N_s Must give xxx000 args
par__prefix_for_L_n_N_s 1000
par__prefix_for_L_n_N_s 1000
@@ -321,6 +448,177 @@
par__prefix_for_L_n_N_s 246
par__prefix_for_L_n_N_s 246
par__prefix_for_L_n_N_s 273
+par__sql_colsep ### SQL should add Vn columns for --colsep
+par__sql_colsep /a/A/1/11/
+par__sql_colsep /a/A/2/22/
+par__sql_colsep /a/A/3/33/
+par__sql_colsep /b/B/1/11/
+par__sql_colsep /b/B/2/22/
+par__sql_colsep /b/B/3/33/
+par__sql_colsep /c/C/1/11/
+par__sql_colsep /c/C/2/22/
+par__sql_colsep /c/C/3/33/
+par__sql_colsep /a/A/1/11/
+par__sql_colsep /a/A/2/22/
+par__sql_colsep /a/A/3/33/
+par__sql_colsep /b/B/1/11/
+par__sql_colsep /b/B/2/22/
+par__sql_colsep /b/B/3/33/
+par__sql_colsep /c/C/1/11/
+par__sql_colsep /c/C/2/22/
+par__sql_colsep /c/C/3/33/
+par__sql_colsep a A 1 11 a A 2 22 a A 3 33
+par__sql_colsep a A 4 44 a A 5 55 a A 6 66
+par__sql_colsep b B 1 11 b B 2 22 b B 3 33
+par__sql_colsep b B 4 44 b B 5 55 b B 6 66
+par__sql_colsep c C 1 11 c C 2 22 c C 3 33
+par__sql_colsep c C 4 44 c C 5 55 c C 6 66
+par__sql_colsep a A 1 11 a A 2 22 a A 3 33
+par__sql_colsep a A 4 44 a A 5 55 a A 6 66
+par__sql_colsep b B 1 11 b B 2 22 b B 3 33
+par__sql_colsep b B 4 44 b B 5 55 b B 6 66
+par__sql_colsep c C 1 11 c C 2 22 c C 3 33
+par__sql_colsep c C 4 44 c C 5 55 c C 6 66
+par__test_XI_mI ### Test -I
+par__test_XI_mI 1 1
+par__test_XI_mI 2 1
+par__test_XI_mI 2 2
+par__test_XI_mI 3 1
+par__test_XI_mI 3 2
+par__test_XI_mI 3 3
+par__test_XI_mI 4 1
+par__test_XI_mI 4 2
+par__test_XI_mI 4 3
+par__test_XI_mI 4 4
+par__test_XI_mI 5 1
+par__test_XI_mI 5 2
+par__test_XI_mI 5 3
+par__test_XI_mI 5 4
+par__test_XI_mI 5 5
+par__test_XI_mI 6 1
+par__test_XI_mI 6 2
+par__test_XI_mI 6 3
+par__test_XI_mI 6 4
+par__test_XI_mI 6 5
+par__test_XI_mI 6 6
+par__test_XI_mI 7 1
+par__test_XI_mI 7 2
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-race02
^
|
@@ -1502,3 +1502,57 @@
par_testhalt soon done 70% false parallel: This job finished:
par_testhalt soon done 70% false echo job 17; sleep 7.5; exit 7
par_testhalt soon done 70% false 20
+par_totaljob_repl {##} bug #45841: Replacement string for total no of jobs
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 1
+par_totaljob_repl 2
+par_totaljob_repl 3
+par_totaljob_repl 4
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 10
+par_totaljob_repl 1 2
+par_totaljob_repl 2 2
+par_totaljob_repl 1 3
+par_totaljob_repl 2 3
+par_totaljob_repl 3 3
+par_totaljob_repl 1 15
+par_totaljob_repl 2 14
+par_totaljob_repl 3 14
+par_totaljob_repl 4 14
+par_totaljob_repl 5 14
+par_totaljob_repl 6 14
+par_totaljob_repl 7 14
+par_totaljob_repl 8 14
+par_totaljob_repl 01/20:01
+par_totaljob_repl 02/20:02
+par_totaljob_repl 03/20:03
+par_totaljob_repl 04/20:04
+par_totaljob_repl 05/20:05
+par_totaljob_repl 06/20:06
+par_totaljob_repl 07/20:07
+par_totaljob_repl 08/20:08
+par_totaljob_repl 09/20:09
+par_totaljob_repl 10/20:10
+par_totaljob_repl 11/20:01
+par_totaljob_repl 12/20:02
+par_totaljob_repl 13/20:03
+par_totaljob_repl 14/20:04
+par_totaljob_repl 15/20:05
+par_totaljob_repl 16/20:06
+par_totaljob_repl 17/20:07
+par_totaljob_repl 18/20:08
+par_totaljob_repl 19/20:09
+par_totaljob_repl 20/20:10
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-sql
^
|
@@ -1,1717 +0,0 @@
-par_append_different_cmd $MYSQL p_wrapper par_append_different_cmd '$MYSQL'
-par_append_different_cmd $MYSQL Exit=0
-par_append_different_cmd $MYSQL Exit=0
-par_append_different_cmd $MYSQL Command V1 V2 Stdout Stderr
-par_append_different_cmd $MYSQL sleep .3;echo 1 a 1 a 1 a\n
-par_append_different_cmd $MYSQL sleep .3;echo 1 b 1 b 1 b\n
-par_append_different_cmd $MYSQL sleep .3;echo 1 c 1 c 1 c\n
-par_append_different_cmd $MYSQL sleep .3;echo 1 d 1 d 1 d\n
-par_append_different_cmd $MYSQL sleep .3;echo 1 e 1 e 1 e\n
-par_append_different_cmd $MYSQL sleep .3;echo 2 a 2 a 2 a\n
-par_append_different_cmd $MYSQL sleep .3;echo 2 b 2 b 2 b\n
-par_append_different_cmd $MYSQL sleep .3;echo 2 c 2 c 2 c\n
-par_append_different_cmd $MYSQL sleep .3;echo 2 d 2 d 2 d\n
-par_append_different_cmd $MYSQL sleep .3;echo 2 e 2 e 2 e\n
-par_append_different_cmd $MYSQL sleep .3;echo 3 a 3 a 3 a\n
-par_append_different_cmd $MYSQL sleep .3;echo 3 b 3 b 3 b\n
-par_append_different_cmd $MYSQL sleep .3;echo 3 c 3 c 3 c\n
-par_append_different_cmd $MYSQL sleep .3;echo 3 d 3 d 3 d\n
-par_append_different_cmd $MYSQL sleep .3;echo 3 e 3 e 3 e\n
-par_append_different_cmd $MYSQL sleep .3;echo 4 a 4 a 4 a\n
-par_append_different_cmd $MYSQL sleep .3;echo 4 b 4 b 4 b\n
-par_append_different_cmd $MYSQL sleep .3;echo 4 c 4 c 4 c\n
-par_append_different_cmd $MYSQL sleep .3;echo 4 d 4 d 4 d\n
-par_append_different_cmd $MYSQL sleep .3;echo 4 e 4 e 4 e\n
-par_append_different_cmd $MYSQL sleep .3;echo 5 a 5 a 5 a\n
-par_append_different_cmd $MYSQL sleep .3;echo 5 b 5 b 5 b\n
-par_append_different_cmd $MYSQL sleep .3;echo 5 c 5 c 5 c\n
-par_append_different_cmd $MYSQL sleep .3;echo 5 d 5 d 5 d\n
-par_append_different_cmd $MYSQL sleep .3;echo 5 e 5 e 5 e\n
-par_append_different_cmd $MYSQL sleep .3;echo A-11 11 A A-11\n
-par_append_different_cmd $MYSQL sleep .3;echo B-11 11 B B-11\n
-par_append_different_cmd $MYSQL sleep .3;echo C-11 11 C C-11\n
-par_append_different_cmd $MYSQL sleep .3;echo D-11 11 D D-11\n
-par_append_different_cmd $MYSQL sleep .3;echo E-11 11 E E-11\n
-par_append_different_cmd $MYSQL sleep .3;echo A-12 12 A A-12\n
-par_append_different_cmd $MYSQL sleep .3;echo B-12 12 B B-12\n
-par_append_different_cmd $MYSQL sleep .3;echo C-12 12 C C-12\n
-par_append_different_cmd $MYSQL sleep .3;echo D-12 12 D D-12\n
-par_append_different_cmd $MYSQL sleep .3;echo E-12 12 E E-12\n
-par_append_different_cmd $MYSQL sleep .3;echo A-13 13 A A-13\n
-par_append_different_cmd $MYSQL sleep .3;echo B-13 13 B B-13\n
-par_append_different_cmd $MYSQL sleep .3;echo C-13 13 C C-13\n
-par_append_different_cmd $MYSQL sleep .3;echo D-13 13 D D-13\n
-par_append_different_cmd $MYSQL sleep .3;echo E-13 13 E E-13\n
-par_append_different_cmd $MYSQL sleep .3;echo A-14 14 A A-14\n
-par_append_different_cmd $MYSQL sleep .3;echo B-14 14 B B-14\n
-par_append_different_cmd $MYSQL sleep .3;echo C-14 14 C C-14\n
-par_append_different_cmd $MYSQL sleep .3;echo D-14 14 D D-14\n
-par_append_different_cmd $MYSQL sleep .3;echo E-14 14 E E-14\n
-par_append_different_cmd $MYSQL sleep .3;echo A-15 15 A A-15\n
-par_append_different_cmd $MYSQL sleep .3;echo B-15 15 B B-15\n
-par_append_different_cmd $MYSQL sleep .3;echo C-15 15 C C-15\n
-par_append_different_cmd $MYSQL sleep .3;echo D-15 15 D D-15\n
-par_append_different_cmd $MYSQL sleep .3;echo E-15 15 E E-15\n
-par_append_different_cmd $PG p_wrapper par_append_different_cmd '$PG'
-par_append_different_cmd $PG Exit=0
-par_append_different_cmd $PG Exit=0
-par_append_different_cmd $PG command | v1 | v2 | stdout | stderr
-par_append_different_cmd $PG --------------------+----+----+--------+--------
-par_append_different_cmd $PG sleep .3;echo 1 a | 1 | a | 1 a +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 1 b | 1 | b | 1 b +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 1 c | 1 | c | 1 c +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 1 d | 1 | d | 1 d +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 1 e | 1 | e | 1 e +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 2 a | 2 | a | 2 a +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 2 b | 2 | b | 2 b +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 2 c | 2 | c | 2 c +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 2 d | 2 | d | 2 d +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 2 e | 2 | e | 2 e +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 3 a | 3 | a | 3 a +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 3 b | 3 | b | 3 b +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 3 c | 3 | c | 3 c +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 3 d | 3 | d | 3 d +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 3 e | 3 | e | 3 e +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 4 a | 4 | a | 4 a +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 4 b | 4 | b | 4 b +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 4 c | 4 | c | 4 c +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 4 d | 4 | d | 4 d +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 4 e | 4 | e | 4 e +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 5 a | 5 | a | 5 a +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 5 b | 5 | b | 5 b +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 5 c | 5 | c | 5 c +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 5 d | 5 | d | 5 d +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo 5 e | 5 | e | 5 e +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo A-11 | 11 | A | A-11 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo B-11 | 11 | B | B-11 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo C-11 | 11 | C | C-11 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo D-11 | 11 | D | D-11 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo E-11 | 11 | E | E-11 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo A-12 | 12 | A | A-12 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo B-12 | 12 | B | B-12 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo C-12 | 12 | C | C-12 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo D-12 | 12 | D | D-12 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo E-12 | 12 | E | E-12 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo A-13 | 13 | A | A-13 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo B-13 | 13 | B | B-13 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo C-13 | 13 | C | C-13 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo D-13 | 13 | D | D-13 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo E-13 | 13 | E | E-13 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo A-14 | 14 | A | A-14 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo B-14 | 14 | B | B-14 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo C-14 | 14 | C | C-14 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo D-14 | 14 | D | D-14 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo E-14 | 14 | E | E-14 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo A-15 | 15 | A | A-15 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo B-15 | 15 | B | B-15 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo C-15 | 15 | C | C-15 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo D-15 | 15 | D | D-15 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG sleep .3;echo E-15 | 15 | E | E-15 +|
-par_append_different_cmd $PG | | | |
-par_append_different_cmd $PG (50 rows)
-par_append_different_cmd $PG
-par_append_different_cmd $SQLITE p_wrapper par_append_different_cmd '$SQLITE'
-par_append_different_cmd $SQLITE Exit=0
-par_append_different_cmd $SQLITE Exit=0
-par_append_different_cmd $SQLITE Command|V1|V2|Stdout|Stderr
-par_append_different_cmd $SQLITE sleep .3;echo 1 a|1|a|1 a
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 1 b|1|b|1 b
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 1 c|1|c|1 c
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 1 d|1|d|1 d
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 1 e|1|e|1 e
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 2 a|2|a|2 a
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 2 b|2|b|2 b
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 2 c|2|c|2 c
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 2 d|2|d|2 d
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 2 e|2|e|2 e
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 3 a|3|a|3 a
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 3 b|3|b|3 b
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 3 c|3|c|3 c
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 3 d|3|d|3 d
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 3 e|3|e|3 e
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 4 a|4|a|4 a
-par_append_different_cmd $SQLITE |
-par_append_different_cmd $SQLITE sleep .3;echo 4 b|4|b|4 b
-par_append_different_cmd $SQLITE |
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-sql01
^
|
@@ -1,1759 +1,2503 @@
-par_append $MYSQL p_wrapper par_append '$MYSQL'
-par_append $MYSQL Exit=0
-par_append $MYSQL Exit=0
-par_append $MYSQL Host Command V1 V2 Stdout Stderr
-par_append $MYSQL hostname sleep .3;echo 1 a 1 a 1 a\n
-par_append $MYSQL hostname sleep .3;echo 1 b 1 b 1 b\n
-par_append $MYSQL hostname sleep .3;echo 1 c 1 c 1 c\n
-par_append $MYSQL hostname sleep .3;echo 1 d 1 d 1 d\n
-par_append $MYSQL hostname sleep .3;echo 1 e 1 e 1 e\n
-par_append $MYSQL hostname sleep .3;echo 2 a 2 a 2 a\n
-par_append $MYSQL hostname sleep .3;echo 2 b 2 b 2 b\n
-par_append $MYSQL hostname sleep .3;echo 2 c 2 c 2 c\n
-par_append $MYSQL hostname sleep .3;echo 2 d 2 d 2 d\n
-par_append $MYSQL hostname sleep .3;echo 2 e 2 e 2 e\n
-par_append $MYSQL hostname sleep .3;echo 3 a 3 a 3 a\n
-par_append $MYSQL hostname sleep .3;echo 3 b 3 b 3 b\n
-par_append $MYSQL hostname sleep .3;echo 3 c 3 c 3 c\n
-par_append $MYSQL hostname sleep .3;echo 3 d 3 d 3 d\n
-par_append $MYSQL hostname sleep .3;echo 3 e 3 e 3 e\n
-par_append $MYSQL hostname sleep .3;echo 4 a 4 a 4 a\n
-par_append $MYSQL hostname sleep .3;echo 4 b 4 b 4 b\n
-par_append $MYSQL hostname sleep .3;echo 4 c 4 c 4 c\n
-par_append $MYSQL hostname sleep .3;echo 4 d 4 d 4 d\n
-par_append $MYSQL hostname sleep .3;echo 4 e 4 e 4 e\n
-par_append $MYSQL hostname sleep .3;echo 5 a 5 a 5 a\n
-par_append $MYSQL hostname sleep .3;echo 5 b 5 b 5 b\n
-par_append $MYSQL hostname sleep .3;echo 5 c 5 c 5 c\n
-par_append $MYSQL hostname sleep .3;echo 5 d 5 d 5 d\n
-par_append $MYSQL hostname sleep .3;echo 5 e 5 e 5 e\n
-par_append $MYSQL hostname sleep .3;echo 11 A 11 A 11 A\n
-par_append $MYSQL hostname sleep .3;echo 11 B 11 B 11 B\n
-par_append $MYSQL hostname sleep .3;echo 11 C 11 C 11 C\n
-par_append $MYSQL hostname sleep .3;echo 11 D 11 D 11 D\n
-par_append $MYSQL hostname sleep .3;echo 11 E 11 E 11 E\n
-par_append $MYSQL hostname sleep .3;echo 12 A 12 A 12 A\n
-par_append $MYSQL hostname sleep .3;echo 12 B 12 B 12 B\n
-par_append $MYSQL hostname sleep .3;echo 12 C 12 C 12 C\n
-par_append $MYSQL hostname sleep .3;echo 12 D 12 D 12 D\n
-par_append $MYSQL hostname sleep .3;echo 12 E 12 E 12 E\n
-par_append $MYSQL hostname sleep .3;echo 13 A 13 A 13 A\n
-par_append $MYSQL hostname sleep .3;echo 13 B 13 B 13 B\n
-par_append $MYSQL hostname sleep .3;echo 13 C 13 C 13 C\n
-par_append $MYSQL hostname sleep .3;echo 13 D 13 D 13 D\n
-par_append $MYSQL hostname sleep .3;echo 13 E 13 E 13 E\n
-par_append $MYSQL hostname sleep .3;echo 14 A 14 A 14 A\n
-par_append $MYSQL hostname sleep .3;echo 14 B 14 B 14 B\n
-par_append $MYSQL hostname sleep .3;echo 14 C 14 C 14 C\n
-par_append $MYSQL hostname sleep .3;echo 14 D 14 D 14 D\n
-par_append $MYSQL hostname sleep .3;echo 14 E 14 E 14 E\n
-par_append $MYSQL hostname sleep .3;echo 15 A 15 A 15 A\n
-par_append $MYSQL hostname sleep .3;echo 15 B 15 B 15 B\n
-par_append $MYSQL hostname sleep .3;echo 15 C 15 C 15 C\n
-par_append $MYSQL hostname sleep .3;echo 15 D 15 D 15 D\n
-par_append $MYSQL hostname sleep .3;echo 15 E 15 E 15 E\n
-par_append $PG p_wrapper par_append '$PG'
-par_append $PG Exit=0
-par_append $PG Exit=0
-par_append $PG host| command | v1 | v2 | stdout | stderr
-par_append $PG hostname| sleep .3;echo 1 a | 1 | a | 1 a +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 1 b | 1 | b | 1 b +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 1 c | 1 | c | 1 c +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 1 d | 1 | d | 1 d +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 1 e | 1 | e | 1 e +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 2 a | 2 | a | 2 a +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 2 b | 2 | b | 2 b +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 2 c | 2 | c | 2 c +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 2 d | 2 | d | 2 d +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 2 e | 2 | e | 2 e +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 3 a | 3 | a | 3 a +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 3 b | 3 | b | 3 b +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 3 c | 3 | c | 3 c +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 3 d | 3 | d | 3 d +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 3 e | 3 | e | 3 e +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 4 a | 4 | a | 4 a +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 4 b | 4 | b | 4 b +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 4 c | 4 | c | 4 c +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 4 d | 4 | d | 4 d +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 4 e | 4 | e | 4 e +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 5 a | 5 | a | 5 a +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 5 b | 5 | b | 5 b +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 5 c | 5 | c | 5 c +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 5 d | 5 | d | 5 d +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 5 e | 5 | e | 5 e +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 11 A | 11 | A | 11 A +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 11 B | 11 | B | 11 B +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 11 C | 11 | C | 11 C +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 11 D | 11 | D | 11 D +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 11 E | 11 | E | 11 E +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 12 A | 12 | A | 12 A +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 12 B | 12 | B | 12 B +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 12 C | 12 | C | 12 C +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 12 D | 12 | D | 12 D +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 12 E | 12 | E | 12 E +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 13 A | 13 | A | 13 A +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 13 B | 13 | B | 13 B +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 13 C | 13 | C | 13 C +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 13 D | 13 | D | 13 D +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 13 E | 13 | E | 13 E +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 14 A | 14 | A | 14 A +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 14 B | 14 | B | 14 B +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 14 C | 14 | C | 14 C +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 14 D | 14 | D | 14 D +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 14 E | 14 | E | 14 E +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 15 A | 15 | A | 15 A +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 15 B | 15 | B | 15 B +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 15 C | 15 | C | 15 C +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 15 D | 15 | D | 15 D +|
-par_append $PG | | | | |
-par_append $PG hostname| sleep .3;echo 15 E | 15 | E | 15 E +|
-par_append $PG | | | | |
-par_append $PG (50 rows)
-par_append $PG
-par_append $SQLITE p_wrapper par_append '$SQLITE'
-par_append $SQLITE Exit=0
-par_append $SQLITE Exit=0
-par_append $SQLITE Host|Command|V1|V2|Stdout|Stderr
-par_append $SQLITE hostname|sleep .3;echo 1 a|1|a|1 a
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 1 b|1|b|1 b
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 1 c|1|c|1 c
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 1 d|1|d|1 d
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 1 e|1|e|1 e
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 2 a|2|a|2 a
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 2 b|2|b|2 b
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 2 c|2|c|2 c
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 2 d|2|d|2 d
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 2 e|2|e|2 e
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 3 a|3|a|3 a
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 3 b|3|b|3 b
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 3 c|3|c|3 c
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 3 d|3|d|3 d
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 3 e|3|e|3 e
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 4 a|4|a|4 a
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 4 b|4|b|4 b
-par_append $SQLITE |
-par_append $SQLITE hostname|sleep .3;echo 4 c|4|c|4 c
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-ssh1
^
|
@@ -75,9 +75,9 @@
par_files_nonall 1
par_hgrp_agrp ### Test --hgrp {hgrp} {agrp}
par_hgrp_agrp_comma ### bug #63722: hostgroup with , breaks parser
+par_hgrp_agrp_comma csh
par_hgrp_agrp_comma parallel: Warning: Adding hostgroups: csh@lo tcsh@lo
-par_hgrp_agrp_comma uid=1004(csh) gid=1004(csh) groups=1004(csh)
-par_hgrp_agrp_comma uid=1007(tcsh) gid=1007(tcsh) groups=1007(tcsh)
+par_hgrp_agrp_comma tcsh
par_joblog_nonall ### bug #40001: --joblog and --nonall seem not to work together:
par_joblog_nonall 3
par_pipe_unneeded_spawn ### Test bug #34241: --pipe should not spawn unneeded processes
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-ssh4
^
|
@@ -199,6 +199,8 @@
par__test_different_rsync_versions rsync-v1.6.7 Basic use failed - not tested: rsync-v1.6.7
par__test_different_rsync_versions rsync-v1.6.8 Basic use failed - not tested: rsync-v1.6.8
par__test_different_rsync_versions rsync-v1.6.9 Basic use failed - not tested: rsync-v1.6.9
+par__test_different_rsync_versions rsync-v2.0.0 Basic use failed - not tested: rsync-v2.0.0
+par__test_different_rsync_versions rsync-v2.0.1 Basic use failed - not tested: rsync-v2.0.1
par__test_different_rsync_versions rsync-v2.0.10 Basic use failed - not tested: rsync-v2.0.10
par__test_different_rsync_versions rsync-v2.0.11 Basic use failed - not tested: rsync-v2.0.11
par__test_different_rsync_versions rsync-v2.0.12 Basic use failed - not tested: rsync-v2.0.12
@@ -209,6 +211,7 @@
par__test_different_rsync_versions rsync-v2.0.17 Basic use failed - not tested: rsync-v2.0.17
par__test_different_rsync_versions rsync-v2.0.18 Basic use failed - not tested: rsync-v2.0.18
par__test_different_rsync_versions rsync-v2.0.19 Basic use failed - not tested: rsync-v2.0.19
+par__test_different_rsync_versions rsync-v2.0.2 Basic use failed - not tested: rsync-v2.0.2
par__test_different_rsync_versions rsync-v2.0.3 Basic use failed - not tested: rsync-v2.0.3
par__test_different_rsync_versions rsync-v2.0.4 Basic use failed - not tested: rsync-v2.0.4
par__test_different_rsync_versions rsync-v2.0.5 Basic use failed - not tested: rsync-v2.0.5
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-ssh5
^
|
@@ -622,4 +622,4 @@
par_pipe_retries localhost-:
par_pipe_retries parallel: Error: --retries cannot be combined with --roundrobin.
par_ssh_cmd_with_newline ### Check --ssh with \n works
-par_ssh_cmd_with_newline uid=1003(sh) gid=1003(sh) groups=1003(sh)
+par_ssh_cmd_with_newline sh
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-ssh7
^
|
@@ -547,9 +547,9 @@
par__man_ksh too
par__man_ksh This may never work
par__man_ksh https://unix.stackexchange.com/questions/457031/extract-full-function-definitions
-par__man_ksh /bin/ksh: line 3: syntax error at line 99: `{' unmatched
-par__man_ksh /bin/ksh: line 3: syntax error at line 99: `{' unmatched
-par__man_ksh /bin/ksh: line 3: syntax error at line 99: `{' unmatched
+par__man_ksh /bin/ksh: line 99: syntax error at line 99: `{' unmatched
+par__man_ksh /bin/ksh: line 99: syntax error at line 99: `{' unmatched
+par__man_ksh /bin/ksh: line 99: syntax error at line 99: `{' unmatched
par__man_ksh exit value 2 should be 2
par__man_ksh Unknown option: no-such-option
par__man_ksh exit value 255 should be 255
@@ -1230,10 +1230,10 @@
par_env_parallel_--session_ksh l2func
par_env_parallel_--session_ksh l2alias
par_env_parallel_--session_ksh level2 array OK
-par_env_parallel_--session_ksh /bin/ksh: line 3: aliasbefore: not found
-par_env_parallel_--session_ksh script: line 4: aliasbefore: not found
-par_env_parallel_--session_ksh /bin/ksh: line 3: funcbefore: not found
-par_env_parallel_--session_ksh script: line 4: funcbefore: not found
+par_env_parallel_--session_ksh /bin/ksh: line 2: aliasbefore: not found
+par_env_parallel_--session_ksh script: line 3: aliasbefore: not found
+par_env_parallel_--session_ksh /bin/ksh: line 2: funcbefore: not found
+par_env_parallel_--session_ksh script: line 3: funcbefore: not found
par_env_parallel_--session_ksh no_before
par_env_parallel_--session_ksh no_before
par_env_parallel_--session_ksh no_before
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-ssh9
^
|
@@ -1,123 +1,159 @@
-par_zsh_embed --embed
-par_zsh_embed Redirect the output to a file and add your changes at the end:
-par_zsh_embed /usr/local/bin/parallel --embed > new_script
-par_zsh_embed Put
-par_zsh_embed your
-par_zsh_embed code
-par_zsh_embed here
-par_zsh_embed parallel_OK
-par_zsh_embed env_parallel --env OK
-par_zsh_embed _which_PAR:13: argument list too long: perl
-par_zsh_embed env_parallel: Error: Your environment is too big.
-par_zsh_embed env_parallel: Error: You can try 3 different approaches:
-par_zsh_embed env_parallel: Error: 1. Run 'env_parallel --session' before you set
-par_zsh_embed env_parallel: Error: variables or define functions.
-par_zsh_embed env_parallel: Error: 2. Use --env and only mention the names to copy.
-par_zsh_embed env_parallel: Error: 3. Try running this in a clean environment once:
-par_zsh_embed env_parallel: Error: env_parallel --record-env
-par_zsh_embed env_parallel: Error: And then use '--env _'
-par_zsh_embed env_parallel: Error: For details see: man env_parallel
-par_zsh_embed ParsetOK
-par_zsh_embed Put
-par_zsh_embed your
-par_zsh_embed code
-par_zsh_embed here
-par_zsh_embed Put your code here
-par_zsh_embed You can also activate GNU Parallel for interactive use by:
-par_zsh_embed . ./parallel-embed
-par_tcsh_embed Not implemented
-par_sh_embed --embed
-par_sh_embed Redirect the output to a file and add your changes at the end:
-par_sh_embed /usr/local/bin/parallel --embed > new_script
-par_sh_embed Put
-par_sh_embed your
-par_sh_embed code
-par_sh_embed here
-par_sh_embed parallel_OK
-par_sh_embed env_parallel --env OK
-par_sh_embed env_parallel_OK
-par_sh_embed ParsetOK
-par_sh_embed Put
-par_sh_embed your
-par_sh_embed code
-par_sh_embed here
-par_sh_embed Put your code here
-par_sh_embed You can also activate GNU Parallel for interactive use by:
-par_sh_embed . ./parallel-embed
-par_propagate_env ### bug #41805: Idea: propagate --env for parallel --number-of-cores
-par_propagate_env ** test_zsh
-par_propagate_env FOO=test_zsh
-par_propagate_env HOME=~
-par_propagate_env ** test_zsh_filter
-par_propagate_env FOO=test_zsh_filter
-par_propagate_env HOME=~
-par_propagate_env ** test_csh
-par_propagate_env FOO=test_csh
-par_propagate_env HOME=~
-par_propagate_env ** test_csh_filter
-par_propagate_env FOO=test_csh_filter
-par_propagate_env HOME=~
-par_propagate_env ** bug #41805 done
-par_no_route_to_host ### no route to host with | and -j0 causes inf loop
-par_no_route_to_host ssh: connect to host i.p.n.r port 22: No route to host
par_no_route_to_host
-par_no_route_to_host parallel: This job finished:
-par_no_route_to_host raw i.p.n.r
-par_no_route_to_host parallel: Warning: ssh to i.p.n.r only allows for 0 simultaneous logins.
-par_no_route_to_host parallel: Warning: You may raise this by changing
-par_no_route_to_host parallel: Warning: /etc/ssh/sshd_config:MaxStartups and MaxSessions on i.p.n.r.
-par_no_route_to_host parallel: Warning: You can also try --sshdelay 0.1
-par_no_route_to_host parallel: Warning: Using only -1 connections to avoid race conditions.
-par_no_route_to_host parallel: Error: Cannot run any jobs.
-par_no_route_to_host via_parallel i.p.n.r
-par_ksh_embed --embed
-par_ksh_embed Redirect the output to a file and add your changes at the end:
-par_ksh_embed /usr/local/bin/parallel --embed > new_script
-par_ksh_embed Put
-par_ksh_embed your
-par_ksh_embed code
-par_ksh_embed here
-par_ksh_embed parallel_OK
-par_ksh_embed env_parallel --env OK
-par_ksh_embed ./parallel-embed[XXX]: perl: /usr/bin/perl: cannot execute [Argument list too long]
-par_ksh_embed env_parallel: Error: Your environment is too big.
-par_ksh_embed env_parallel: Error: You can try 3 different approaches:
-par_ksh_embed env_parallel: Error: 1. Run 'env_parallel --session' before you set
-par_ksh_embed env_parallel: Error: variables or define functions.
-par_ksh_embed env_parallel: Error: 2. Use --env and only mention the names to copy.
-par_ksh_embed env_parallel: Error: 3. Try running this in a clean environment once:
-par_ksh_embed env_parallel: Error: env_parallel --record-env
-par_ksh_embed env_parallel: Error: And then use '--env _'
-par_ksh_embed env_parallel: Error: For details see: man env_parallel
-par_ksh_embed ParsetOK
-par_ksh_embed Put
-par_ksh_embed your
-par_ksh_embed code
-par_ksh_embed here
-par_ksh_embed Put your code here
-par_ksh_embed You can also activate GNU Parallel for interactive use by:
-par_ksh_embed . ./parallel-embed
-par_fish_embed Not implemented
-par_filter_hosts_parallel_not_installed bug #62672: Triggered a bug with --filter-host
-par_filter_hosts_parallel_not_installed parallel: Warning: Could not figure out number of cpus on nopathbash@lo (). Using 1.
-par_filter_hosts_parallel_not_installed OK
-par_filter_hosts_parallel_not_installed parallel: Warning: Could not figure out number of cpus on nopathbash@lo (). Using 1.
-par_filter_hosts_parallel_not_installed OK
-par_env_parallel_big_env ### bug #54128: command too long when exporting big env
-par_env_parallel_big_env should not fail
-par_env_parallel_big_env OK
-par_d_filter_hosts ### --filter-hosts and -0
-par_d_filter_hosts ### https://lists.gnu.org/archive/html/parallel/2022-07/msg00002.html
-par_d_filter_hosts OKa
-par_d_filter_hosts OKb
-par_d_filter_hosts OKa
-par_d_filter_hosts OKb
-par_d_filter_hosts OKa
-par_d_filter_hosts OKb
-par_d_filter_hosts OKa
-par_d_filter_hosts OKb
-par_d_filter_hosts OKa
-par_d_filter_hosts OKb
-par_csh_embed Not implemented
+par_PARALLEL_SSHLOGIN_SSHHOST ### bug #56554: Introduce $PARALLEL_SSHLOGIN $PARALLEL_SSHHOST
+par_PARALLEL_SSHLOGIN_SSHHOST /usr/bin/ssh csh@lo /usr/bin/ssh csh@lo lo
+par_PARALLEL_SSHLOGIN_SSHHOST /usr/bin/ssh csh@lo csh
+par_PARALLEL_SSHLOGIN_SSHHOST /usr/bin/ssh tcsh@lo /usr/bin/ssh tcsh@lo lo
+par_PARALLEL_SSHLOGIN_SSHHOST /usr/bin/ssh tcsh@lo tcsh
+par_PARALLEL_SSHLOGIN_SSHHOST lo lo lo
+par_PARALLEL_SSHLOGIN_SSHHOST lo tange
+par_PARALLEL_SSHLOGIN_SSHHOST sh@lo sh
+par_PARALLEL_SSHLOGIN_SSHHOST sh@lo sh@lo lo
+par_PARALLEL_SSHLOGIN_SSHHOST zsh@lo zsh
+par_PARALLEL_SSHLOGIN_SSHHOST zsh@lo zsh@lo lo
+par__d_filter_hosts ### --filter-hosts and -0
+par__d_filter_hosts ### https://lists.gnu.org/archive/html/parallel/2022-07/msg00002.html
+par__d_filter_hosts OKa
+par__d_filter_hosts OKb
+par__d_filter_hosts OKa
+par__d_filter_hosts OKb
+par__d_filter_hosts OKa
+par__d_filter_hosts OKb
+par__d_filter_hosts OKa
+par__d_filter_hosts OKb
+par__d_filter_hosts OKa
+par__d_filter_hosts OKb
+par__propagate_env ### bug #41805: Idea: propagate --env for parallel --number-of-cores
+par__propagate_env ** test_zsh
+par__propagate_env FOO=test_zsh
+par__propagate_env HOME=~
+par__propagate_env ** test_zsh_filter
+par__propagate_env FOO=test_zsh_filter
+par__propagate_env HOME=~
+par__propagate_env ** test_csh
+par__propagate_env MANPATH: Undefined variable.
+par__propagate_env FOO=test_csh
+par__propagate_env HOME=~
+par__propagate_env ** test_csh_filter
+par__propagate_env MANPATH: Undefined variable.
+par__propagate_env FOO=test_csh_filter
+par__propagate_env HOME=~
+par__propagate_env ** bug #41805 done
+par__sshlogin_range ### --sshlogin with ranges
+par__sshlogin_range ### Jobs fail, but the important is the name of the hosts
+par__sshlogin_range echo 1
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a00.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a01.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a02.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a03.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a04.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a05.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a06.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a07.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a08.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a09.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a10.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a11.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on a12.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b10c1.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b10c4.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b10c6.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b11c1.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b11c4.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b11c6.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b2c1.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b2c4.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b2c6.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b3c1.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b3c4.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b3c6.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b5c1.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b5c4.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b5c6.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b7c1.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b7c4.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b7c6.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b8c1.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b8c4.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b8c6.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b9c1.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b9c4.nx-dom (). Using 1.
+par__sshlogin_range parallel: Warning: Could not figure out number of cpus on b9c6.nx-dom (). Using 1.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local150
^
|
@@ -5,11 +5,17 @@
3
echo '### Test --timeout'
### Test --timeout
- nice parallel -j0 -k --timeout 2 echo {}\; sleep {}\; echo {} ::: 1.1 7.7 8.8 9.9
+ nice stdout parallel -j0 -k --timeout 2 echo {}\; sleep {}\; echo {} ::: 1.1 7.7 8.8 9.9
1.1
1.1
+parallel: Warning: This job was killed because it timed out:
+parallel: Warning: echo 7.7; sleep 7.7; echo 7.7
7.7
+parallel: Warning: This job was killed because it timed out:
+parallel: Warning: echo 8.8; sleep 8.8; echo 8.8
8.8
+parallel: Warning: This job was killed because it timed out:
+parallel: Warning: echo 9.9; sleep 9.9; echo 9.9
9.9
echo '### Test --joblog followed by --resume --joblog'
### Test --joblog followed by --resume --joblog
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local9
^
|
@@ -199,7 +199,7 @@
echo '### Test :::: on nonexistent'
### Test :::: on nonexistent
stdout $XAP -k echo {1} {2} {3} :::: nonexistent
-parallel: Error: Cannot open input file `nonexistent': No such file or directory.
+parallel: Error: Cannot open `nonexistent': No such file or directory
echo '### Test :::: two files'
### Test :::: two files
$XAP -k echo {1} {2} :::: <(seq 1 10) <(seq 5 15)
@@ -313,9 +313,9 @@
echo '### Multiple -a: nonexistent'
### Multiple -a: nonexistent
stdout $XAP -kv echo {2} {1} :::: nonexist nonexist2
-parallel: Error: Cannot open input file `nonexist': No such file or directory.
+parallel: Error: Cannot open `nonexist': No such file or directory
stdout $XAP -kv -a nonexist -a nonexist2 echo {2} {1}
-parallel: Error: Cannot open input file `nonexist': No such file or directory.
+parallel: Error: Cannot open `nonexist': No such file or directory
echo '### Test {#.}'
### Test {#.}
$XAP -kv -a <(echo a-noext) -a <(echo b-withext.extension) -a <(echo c-ext.gif) echo {3.} {2.} {1.}
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-macos
^
|
@@ -1,46 +1,81 @@
-par_big_func 1 3XXX 91XXX
-par_big_func 1 3XXX 91XXX
-par_big_func 1 3XXX 91XXX
-par_big_func 1 1XXX 46XXX
-par_many_args 1 3XXX 6XXX
-par_many_args 1 3XXX 6XXX
-par_many_args 1 3XXX 6XXX
-par_many_args 1 3XXX 6XXX
-par_many_args 1 3XXX 6XXX
-par_many_args 1 3XXX 6XXX
-par_many_args 1 1XXX 2XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 212 5XXX
-par_many_func 1 96 2XXX
+par_big_func 1 3XXX 90XXX
+par_big_func 1 3XXX 90XXX
+par_big_func 1 3XXX 90XXX
+par_big_func 1 2XXX 48XXX
+par_big_func_name 18XXX
+par_big_func_name 18XXX
+par_big_func_name 18XXX
+par_big_func_name 18XXX
+par_big_func_name 18XXX
+par_big_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_big_var_func_name 18XXX
+par_many_args 1 2XXX 5XXX
+par_many_args 1 2XXX 5XXX
+par_many_args 1 2XXX 5XXX
+par_many_args 1 2XXX 5XXX
+par_many_args 1 2XXX 5XXX
+par_many_args 1 2XXX 5XXX
+par_many_args 1 2XXX 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 184 4XXX
+par_many_func 1 44 1XXX
+par_many_var 22XXX
+par_many_var 22XXX
+par_many_var 22XXX
+par_many_var 22XXX
+par_many_var 22XXX
+par_many_var 22XXX
+par_many_var 22XXX
par_many_var_big_func 5XXX
par_many_var_big_func 5XXX
par_many_var_big_func 5XXX
@@ -68,6 +103,9 @@
par_many_var_big_func 5XXX
par_many_var_big_func 5XXX
par_many_var_big_func 5XXX
-par_many_var_func 1 2XXX 59XXX
-par_many_var_func 1 2XXX 59XXX
-par_many_var_func 1 1XXX 41XXX
+par_many_var_big_func 5XXX
+par_many_var_big_func 5XXX
+par_many_var_big_func 5XXX
+par_many_var_func 1 2XXX 58XXX
+par_many_var_func 1 2XXX 58XXX
+par_many_var_func 1 1XXX 43XXX
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-remote1
^
|
@@ -115,8 +115,8 @@
par_special_ssh 99
par_special_ssh 100
par_timeout_retries ### test --timeout --retries
-par_timeout_retries ssh: connect to host 192.168.1.197 port 22: No route to host
par_timeout_retries
par_timeout_retries parallel: Warning: This job was killed because it timed out:
+par_timeout_retries parallel: Warning: ssh 192.168.1.197 echo 192.168.1.197
par_timeout_retries parallel: Warning: ssh 8.8.8.8 echo 8.8.8.8
par_timeout_retries vagrant@parallel-server1
par_timeout_retries vagrant@parallel-server2
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-tutorial
^
|
@@ -489,17 +489,18 @@
parallel: Warning: This job was killed because it timed out:
parallel: Warning: sleep 7; echo 7
parallel --eta sleep ::: 1 3 2 2 1 3 3 2 1
-Computers / CPU cores / Max jobs to run
+Computers / CPU threads / Max jobs to run
1:local / 9 / 9
Computer:jobs running/jobs completed/%of started jobs/Average seconds to complete
parallel --progress sleep ::: 1 3 2 2 1 3 3 2 1
-Computers / CPU cores / Max jobs to run
+Computers / CPU threads / Max jobs to run
1:local / 9 / 9
Computer:jobs running/jobs completed/%of started jobs/Average seconds to complete
seq 1000 | parallel -j10 --bar '(echo -n {};sleep 0.1)' \
2> >(perl -pe 'BEGIN{$/="\r";$|=1};s/\r/\n/g' |
zenity --timeout=15 --progress --auto-kill --auto-close)
-BASE64--joblog /tmp/log exit ::: 1 2 3 0
+
+ parallel --joblog /tmp/log exit ::: 1 2 3 0
cat /tmp/log;
parallel --joblog /tmp/log exit ::: 1 2 3 0
cat /tmp/log; parallel --resume --joblog /tmp/log exit ::: 1 2 3 0 0 0
@@ -664,8 +665,9 @@
Unknown option: myecho $myvar
Unknown option: :::
Unknown option: green
+You have called the dummy script "env_parallel".
env_parallel only works if it is a function.
-Do this and restart your shell:
+You need to do this and restart your shell:
bash: Put this in $HOME/.bashrc: . env_parallel.bash
E.g. by doing: echo '. env_parallel.bash' >> $HOME/.bashrc
Supports: variables, aliases, functions, arrays
@@ -752,8 +754,9 @@
Unknown option: echo $NOT; not_ex
Unknown option: :::
Unknown option: bar
+You have called the dummy script "env_parallel".
env_parallel only works if it is a function.
-Do this and restart your shell:
+You need to do this and restart your shell:
bash: Put this in $HOME/.bashrc: . env_parallel.bash
E.g. by doing: echo '. env_parallel.bash' >> $HOME/.bashrc
Supports: variables, aliases, functions, arrays
@@ -1200,7 +1203,7 @@
If you pay 10000 EUR you should feel free to use GNU Parallel without citing.
parallel --version
GNU parallel VERSION
-Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free Software
+Copyright (C) 2007-2024 Ole Tange, http://ole.tange.dk and Free Software
Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/sql01
^
|
@@ -53,16 +53,16 @@
par_-r [ | psql -h 127.0.0.3 -U nongood -p 2227 -d nongood]
par_-r psql: error: connection to server at "127.0.0.3", port 2227 failed: Connection refused
par_-r Is the server running on that host and accepting TCP/IP connections?
-par__listproc ### Test --show-processlist|proclist|listproc
-par__listproc 2 17
-par__listproc 2 17
-par__listproc 2 17
par_dbsize ### Test --db-size --dbsize
par_dbsize 6
par_dbsize 6
par_dburl_user_password_host_port ### Test dburl with username password host port
par_dburl_user_password_host_port Test dburl with username password host port
par_dburl_user_password_host_port OK
+par_listproc ### Test --show-processlist|proclist|listproc
+par_listproc 2 17
+par_listproc 2 17
+par_listproc 2 17
par_noheaders ### Test --noheaders --no-headers -n
par_noheaders abc 1
par_noheaders def 3
@@ -89,5 +89,5 @@
par_sql_on_cmdline Test reading SQL from command line
par_sql_on_cmdline Yes it does
par_tablesize ### Test --table-size --tablesize
-par_tablesize 94
-par_tablesize 94
+par_tablesize 93
+par_tablesize 93
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20240122+git1.tar.bz2/upstream/testsuite/wanted-results/test21
^
|
@@ -4,27 +4,27 @@
1
1
centos8.localdomain
-freebsd12.localdomain
+freebsd14.localdomain
hostname; echo 1
hostname; echo 1
### Test $PARALLEL - multi line
1
1
centos8.localdomain
-freebsd12.localdomain
+freebsd14.localdomain
hostname; echo 1
hostname; echo 1
### Test ~/.parallel/config - single line
1
1
centos8.localdomain
-freebsd12.localdomain
+freebsd14.localdomain
hostname; echo 1
hostname; echo 1
### Test ~/.parallel/config - multi line
1
1
centos8.localdomain
-freebsd12.localdomain
+freebsd14.localdomain
hostname; echo 1
hostname; echo 1
|