[-]
[+]
|
Changed |
_service:tar_git:parallel.spec
|
|
[-]
[+]
|
Changed |
_service
^
|
@@ -1,8 +1,8 @@
<services>
<service name="tar_git">
- <param name="url">https://github.com/nephros/parallel</param>
+ <param name="url">https://github.com/sailfishos-chum/parallel</param>
<param name="branch"></param>
- <param name="revision">20220522+git1</param>
+ <param name="revision">20220822+git1</param>
<param name="token"/>
<param name="debian">N</param>
<param name="dumb">N</param>
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/packager/obs/home:tange/.osc/_apiurl
^
|
@@ -1 +0,0 @@
-https://api.opensuse.org
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/packager/obs/home:tange/.osc/_project
^
|
@@ -1 +0,0 @@
-home:tange
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/packager/obs/home:tange/parallel/.osc/_files
^
|
@@ -1,7 +0,0 @@
-<directory name="parallel" rev="325" vrev="1" srcmd5="0e4e7b85fb839b1b92a506e1b2992935">
- <entry name="PKGBUILD" md5="eef8ab7c0ccf83a0e08cbf0b111047fd" size="936" mtime="1653216427" />
- <entry name="parallel-20220522.tar.bz2" md5="3fb2288f04f550dc246c9388558a67bb" size="2372700" mtime="1653216428" />
- <entry name="parallel.spec" md5="dfa4b6691d57f32d68d5fe022d0e1801" size="5713" mtime="1653216428" />
- <entry name="parallel_20220422.dsc" md5="53564c7e423948f3c25fb82bae7754ee" size="556" mtime="1653216428" />
- <entry name="parallel_20220422.tar.gz" md5="4ece6ee823ae7b492081af3991b4ae86" size="2638371" mtime="1653216428" />
-</directory>
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/packager/obs/home:tange/parallel/.osc/_meta
^
|
@@ -1,60 +0,0 @@
-<package name="parallel" project="home:tange">
- <title>GNU Parallel</title>
- <description>= About GNU Parallel =
-
-GNU Parallel is a shell tool for executing jobs in parallel using one or more computers. A job is can be a single command or a small script that has to be run for each of the lines in the input. The typical input is a list of files, a list of hosts, a list of users, a list of URLs, or a list of tables. A job can also be a command that reads from a pipe. GNU Parallel can then split the input and pipe it into commands in parallel.
-
-If you use xargs and tee today you will find GNU Parallel very easy to use as GNU Parallel is written to have the same options as xargs. If you write loops in shell, you will find GNU Parallel may be able to replace most of the loops and make them run faster by running several jobs in parallel. GNU Parallel can even replace nested loops.
-
-GNU Parallel makes sure output from the commands is the same output as you would get had you run the commands sequentially. This makes it
-possible to use output from GNU Parallel as input for other programs.
-
-You can find more about GNU Parallel at: http://www.gnu.org/s/parallel/
-
-Watch the intro video on http://www.youtube.com/playlist?list=PL284C9FF2488BC6D1 or walk through the tutorial http://www.gnu.org/software/parallel/parallel_tutorial.html
-
-When using GNU Parallel for a publication please cite as per: 'parallel --citation'
-
-
-= About GNU SQL =
-
-GNU sql aims to give a simple, unified interface for accessing databases through all the different databases' command line clients. So far the focus has been on giving a common way to specify login information (protocol, username, password, hostname, and port number), size (database and table size), and running queries.
-
-The database is addressed using a DBURL. If commands are left out you will get that database's interactive shell.
-
-When using GNU SQL for a publication please cite:
-
-O. Tange (2011): GNU SQL - A Command Line Tool for Accessing Different Databases Using DBURLs, ;login: The USENIX Magazine, April 2011:29-32.
-
-
-= About GNU Niceload =
-
-GNU niceload slows down a program when the computer load average (or other system activity) is above a certain limit. When the limit is reached the program will be suspended for some time. If the limit is a soft limit the program will be allowed to run for short amounts of time before being suspended again. If the limit is a hard limit the program will only be allowed to run when the system is below the limit.
-</description>
- <person userid="tange" role="bugowner"/>
- <person userid="tange" role="maintainer"/>
- <build>
- <enable repository="Debian_5.0"/>
- <enable repository="Debian_Etch"/>
- <enable repository="Fedora_12"/>
- <disable arch="ppc64"/>
- <disable arch="ppc" repository="CentOS_CentOS-5"/>
- <disable arch="ppc64" repository="Debian_5.0"/>
- <disable arch="ppc" repository="images"/>
- <disable arch="ppc64" repository="CentOS_CentOS-5"/>
- <disable arch="ppc" repository="RedHat_RHEL-5"/>
- <disable arch="ppc" repository="SLE_10_SDK"/>
- <disable arch="ppc" repository="SLE_11"/>
- <disable arch="ppc" repository="SLE_11_SP1"/>
- <disable arch="ppc" repository="openSUSE_Factory"/>
- <disable repository="Arch_Core"/>
- </build>
- <publish>
- <disable repository="Arch_Core"/>
- </publish>
- <debuginfo>
- <disable/>
- </debuginfo>
- <url>http://www.gnu.org/software/parallel/</url>
-</package>
-
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/packager/obs/home:tange/parallel/.osc/parallel.spec
^
|
@@ -1,130 +0,0 @@
-
-Summary: Shell tool for executing jobs in parallel
-Name: parallel
-Version: 20220522
-Release: 1.3
-License: GPL-3.0-or-later
-Group: Productivity/File utilities
-URL: ftp://ftp.gnu.org/gnu/parallel
-Source0: %{name}_%{version}.tar.gz
-BuildArch: noarch
-BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
-
-%description
-GNU Parallel is a shell tool for executing jobs in parallel using one
-or more computers. A job can be a single command or a small script
-that has to be run for each of the lines in the input. The typical
-input is a list of files, a list of hosts, a list of users, a list of
-URLs, or a list of tables. A job can also be a command that reads from
-a pipe. GNU Parallel can then split the input and pipe it into
-commands in parallel.
-
-If you use xargs and tee today you will find GNU Parallel very easy to
-use as GNU Parallel is written to have the same options as xargs. If
-you write loops in shell, you will find GNU Parallel may be able to
-replace most of the loops and make them run faster by running several
-jobs in parallel.
-
-GNU Parallel makes sure output from the commands is the same output as
-you would get had you run the commands sequentially. This makes it
-possible to use output from GNU Parallel as input for other programs.
-
-For each line of input GNU Parallel will execute command with the line
-as arguments. If no command is given, the line of input is
-executed. Several lines will be run in parallel. GNU Parallel can
-often be used as a substitute for xargs or cat | bash.
-
-%prep
-if [ "${RPM_BUILD_ROOT}x" == "x" ]; then
- echo "RPM_BUILD_ROOT empty, bad idea!"
- exit 1
-fi
-if [ "${RPM_BUILD_ROOT}" == "/" ]; then
- echo "RPM_BUILD_ROOT is set to "/", bad idea!"
- exit 1
-fi
-%setup -q
-
-%build
-./configure
-make
-
-%install
-rm -rf $RPM_BUILD_ROOT
-make install prefix=$RPM_BUILD_ROOT%{_prefix} exec_prefix=$RPM_BUILD_ROOT%{_prefix} \
- datarootdir=$RPM_BUILD_ROOT%{_prefix} docdir=$RPM_BUILD_ROOT%{_docdir} \
- mandir=$RPM_BUILD_ROOT%{_mandir}
-
-rm $RPM_BUILD_ROOT%{_docdir}/parallel.html
-rm $RPM_BUILD_ROOT%{_docdir}/env_parallel.html
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_tutorial.html
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_design.html
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_alternatives.html
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_book.html
-rm $RPM_BUILD_ROOT%{_docdir}/niceload.html
-rm $RPM_BUILD_ROOT%{_docdir}/sem.html
-rm $RPM_BUILD_ROOT%{_docdir}/sql.html
-rm $RPM_BUILD_ROOT%{_docdir}/parcat.html
-rm $RPM_BUILD_ROOT%{_docdir}/parset.html
-rm $RPM_BUILD_ROOT%{_docdir}/parsort.html
-rm $RPM_BUILD_ROOT%{_docdir}/parallel.texi
-rm $RPM_BUILD_ROOT%{_docdir}/env_parallel.texi
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_tutorial.texi
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_design.texi
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_alternatives.texi
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_book.texi
-rm $RPM_BUILD_ROOT%{_docdir}/niceload.texi
-rm $RPM_BUILD_ROOT%{_docdir}/sem.texi
-rm $RPM_BUILD_ROOT%{_docdir}/sql.texi
-rm $RPM_BUILD_ROOT%{_docdir}/parcat.texi
-rm $RPM_BUILD_ROOT%{_docdir}/parset.texi
-rm $RPM_BUILD_ROOT%{_docdir}/parsort.texi
-rm $RPM_BUILD_ROOT%{_docdir}/parallel.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/env_parallel.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_tutorial.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_design.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_alternatives.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_book.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/niceload.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/sem.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/sql.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/parcat.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/parset.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/parsort.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_cheat_bw.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_options_map.pdf
-rm $RPM_BUILD_ROOT%{_docdir}/parallel.rst
-rm $RPM_BUILD_ROOT%{_docdir}/env_parallel.rst
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_tutorial.rst
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_design.rst
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_alternatives.rst
-rm $RPM_BUILD_ROOT%{_docdir}/parallel_book.rst
-rm $RPM_BUILD_ROOT%{_docdir}/niceload.rst
-rm $RPM_BUILD_ROOT%{_docdir}/sem.rst
-rm $RPM_BUILD_ROOT%{_docdir}/sql.rst
-rm $RPM_BUILD_ROOT%{_docdir}/parcat.rst
-rm $RPM_BUILD_ROOT%{_docdir}/parset.rst
-rm $RPM_BUILD_ROOT%{_docdir}/parsort.rst
-
-%clean
-rm -rf $RPM_BUILD_ROOT
-
-%files
-%defattr(-,root,root,-)
-/usr/bin/*
-/usr/share/man/man1/*
-/usr/share/man/man7/*
-%doc README NEWS src/parallel.html src/env_parallel.html src/parallel_tutorial.html src/parallel_design.html src/parallel_alternatives.html src/parallel_book.html src/sem.html src/sql.html src/parcat.html src/parset.html src/parsort.html src/niceload.html src/parallel.texi src/env_parallel.texi src/parallel_tutorial.texi src/parallel_design.texi src/parallel_alternatives.texi src/parallel_book.texi src/niceload.texi src/sem.texi src/sql.texi src/parcat.texi src/parset.texi src/parsort.texi src/parallel.pdf src/env_parallel.pdf src/parallel_tutorial.pdf src/parallel_design.pdf src/parallel_alternatives.pdf src/parallel_book.pdf src/niceload.pdf src/sem.pdf src/sql.pdf src/parcat.pdf src/parset.pdf src/parsort.pdf src/parallel_cheat_bw.pdf src/parallel_options_map.pdf src/parallel.rst src/env_parallel.rst src/parallel_tutorial.rst src/parallel_design.rst src/parallel_alternatives.rst src/parallel_book.rst src/niceload.rst src/sem.rst src/sql.rst src/parcat.rst src/parset.rst src/parsort.rst
-
-%changelog
-* Sat Jan 22 2011 Ole Tange
-- Upgrade to 20110122
-* Wed Dec 22 2010 Ole Tange
-- Upgrade to 20101222
-* Wed Sep 22 2010 Ole Tange
-- Upgrade to 20100922
-* Mon Sep 06 2010 Ole Tange
-- Upgrade to current git-version of source. Tested on build.opensuse.org
-* Fri Aug 27 2010 Ole Tange
-- Untested upgrade to current git-version of source.
-
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/ ab /c' d/ ef"g
^
|
@@ -1 +0,0 @@
-efg
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/ ab/c"d/ef g
^
|
@@ -1 +0,0 @@
-efg
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/ ab/c"d/efg
^
|
@@ -1 +0,0 @@
-efg
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/1-col.txt
^
|
@@ -1 +0,0 @@
-a
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/2-col.txt
^
|
@@ -1,4 +0,0 @@
-a b
-c d
-efg
-h i j
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/a b/cd / ef/efg
^
|
@@ -1 +0,0 @@
-efg
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/a/bar
^
|
@@ -1 +0,0 @@
-bar
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/a/foo
^
|
@@ -1 +0,0 @@
-foo
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/a/foo2
^
|
@@ -1 +0,0 @@
-foo
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/b/bar
^
|
@@ -1 +0,0 @@
-bar
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir/b/foo
^
|
@@ -1 +0,0 @@
-foo
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir2/1-col.txt
^
|
@@ -1 +0,0 @@
-a
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir2/2-col.txt
^
|
@@ -1,4 +0,0 @@
-a b
-c d
-efg
-h i j
|
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir2/\344\270\255\345\233\275 (Zh\305\215nggu\303\263)/China's (\344\270\255\345\233\275) road.jpg
^
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir2/a/bar
^
|
@@ -1 +0,0 @@
-bar
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir2/a/foo
^
|
@@ -1 +0,0 @@
-foo
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir2/a/foo2
^
|
@@ -1 +0,0 @@
-foo
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir2/b/bar
^
|
@@ -1 +0,0 @@
-bar
|
[-]
[+]
|
Deleted |
_service:tar_git:parallel-20220522+git1.tar.bz2/upstream/testsuite/input-files/testdir2/b/foo
^
|
@@ -1 +0,0 @@
-foo
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/Makefile.am
^
|
@@ -167,5 +167,23 @@
cd parallel-$(YYYYMMDD) && \
./configure && make -j && sudo make -j install
+# This ought to be correct, but fails on Centos
+# bashcompletiondir=$(DESTDIR)${datarootdir}/bash-completion/completions
+# zshcompletiondir=$(DESTDIR)${datarootdir}/zsh/site-functions
+bashcompletiondir=$(DESTDIR)${prefix}/share/bash-completion/completions
+zshcompletiondir=$(DESTDIR)${prefix}/share/zsh/site-functions
+bashcompletion=${bashcompletiondir}/parallel
+zshcompletion=${zshcompletiondir}/_parallel
+install-data-hook:
+ mkdir -p ${zshcompletiondir} ${bashcompletiondir}
+ src/parallel --shell-completion bash > ${bashcompletion}
+# Make zsh eval the --shell-completion code dynamically so if
+# a newer version of GNU Parallel is installed by a normal
+# user, this newer version will generate the
+# --shell-completion code.
+ echo '#compdef parallel' > ${zshcompletion}
+ echo '(( $$+functions[_comp_parallel] )) ||' >> ${zshcompletion}
+ echo ' eval "$$(parallel --shell-completion auto)" &&' >> ${zshcompletion}
+ echo ' _comp_parallel' >> ${zshcompletion}
EXTRA_DIST = CITATION CITATION.cff CREDITS LICENSES/CC-BY-SA-4.0.txt LICENSES/GFDL-1.3-or-later.txt LICENSES/GPL-3.0-or-later.txt
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/Makefile.in
^
|
@@ -281,6 +281,14 @@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
SUBDIRS = src
+
+# This ought to be correct, but fails on Centos
+# bashcompletiondir=$(DESTDIR)${datarootdir}/bash-completion/completions
+# zshcompletiondir=$(DESTDIR)${datarootdir}/zsh/site-functions
+bashcompletiondir = $(DESTDIR)${prefix}/share/bash-completion/completions
+zshcompletiondir = $(DESTDIR)${prefix}/share/zsh/site-functions
+bashcompletion = ${bashcompletiondir}/parallel
+zshcompletion = ${zshcompletiondir}/_parallel
EXTRA_DIST = CITATION CITATION.cff CREDITS LICENSES/CC-BY-SA-4.0.txt LICENSES/GFDL-1.3-or-later.txt LICENSES/GPL-3.0-or-later.txt
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
@@ -694,7 +702,8 @@
info-am:
install-data-am:
-
+ @$(NORMAL_INSTALL)
+ $(MAKE) $(AM_MAKEFLAGS) install-data-hook
install-dvi: install-dvi-recursive
install-dvi-am:
@@ -741,7 +750,8 @@
uninstall-am:
-.MAKE: $(am__recursive_targets) all install-am install-strip
+.MAKE: $(am__recursive_targets) all install-am install-data-am \
+ install-strip
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
am--refresh check check-am clean clean-cscope clean-generic \
@@ -750,14 +760,14 @@
dist-zstd distcheck distclean distclean-generic distclean-hdr \
distclean-tags distcleancheck distdir distuninstallcheck dvi \
dvi-am html html-am info info-am install install-am \
- install-data install-data-am install-dvi install-dvi-am \
- install-exec install-exec-am install-html install-html-am \
- install-info install-info-am install-man install-pdf \
- install-pdf-am install-ps install-ps-am install-strip \
- installcheck installcheck-am installdirs installdirs-am \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
- uninstall-am
+ install-data install-data-am install-data-hook install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ installdirs-am maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
+ tags-am uninstall uninstall-am
.PRECIOUS: Makefile
@@ -924,6 +934,17 @@
tar xjf parallel-$(YYYYMMDD).tar.bz2 && \
cd parallel-$(YYYYMMDD) && \
./configure && make -j && sudo make -j install
+install-data-hook:
+ mkdir -p ${zshcompletiondir} ${bashcompletiondir}
+ src/parallel --shell-completion bash > ${bashcompletion}
+# Make zsh eval the --shell-completion code dynamically so if
+# a newer version of GNU Parallel is installed by a normal
+# user, this newer version will generate the
+# --shell-completion code.
+ echo '#compdef parallel' > ${zshcompletion}
+ echo '(( $$+functions[_comp_parallel] )) ||' >> ${zshcompletion}
+ echo ' eval "$$(parallel --shell-completion auto)" &&' >> ${zshcompletion}
+ echo ' _comp_parallel' >> ${zshcompletion}
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/NEWS
^
|
@@ -1,3 +1,44 @@
+20220822
+
+New in this release:
+
+* --header 0 allows using {filename} as replacement string
+
+* Bug fixes and man page updates.
+
+
+20220722
+
+New in this release:
+
+* --colour-failed will color output red if the job fails.
+
+* sql: support for InfluxDB.
+
+* Polarhome.com is dead, so these OSs are no longer supported: AIX
+ HPUX IRIX Minix OPENSTEP OpenIndiana OpenServer QNX Solaris Syllable
+ Tru64 Ultrix UnixWare.
+
+* Bug fixes and man page updates.
+
+
+20220622
+
+New in this release:
+
+* , can be used in --sshlogin if quoted as \, or ,,
+
+* --plus {/#regexp/str} replace ^regexp with str.
+
+* --plus {/%regexp/str} replace regexp$ with str.
+
+* --plus {//regexp/str} replace every regexp with str.
+
+* 'make install' installs bash+zsh completion files.
+
+* Bug fixes and man page updates.
+
+
20220522
New in this release:
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+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-20220522.tar.bz2
- wget https://ftpmirror.gnu.org/parallel/parallel-20220522.tar.bz2.sig
- gpg parallel-20220522.tar.bz2.sig
- bzip2 -dc parallel-20220522.tar.bz2 | tar xvf -
- cd parallel-20220522
+ wget https://ftpmirror.gnu.org/parallel/parallel-20220822.tar.bz2
+ wget https://ftpmirror.gnu.org/parallel/parallel-20220822.tar.bz2.sig
+ gpg parallel-20220822.tar.bz2.sig
+ bzip2 -dc parallel-20220822.tar.bz2 | tar xvf -
+ cd parallel-20220822
./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-20220522.tar.bz2
- wget https://ftpmirror.gnu.org/parallel/parallel-20220522.tar.bz2.sig
- gpg parallel-20220522.tar.bz2.sig
- bzip2 -dc parallel-20220522.tar.bz2 | tar xvf -
- cd parallel-20220522
+ wget https://ftpmirror.gnu.org/parallel/parallel-20220822.tar.bz2
+ wget https://ftpmirror.gnu.org/parallel/parallel-20220822.tar.bz2.sig
+ gpg parallel-20220822.tar.bz2.sig
+ bzip2 -dc parallel-20220822.tar.bz2 | tar xvf -
+ cd parallel-20220822
./configure --prefix=$HOME && make && make install
Or if your system lacks 'make' you can simply copy src/parallel
@@ -122,8 +122,8 @@
When using programs that use GNU Parallel to process data for
publication please cite:
- Tange, O. (2022, May 22). GNU Parallel 20220522 ('NATO').
- Zenodo. https://doi.org/10.5281/zenodo.6570228
+ Tange, O. (2022, August 22). GNU Parallel 20220822 ('Rushdie').
+ Zenodo. https://doi.org/10.5281/zenodo.7015730
Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free
Software Foundation, Inc.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+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 20220522.
+# Generated by GNU Autoconf 2.71 for parallel 20220822.
#
# Report bugs to <bug-parallel@gnu.org>.
#
@@ -610,8 +610,8 @@
# Identity of this package.
PACKAGE_NAME='parallel'
PACKAGE_TARNAME='parallel'
-PACKAGE_VERSION='20220522'
-PACKAGE_STRING='parallel 20220522'
+PACKAGE_VERSION='20220822'
+PACKAGE_STRING='parallel 20220822'
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 20220522 to adapt to many kinds of systems.
+\`configure' configures parallel 20220822 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 20220522:";;
+ short | recursive ) echo "Configuration of parallel 20220822:";;
esac
cat <<\_ACEOF
@@ -1390,7 +1390,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-parallel configure 20220522
+parallel configure 20220822
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 20220522, which was
+It was created by parallel $as_me 20220822, 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='20220522'
+ VERSION='20220822'
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 20220522, which was
+This file was extended by parallel $as_me 20220822, 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 20220522
+parallel config.status 20220822
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/configure.ac
^
|
@@ -1,4 +1,4 @@
-AC_INIT([parallel],[20220522],[bug-parallel@gnu.org])
+AC_INIT([parallel],[20220822],[bug-parallel@gnu.org])
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_FILES([
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/doc/haikus
^
|
@@ -4,6 +4,9 @@
Quote of the month:
+ Gnu parallel is indeed slick. I always try to align my data to make it possible to loop over it with a nice for loop added in a call to run the jobs in parallel then becomes super easy. I love the {1..99} syntax in bash.
+ -- ragsofx
+
xargs諦めてGNU Parallel使ったら一瞬で問題が解決したので終わり
-- aria_moto @moto_aria@twitter
@@ -13,15 +16,9 @@
I used GNU Parallel to run a script locally that did what a big distributed system did, quicker and more reliably. It got to the point where people would just ask me to "run the thing" on my laptop instead of waiting for the cron.
-- winrid@ycombinator
- Parallel has been (and still is) super useful and simple tool for speeding up all kinds of shell tasks during my career.
- -- ValtteriL@ycombinator
-
parallel is so useful and i use it multiple times daily.
-- arrakeen@ycombinator
- Parallel is Good Stuff (tm)
- -- bloopernova@ycombinator
-
GNU Parallel is one of my favorite utilities of all time.
-- paskozdilar@ycombinator
@@ -189,6 +186,15 @@
=== Used ===
+ Parallel is Good Stuff (tm)
+ -- bloopernova@ycombinator
+
+ The syntax for GNU Parallel is so slick that I often use it just to make my script read nicer, and the parallelism is a cherry on top.
+ -- Epistaxis@reddit
+
+ Parallel has been (and still is) super useful and simple tool for speeding up all kinds of shell tasks during my career.
+ -- ValtteriL@ycombinator
+
It's amazing how fast you can get with bash pipelines and GNU Parallel.
-- Eric Pauley @EricPauley_
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/doc/release_new_version
^
|
@@ -8,6 +8,7 @@
Check that documentation is updated (compare to web):
+git checkout master
git grep -E '(alpha|beta) testing' | cat
git diff $(date --date="last month" +%Y%m22)
Unmodified beta since last version => production
@@ -76,11 +77,11 @@
. .last-doitag.txt
cd ~/privat/parallel/packager/obs
-find home:tange/parallel/* -type f |
+find home-tange/parallel/* -type f |
grep -Ev '(PKGBUILD|parallel.spec)' |
parallel -j1 'osc rm {} || rm {}'
# This should not create new files
-osc up home:tange/parallel/
+osc up home-tange/parallel/
make
# Reload build-status:
https://build.opensuse.org/package/show/home:tange/parallel
@@ -254,36 +255,21 @@
to:parallel@gnu.org, bug-parallel@gnu.org
stable-bcc: Jesse Alama <jessealama@fastmail.fm>
-Subject: GNU Parallel 20220522 ('NATO') released
+Subject: GNU Parallel 20220822 ('Rushdie') released
-GNU Parallel 20220522 ('NATO') has been released. It is available for download at: lbry://@GnuParallel:4
+GNU Parallel 20220822 ('Rushdie') has been released. It is available for download at: lbry://@GnuParallel:4
Quote of the month:
- It's amazing how fast you can get with bash pipelines and GNU Parallel.
- -- Eric Pauley @EricPauley_
-
+ Parallel is Good Stuff (tm)
+ -- bloopernova@ycombinator
+
New in this release:
-* --latest-line shows only the latest line of running jobs.
-
-* --color colors output in different colors per job (this obsoletes --ctag).
-
-* xargs compatibility: --process-slot-var foo sets $foo to jobslot-1.
-
-* xargs compatibility: --open-tty opens the terminal on stdin (standard input).
+* --header 0 allows using {filename} as replacement string
* Bug fixes and man page updates.
-News about GNU Parallel:
-
-* Building a fault-tolerant work queue for command-line executions with GNU Parallel https://www.jvt.me/posts/2022/04/28/shell-queue/
-
-* Make your code do more, with less https://www.blopig.com/blog/2022/05/make-your-code-do-more-with-less/
-
-* W09 B IntroHPC II 20220513 gnu parallel https://www.youtube.com/watch?v=2udvC90rIa4
-
-Get the book: GNU Parallel 2018 http://www.lulu.com/shop/ole-tange/gnu-parallel-2018/paperback/product-23558902.html
GNU Parallel - For people who live life in the parallel lane.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/install-sh
^
|
@@ -1,7 +1,7 @@
#!/bin/sh
# install - install a program, script, or datafile
-scriptversion=2018-03-11.20; # UTC
+scriptversion=2020-11-14.01; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
@@ -69,6 +69,11 @@
# Desired mode of installed file.
mode=0755
+# Create dirs (including intermediate dirs) using mode 755.
+# This is like GNU 'install' as of coreutils 8.32 (2020).
+mkdir_umask=22
+
+backupsuffix=
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
@@ -99,18 +104,28 @@
--version display version info and exit.
-c (ignored)
- -C install only if different (preserve the last data modification time)
+ -C install only if different (preserve data modification time)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
+ -p pass -p to $cpprog.
-s $stripprog installed files.
+ -S SUFFIX attempt to back up existing files, with suffix SUFFIX.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
RMPROG STRIPPROG
+
+By default, rm is invoked with -f; when overridden with RMPROG,
+it's up to you to specify -f if you want it.
+
+If -S is not specified, no backups are attempted.
+
+Email bug reports to bug-automake@gnu.org.
+Automake home page: https://www.gnu.org/software/automake/
"
while test $# -ne 0; do
@@ -137,8 +152,13 @@
-o) chowncmd="$chownprog $2"
shift;;
+ -p) cpprog="$cpprog -p";;
+
-s) stripcmd=$stripprog;;
+ -S) backupsuffix="$2"
+ shift;;
+
-t)
is_target_a_directory=always
dst_arg=$2
@@ -255,6 +275,10 @@
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
+ # Don't chown directories that already exist.
+ if test $dstdir_status = 0; then
+ chowncmd=""
+ fi
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
@@ -301,22 +325,6 @@
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
- # Create intermediate dirs using mode 755 as modified by the umask.
- # This is like FreeBSD 'install' as of 1997-10-28.
- umask=`umask`
- case $stripcmd.$umask in
- # Optimize common cases.
- *[2367][2367]) mkdir_umask=$umask;;
- .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
- *[0-7])
- mkdir_umask=`expr $umask + 22 \
- - $umask % 100 % 40 + $umask % 20 \
- - $umask % 10 % 4 + $umask % 2
- `;;
- *) mkdir_umask=$umask,go-w;;
- esac
-
# With -d, create the new directory with the user-specified mode.
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
@@ -326,52 +334,49 @@
fi
posix_mkdir=false
- case $umask in
- *[123567][0-7][0-7])
- # POSIX mkdir -p sets u+wx bits regardless of umask, which
- # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
- ;;
- *)
- # Note that $RANDOM variable is not portable (e.g. dash); Use it
- # here however when possible just to lower collision chance.
- tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
-
- trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
-
- # Because "mkdir -p" follows existing symlinks and we likely work
- # directly in world-writeable /tmp, make sure that the '$tmpdir'
- # directory is successfully created first before we actually test
- # 'mkdir -p' feature.
- if (umask $mkdir_umask &&
- $mkdirprog $mkdir_mode "$tmpdir" &&
- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
- then
- if test -z "$dir_arg" || {
- # Check for POSIX incompatibilities with -m.
- # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
- # other-writable bit of parent directory when it shouldn't.
- # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
- test_tmpdir="$tmpdir/a"
- ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
- case $ls_ld_tmpdir in
- d????-?r-*) different_mode=700;;
- d????-?--*) different_mode=755;;
- *) false;;
- esac &&
- $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
- ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
- test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
- }
- }
- then posix_mkdir=:
- fi
- rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
- else
- # Remove any dirs left behind by ancient mkdir implementations.
- rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
- fi
- trap '' 0;;
- esac;;
+ # The $RANDOM variable is not portable (e.g., dash). Use it
+ # here however when possible just to lower collision chance.
+ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+
+ trap '
+ ret=$?
+ rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null
+ exit $ret
+ ' 0
+
+ # Because "mkdir -p" follows existing symlinks and we likely work
+ # directly in world-writeable /tmp, make sure that the '$tmpdir'
+ # directory is successfully created first before we actually test
+ # 'mkdir -p'.
+ if (umask $mkdir_umask &&
+ $mkdirprog $mkdir_mode "$tmpdir" &&
+ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
+ then
+ if test -z "$dir_arg" || {
+ # Check for POSIX incompatibilities with -m.
+ # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+ # other-writable bit of parent directory when it shouldn't.
+ # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+ test_tmpdir="$tmpdir/a"
+ ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
+ case $ls_ld_tmpdir in
+ d????-?r-*) different_mode=700;;
+ d????-?--*) different_mode=755;;
+ *) false;;
+ esac &&
+ $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
+ ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
+ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+ }
+ }
+ then posix_mkdir=:
+ fi
+ rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
+ else
+ # Remove any dirs left behind by ancient mkdir implementations.
+ rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
+ fi
+ trap '' 0;;
esac
if
@@ -382,7 +387,7 @@
then :
else
- # The umask is ridiculous, or mkdir does not conform to POSIX,
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/missing
^
|
@@ -3,7 +3,7 @@
scriptversion=2018-03-07.03; # UTC
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/Makefile
^
|
@@ -1,26 +1,26 @@
all:
perl -e 'exit $$ENV{YYYYMMDD} !~ /20/'
cd ../debian/ && make
- osc rm home\:tange/parallel/parallel_*.dsc || true
- cp ../debian/parallel_*.dsc ../debian/parallel_*.tar.gz home\:tange/parallel/
- cp `ls ../../parallel-2*.tar.bz2|grep -v latest|tail -n1` home\:tange/parallel/
- perl -i -pe '/Version:/ and s/20\d\d\d\d\d\d/$$ENV{YYYYMMDD}/g' home:tange/parallel/parallel.spec
+ osc rm home-tange/parallel/parallel_*.dsc || true
+ cp ../debian/parallel_*.dsc ../debian/parallel_*.tar.gz home-tange/parallel/
+ cp `ls ../../parallel-2*.tar.bz2|grep -v latest|tail -n1` home-tange/parallel/
+ perl -i -pe '/Version:/ and s/20\d\d\d\d\d\d/$$ENV{YYYYMMDD}/g' home-tange/parallel/parallel.spec
# Update sha256sum
- cd home:tange/parallel && s=`sha256sum parallel-*.tar.bz2|field 1` perl -i -pe 's/(sha256sums=..)\w+(..)/$$1$$ENV{s}$$2/' PKGBUILD
+ cd home-tange/parallel && s=`sha256sum parallel-*.tar.bz2|field 1` perl -i -pe 's/(sha256sums=..)\w+(..)/$$1$$ENV{s}$$2/' PKGBUILD
# Update version
- cd home:tange/parallel && perl -i -pe 's/pkgver=.*/pkgver=$$ENV{YYYYMMDD}/' PKGBUILD
- cd home\:tange/parallel/ && osc diff
- cd home\:tange/parallel/ && osc up
- cd home\:tange/parallel/ && parallel osc add ::: *.spec *.dsc *.tar.gz *.tar.bz2 && echo Src added OK || true
- cd home\:tange/parallel/ && osc ci -m "New release"
+ cd home-tange/parallel && perl -i -pe 's/pkgver=.*/pkgver=$$ENV{YYYYMMDD}/' PKGBUILD
+ cd home-tange/parallel/ && osc diff
+ cd home-tange/parallel/ && osc up
+ cd home-tange/parallel/ && parallel osc add ::: *.spec *.dsc *.tar.gz *.tar.bz2 && echo Src added OK || true
+ cd home-tange/parallel/ && osc ci -m "New release"
### Wait for "building" state to complete
echo '### Wait for "building" state'
- cd home\:tange/parallel/ && yes building | parallel -vj1 --delay 10 --halt now,success=1 'osc results|G -E {}'
+ cd home-tange/parallel/ && yes building | parallel -vj1 --delay 10 --halt now,success=1 'osc results|G -E {}'
echo '### Wait for "building" state to end'
echo '### Ignore RedHat_RHEL-6 and Univention_3.2 that are broken'
- cd home\:tange/parallel/ && yes building | parallel -vj1 --delay 10 --halt now,fail=1 'osc results|G -v RedHat_RHEL-6 -v Univention_3.2 -E {}' || true
+ cd home-tange/parallel/ && yes building | parallel -vj1 --delay 10 --halt now,fail=1 'osc results|G -v RedHat_RHEL-6 -v Univention_3.2 -E {}' || true
echo '### Wait for "finished" state of .deb'
- cd home\:tange/parallel/ && echo succeeded | parallel -vj1 --retries 30 --delay 10 --halt now,success=1 'osc results|G -E "(Debian|Ubuntu).*{}"'
+ cd home-tange/parallel/ && echo succeeded | parallel -vj1 --retries 30 --delay 10 --halt now,success=1 'osc results|G -E "(Debian|Ubuntu).*{}"'
echo '### Wait for "finished" state of .rpm'
- cd home\:tange/parallel/ && echo succeeded | parallel -vj1 --retries 30 --delay 10 --halt now,success=1 'osc results|G -E "(SUSE|SLE|Scientific|RHEL|Fedora|CentOS).*{}"'
+ cd home-tange/parallel/ && echo succeeded | parallel -vj1 --retries 30 --delay 10 --halt now,success=1 'osc results|G -E "(SUSE|SLE|Scientific|RHEL|Fedora|CentOS).*{}"'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/home-tange/.osc/_apiurl
^
|
(renamed from upstream/packager/obs/home:tange/parallel/.osc/_apiurl)
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/home-tange/.osc/_packages
^
|
(renamed from upstream/packager/obs/home:tange/.osc/_packages)
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/home-tange/.osc/_project
^
|
(renamed from upstream/packager/obs/home:tange/parallel/.osc/_project)
|
[-]
[+]
|
Added |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/home-tange/parallel/.osc/_apiurl
^
|
@@ -0,0 +1 @@
+https://api.opensuse.org
|
[-]
[+]
|
Added |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/home-tange/parallel/.osc/_files
^
|
@@ -0,0 +1,6 @@
+<directory name="parallel" rev="347" vrev="2" srcmd5="803d9855154ec525873bed4782299c57">
+ <entry name="PKGBUILD" md5="20e14c8cccb155e3face39ed1a5f8e32" size="1866" mtime="1661195576" />
+ <entry name="parallel-20220822.tar.bz2" md5="df66fc183b6abddcf3d096d3d9c7e3fd" size="2389868" mtime="1661195576" />
+ <entry name="parallel.spec" md5="5782a2e9ee73bd3bf2b3824dc7fe9b61" size="6224" mtime="1661195576" />
+ <entry name="parallel_20220822.tar.gz" md5="b4907f90688afd39e7e8ce14650e7209" size="2646757" mtime="1661195577" />
+</directory>
|
[-]
[+]
|
Added |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/home-tange/parallel/.osc/_meta
^
|
@@ -0,0 +1,59 @@
+<package name="parallel" project="home:tange">
+ <title>GNU Parallel</title>
+ <description>= About GNU Parallel =
+
+GNU Parallel is a shell tool for executing jobs in parallel using one or more computers. A job is can be a single command or a small script that has to be run for each of the lines in the input. The typical input is a list of files, a list of hosts, a list of users, a list of URLs, or a list of tables. A job can also be a command that reads from a pipe. GNU Parallel can then split the input and pipe it into commands in parallel.
+
+If you use xargs and tee today you will find GNU Parallel very easy to use as GNU Parallel is written to have the same options as xargs. If you write loops in shell, you will find GNU Parallel may be able to replace most of the loops and make them run faster by running several jobs in parallel. GNU Parallel can even replace nested loops.
+
+GNU Parallel makes sure output from the commands is the same output as you would get had you run the commands sequentially. This makes it
+possible to use output from GNU Parallel as input for other programs.
+
+You can find more about GNU Parallel at: http://www.gnu.org/s/parallel/
+
+Watch the intro video on http://www.youtube.com/playlist?list=PL284C9FF2488BC6D1 or walk through the tutorial http://www.gnu.org/software/parallel/parallel_tutorial.html
+
+When using GNU Parallel for a publication please cite as per: 'parallel --citation'
+
+
+= About GNU SQL =
+
+GNU sql aims to give a simple, unified interface for accessing databases through all the different databases' command line clients. So far the focus has been on giving a common way to specify login information (protocol, username, password, hostname, and port number), size (database and table size), and running queries.
+
+The database is addressed using a DBURL. If commands are left out you will get that database's interactive shell.
+
+When using GNU SQL for a publication please cite:
+
+O. Tange (2011): GNU SQL - A Command Line Tool for Accessing Different Databases Using DBURLs, ;login: The USENIX Magazine, April 2011:29-32.
+
+
+= About GNU Niceload =
+
+GNU niceload slows down a program when the computer load average (or other system activity) is above a certain limit. When the limit is reached the program will be suspended for some time. If the limit is a soft limit the program will be allowed to run for short amounts of time before being suspended again. If the limit is a hard limit the program will only be allowed to run when the system is below the limit.
+</description>
+ <person userid="tange" role="bugowner"/>
+ <person userid="tange" role="maintainer"/>
+ <build>
+ <enable repository="Debian_5.0"/>
+ <enable repository="Debian_Etch"/>
+ <enable repository="Fedora_12"/>
+ <disable arch="ppc64"/>
+ <disable arch="ppc64" repository="Debian_5.0"/>
+ <disable arch="ppc64" repository="CentOS_CentOS-5"/>
+ <disable repository="Arch_Core"/>
+ <disable arch="armv7l" repository="openSUSE_Leap_15.0_Ports"/>
+ <disable arch="ppc" repository="openSUSE_Factory"/>
+ <disable arch="ppc" repository="SLE_11_SP1"/>
+ <disable arch="ppc" repository="SLE_11"/>
+ <disable arch="ppc" repository="SLE_10_SDK"/>
+ <disable arch="ppc" repository="RedHat_RHEL-5"/>
+ </build>
+ <publish>
+ <disable repository="Arch_Core"/>
+ </publish>
+ <debuginfo>
+ <disable/>
+ </debuginfo>
+ <url>http://www.gnu.org/software/parallel/</url>
+</package>
+
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/home-tange/parallel/.osc/_osclib_version
^
|
(renamed from upstream/packager/obs/home:tange/parallel/.osc/_osclib_version)
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/home-tange/parallel/.osc/_package
^
|
(renamed from upstream/packager/obs/home:tange/parallel/.osc/_package)
|
[-]
[+]
|
Added |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/home-tange/parallel/.osc/_project
^
|
@@ -0,0 +1 @@
+home:tange
|
[-]
[+]
|
Added |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/obs/home-tange/parallel/.osc/parallel.spec
^
|
@@ -0,0 +1,140 @@
+
+Summary: Shell tool for executing jobs in parallel
+Name: parallel
+Version: 20220822
+Release: 2.2
+License: GPL-3.0-or-later
+Group: Productivity/File utilities
+URL: ftp://ftp.gnu.org/gnu/parallel
+Source0: %{name}_%{version}.tar.gz
+BuildArch: noarch
+BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
+
+%description
+GNU Parallel is a shell tool for executing jobs in parallel using one
+or more computers. A job can be a single command or a small script
+that has to be run for each of the lines in the input. The typical
+input is a list of files, a list of hosts, a list of users, a list of
+URLs, or a list of tables. A job can also be a command that reads from
+a pipe. GNU Parallel can then split the input and pipe it into
+commands in parallel.
+
+If you use xargs and tee today you will find GNU Parallel very easy to
+use as GNU Parallel is written to have the same options as xargs. If
+you write loops in shell, you will find GNU Parallel may be able to
+replace most of the loops and make them run faster by running several
+jobs in parallel.
+
+GNU Parallel makes sure output from the commands is the same output as
+you would get had you run the commands sequentially. This makes it
+possible to use output from GNU Parallel as input for other programs.
+
+For each line of input GNU Parallel will execute command with the line
+as arguments. If no command is given, the line of input is
+executed. Several lines will be run in parallel. GNU Parallel can
+often be used as a substitute for xargs or cat | bash.
+
+%prep
+if [ "${RPM_BUILD_ROOT}x" == "x" ]; then
+ echo "RPM_BUILD_ROOT empty, bad idea!"
+ exit 1
+fi
+if [ "${RPM_BUILD_ROOT}" == "/" ]; then
+ echo "RPM_BUILD_ROOT is set to "/", bad idea!"
+ exit 1
+fi
+%setup -q
+
+%build
+./configure
+make
+
+%install
+rm -rf $RPM_BUILD_ROOT
+make install prefix=$RPM_BUILD_ROOT%{_prefix} exec_prefix=$RPM_BUILD_ROOT%{_prefix} \
+ datarootdir=$RPM_BUILD_ROOT%{_prefix} docdir=$RPM_BUILD_ROOT%{_docdir} \
+ mandir=$RPM_BUILD_ROOT%{_mandir}
+
+rm $RPM_BUILD_ROOT%{_docdir}/parallel.html
+rm $RPM_BUILD_ROOT%{_docdir}/env_parallel.html
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_examples.html
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_tutorial.html
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_design.html
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_alternatives.html
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_book.html
+rm $RPM_BUILD_ROOT%{_docdir}/niceload.html
+rm $RPM_BUILD_ROOT%{_docdir}/sem.html
+rm $RPM_BUILD_ROOT%{_docdir}/sql.html
+rm $RPM_BUILD_ROOT%{_docdir}/parcat.html
+rm $RPM_BUILD_ROOT%{_docdir}/parset.html
+rm $RPM_BUILD_ROOT%{_docdir}/parsort.html
+rm $RPM_BUILD_ROOT%{_docdir}/parallel.texi
+rm $RPM_BUILD_ROOT%{_docdir}/env_parallel.texi
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_examples.texi
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_tutorial.texi
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_design.texi
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_alternatives.texi
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_book.texi
+rm $RPM_BUILD_ROOT%{_docdir}/niceload.texi
+rm $RPM_BUILD_ROOT%{_docdir}/sem.texi
+rm $RPM_BUILD_ROOT%{_docdir}/sql.texi
+rm $RPM_BUILD_ROOT%{_docdir}/parcat.texi
+rm $RPM_BUILD_ROOT%{_docdir}/parset.texi
+rm $RPM_BUILD_ROOT%{_docdir}/parsort.texi
+rm $RPM_BUILD_ROOT%{_docdir}/parallel.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/env_parallel.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_examples.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_tutorial.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_design.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_alternatives.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_book.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/niceload.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/sem.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/sql.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parcat.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parset.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parsort.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_cheat_bw.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_options_map.pdf
+rm $RPM_BUILD_ROOT%{_docdir}/parallel.rst
+rm $RPM_BUILD_ROOT%{_docdir}/env_parallel.rst
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_examples.rst
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_tutorial.rst
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_design.rst
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_alternatives.rst
+rm $RPM_BUILD_ROOT%{_docdir}/parallel_book.rst
+rm $RPM_BUILD_ROOT%{_docdir}/niceload.rst
+rm $RPM_BUILD_ROOT%{_docdir}/sem.rst
+rm $RPM_BUILD_ROOT%{_docdir}/sql.rst
+rm $RPM_BUILD_ROOT%{_docdir}/parcat.rst
+rm $RPM_BUILD_ROOT%{_docdir}/parset.rst
+rm $RPM_BUILD_ROOT%{_docdir}/parsort.rst
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr(-,root,root,-)
+/usr/bin/*
+/usr/share/bash-completion
+/usr/share/bash-completion/completions
+/usr/share/bash-completion/completions/parallel
+/usr/share/zsh
+/usr/share/zsh/site-functions
+/usr/share/zsh/site-functions/_parallel
+/usr/share/man/man1/*
+/usr/share/man/man7/*
+%doc README NEWS src/parallel.html src/env_parallel.html src/parallel_examples.html src/parallel_tutorial.html src/parallel_design.html src/parallel_alternatives.html src/parallel_book.html src/sem.html src/sql.html src/parcat.html src/parset.html src/parsort.html src/niceload.html src/parallel.texi src/env_parallel.texi src/parallel_examples.texi src/parallel_tutorial.texi src/parallel_design.texi src/parallel_alternatives.texi src/parallel_book.texi src/niceload.texi src/sem.texi src/sql.texi src/parcat.texi src/parset.texi src/parsort.texi src/parallel.pdf src/env_parallel.pdf src/parallel_examples.pdf src/parallel_tutorial.pdf src/parallel_design.pdf src/parallel_alternatives.pdf src/parallel_book.pdf src/niceload.pdf src/sem.pdf src/sql.pdf src/parcat.pdf src/parset.pdf src/parsort.pdf src/parallel_cheat_bw.pdf src/parallel_options_map.pdf src/parallel.rst src/env_parallel.rst src/parallel_examples.rst src/parallel_tutorial.rst src/parallel_design.rst src/parallel_alternatives.rst src/parallel_book.rst src/niceload.rst src/sem.rst src/sql.rst src/parcat.rst src/parset.rst src/parsort.rst
+
+%changelog
+* Sat Jan 22 2011 Ole Tange
+- Upgrade to 20110122
+* Wed Dec 22 2010 Ole Tange
+- Upgrade to 20101222
+* Wed Sep 22 2010 Ole Tange
+- Upgrade to 20100922
+* Mon Sep 06 2010 Ole Tange
+- Upgrade to current git-version of source. Tested on build.opensuse.org
+* Fri Aug 27 2010 Ole Tange
+- Untested upgrade to current git-version of source.
+
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/packager/releasescripts/updateversion
^
|
@@ -15,7 +15,7 @@
export MON=`date +%b`
export MONTH=`date +%B`
TAG=$(echo $SPCTAG | perl -pe 's/ //g')
- echo Tag=$TAG = "$SPCTAG" Date:$YYYYMMDD Year:$YYYY Mon:$MON Month:$MONTH DOI:$DOI
+ echo Tag=$TAG=\"$SPCTAG\" Date:$YYYYMMDD Year:$YYYY Mon:$MON Month:$MONTH DOI:$DOI
export TITLE="GNU Parallel $YYYYMMDD ('$SPCTAG')"
if [ -z "$DOINO" ] ; then
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/env_parallel.ash
^
|
@@ -395,7 +395,7 @@
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
- echo "parset 20220522 (GNU parallel `parallel --minversion 1`)"
+ echo "parset 20220822 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/env_parallel.bash
^
|
@@ -397,7 +397,7 @@
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
- echo "parset 20220522 (GNU parallel `parallel --minversion 1`)"
+ echo "parset 20220822 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/env_parallel.dash
^
|
@@ -395,7 +395,7 @@
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
- echo "parset 20220522 (GNU parallel `parallel --minversion 1`)"
+ echo "parset 20220822 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/env_parallel.ksh
^
|
@@ -378,7 +378,7 @@
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
- echo "parset 20220522 (GNU parallel `parallel --minversion 1`)"
+ echo "parset 20220822 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/env_parallel.mksh
^
|
@@ -380,7 +380,7 @@
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
- echo "parset 20220522 (GNU parallel `parallel --minversion 1`)"
+ echo "parset 20220822 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/env_parallel.sh
^
|
@@ -395,7 +395,7 @@
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
- echo "parset 20220522 (GNU parallel `parallel --minversion 1`)"
+ echo "parset 20220822 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/env_parallel.zsh
^
|
@@ -370,7 +370,7 @@
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
- echo "parset 20220522 (GNU parallel `parallel --minversion 1`)"
+ echo "parset 20220822 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/niceload
^
|
@@ -26,7 +26,7 @@
use strict;
use Getopt::Long;
$Global::progname="niceload";
-$Global::version = 20220522;
+$Global::version = 20220822;
Getopt::Long::Configure("bundling","require_order");
get_options_from_array(\@ARGV) || die_usage();
if($opt::version) {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/parallel
^
|
@@ -38,7 +38,7 @@
sub set_input_source_header($$) {
my ($command_ref,$input_source_fh_ref) = @_;
- if($opt::header and not $opt::pipe) {
+ if(defined $opt::header and not $opt::pipe) {
# split with colsep or \t
# $header force $colsep = \t if undef?
my $delimiter = defined $opt::colsep ? $opt::colsep : "\t";
@@ -48,30 +48,53 @@
# regexp for =}
my $right = "\Q$Global::parensright\E";
my $r = $Global::parensright;
- my $id = 1;
- for my $fh (@$input_source_fh_ref) {
- my $line = <$fh>;
- chomp($line);
- $line =~ s/\r$//;
- ::debug("init", "Delimiter: '$delimiter'");
- for my $s (split /$delimiter/o, $line) {
- ::debug("init", "Colname: '$s'");
- # Replace {colname} with {2}
- for(@$command_ref, @Global::ret_files,
- @Global::transfer_files, $opt::tagstring,
- $opt::workdir, $opt::results, $opt::retries,
- @Global::template_contents, @Global::template_names,
- @opt::filter) {
- # Skip if undefined
- $_ or next;
- s:\{$s(|/|//|\.|/\.)\}:\{$id$1\}:g;
- # {=header1 ... =} => {=1 ... =}
- s:$left $s (.*?) $right:$l$id$1$r:gx;
+ if($opt::header ne "0") {
+ my $id = 1;
+ for my $fh (@$input_source_fh_ref) {
+ my $line = <$fh>;
+ chomp($line);
+ $line =~ s/\r$//;
+ ::debug("init", "Delimiter: '$delimiter'");
+ for my $s (split /$delimiter/o, $line) {
+ ::debug("init", "Colname: '$s'");
+ # Replace {colname} with {2}
+ for(@$command_ref, @Global::ret_files,
+ @Global::transfer_files, $opt::tagstring,
+ $opt::workdir, $opt::results, $opt::retries,
+ @Global::template_contents, @Global::template_names,
+ @opt::filter) {
+ # Skip if undefined
+ $_ or next;
+ s:\{$s(|/|//|\.|/\.)\}:\{$id$1\}:g;
+ # {=header1 ... =} => {=1 ... =}
+ s:$left $s (.*?) $right:$l$id$1$r:gx;
+ }
+ $Global::input_source_header{$id} = $s;
+ $id++;
}
- $Global::input_source_header{$id} = $s;
- $id++;
}
}
+ # Make it possible to do:
+ # parallel --header 0 echo {file2} {file1} :::: file1 file2
+ my $id = 1;
+ for my $s (@opt::a) {
+ # ::: are put into files and given a filehandle
+ # ignore these and only keep the filenames.
+ fileno $s and next;
+ for(@$command_ref, @Global::ret_files,
+ @Global::transfer_files, $opt::tagstring,
+ $opt::workdir, $opt::results, $opt::retries,
+ @Global::template_contents, @Global::template_names,
+ @opt::filter) {
+ # Skip if undefined
+ $_ or next;
+ s:\{$s(|/|//|\.|/\.)\}:\{$id$1\}:g;
+ # {=header1 ... =} => {=1 ... =}
+ s:$left $s (.*?) $right:$l$id$1$r:gx;
+ }
+ $Global::input_source_header{$id} = $s;
+ $id++;
+ }
} else {
my $id = 1;
for my $fh (@$input_source_fh_ref) {
@@ -179,7 +202,10 @@
int($size / max_jobs_running() /
-multiply_binary_prefix($opt::blocksize));
}
- @Global::cat_prepends = map { pipe_part_files($_) } @opt::a;
+ @Global::cat_prepends = (map { pipe_part_files($_) }
+ # ::: are put into files and given a filehandle
+ # ignore these and only keep the filenames.
+ grep { ! fileno $_ } @opt::a);
# Unget the empty arg as many times as there are parts
$Global::JobQueue->{'commandlinequeue'}{'arg_queue'}->unget(
map { [Arg->new("\0noarg")] } @Global::cat_prepends
@@ -1819,8 +1845,12 @@
("tag-string|tagstring=s".
"[Tag lines with a string]:str" => \$opt::tagstring),
"ctag[Color tag]:str" => \$opt::ctag,
- "ctag-string|ctagstring=s[Color tagstring]:str" => \$opt::ctagstring,
- "color|colour[Colorize output]" => \$opt::color,
+ "ctag-string|ctagstring=s[Colour tagstring]:str" => \$opt::ctagstring,
+ "color|colour[Colourize output]" => \$opt::color,
+ ("color-failed|colour-failed|colorfailed|colourfailed|".
+ "color-fail|colour-fail|colorfail|colourfail|cf".
+ "[Colour failed jobs red]"
+ => \$opt::colorfailed),
("onall[Run all the jobs on all computers given with --sshlogin]"
=> \$opt::onall),
"nonall[--onall with no arguments]" => \$opt::nonall,
@@ -2212,9 +2242,7 @@
$Global::cache_replacement_eval = 0;
}
}
- if(defined $opt::interactive) {
- $Global::interactive = $opt::interactive;
- }
+ if(defined $opt::interactive) { $Global::interactive = $opt::interactive; }
if(defined $opt::quote) { $Global::quoting = 1; }
if(defined $opt::r) { $Global::ignore_empty = 1; }
if(defined $opt::verbose) { $Global::stderr_verbose = 1; }
@@ -2322,8 +2350,7 @@
$opt::memsuspend = multiply_binary_prefix($opt::memsuspend);
$Global::memlimit = $opt::memsuspend + $opt::memfree;
check_invalid_option_combinations();
- if((defined $opt::fifo or defined $opt::cat)
- and not $opt::pipepart) {
+ if((defined $opt::fifo or defined $opt::cat) and not $opt::pipepart) {
$opt::pipe = 1;
}
if(defined $opt::minversion) {
@@ -2654,7 +2681,7 @@
sub init_globals() {
# Defaults:
- $Global::version = 20220522;
+ $Global::version = 20220822;
$Global::progname = 'parallel';
$::name = "GNU Parallel";
$Global::infinity = 2**31;
@@ -2676,8 +2703,8 @@
'{//}' =>
('$Global::use{"File::Basename"} ||= eval "use File::Basename; 1;"; '.
'$_ = dirname($_);'),
- '{/.}' => 's:.*/::; s:\.[^/.]+$::;',
- '{.}' => 's:\.[^/.]+$::',
+ '{/.}' => 's:.*/::; s:\.[^/.]*$::;',
+ '{.}' => 's:\.[^/.]*$::',
);
%Global::plus =
(
@@ -2689,12 +2716,12 @@
# a.b => b; a => ''
'{+.}' => 's:.*\.:: || s:.*$::',
# a.b.c => b.c; a.b => ''; a => ''
- '{+..}' => 's:.*\.([^/.]+\.[^/.]+)$:$1: || s:.*$::',
- '{+...}' => 's:.*\.([^/.]+\.[^/.]+\.[^/.]+)$:$1: || s:.*$::',
- '{..}' => 's:\.[^/.]+\.[^/.]+$::',
- '{...}' => 's:\.[^/.]+\.[^/.]+\.[^/.]+$::',
- '{/..}' => 's:.*/::; s:\.[^/.]+\.[^/.]+$::',
- '{/...}' => 's:.*/::; s:\.[^/.]+\.[^/.]+\.[^/.]+$::',
+ '{+..}' => 's:.*\.([^/.]*\.[^/.]*)$:$1: || s:.*$::',
+ '{+...}' => 's:.*\.([^/.]*\.[^/.]*\.[^/.]*)$:$1: || s:.*$::',
+ '{..}' => 's:\.[^/.]*\.[^/.]*$::',
+ '{...}' => 's:\.[^/.]*\.[^/.]*\.[^/.]*$::',
+ '{/..}' => 's:.*/::; s:\.[^/.]*\.[^/.]*$::',
+ '{/...}' => 's:.*/::; s:\.[^/.]*\.[^/.]*\.[^/.]*$::',
# n choose k = Binomial coefficient
'{choose_k}' => ('for $t (2..$#arg)'.
'{ if($arg[$t-1] ge $arg[$t]) { skip() } }'),
@@ -2731,7 +2758,13 @@
# Bash ${a%%def}
'{%%([^}]+?)}' => 's/$$1$//;',
# Bash ${a/def/ghi} ${a/def/}
- '{/([^}]+?)/([^}]*?)}' => 's/$$1/$$2/;',
+ '{/([^#%}/]+?)/([^}]*?)}' => 's/$$1/$$2/;',
+ # Bash ${a/#def/ghi} ${a/#def/}
+ '{/#([^}]+?)/([^}]*?)}' => 's/^$$1/$$2/g;',
+ # Bash ${a/%def/ghi} ${a/%def/}
+ '{/%([^}]+?)/([^}]*?)}' => 's/$$1$/$$2/g;',
+ # Bash ${a//def/ghi} ${a//def/}
+ '{//([^}]+?)/([^}]*?)}' => 's/$$1/$$2/g;',
# Bash ${a^a}
'{^([^}]+?)}' => 's/^($$1)/uc($1)/e;',
# Bash ${a^^a}
@@ -2775,6 +2808,10 @@
}
# no warnings to allow for undefined $XDG_*
no warnings 'uninitialized';
+ # If $PARALLEL_HOME is set, but does not exist, try making it.
+ if(defined $ENV{'PARALLEL_HOME'}) {
+ eval { File::Path::mkpath($ENV{'PARALLEL_HOME'}); };
+ }
# $xdg_config_home is needed to make env_parallel.fish stop complaining
my $xdg_config_home = $ENV{'XDG_CONFIG_HOME'};
# config_dirs = $PARALLEL_HOME, $XDG_CONFIG_HOME/parallel,
@@ -4577,7 +4614,15 @@
if(not @Global::sshlogin) { @Global::sshlogin = (":"); }
for my $sshlogin (@Global::sshlogin) {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/parallel.pod
^
|
@@ -748,7 +748,8 @@
See also: B<--basefile> B<--transfer> B<--transferfile> B<--sshlogin>
B<--return>
-=item B<--color> (alpha testing)
+
+=item B<--color> (beta testing)
Colour output.
@@ -757,6 +758,23 @@
B<--color> is ignored when using B<-u>.
+See also: B<--color-failed>
+
+
+=item B<--color-failed> (beta testing)
+
+=item B<--cf> (beta testing)
+
+Colour the output from failing jobs white on red.
+
+Useful if you have a lot of jobs and want to focus on the failing
+jobs.
+
+B<--color-failed> is ignored when using B<-u>, B<--line-buffer> and
+unreliable when using B<--latest-line>.
+
+See also: B<--color>
+
=item B<--colsep> I<regexp>
@@ -1247,7 +1265,7 @@
=back
-=item B<--header> I<regexp>
+=item B<--header> I<regexp> (alpha testing)
Use regexp as header.
@@ -1264,7 +1282,11 @@
If I<regexp> is a number, it is a fixed number of lines.
-See also: B<--colsep> B<--pipe> B<--pipe-part>
+B<--header 0> is special: It will make replacement strings for files
+given with B<--arg-file> or B<::::>. It will make B<{foo/bar}> for the
+file B<foo/bar>.
+
+See also: B<--colsep> B<--pipe> B<--pipe-part> B<--arg-file>
=item B<--hostgroups>
@@ -1569,9 +1591,9 @@
See also: B<--line-buffer>
-=item B<--line-buffer> (alpha testing)
+=item B<--line-buffer> (beta testing)
-=item B<--lb> (alpha testing)
+=item B<--lb> (beta testing)
Buffer output on line basis.
@@ -1811,9 +1833,9 @@
See also: B<--nonall> B<--sshlogin>
-=item B<--open-tty> (alpha testing)
+=item B<--open-tty>
-=item B<-o> (alpha testing)
+=item B<-o>
Open terminal tty.
@@ -1912,7 +1934,7 @@
See also: B<--profile>
-=item B<--plus>
+=item B<--plus> (alpha testing)
Add more replacement strings.
@@ -1937,32 +1959,33 @@
Shorthands for variables:
- {slot} $PARALLEL_JOBSLOT (see {%})
- {sshlogin} $PARALLEL_SSHLOGIN
- {host} $PARALLEL_SSHHOST
- {agrp} $PARALLEL_ARGHOSTGROUPS
- {hgrp} $PARALLEL_HOSTGROUPS
+ {slot} $PARALLEL_JOBSLOT (see {%})
+ {sshlogin} $PARALLEL_SSHLOGIN
+ {host} $PARALLEL_SSHHOST
+ {agrp} $PARALLEL_ARGHOSTGROUPS
+ {hgrp} $PARALLEL_HOSTGROUPS
The following dynamic replacement strings are also activated. They are
inspired by bash's parameter expansion:
- {:-str} str if the value is empty
- {:num} remove the first num characters
- {:pos:len} substring from position pos length len
- {#regexp} remove prefix regexp (non-greedy)
- {##regexp} remove prefix regexp (greedy)
- {%regexp} remove postfix regexp (non-greedy)
- {%%regexp} remove postfix regexp (greedy)
- {/regexp/str} replace regexp with str
- {^str} uppercase str if found at the start
- {^^str} uppercase str
- {,str} lowercase str if found at the start
- {,,str} lowercase str
+ {:-str} str if the value is empty
+ {:num} remove the first num characters
+ {:pos:len} substring from position pos length len
+ {#regexp} remove prefix regexp (non-greedy)
+ {##regexp} remove prefix regexp (greedy)
+ {%regexp} remove postfix regexp (non-greedy)
+ {%%regexp} remove postfix regexp (greedy)
+ {/regexp/str} replace one regexp with str
+ {//regexp/str} replace every regexp with str
+ {^str} uppercase str if found at the start
+ {^^str} uppercase str
+ {,str} lowercase str if found at the start
+ {,,str} lowercase str
See also: B<--rpl> B<{}>
-=item B<--process-slot-var> I<varname> (alpha testing)
+=item B<--process-slot-var> I<varname>
Set the environment variable I<varname> to the jobslot number-1.
@@ -2470,7 +2493,7 @@
See also: B<--term-seq> B<--sshlogin>
-=item B<--return> I<filename>
+=item B<--return> I<filename> (alpha testing)
Transfer files from remote computers.
@@ -2845,7 +2868,7 @@
See also: B<--shebang>
-=item B<--shell-completion> I<shell> (alpha testing)
+=item B<--shell-completion> I<shell> (beta testing)
Generate shell completion code for interactive shells.
@@ -2994,13 +3017,13 @@
See also: TIME POSTFIXES B<--sshlogin> B<--delay>
-=item B<--sshlogin> I<[@hostgroups/][ncpus/]sshlogin[,[@hostgroups/][ncpus/]sshlogin[,...]]>
+=item B<--sshlogin> I<[@hostgroups/][ncpus/]sshlogin[,[@hostgroups/][ncpus/]sshlogin[,...]]> (alpha testing)
-=item B<--sshlogin> I<@hostgroup>
+=item B<--sshlogin> I<@hostgroup> (alpha testing)
-=item B<-S> I<[@hostgroups/][ncpus/]sshlogin[,[@hostgroups/][ncpus/]sshlogin[,...]]>
+=item B<-S> I<[@hostgroups/][ncpus/]sshlogin[,[@hostgroups/][ncpus/]sshlogin[,...]]> (alpha testing)
-=item B<-S> I<@hostgroup>
+=item B<-S> I<@hostgroup> (alpha testing)
Distribute jobs to remote computers.
@@ -3039,6 +3062,9 @@
To specify more sshlogins separate the sshlogins by comma, newline (in
the same string), or repeat the options multiple times.
+GNU B<parallel> splits on , (comma) so if your sshlogin contains ,
+(comma) you need to replace it with \, or ,,
+
For examples: see B<--sshloginfile>.
The remote host must have GNU B<parallel> installed.
@@ -3302,7 +3328,7 @@
See also: B<-v> B<--interactive>
-=item B<--transfer>
+=item B<--transfer> (alpha testing)
Transfer files to remote computers.
@@ -3311,9 +3337,9 @@
See also: B<--transferfile>.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/parallel_alternatives.pod
^
|
@@ -3436,6 +3436,81 @@
(Last checked: 2022-04)
+=head2 DIFFERENCES BETWEEN senechal AND GNU Parallel
+
+Summary (see legend above):
+
+=over
+
+=item I1 - - - - - -
+
+=item M1 - M3 - - M6
+
+=item O1 - O3 O4 - - - x x -
+
+=item E1 - - - - - -
+
+=item - - - - - - - - -
+
+=item - -
+
+=back
+
+B<seneschal> only starts the first job after reading the last job, and
+output from the first job is only printed after the last job finishes.
+
+1 byte of output requites 3.5 bytes of RAM.
+
+This makes it impossible to have a total output bigger than the
+virtual memory.
+
+Even though output is kept in RAM outputing is quite slow: 30 MB/s.
+
+Output larger than 4 GB causes random problems - it looks like a race
+condition.
+
+This:
+
+ echo 1 | seneschal --prefix='yes `seq 1000`|head -c 1G' >/dev/null
+
+takes 4100(!) CPU seconds to run on a 64C64T server, but only 140 CPU
+seconds on a 4C8T laptop. So it looks like B<seneschal> wastes a lot
+of CPU time coordinating the CPUs.
+
+Compare this to:
+
+ echo 1 | time -v parallel -N0 'yes `seq 1000`|head -c 1G' >/dev/null
+
+which takes 3-8 CPU seconds.
+
+=head3 EXAMPLES FROM seneschal README.md
+
+ 1$ echo $REPOS | seneschal --prefix="cd {} && git pull"
+
+ # If $REPOS is newline separated
+ 1$ echo "$REPOS" | parallel -k "cd {} && git pull"
+ # If $REPOS is space separated
+ 1$ echo -n "$REPOS" | parallel -d' ' -k "cd {} && git pull"
+
+ COMMANDS="pwd
+ sleep 5 && echo boom
+ echo Howdy
+ whoami"
+
+ 2$ echo "$COMMANDS" | seneschal --debug
+
+ 2$ echo "$COMMANDS" | parallel -k -v
+
+ 3$ ls -1 | seneschal --prefix="pushd {}; git pull; popd;"
+
+ 3$ ls -1 | parallel -k "pushd {}; git pull; popd;"
+ # Or if current dir also contains files:
+ 3$ parallel -k "pushd {}; git pull; popd;" ::: */
+
+https://github.com/TheWizardTower/seneschal
+(Last checked: 2022-06)
+
+
=head2 Todo
http://code.google.com/p/push/ (cannot compile)
@@ -3467,6 +3542,7 @@
https://github.com/chapmanjacobd/que
+
=head1 TESTING OTHER TOOLS
There are certain issues that are very common on parallelizing
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/parsort
^
|
@@ -122,17 +122,18 @@
"help" => \$opt::dummy,
) || exit(255);
$Global::progname = ($0 =~ m:(^|/)([^/]+)$:)[1];
-$Global::version = 20220522;
+$Global::version = 20220822;
if($opt::version) { version(); exit 0; }
@Global::sortoptions = grep { ! /^-D$/ }
shell_quote(@ARGV_before[0..($#ARGV_before-$#ARGV-1)]);
-#if($opt::zero_terminated) { $/ = "\0"; }
$ENV{'TMPDIR'} ||= "/tmp";
sub merge {
# Input:
# @cmd = commands to 'cat' (part of) a file
+ # 'cat a' 'cat b' 'cat c' =>
+ # sort -m <(sort -m <(cat a) <(cat b)) <(sort -m <(cat c))
my @cmd = @_;
chomp(@cmd);
while($#cmd > 0) {
@@ -155,8 +156,11 @@
# Input is files
my @files = @_;
# Let GNU Parallel generate the commands to read parts of files
- # The commands split at \n and there will be at least one for each CPU thread
- open(my $par,"-|",qw(parallel --pipepart --block -1 --dryrun -vv sort),
+ # The commands split at \n (or \0)
+ # and there will be at least one for each CPU thread
+ my @subopt = $opt::zero_terminated ? qw(--recend "\0") : ();
+ open(my $par,"-|",qw(parallel), @subopt,
+ qw(--pipepart --block -1 --dryrun -vv sort),
@Global::sortoptions, '::::', @files) || die;
my @cmd = merge(<$par>);
close $par;
@@ -181,7 +185,8 @@
@cmd = merge(@cmd);
if(fork) {
} else {
- exec(qw(parallel -j),$numthreads,
+ my @subopt = $opt::zero_terminated ? qw(--recend "\0") : ();
+ exec(qw(parallel -j), $numthreads, @subopt,
# 286k is the best mean value after testing 250..350
qw(--block 286k --pipe --roundrobin cat > {} :::),@fifos);
}
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/pod2rst-fix
^
|
@@ -66,6 +66,13 @@
/^\#/ and next;
# quote -
s/^=item -/=item \001/;
+
+ if(/^ /) {
+ # ignore source blocks
+ } else {
+ # \\ => \
+ s/\\/\\\\/g;
+ }
print;
}
}
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/src/sql
^
|
@@ -76,6 +76,11 @@
Example: echo 'SELECT * FROM foo;' | sql mysql:///
+=item B<--csv> (alpha testing)
+
+CSV output.
+
+
=item B<--db-size>
=item B<--dbsize>
@@ -97,30 +102,37 @@
HTML output. Turn on HTML tabular output.
-=item B<--show-processlist>
+=item B<--json> (alpha testing)
-=item B<--proclist>
+=item B<--pretty> (alpha testing)
-=item B<--listproc>
+Pretty JSON output.
-Show the list of running queries.
+=item B<--list-databases>
+
+=item B<--listdbs>
=item B<--show-databases>
=item B<--showdbs>
-=item B<--list-databases>
+List the databases (table spaces) in the database.
-=item B<--listdbs>
-List the databases (table spaces) in the database.
+=item B<--listproc>
+=item B<--proclist>
+
+=item B<--show-processlist>
+
+Show the list of running queries.
-=item B<--show-tables>
=item B<--list-tables>
+=item B<--show-tables>
+
=item B<--table-list>
List the tables in the database.
@@ -145,6 +157,14 @@
I<-p "-U scott"> can also be written I<-p -U -p scott>.
+=item B<--precision> <I<rfc3339|h|m|s|ms|u|ns>>
+
+Precision of timestamps.
+
+Specifiy the format of the output timestamps: rfc3339, h, m, s, ms, u
+or ns.
+
+
=item B<-r>
Try 3 times. Short version of I<--retries 3>.
@@ -215,7 +235,9 @@
containing '/' would contain '%2F').
Examples:
+
mysql://scott:tiger@my.example.com/mydb
+ influxdb://scott:tiger@influxdb.example.com/foo
sql:oracle://scott:tiger@ora.example.com/xe
postgresql://scott:tiger@pg.example.com/pgdb
pg:///
@@ -227,7 +249,8 @@
mysqlssl), Oracle (oracle, ora), PostgreSQL (postgresql, pg, pgsql,
postgres), PostgreSQL with SSL (postgresqlssl, pgs, pgsqlssl,
postgresssl, pgssl, postgresqls, pgsqls, postgress), SQLite2 (sqlite,
-sqlite2), SQLite3 (sqlite3).
+sqlite2), SQLite3 (sqlite3), InfluxDB 1.x (influx, influxdb), InfluxDB
+with SSL (influxdbssl, influxdbs, influxs, influxssl)
Aliases must start with ':' and are read from
/etc/sql/aliases and ~/.sql/aliases. The user's own
@@ -491,7 +514,8 @@
=head1 SEE ALSO
-B<mysql>(1), B<psql>(1), B<rlwrap>(1), B<sqlite>(1), B<sqlite3>(1), B<sqlplus>(1)
+B<mysql>(1), B<psql>(1), B<rlwrap>(1), B<sqlite>(1), B<sqlite3>(1),
+B<sqlplus>(1), B<influx>(1)
=cut
@@ -503,10 +527,7 @@
my $pass_through_options = (defined $::opt_p) ? join(" ",@{$::opt_p}) : "";
my $dburl_or_alias = shift;
-if (not defined $dburl_or_alias) {
- Usage("No DBURL given");
- exit -1;
-}
+if (not defined $dburl_or_alias) { Usage("No DBURL given"); exit -1; }
my %dburl = parse_dburl(get_alias($dburl_or_alias));
my $interactive_command;
@@ -515,15 +536,23 @@
my $database_driver = database_driver_alias($dburl{'databasedriver'});
if($database_driver eq "mysql" or
$database_driver eq "mysqlssl") {
- ($batch_command,$interactive_command) = mysql_commands($database_driver,%dburl);
+ ($batch_command,$interactive_command) =
+ mysql_commands($database_driver,%dburl);
} elsif($database_driver eq "postgresql" or
$database_driver eq "postgresqlssl") {
- ($batch_command,$interactive_command) = postgresql_commands($database_driver,%dburl);
+ ($batch_command,$interactive_command) =
+ postgresql_commands($database_driver,%dburl);
} elsif($database_driver eq "oracle") {
- ($batch_command,$interactive_command) = oracle_commands($database_driver,%dburl);
+ ($batch_command,$interactive_command) =
+ oracle_commands($database_driver,%dburl);
} elsif($database_driver eq "sqlite" or
$database_driver eq "sqlite3") {
- ($batch_command,$interactive_command) = sqlite_commands($database_driver,%dburl);
+ ($batch_command,$interactive_command) =
+ sqlite_commands($database_driver,%dburl);
+} elsif($database_driver eq "influx" or
+ $database_driver eq "influxssl") {
+ ($batch_command,$interactive_command) =
+ influx_commands($database_driver,%dburl);
}
my $err;
@@ -561,34 +590,72 @@
$batch_command = "(cat $queryfile;rm $queryfile; cat) | $batch_command";
}
+sub shell_quote($) {
+ # Quote for other shells (Bourne compatibles)
+ # Inputs:
+ # $string = string to be quoted
+ # Returns:
+ # $shell_quoted = string quoted as needed by the shell
+ my $s = $_[0];
+ if($s =~ /[^-_.+a-z0-9\/]/i) {
+ $s =~ s/'/'"'"'/g; # "-quote single quotes
+ $s = "'$s'"; # '-quote entire string
+ $s =~ s/^''//; # Remove unneeded '' at ends
+ $s =~ s/''$//; # (faster than s/^''|''$//g)
+ return $s;
+ } elsif ($s eq "") {
+ return "''";
+ } else {
+ # No quoting needed
+ return $s;
+ }
+}
+
do {
- if (is_stdin_terminal()) {
- if(@ARGV) {
- open(M,"| $batch_command") || die("mysql/psql/sqlplus not in path");
+ if(@ARGV) {
+ # SQL Commands given as arguments:
+ # Run those commands
+ $::opt_debug and print "[ | $batch_command]\n";
+ $::opt_verbose and print "[ | $batch_command]\n";
+ if($database_driver eq "influx" or $database_driver eq "influxssl") {
+ # Influx currently cannot read commands from stdin
for(@ARGV) {
s/\\n/\n/g;
s/\\x0a/\n/gi;
- print M "$_\n";
+ $::opt_debug and print "[$batch_command -execute $_]\n";
+ system("$batch_command -execute ".shell_quote($_));
}
- close M;
} else {
- $::opt_debug and print "$interactive_command\n";
- $::opt_verbose and print "$interactive_command\n";
- system("$interactive_command");
- }
- } else {
- if(@ARGV) {
- open(M,"| $batch_command") || die("mysql/psql/sqlplus not in path");
+ open(M,"| $batch_command") ||
+ die("mysql/psql/sqlplus/influx not in path");
for(@ARGV) {
s/\\n/\n/g;
s/\\x0a/\n/gi;
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/REQUIREMENTS
^
|
@@ -35,10 +35,10 @@
# Shells
# (csh = bsd-csh that is broken)
shell_pkgs="ash dash fdclone fish fizsh ksh ksh93u+m ksh93 mksh posh rc rush sash"
- shell_pkgs="$shell_pkgs tcsh yash zsh"
+ shell_pkgs="$shell_pkgs tcsh yash zsh busybox-static"
# Databases
- database_pkgs="postgresql mysql-server sqlite"
+ database_pkgs="postgresql mysql-server sqlite influxdb influxdb-client"
# Build Tools
build_pkgs="bison libxxhash-dev libzstd-dev liblz4-dev libssl-dev"
@@ -187,7 +187,7 @@
echo '# (Re-)create user'
# Racecondition: if multiple adds a group it will the same group ID
- shellsplus |
+ (shellsplus; echo withpassword) |
parallel --lb --halt soon,fail=1 --timeout 1000% --retries 5 --tag -j1 del_add_user ||
(echo Creation failed: $?; false)
}
|
|
Added |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/input-files/testdir.tar.bz2
^
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-0.3s.sh
^
|
@@ -16,6 +16,30 @@
# Test amount of parallelization
# parallel --shuf --jl /tmp/myjl -j1 'export JOBS={1};'bash tests-to-run/parallel-local-0.3s.sh ::: {1..16} ::: {1..5}
+par_PARALLEL_HOME_not_exist() {
+ echo '### bug #62311: --pipepart + ::: fail'
+ tmp1=$(mktemp)
+ rm $tmp1
+ PARALLEL_HOME=$tmp1 parallel echo ::: OK
+ rm -r $tmp1
+ echo Should warn:
+ PARALLEL_HOME=/does-not-exist parallel -k echo ::: should warn
+}
+
+par_colour_failed() {
+ echo '--colour-failed --colour'
+ parallel --colour-failed -kv 'seq {1};exit {2}' ::: 1 2 ::: 0 1 2
+ parallel --colour --colour-failed -kv 'seq {1};exit {2}' ::: 1 2 ::: 0 1 2
+}
+
+par_pipepart_triple_colon() {
+ echo '### bug #62311: --pipepart + ::: fail'
+ tmp1=$(mktemp)
+ seq 3 >$tmp1
+ parallel --pipepart -a $tmp1 wc ::: a
+ rm $tmp1
+}
+
par_open-tty() {
echo '### bug #62310: xargs compatibility: --open-tty'
parallel --open-tty ::: tty
@@ -39,32 +63,6 @@
parallel --ctagstring 'I{1}\tB{2}' echo ::: 1 ::: a | wc -c
}
-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
-
- 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_env_parallel_pipefail() {
cat <<'EOF' | bash
echo "### test env_parallel with pipefail + inherit_errexit"
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-10s.sh
^
|
@@ -42,36 +42,6 @@
seq 20000000 | parallel -j8 --block 10M --round-robin --pipe wc -c | wc -l
}
-par_test_diff_roundrobin_k() {
- echo '### test there is difference on -k'
- . $(which env_parallel.bash)
- mytest() {
- K=$1
- doit() {
- # Sleep random time ever 1k line
- # to mix up which process gets the next block
- perl -ne '$t++ % 1000 or select(undef, undef, undef, rand()/10);print' |
- md5sum
- }
- export -f doit
- seq 1000000 |
- parallel --block 65K --pipe $K --roundrobin doit |
- sort
- }
- export -f mytest
- parset a,b,c mytest ::: -k -k ''
- # a == b and a != c or error
- if [ "$a" == "$b" ]; then
- if [ "$a" != "$c" ]; then
- echo OK
- else
- echo error a c
- fi
- else
- echo error a b
- fi
-}
-
par_compress_prg_fails() {
echo '### bug #44546: If --compress-program fails: fail'
doit() {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-1s.sh
^
|
@@ -8,6 +8,66 @@
# Each should be taking 1-3s and be possible to run in parallel
# I.e.: No race conditions, no logins
+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'
+ tmp="$(mktemp)"
+ (
+ echo contest1
+ echo contest2
+ echo File name "$tmp"
+ ) > "$tmp"
+ (
+ # {filename}
+ parallel -k --header 0 echo {"$tmp"} :::: "$tmp"
+ # Conflict: both {filename} and {/regexp/rpl}
+ parallel -k --plus echo {"$tmp"} :::: "$tmp"
+ parallel -k --header 0 --plus echo {"$tmp"} :::: "$tmp"
+ tmpd="$(mktemp -d)"
+ cd "$tmpd"
+ # Conflict: both {filename} and {n}
+ seq 1 > 1
+ seq 2 > 2
+ seq 3 > 3
+ parallel -k echo {1} :::: 3 2 1
+ parallel -k --header 0 echo {1} :::: 3 2 1
+ # Conflict: both {filename} and {=expr=}
+ seq 3 > =chop=
+ parallel -k echo {=chop=} ::: =chop=
+ parallel -k --header 0 echo {=chop=} ::: =chop=
+ rm -rf "$tmpd"
+ ) | perl -pe 's/tmp\.\w+/tmp.XXXXXX/g'
+ rm "$tmp"
+}
+
par_commandline_with_newline() {
echo 'bug #51299: --retry-failed with command with newline'
echo 'The format must remain the same'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-30s.sh
^
|
@@ -8,6 +8,36 @@
# Each should be taking 30-100s and be possible to run in parallel
# I.e.: No race conditions, no logins
+par_test_diff_roundrobin_k() {
+ echo '### test there is difference on -k'
+ . $(which env_parallel.bash)
+ mytest() {
+ K=$1
+ doit() {
+ # Sleep random time ever 1k line
+ # to mix up which process gets the next block
+ perl -ne '$t++ % 1000 or select(undef, undef, undef, rand()/10);print' |
+ md5sum
+ }
+ export -f doit
+ seq 1000000 |
+ parallel --block 65K --pipe $K --roundrobin doit |
+ sort
+ }
+ export -f mytest
+ parset a,b,c mytest ::: -k -k ''
+ # a == b and a != c or error
+ if [ "$a" == "$b" ]; then
+ if [ "$a" != "$c" ]; then
+ echo OK
+ else
+ echo error a c
+ fi
+ else
+ echo error a b
+ fi
+}
+
par_bin() {
echo '### Test --bin'
seq 10 | parallel --pipe --bin 1 -j4 wc | sort
@@ -442,7 +472,7 @@
parallel --plus echo {2:-myval} ::: "wrong" ::: "$myvar" ::: "wrong"
parallel --plus echo {-2:-myval} ::: "wrong" ::: "$myvar" ::: "wrong"
- myvar=abcAaAdef
+ myvar=abcAaBdefCdefDdef
echo ${myvar:2}
parallel --rpl '{:(\d+)} substr($_,0,$$1) = ""' echo {:2} ::: "$myvar"
parallel --plus echo {:2} ::: "$myvar"
@@ -488,6 +518,12 @@
parallel --plus echo {2/def/ghi} ::: "wrong" ::: "$myvar" ::: "wrong"
parallel --plus echo {-2/def/ghi} ::: "wrong" ::: "$myvar" ::: "wrong"
+ echo ${myvar//def/ghi}
+ parallel --rpl '{//(.+?)/(.+?)} s/$$1/$$2/g;' echo {//def/ghi} ::: "$myvar"
+ parallel --plus echo {//def/ghi} ::: "$myvar"
+ parallel --plus echo {2//def/ghi} ::: "wrong" ::: "$myvar" ::: "wrong"
+ parallel --plus echo {-2//def/ghi} ::: "wrong" ::: "$myvar" ::: "wrong"
+
echo ${myvar^a}
parallel --rpl '{^(.+?)} s/^($$1)/uc($1)/e;' echo {^a} ::: "$myvar"
parallel --plus echo {^a} ::: "$myvar"
@@ -510,6 +546,16 @@
parallel --plus echo '{,,A}' ::: "$myvar"
parallel --plus echo '{2,,A}' ::: "wrong" ::: "$myvar" ::: "wrong"
parallel --plus echo '{-2,,A}' ::: "wrong" ::: "$myvar" ::: "wrong"
+
+ myvar=abcabcdefdef
+ echo $myvar ${myvar/#abc/ABC}
+ echo $myvar | parallel --plus echo {} {/#abc/ABC}
+ echo $myvar ${myvar/%def/DEF}
+ echo $myvar | parallel --plus echo {} {/%def/DEF}
+ echo $myvar ${myvar/#abc/}
+ echo $myvar | parallel --plus echo {} {/#abc/}
+ echo $myvar ${myvar/%def/}
+ echo $myvar | parallel --plus echo {} {/%def/}
}
par_keeporder_roundrobin() {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-parsort.sh
^
|
@@ -5,7 +5,7 @@
# SPDX-License-Identifier: GPL-3.0-or-later
setup() {
- tmp=$(tempfile)
+ tmp=$(mktemp)
perl -pe 's/\n/\n\0/' >$tmp <<EOF
chr1 1 Sample 1
chr1 11 Sample 1
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-race02.sh
^
|
@@ -9,7 +9,7 @@
par_ll_lb_color() {
echo 'bug #62386: --color (--ctag but without --tag)'
echo 'bug #62438: See last line from multiple jobslots'
- # This is really a race condition - might have to be moved
+ # This is a race condition
# # delay modulo 4 seconds
# perl -MTime::HiRes -E 'Time::HiRes::usleep(1000000*(((time|3)+1)-Time::HiRes::time()));'
# # delay modulo 2 seconds
@@ -26,17 +26,21 @@
# # delay modulo 1 second + delta ms
# perl -E 'use Time::HiRes qw(usleep time); $d=shift; for(1..shift){
# usleep(1000000*($d-time+(1+time*1|0)/1));say;}' 0.2 6;
- offset_seq() {
+ _offset_seq() {
perl -E 'use Time::HiRes qw(usleep time); $|=1;$d=shift; for(1..shift){
usleep(1000000*($d-time+(1+time*1|0)/1));say;}' $@;
}
+ offset_seq() {
+ perl -E 'use Time::HiRes qw(usleep time); $|=1;usleep(shift); for(1..shift){
+ usleep(1000000);say;}' $@;
+ }
export -f offset_seq
run() {
- seq 4 -1 1 | parallel -j0 $@ offset_seq 0.{#} {}
+ seq 4 -1 1 | parallel -j0 $@ offset_seq '{= $_=seq()*170000 =}' {}
}
export -f run
- parallel --delay 0.17 -vkj0 run \
+ parallel --delay 0.07 -vkj0 run \
::: --lb --ll '' ::: --color '' ::: '--tagstring {}{}' --tag '' ::: -k '' |
md5sum
}
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh1.sh
^
|
@@ -18,6 +18,14 @@
EOF
+par_sshlogin_with_comma() {
+ echo "### --sshlogin with \,"
+ parallel -S 'ssh -J lo\,localhost 127.0.0.1' echo ::: OK
+ echo "### --sshlogin with ,,"
+ parallel -S 'ssh -J lo,,localhost 127.0.0.1' echo ::: OK
+}
+
+
par_sshpass_with_password() {
echo '### sshpass'
echo OK | parallel -S "sshpass -p $withpassword ssh withpassword@lo:22" echo
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh7.sh
^
|
@@ -791,7 +791,7 @@
echo "Fish is broken"
echo "### Testing of --env _"
-# . `which env_parallel.fish`;
+ source (which env_parallel.fish)
true > ~/.parallel/ignored_vars;
alias not_copied_alias="echo BAD"
@@ -808,6 +808,8 @@
end
set myvar "variables in";
set myarray and arrays in;
+
+ echo Test copying;
env_parallel myfunc ::: work;
env_parallel -S server myfunc ::: work;
env_parallel --env myfunc,myvar,myarray,myecho myfunc ::: work;
@@ -815,11 +817,13 @@
env_parallel --env _ myfunc ::: work;
env_parallel --env _ -S server myfunc ::: work;
+ echo Test ignoring;
env_parallel --env _ -S server not_copied_alias ::: error=OK;
env_parallel --env _ -S server not_copied_func ::: error=OK;
env_parallel --env _ -S server echo \$not_copied_var ::: error=OK;
env_parallel --env _ -S server echo \$not_copied_array ::: error=OK;
+ echo Test single ignoring;
echo myvar > ~/.parallel/ignored_vars;
env_parallel --env _ myfunc ::: work;
env_parallel --env _ -S server myfunc ::: work;
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local-ssh9.sh
^
|
@@ -209,6 +209,22 @@
LANG=C sort
}
+par_filter_hosts_parallel_not_installed() {
+ echo 'bug #62672: Triggered a bug with --filter-host'
+ parallel -S nopathbash@lo --filter-hosts echo ::: OK
+ parallel --nonall -S nopathbash@lo --filter-hosts echo OK
+}
+
+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
+ printf 'OKa1OKb1' | parallel -k -d 1 --filter-hosts -S lo echo
+ printf 'OKa0OKb0' | parallel -k -d 0 --filter-hosts -S lo echo
+ printf 'OKa\0OKb\0' | parallel -k -d '\0' --filter-hosts -S lo echo
+ printf 'OKa\0OKb\0' | parallel -k -0 --filter-hosts -S lo echo
+}
+
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 |
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local13.sh
^
|
@@ -32,7 +32,8 @@
stdout parallel -k -i -0 echo from \{\} to x{}y < items-0.xi
echo '### -i -s26 -0 echo from \{\} to x{}y < items-0.xi'
stdsort xargs -i -s26 -0 echo from \{\} to x{}y < items-0.xi
-stdsort parallel -k -i -s26 -0 echo from \{\} to x{}y < items-0.xi
+# -j1 is needed to avoid race condition
+stdsort parallel -kj1 -i -s26 -0 echo from \{\} to x{}y < items-0.xi
echo '### -l -0 echo < ldata-0.xi'
stdout xargs -l -0 echo < ldata-0.xi
stdout parallel -l -k -0 echo < ldata-0.xi
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local15.sh
^
|
@@ -6,9 +6,10 @@
TMP=/run/shm/parallel_$$
-rsync -Ha --delete input-files/testdir/ $TMP/
+pwd=`pwd`
mkdir -p $TMP
cd $TMP/
+tar xjf "$pwd"/input-files/testdir.tar.bz2
echo echo test of cat pipe sh | parallel -j 50 2>&1
find . -name '*.jpg' | parallel -j +0 convert -geometry 120 {} {//}/thumb_{/}
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local18.sh
^
|
@@ -69,8 +69,8 @@
par_env_newline_backslash_csh() {
echo '### Test --env for \n and \\ - single and double (*csh only) - no output is good but csh fails'
- test_chr_on_sshlogin 10,92 2/tcsh@lo,2/csh@lo '' |
- perl -pe "s/'(.)'/\$1/g"
+ test_chr_on_sshlogin 10,92 2/csh@lo '' | perl -pe "s/'(.)'/\$1/g"
+ test_chr_on_sshlogin 10,92 2/tcsh@lo '' | perl -pe "s/'(.)'/\$1/g"
}
par_env_newline_backslash_onall_bash() {
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local2.sh
^
|
@@ -4,7 +4,7 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
-cpuburn=$(tempfile)
+cpuburn=$(mktemp)
(echo '#!/usr/bin/perl'
echo "eval{setpriority(0,0,9)}; while(1){}") > $cpuburn
chmod 700 $cpuburn
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/parallel-local23.sh
^
|
@@ -4,9 +4,6 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
-rm -rf tmp 2>/dev/null
-cp -a input-files/testdir2 tmp
-
NICEPAR="nice nice parallel"
export NICEPAR
@@ -66,5 +63,3 @@
EOF
-
-rm -rf tmp
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/sem01.sh
^
|
@@ -80,12 +80,13 @@
echo Sem exit value $?
}
export -f test_signal
- stdout parallel -k --timeout 3 --tag test_signal ::: {0..64} |
+ ulimit -c 0
+ stdout parallel -j15 -k --timeout 20 --tag test_signal ::: {0..64} |
perl -pe 's/line 1: (\d+)/line 1: PID/'
}
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' |
+ parallel --timeout 30 -j6 --tag -k --joblog /tmp/jl-`basename $0` '{} 2>&1' |
perl -pe 's:/usr/bin:/bin:g'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/sql01.sh
^
|
@@ -100,7 +100,8 @@
sql --table-size :sqlunittest | wc -l
echo "### Test --debug"
-sql --debug :sqlunittest "SELECT 'Yes it does' as 'Test if --debug works';"
+sql --debug :sqlunittest "SELECT 'Yes it does' as 'Test if --debug works';" |
+ perl -pe 's:/tmp/sql01-tmpdir/...........sql:tmpfile:g'
echo "### Test --version -V"
sql --version | wc
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/sql02.sh
^
|
@@ -4,28 +4,58 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
-cd /tmp
-echo '### Test of sqlite'
-for CMDSQL in sqlite sqlite3 ; do
- echo "Current command: $CMDSQL"
- rm -f sqltest.$CMDSQL
- # create database & table
- sql $CMDSQL:///sqltest.$CMDSQL "CREATE TABLE foo(n INT, t TEXT);"
- sql --list-tables $CMDSQL:///sqltest.$CMDSQL
- file sqltest.$CMDSQL
- sql $CMDSQL:///sqltest.$CMDSQL "INSERT INTO foo VALUES(1,'Line 1');"
- sql $CMDSQL:///sqltest.$CMDSQL "INSERT INTO foo VALUES(2,'Line 2');"
- sql $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
- sql -n $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
- sql -s '.' $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
- sql -n -s '.' $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
- sql -s '' $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
- sql -s ' ' $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
- sql --html $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
- sql -n --html $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
- sql --dbsize $CMDSQL:///sqltest.$CMDSQL
- sql $CMDSQL:///sqltest.$CMDSQL "DROP TABLE foo;"
- sql --dbsize $CMDSQL:///sqltest.$CMDSQL
- rm -f sqltest.$CMDSQL
-done
+par_sqlite() {
+ tmp=$(mktemp -d)
+ cd $tmp
+ echo '### Test of sqlite'
+ for CMDSQL in sqlite sqlite3 ; do
+ echo "Current command: $CMDSQL"
+ rm -f sqltest.$CMDSQL
+ # create database & table
+ sql $CMDSQL:///sqltest.$CMDSQL "CREATE TABLE foo(n INT, t TEXT);"
+ sql --list-tables $CMDSQL:///sqltest.$CMDSQL
+ file sqltest.$CMDSQL
+ sql $CMDSQL:///sqltest.$CMDSQL "INSERT INTO foo VALUES(1,'Line 1');"
+ sql $CMDSQL:///sqltest.$CMDSQL "INSERT INTO foo VALUES(2,'Line 2');"
+ sql $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
+ sql -n $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
+ sql -s '.' $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
+ sql -n -s '.' $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
+ sql -s '' $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
+ sql -s ' ' $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
+ sql --html $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
+ sql -n --html $CMDSQL:///sqltest.$CMDSQL "SELECT * FROM foo;"
+ sql --dbsize $CMDSQL:///sqltest.$CMDSQL
+ sql $CMDSQL:///sqltest.$CMDSQL "DROP TABLE foo;"
+ sql --dbsize $CMDSQL:///sqltest.$CMDSQL
+ rm -f sqltest.$CMDSQL
+ done
+}
+par_influx() {
+ echo '### Test of influx'
+ (
+ # create database & table
+ sql influx:/// "CREATE DATABASE parallel;"
+ sql --show-databases influx:///
+ # insert
+ (echo INSERT cpu,host=serverA,region=us_west value=0.64;
+ echo INSERT cpu,host=serverA,region=us_west value=0.65;
+ echo 'select * from cpu' ) |
+ sql influx:///parallel
+ sql --show-tables influx:///parallel | grep parallel;
+ sql influx:///parallel 'SELECT * FROM cpu;'
+ sql influx:///parallel 'SELECT "host", "region", "value" FROM "cpu"'
+ sql --pretty influx:///parallel 'SELECT * FROM cpu;'
+ sql --json influx:///parallel 'SELECT * FROM cpu;'
+ sql --dbsize influx:///parallel
+ sql -s . influx:///parallel 'SELECT * FROM cpu;'
+ sql --html influx:///parallel 'SELECT * FROM cpu;'
+ sql influx:///parallel 'drop database parallel'
+ ) | perl -pe 's/\d/0/g'
+}
+
+
+export -f $(compgen -A function | grep par_)
+compgen -A function | grep par_ | sort |
+ parallel -j0 --tag -k --joblog +/tmp/jl-`basename $0` '{} 2>&1'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/tests-to-run/test35.sh
^
|
@@ -7,9 +7,12 @@
SERVER1=parallel-server1
SSHUSER1=vagrant
SSHLOGIN1=$SSHUSER1@$SERVER1
-
-rsync -Ha --delete input-files/testdir/ tmp/
+
+mkdir -p tmp
cd tmp
+tar xjf ../input-files/testdir.tar.bz2
+#rsync -Ha --delete input-files/testdir/ tmp/
+#cd tmp
SERVER2=parallel@parallel-server2
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-0.3s
^
|
@@ -6,6 +6,13 @@
par_PARALLEL_ENV OK as file
par_PARALLEL_ENV ### PARALLEL_ENV as fifo
par_PARALLEL_ENV OK as fifo
+par_PARALLEL_HOME_not_exist ### bug #62311: --pipepart + ::: fail
+par_PARALLEL_HOME_not_exist OK
+par_PARALLEL_HOME_not_exist Should warn:
+par_PARALLEL_HOME_not_exist parallel: Warning: $PARALLEL_HOME (/does-not-exist) does not exist.
+par_PARALLEL_HOME_not_exist parallel: Warning: Using ~/.parallel
+par_PARALLEL_HOME_not_exist should
+par_PARALLEL_HOME_not_exist warn
par_PARALLEL_HOME_with_+ bug #59453: PARALLEL_HOME with plus sign causes error: config not readable
par_PARALLEL_HOME_with_+ Parallel_home_with+
par_X_eta_div_zero ### bug #34422: parallel -X --eta crashes with div by zero
@@ -57,6 +64,37 @@
par_blocking_redir stderr
par_blocking_redir stdout
par_blocking_redir stdout
+par_colour_failed --colour-failed --colour
+par_colour_failed seq 1;exit 0(B[m
+par_colour_failed 1(B[m
+par_colour_failed [48;5;196;38;5;231m[Kseq 1;exit 1(B[m
+par_colour_failed [48;5;196;38;5;231m[K1(B[m
+par_colour_failed [48;5;196;38;5;231m[Kseq 1;exit 2(B[m
+par_colour_failed [48;5;196;38;5;231m[K1(B[m
+par_colour_failed seq 2;exit 0(B[m
+par_colour_failed 1(B[m
+par_colour_failed 2(B[m
+par_colour_failed [48;5;196;38;5;231m[Kseq 2;exit 1(B[m
+par_colour_failed [48;5;196;38;5;231m[K1(B[m
+par_colour_failed [48;5;196;38;5;231m[K2(B[m
+par_colour_failed [48;5;196;38;5;231m[Kseq 2;exit 2(B[m
+par_colour_failed [48;5;196;38;5;231m[K1(B[m
+par_colour_failed [48;5;196;38;5;231m[K2(B[m
+par_colour_failed [48;5;134;38;5;231m[Kseq 1;exit 0(B[m
+par_colour_failed [48;5;134;38;5;231m[K1(B[m
+par_colour_failed [48;5;196;38;5;231m[Kseq 1;exit 1(B[m
+par_colour_failed [48;5;196;38;5;231m[K1(B[m
+par_colour_failed [48;5;196;38;5;231m[Kseq 1;exit 2(B[m
+par_colour_failed [48;5;196;38;5;231m[K1(B[m
+par_colour_failed [48;5;149;38;5;000m[Kseq 2;exit 0(B[m
+par_colour_failed [48;5;149;38;5;000m[K1(B[m
+par_colour_failed [48;5;149;38;5;000m[K2(B[m
+par_colour_failed [48;5;196;38;5;231m[Kseq 2;exit 1(B[m
+par_colour_failed [48;5;196;38;5;231m[K1(B[m
+par_colour_failed [48;5;196;38;5;231m[K2(B[m
+par_colour_failed [48;5;196;38;5;231m[Kseq 2;exit 2(B[m
+par_colour_failed [48;5;196;38;5;231m[K1(B[m
+par_colour_failed [48;5;196;38;5;231m[K2(B[m
par_colsep_0 bug --colsep 0
par_colsep_0 OK
par_colsep_0 OK
@@ -723,41 +761,10 @@
par_pipepart_recend_recstart 10
par_pipepart_roundrobin ### bug #45769: --round-robin --pipepart gives wrong results
par_pipepart_roundrobin 2
-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 ### 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_pipepart_triple_colon ### bug #62311: --pipepart + ::: fail
+par_pipepart_triple_colon 1 1 2
+par_pipepart_triple_colon 1 1 2
+par_pipepart_triple_colon 1 1 2
par_profile ### Test -J profile, -J /dir/profile, -J ./profile
par_profile local local
par_profile abs abs
@@ -953,10 +960,10 @@
par_sem_quote echo
par_sem_quote
par_shellcompletion ### --shellcompletion
-par_shellcompletion 329fc284cae55cbfed49ed5546eb2b29 -
-par_shellcompletion 329fc284cae55cbfed49ed5546eb2b29 -
-par_shellcompletion 4869360b2bf2f084c17bdc60413faace -
-par_shellcompletion 4869360b2bf2f084c17bdc60413faace -
+par_shellcompletion 863f31c091219fc53dc89fd707f5995b -
+par_shellcompletion 863f31c091219fc53dc89fd707f5995b -
+par_shellcompletion 88a69a99c93b79b5ed6491c80e9762b0 -
+par_shellcompletion 88a69a99c93b79b5ed6491c80e9762b0 -
par_slow_pipe_regexp ### bug #53718: --pipe --regexp -N blocks
par_slow_pipe_regexp This should take a few ms, but took more than 2 hours
par_slow_pipe_regexp 0 1 1
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-10s
^
|
@@ -970,8 +970,6 @@
par_sockets_cores_threads threads done
par_sockets_cores_threads sockets done
par_sockets_cores_threads Threads should complete first on machines with less than 8 sockets
-par_test_diff_roundrobin_k ### test there is difference on -k
-par_test_diff_roundrobin_k OK
par_tmp_full ### Test --tmpdir running full. bug #40733 was caused by this
par_tmp_full parallel: Error: Output is incomplete.
par_tmp_full parallel: Error: Cannot append to buffer file in /tmp/shm/parallel.
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-1s
^
|
@@ -123,6 +123,30 @@
par_empty_string_command_line bar
par_eof_on_command_line_input_source ### Test of eof string on :::
par_eof_on_command_line_input_source foo
+par_file_rpl ### file as replacement string
+par_file_rpl contest1
+par_file_rpl contest2
+par_file_rpl File name /tmp/parallel-local-1s-tmpdir/tmp.XXXXXX
+par_file_rpl contest1
+par_file_rpl contest2
+par_file_rpl File name /parallel-local-1s-tmpdir/tmp.XXXXXX/parallel-local-1s-tmpdir/tmp.XXXXXX
+par_file_rpl contest1
+par_file_rpl contest2
+par_file_rpl File name /tmp/parallel-local-1s-tmpdir/tmp.XXXXXX
+par_file_rpl 1
+par_file_rpl 1
+par_file_rpl 2
+par_file_rpl 2
+par_file_rpl 3
+par_file_rpl 3
+par_file_rpl 1
+par_file_rpl 1
+par_file_rpl 1
+par_file_rpl 1
+par_file_rpl 1
+par_file_rpl 1
+par_file_rpl =chop
+par_file_rpl =chop
par_header ### Test --header with -N
par_header Start
par_header h1
@@ -408,6 +432,57 @@
par_pipepart_block 18-20
par_pipepart_block 19-20
par_pipepart_block 20-20
+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_profiles_with_space ### bug #42902: profiles containing arguments with space
par_profiles_with_space /bin/bash=/bin/bash
par_profiles_with_space echo '/bin/bash=/bin/bash'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-300s
^
|
@@ -234,7 +234,15 @@
par_test_build_and_install make[0]: Entering directory '/tmp/parallel-00000000'
par_test_build_and_install make[0]: Entering directory '/tmp/parallel-00000000'
par_test_build_and_install make[0]: Nothing to be done for 'install-exec-am'.
-par_test_build_and_install make[0]: Nothing to be done for 'install-data-am'.
+par_test_build_and_install make install-data-hook
+par_test_build_and_install make[0]: Entering directory '/tmp/parallel-00000000'
+par_test_build_and_install mkdir -p /tmp/parallel-install/share/zsh/site-functions /tmp/parallel-install/share/bash-completion/completions
+par_test_build_and_install src/parallel --shell-completion bash > /tmp/parallel-install/share/bash-completion/completions/parallel
+par_test_build_and_install echo '#compdef parallel' > /tmp/parallel-install/share/zsh/site-functions/_parallel
+par_test_build_and_install echo '(( $+functions[_comp_parallel] )) ||' >> /tmp/parallel-install/share/zsh/site-functions/_parallel
+par_test_build_and_install echo ' eval "$(parallel --shell-completion auto)" &&' >> /tmp/parallel-install/share/zsh/site-functions/_parallel
+par_test_build_and_install echo ' _comp_parallel' >> /tmp/parallel-install/share/zsh/site-functions/_parallel
+par_test_build_and_install make[0]: Leaving directory '/tmp/parallel-00000000'
par_test_build_and_install make[0]: Leaving directory '/tmp/parallel-00000000'
par_test_build_and_install make[0]: Leaving directory '/tmp/parallel-00000000'
par_test_build_and_install make[0]: Leaving directory '/tmp/parallel-00000000'
@@ -715,7 +723,15 @@
par_test_build_and_install make[0]: Entering directory '/tmp/parallel-00000000'
par_test_build_and_install make[0]: Entering directory '/tmp/parallel-00000000'
par_test_build_and_install make[0]: Nothing to be done for 'install-exec-am'.
-par_test_build_and_install make[0]: Nothing to be done for 'install-data-am'.
+par_test_build_and_install make install-data-hook
+par_test_build_and_install make[0]: Entering directory '/tmp/parallel-00000000'
+par_test_build_and_install mkdir -p /tmp/parallel-install/share/zsh/site-functions /tmp/parallel-install/share/bash-completion/completions
+par_test_build_and_install src/parallel --shell-completion bash > /tmp/parallel-install/share/bash-completion/completions/parallel
+par_test_build_and_install echo '#compdef parallel' > /tmp/parallel-install/share/zsh/site-functions/_parallel
+par_test_build_and_install echo '(( $+functions[_comp_parallel] )) ||' >> /tmp/parallel-install/share/zsh/site-functions/_parallel
+par_test_build_and_install echo ' eval "$(parallel --shell-completion auto)" &&' >> /tmp/parallel-install/share/zsh/site-functions/_parallel
+par_test_build_and_install echo ' _comp_parallel' >> /tmp/parallel-install/share/zsh/site-functions/_parallel
+par_test_build_and_install make[0]: Leaving directory '/tmp/parallel-00000000'
par_test_build_and_install make[0]: Leaving directory '/tmp/parallel-00000000'
par_test_build_and_install make[0]: Leaving directory '/tmp/parallel-00000000'
par_test_build_and_install make[0]: Leaving directory '/tmp/parallel-00000000'
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-30s
^
|
@@ -1605,54 +1605,59 @@
par_plus_dyn_repl myval
par_plus_dyn_repl myval
par_plus_dyn_repl myval
-par_plus_dyn_repl cAaAdef
-par_plus_dyn_repl cAaAdef
-par_plus_dyn_repl cAaAdef
-par_plus_dyn_repl cAaAdef
-par_plus_dyn_repl cAaAdef
+par_plus_dyn_repl cAaBdefCdefDdef
+par_plus_dyn_repl cAaBdefCdefDdef
+par_plus_dyn_repl cAaBdefCdefDdef
+par_plus_dyn_repl cAaBdefCdefDdef
+par_plus_dyn_repl cAaBdefCdefDdef
par_plus_dyn_repl cAa
par_plus_dyn_repl cAa
par_plus_dyn_repl cAa
par_plus_dyn_repl cAa
par_plus_dyn_repl cAa
-par_plus_dyn_repl 9
-par_plus_dyn_repl 9
+par_plus_dyn_repl 17
+par_plus_dyn_repl 17
par_plus_dyn_repl 1
-par_plus_dyn_repl abcAaAdef
-par_plus_dyn_repl abcAaAdef
-par_plus_dyn_repl abcAaAdef
-par_plus_dyn_repl abcAaAdef
-par_plus_dyn_repl abcAaAdef
-par_plus_dyn_repl AaAdef
-par_plus_dyn_repl AaAdef
-par_plus_dyn_repl AaAdef
-par_plus_dyn_repl AaAdef
-par_plus_dyn_repl AaAdef
-par_plus_dyn_repl abcAaAdef
-par_plus_dyn_repl abcAaAdef
-par_plus_dyn_repl abcAaAdef
-par_plus_dyn_repl abcAaAdef
-par_plus_dyn_repl abcAaAdef
-par_plus_dyn_repl abcAaA
-par_plus_dyn_repl abcAaA
-par_plus_dyn_repl abcAaA
-par_plus_dyn_repl abcAaA
-par_plus_dyn_repl abcAaA
-par_plus_dyn_repl abcAaAghi
-par_plus_dyn_repl abcAaAghi
-par_plus_dyn_repl abcAaAghi
-par_plus_dyn_repl abcAaAghi
-par_plus_dyn_repl abcAaAghi
-par_plus_dyn_repl AbcAaAdef
-par_plus_dyn_repl AbcAaAdef
-par_plus_dyn_repl AbcAaAdef
-par_plus_dyn_repl AbcAaAdef
-par_plus_dyn_repl AbcAaAdef
-par_plus_dyn_repl AbcAAAdef
-par_plus_dyn_repl AbcAAAdef
-par_plus_dyn_repl AbcAAAdef
-par_plus_dyn_repl AbcAAAdef
-par_plus_dyn_repl AbcAAAdef
+par_plus_dyn_repl abcAaBdefCdefDdef
+par_plus_dyn_repl abcAaBdefCdefDdef
+par_plus_dyn_repl abcAaBdefCdefDdef
+par_plus_dyn_repl abcAaBdefCdefDdef
+par_plus_dyn_repl abcAaBdefCdefDdef
+par_plus_dyn_repl AaBdefCdefDdef
+par_plus_dyn_repl AaBdefCdefDdef
+par_plus_dyn_repl AaBdefCdefDdef
+par_plus_dyn_repl AaBdefCdefDdef
+par_plus_dyn_repl AaBdefCdefDdef
+par_plus_dyn_repl abcAaBdefCdefDdef
+par_plus_dyn_repl abcAaBdefCdefDdef
+par_plus_dyn_repl abcAaBdefCdefDdef
+par_plus_dyn_repl abcAaBdefCdefDdef
+par_plus_dyn_repl abcAaBdefCdefDdef
+par_plus_dyn_repl abcAaBdefCdefD
+par_plus_dyn_repl abcAaBdefCdefD
+par_plus_dyn_repl abcAaBdefCdefD
+par_plus_dyn_repl abcAaBdefCdefD
+par_plus_dyn_repl abcAaBdefCdefD
+par_plus_dyn_repl abcAaBghiCdefDdef
+par_plus_dyn_repl abcAaBghiCdefDdef
+par_plus_dyn_repl abcAaBghiCdefDdef
+par_plus_dyn_repl abcAaBghiCdefDdef
+par_plus_dyn_repl abcAaBghiCdefDdef
+par_plus_dyn_repl abcAaBghiCghiDghi
+par_plus_dyn_repl abcAaBghiCghiDghi
+par_plus_dyn_repl abcAaBghiCghiDghi
+par_plus_dyn_repl abcAaBghiCghiDghi
+par_plus_dyn_repl abcAaBghiCghiDghi
+par_plus_dyn_repl AbcAaBdefCdefDdef
+par_plus_dyn_repl AbcAaBdefCdefDdef
+par_plus_dyn_repl AbcAaBdefCdefDdef
+par_plus_dyn_repl AbcAaBdefCdefDdef
+par_plus_dyn_repl AbcAaBdefCdefDdef
+par_plus_dyn_repl AbcAABdefCdefDdef
+par_plus_dyn_repl AbcAABdefCdefDdef
+par_plus_dyn_repl AbcAABdefCdefDdef
+par_plus_dyn_repl AbcAABdefCdefDdef
+par_plus_dyn_repl AbcAABdefCdefDdef
par_plus_dyn_repl abcAaAdef
par_plus_dyn_repl abcAaAdef
par_plus_dyn_repl abcAaAdef
@@ -1663,6 +1668,14 @@
par_plus_dyn_repl abcaaadef
par_plus_dyn_repl abcaaadef
par_plus_dyn_repl abcaaadef
+par_plus_dyn_repl abcabcdefdef ABCabcdefdef
+par_plus_dyn_repl abcabcdefdef ABCabcdefdef
+par_plus_dyn_repl abcabcdefdef abcabcdefDEF
+par_plus_dyn_repl abcabcdefdef abcabcdefDEF
+par_plus_dyn_repl abcabcdefdef abcdefdef
+par_plus_dyn_repl abcabcdefdef abcdefdef
+par_plus_dyn_repl abcabcdefdef abcabcdef
+par_plus_dyn_repl abcabcdefdef abcabcdef
par_race_condition1 ### Test race condition on 8 CPU (my laptop)
par_race_condition1 1
par_race_condition1 2
@@ -1843,3 +1856,5 @@
par_test_detected_shell test_known_shell_pipe tcsh Global::shell /usr/bin/tcsh
par_test_detected_shell test_known_shell_pipe yash Global::shell /usr/bin/yash
par_test_detected_shell test_known_shell_pipe zsh Global::shell /usr/bin/zsh
+par_test_diff_roundrobin_k ### test there is difference on -k
+par_test_diff_roundrobin_k OK
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-parsort
^
|
@@ -51,7 +51,7 @@
par_tmpdir parsort: Error: Tmpdir '/tmp/parsort dir' is not writable.
par_tmpdir parsort: Error: Try 'chmod +w '/tmp/parsort dir''
par_z ### parsort -z
-par_z 583c59e3574e550f6810d0ad20e7ab88 -
+par_z 507d17cd3d746cdeeccdb8ad11860181 -
par_z 507d17cd3d746cdeeccdb8ad11860181 -
par_z 507d17cd3d746cdeeccdb8ad11860181 -
par_z 507d17cd3d746cdeeccdb8ad11860181 -
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-race02
^
|
@@ -120,7 +120,7 @@
par_kill_hup bash---pstree
par_ll_lb_color bug #62386: --color (--ctag but without --tag)
par_ll_lb_color bug #62438: See last line from multiple jobslots
-par_ll_lb_color 715a389ad9d92c8fab448a74494617d1 -
+par_ll_lb_color 90c6a891f3cd706c82a76c9747de176c -
par_more_than_9_relative_sshlogin ### Check more than 9(relative) simultaneous sshlogins
par_more_than_9_relative_sshlogin 1
par_more_than_9_relative_sshlogin 2
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-ssh1
^
|
@@ -93,6 +93,10 @@
par_ssh_ssh OK
par_ssh_ssh aspire
par_ssh_ssh OK
+par_sshlogin_with_comma ### --sshlogin with \,
+par_sshlogin_with_comma OK
+par_sshlogin_with_comma ### --sshlogin with ,,
+par_sshlogin_with_comma OK
par_sshpass_with_password ### sshpass
par_sshpass_with_password OK
par_sshpass_with_password OK
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-ssh7
^
|
@@ -1321,12 +1321,14 @@
par_fish_underscore ### fish
par_fish_underscore Fish is broken
par_fish_underscore ### Testing of --env _
+par_fish_underscore Test copying
par_fish_underscore variables in aliases and arrays in functions work
par_fish_underscore variables in aliases and arrays in functions work
par_fish_underscore variables in aliases and arrays in functions work
par_fish_underscore variables in aliases and arrays in functions work
par_fish_underscore variables in aliases and arrays in functions work
par_fish_underscore variables in aliases and arrays in functions work
+par_fish_underscore Test ignoring
par_fish_underscore script (line XXX):
par_fish_underscore not_copied_alias 'error=OK'
par_fish_underscore ^
@@ -1335,6 +1337,7 @@
par_fish_underscore ^
par_fish_underscore error=OK
par_fish_underscore error=OK
+par_fish_underscore Test single ignoring
par_fish_underscore aliases and arrays in functions work
par_fish_underscore aliases and arrays in functions work
par_fish_underscore aliases functions work
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local-ssh9
^
|
@@ -97,9 +97,26 @@
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_bash_embed --embed
par_bash_embed Redirect the output to a file and add your changes at the end:
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local13
^
|
@@ -87,7 +87,8 @@
stdsort xargs -i -s26 -0 echo from \{\} to x{}y < items-0.xi
from one to xoney
xargs: argument list too long
-stdsort parallel -k -i -s26 -0 echo from \{\} to x{}y < items-0.xi
+# -j1 is needed to avoid race condition
+stdsort parallel -kj1 -i -s26 -0 echo from \{\} to x{}y < items-0.xi
from one to xoney
parallel: Error: Command line too long (32 >= 26) at input 0: 

|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-local18
^
|
@@ -5,8 +5,6 @@
par_env_newline_backslash_bash 8
par_env_newline_backslash_bash 8
par_env_newline_backslash_csh ### Test --env for \n and \\ - single and double (*csh only) - no output is good but csh fails
-par_env_newline_backslash_csh 2 2\ \92V2=\ \92
-par_env_newline_backslash_csh 2 2\\ \92V2=\\ \92
par_env_newline_backslash_onall_bash ### Test --env for \n and \\ - single and double --onall (bash only) - no output is good
par_env_newline_backslash_onall_bash 16
par_env_newline_backslash_onall_bash 16
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/parallel-tutorial
^
|
@@ -692,7 +692,6 @@
parallel -S $SERVER1 --trc {}.out cat {} ">"{}.out ::: input_file
cat input_file.out
This is input_file
-rsync: [sender] link_stat "/home/parallel/input_file.out" failed: No such file or directory (2)
echo common data > common_file
parallel --basefile common_file -S $SERVER1 \
cat common_file\; echo {} ::: foo
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/sql01
^
|
@@ -42,11 +42,12 @@
6
6
### Test --table-size --tablesize
-82
-82
+90
+90
### Test --debug
dburl mysql://tange:tange@localhost:3306/tange
databasedriver mysql user tange password tange host localhost port 3306 database tange query
+[ | ((sleep 1; rm tmpfile) & mysql --defaults-extra-file=tmpfile -C --host=localhost --user=tange --port=3306 tange)]
Test if --debug works
Yes it does
### Test --version -V
@@ -55,21 +56,28 @@
### Test -r
dburl pg://nongood@127.0.0.3:2227/
databasedriver pg user nongood password host 127.0.0.3 port 2227 database nongood query
+[ | psql -h 127.0.0.3 -U nongood -p 2227 -d nongood]
psql: error: connection to server at "127.0.0.3", port 2227 failed: Connection refused
Is the server running on that host and accepting TCP/IP connections?
+[ | psql -h 127.0.0.3 -U nongood -p 2227 -d nongood]
psql: error: connection to server at "127.0.0.3", port 2227 failed: Connection refused
Is the server running on that host and accepting TCP/IP connections?
+[ | psql -h 127.0.0.3 -U nongood -p 2227 -d nongood]
psql: error: connection to server at "127.0.0.3", port 2227 failed: Connection refused
Is the server running on that host and accepting TCP/IP connections?
### Test --retries=s
dburl pg://nongood@127.0.0.3:2227/
databasedriver pg user nongood password host 127.0.0.3 port 2227 database nongood query
+[ | psql -h 127.0.0.3 -U nongood -p 2227 -d nongood]
psql: error: connection to server at "127.0.0.3", port 2227 failed: Connection refused
Is the server running on that host and accepting TCP/IP connections?
+[ | psql -h 127.0.0.3 -U nongood -p 2227 -d nongood]
psql: error: connection to server at "127.0.0.3", port 2227 failed: Connection refused
Is the server running on that host and accepting TCP/IP connections?
+[ | psql -h 127.0.0.3 -U nongood -p 2227 -d nongood]
psql: error: connection to server at "127.0.0.3", port 2227 failed: Connection refused
Is the server running on that host and accepting TCP/IP connections?
+[ | psql -h 127.0.0.3 -U nongood -p 2227 -d nongood]
psql: error: connection to server at "127.0.0.3", port 2227 failed: Connection refused
Is the server running on that host and accepting TCP/IP connections?
### Test --help -h
|
[-]
[+]
|
Changed |
_service:tar_git:parallel-20220822+git1.tar.bz2/upstream/testsuite/wanted-results/sql02
^
|
@@ -1,75 +1,140 @@
-### Test of sqlite
-Current command: sqlite
-foo
-sqltest.sqlite: SQLite 2.x database
-n|t
-1|Line 1
-2|Line 2
-1|Line 1
-2|Line 2
-n.t
-1.Line 1
-2.Line 2
-1.Line 1
-2.Line 2
-nt
-1Line 1
-2Line 2
-n t
-1 Line 1
-2 Line 2
-<TR><TH>n</TH><TH>t</TH></TR>
-<TR><TD>1</TD>
-<TD>Line 1</TD>
-</TR>
-<TR><TD>2</TD>
-<TD>Line 2</TD>
-</TR>
-<TR><TD>1</TD>
-<TD>Line 1</TD>
-</TR>
-<TR><TD>2</TD>
-<TD>Line 2</TD>
-</TR>
-bytes
-3072
-bytes
-3072
-Current command: sqlite3
-foo
-sqltest.sqlite3: SQLite 3.x database, last written using SQLite version 3037002, file counter 1, database pages 2, cookie 0x1, schema 4, UTF-8, version-valid-for 1
-n|t
-1|Line 1
-2|Line 2
-1|Line 1
-2|Line 2
-n.t
-1.Line 1
-2.Line 2
-1.Line 1
-2.Line 2
-nt
-1Line 1
-2Line 2
-n t
-1 Line 1
-2 Line 2
-<TR><TH>n</TH>
-<TH>t</TH>
-</TR>
-<TR><TD>1</TD>
-<TD>Line 1</TD>
-</TR>
-<TR><TD>2</TD>
-<TD>Line 2</TD>
-</TR>
-<TR><TD>1</TD>
-<TD>Line 1</TD>
-</TR>
-<TR><TD>2</TD>
-<TD>Line 2</TD>
-</TR>
-bytes
-8192
-bytes
-8192
+par_influx ### Test of influx
+par_influx empty input
+par_influx empty input
+par_influx empty input
+par_influx dbsize is not implemented for influx
+par_influx Field separator not implemented for influx at /usr/local/bin/sql line 889.
+par_influx name: databases
+par_influx name
+par_influx ----
+par_influx _internal
+par_influx mydb
+par_influx myinflux
+par_influx parallel
+par_influx name: cpu
+par_influx time host region value
+par_influx ---- ---- ------ -----
+par_influx 0000000000000000000 serverA us_west 0.00
+par_influx 0000000000000000000 serverA us_west 0.00
+par_influx name: cpu
+par_influx time host region value
+par_influx ---- ---- ------ -----
+par_influx 0000000000000000000 serverA us_west 0.00
+par_influx 0000000000000000000 serverA us_west 0.00
+par_influx name: cpu
+par_influx time host region value
+par_influx ---- ---- ------ -----
+par_influx 0000000000000000000 serverA us_west 0.00
+par_influx 0000000000000000000 serverA us_west 0.00
+par_influx {
+par_influx "results": [
+par_influx {
+par_influx "series": [
+par_influx {
+par_influx "name": "cpu",
+par_influx "columns": [
+par_influx "time",
+par_influx "host",
+par_influx "region",
+par_influx "value"
+par_influx ],
+par_influx "values": [
+par_influx [
+par_influx 0000000000000000000,
+par_influx "serverA",
+par_influx "us_west",
+par_influx 0.00
+par_influx ],
+par_influx [
+par_influx 0000000000000000000,
+par_influx "serverA",
+par_influx "us_west",
+par_influx 0.00
+par_influx ]
+par_influx ]
+par_influx }
+par_influx ]
+par_influx }
+par_influx ]
+par_influx }
+par_influx {"results":[{"series":[{"name":"cpu","columns":["time","host","region","value"],"values":[[0000000000000000000,"serverA","us_west",0.00],[0000000000000000000,"serverA","us_west",0.00]]}]}]}
+par_influx name: cpu
+par_influx time host region value
+par_influx ---- ---- ------ -----
+par_influx 0000000000000000000 serverA us_west 0.00
+par_influx 0000000000000000000 serverA us_west 0.00
+par_sqlite ### Test of sqlite
+par_sqlite Current command: sqlite
+par_sqlite foo
+par_sqlite sqltest.sqlite: SQLite 2.x database
+par_sqlite n|t
+par_sqlite 1|Line 1
+par_sqlite 2|Line 2
+par_sqlite 1|Line 1
+par_sqlite 2|Line 2
+par_sqlite n.t
+par_sqlite 1.Line 1
+par_sqlite 2.Line 2
+par_sqlite 1.Line 1
+par_sqlite 2.Line 2
+par_sqlite nt
+par_sqlite 1Line 1
+par_sqlite 2Line 2
+par_sqlite n t
+par_sqlite 1 Line 1
+par_sqlite 2 Line 2
+par_sqlite <TR><TH>n</TH><TH>t</TH></TR>
+par_sqlite <TR><TD>1</TD>
+par_sqlite <TD>Line 1</TD>
+par_sqlite </TR>
+par_sqlite <TR><TD>2</TD>
+par_sqlite <TD>Line 2</TD>
+par_sqlite </TR>
+par_sqlite <TR><TD>1</TD>
+par_sqlite <TD>Line 1</TD>
+par_sqlite </TR>
+par_sqlite <TR><TD>2</TD>
+par_sqlite <TD>Line 2</TD>
+par_sqlite </TR>
+par_sqlite bytes
+par_sqlite 3072
+par_sqlite bytes
+par_sqlite 3072
+par_sqlite Current command: sqlite3
+par_sqlite foo
+par_sqlite sqltest.sqlite3: SQLite 3.x database, last written using SQLite version 3037002, file counter 1, database pages 2, cookie 0x1, schema 4, UTF-8, version-valid-for 1
+par_sqlite n|t
+par_sqlite 1|Line 1
+par_sqlite 2|Line 2
+par_sqlite 1|Line 1
+par_sqlite 2|Line 2
+par_sqlite n.t
+par_sqlite 1.Line 1
+par_sqlite 2.Line 2
+par_sqlite 1.Line 1
+par_sqlite 2.Line 2
+par_sqlite nt
+par_sqlite 1Line 1
+par_sqlite 2Line 2
+par_sqlite n t
+par_sqlite 1 Line 1
+par_sqlite 2 Line 2
+par_sqlite <TR><TH>n</TH>
+par_sqlite <TH>t</TH>
+par_sqlite </TR>
|