Date: Friday, March 22, 2019 @ 18:10:54 Author: demize Revision: 443174
upgpkg: parallel 20190322-1 Added: parallel/trunk/0001-Remove-citation-things.patch parallel/trunk/0002-Remove-GNU-branding.patch Modified: parallel/trunk/PKGBUILD Deleted: parallel/trunk/remove-citation-nagging.patch -----------------------------------+ 0001-Remove-citation-things.patch | 277 +++++++++++++++++++++++++ 0002-Remove-GNU-branding.patch | 165 +++++++++++++++ PKGBUILD | 13 - remove-citation-nagging.patch | 387 ------------------------------------ 4 files changed, 450 insertions(+), 392 deletions(-) Added: 0001-Remove-citation-things.patch =================================================================== --- 0001-Remove-citation-things.patch (rev 0) +++ 0001-Remove-citation-things.patch 2019-03-22 18:10:54 UTC (rev 443174) @@ -0,0 +1,277 @@ +From e53f497bdd17ea5f6947d3b4af5d44c54b2978f5 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Johannes=20L=C3=B6thberg?= <johan...@kyriasis.com> +Date: Fri, 22 Mar 2019 19:03:41 +0100 +Subject: [PATCH 1/2] Remove citation things +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Johannes Löthberg <johan...@kyriasis.com> +--- + src/parallel | 218 +-------------------------------------------------- + 1 file changed, 1 insertion(+), 217 deletions(-) + +diff --git a/src/parallel b/src/parallel +index 27a07c1..8e4437a 100755 +--- a/src/parallel ++++ b/src/parallel +@@ -1206,8 +1206,6 @@ sub options_hash() { + "gnu" => \$opt::gnu, + "link|xapply" => \$opt::link, + "linkinputsource|xapplyinputsource=i" => \@opt::linkinputsource, +- # Before changing this line, please read +- # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice + "bibtex|citation" => \$opt::citation, + "wc|willcite|will-cite|nn|nonotice|no-notice" => \$opt::willcite, + # Termination and retries +@@ -1312,12 +1310,6 @@ sub parse_options(@) { + my @argv_before = @ARGV; + @ARGV = read_options(); + +- # Before changing this line, please read +- # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice +- if(defined $opt::citation) { +- citation(\@argv_before,\@ARGV); +- wait_and_exit(0); +- } + # no-* overrides * + if($opt::nokeeporder) { $opt::keeporder = undef; } + +@@ -1544,59 +1536,6 @@ sub parse_options(@) { + if(defined $opt::eta) { $opt::progress = $opt::eta; } + if(defined $opt::bar) { $opt::progress = $opt::bar; } + +- # Funding a free software project is hard. GNU Parallel is no +- # exception. On top of that it seems the less visible a project +- # is, the harder it is to get funding. And the nature of GNU +- # Parallel is that it will never be seen by "the guy with the +- # checkbook", but only by the people doing the actual work. +- # +- # This problem has been covered by others - though no solution has +- # been found: +- # https://www.slideshare.net/NadiaEghbal/consider-the-maintainer +- # https://www.numfocus.org/blog/why-is-numpy-only-now-getting-funded/ +- # +- # Before implementing the citation notice it was discussed with +- # the users: +- # https://lists.gnu.org/archive/html/parallel/2013-11/msg00006.html +- # +- # Having to spend 10 seconds on running 'parallel --citation' once +- # is no doubt not an ideal solution, but no one has so far come up +- # with an ideal solution - neither for funding GNU Parallel nor +- # other free software. +- # +- # If you believe you have the perfect solution, you should try it +- # out, and if it works, you should post it on the email +- # list. Ideas that will cost work and which have not been tested +- # are, however, unlikely to be prioritized. +- # +- # Please note that GPL version 3 gives you the right to fork GNU +- # Parallel under a new name, but it does not give you the right to +- # distribute modified copies with the citation notice disabled +- # under the name GNU Parallel. To do that you need to be the owner +- # of the GNU Parallel trademark. The xt:Commerce case shows this. +- # +- # Description of the xt:Commerce case in OLG Duesseldorf +- # http://www.inta.org/INTABulletin/Pages/GERMANYGeneralPublicLicenseDoesNotPermitUseofThird-PartyTrademarksforAdvertisingModifiedVersionsofOpen-SourceSoftware.aspx +- # https://web.archive.org/web/20180715073746/http://www.inta.org/INTABulletin/Pages/GERMANYGeneralPublicLicenseDoesNotPermitUseofThird-PartyTrademarksforAdvertisingModifiedVersionsofOpen-SourceSoftware.aspx +- # +- # The verdict in German +- # https://www.admody.com/urteilsdatenbank/cafe6fdaeed3/OLG-Duesseldorf_Urteil_vom_28-September-2010_Az_I-20-U-41-09 +- # https://web.archive.org/web/20180715073717/https://www.admody.com/urteilsdatenbank/cafe6fdaeed3/OLG-Duesseldorf_Urteil_vom_28-September-2010_Az_I-20-U-41-09 +- # +- # Other free software limiting derivates by the same name +- # https://en.wikipedia.org/wiki/Red_Hat_Enterprise_Linux_derivatives#Legal_aspects +- # https://tm.joomla.org/trademark-faq.html +- # https://www.mozilla.org/en-US/foundation/trademarks/faq/ +- # +- # Running 'parallel --citation' one single time takes less than 10 +- # seconds, and will silence the citation notice for future +- # runs. If that is too much trouble for you, why not use one of +- # the alternatives instead? +- # See a list in: 'man parallel_alternatives' +- # +- # Please read the above before changing this line. +- citation_notice(); +- + parse_halt(); + + if($ENV{'PARALLEL_ENV'}) { +@@ -4407,77 +4346,9 @@ sub usage() { + "", + "See 'man $Global::progname' for details", + "", +- "Academic tradition requires you to cite works you base your article on.", +- "If you use programs that use GNU Parallel to process data for an article in a", +- "scientific publication, please cite:", +- "", +- " O. Tange (2018): GNU Parallel 2018, Mar 2018, ISBN 9781387509881,", +- " DOI https://doi.org/10.5281/zenodo.1146014", +- "", +- # Before changing this line, please read +- # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice +- "This helps funding further development; AND IT WON'T COST YOU A CENT.", +- "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.", +- "", + "",); + } + +-sub citation_notice() { +- # if --will-cite or --plain: do nothing +- # if stderr redirected: do nothing +- # if $PARALLEL_HOME/will-cite: do nothing +- # else: print citation notice to stderr +- if($opt::willcite +- or +- $opt::plain +- or +- not -t $Global::original_stderr +- or +- grep { -e "$_/will-cite" } @Global::config_dirs) { +- # skip +- } else { +- ::status +- ("Academic tradition requires you to cite works you base your article on.", +- "If you use programs that use GNU Parallel to process data for an article in a", +- "scientific publication, please cite:", +- "", +- " O. Tange (2018): GNU Parallel 2018, Mar 2018, ISBN 9781387509881,", +- " DOI https://doi.org/10.5281/zenodo.1146014", +- "", +- # Before changing this line, please read +- # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice +- "This helps funding further development; AND IT WON'T COST YOU A CENT.", +- "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.", +- "", +- "More about funding GNU Parallel and the citation notice:", +- "https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice", +- "", +- "To silence this citation notice: run 'parallel --citation' once.", +- "" +- ); +- mkdir $Global::config_dir; +- # Number of times the user has run GNU Parallel without showing +- # willingness to cite +- my $runs = 0; +- if(open (my $fh, "<", $Global::config_dir. +- "/runs-without-willing-to-cite")) { +- $runs = <$fh>; +- close $fh; +- } +- $runs++; +- if(open (my $fh, ">", $Global::config_dir. +- "/runs-without-willing-to-cite")) { +- print $fh $runs; +- close $fh; +- if($runs >= 10) { +- ::status("Come on: You have run parallel $runs times. Isn't it about time ", +- "you run 'parallel --citation' once to silence the citation notice?", +- ""); +- } +- } +- } +-} +- + sub status(@) { + my @w = @_; + my $fh = $Global::status_fd || *STDERR; +@@ -4529,95 +4400,8 @@ sub version() { + "Copyright (C) 2007-2019 Ole Tange and Free Software Foundation, Inc.", + "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>", + "This is free software: you are free to change and redistribute it.", +- "GNU $Global::progname comes with no warranty.", +- "", +- "Web site: http://www.gnu.org/software/${Global::progname}\n", +- "When using programs that use GNU Parallel to process data for publication", +- "please cite as described in 'parallel --citation'.\n", +- ); +-} +- +-sub citation() { +- # Returns: N/A +- my ($all_argv_ref,$argv_options_removed_ref) = @_; +- my $all_argv = "@$all_argv_ref"; +- my $no_opts = "@$argv_options_removed_ref"; +- $all_argv=~s/--citation//; +- if($all_argv ne $no_opts) { +- ::warning("--citation ignores all other options and arguments."); +- ::status(""); +- } +- +- ::status( +- "Academic tradition requires you to cite works you base your article on.", +- "If you use programs that use GNU Parallel to process data for an article in a", +- "scientific publication, please cite:", +- "", +- "\@book{tange_ole_2018_1146014,", +- " author = {Tange, Ole},", +- " title = {GNU Parallel 2018},", +- " publisher = {Ole Tange},", +- " month = Mar,", +- " year = 2018,", +- " ISBN = {9781387509881},", +- " doi = {10.5281/zenodo.1146014},", +- " url = {https://doi.org/10.5281/zenodo.1146014}", +- "}", +- "", +- "(Feel free to use \\nocite{tange_ole_2018_1146014})", +- "", +- # Before changing this line, please read +- # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice +- # https://git.savannah.gnu.org/cgit/parallel.git/tree/doc/citation-notice-faq.txt +- "This helps funding further development; AND IT WON'T COST YOU A CENT.", +- "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.", +- "", +- "More about funding GNU Parallel and the citation notice:", +- "https://lists.gnu.org/archive/html/parallel/2013-11/msg00006.html", +- "https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice", +- "https://git.savannah.gnu.org/cgit/parallel.git/tree/doc/citation-notice-faq.txt", +- "", +- "If you send a copy of your published article to tange\@gnu.org, it will be", +- "mentioned in the release notes of next version of GNU Parallel.", +- "" ++ "GNU $Global::progname comes with no warranty.\n", + ); +- while(not grep { -e "$_/will-cite" } @Global::config_dirs) { +- print "\nType: 'will cite' and press enter.\n> "; +- my $input = <STDIN>; +- if(not defined $input) { +- exit(255); +- } +- if($input =~ /will cite/i) { +- mkdir $Global::config_dir; +- if(open (my $fh, ">", $Global::config_dir."/will-cite")) { +- close $fh; +- ::status( +- "", +- "Thank you for your support: You are the reason why there is funding to", +- "continue maintaining GNU Parallel. On behalf of future versions of", +- "GNU Parallel, which would not exist without your support:", +- "", +- " THANK YOU SO MUCH", +- "", +- "It is really appreciated. The citation notice is now silenced.", +- ""); +- } else { +- ::status( +- "", +- "Thank you for your support. It is much appreciated. The citation", +- "cannot permanently be silenced. Use '--will-cite' instead.", +- "", +- "If you use '--will-cite' in scripts to be run by others you are making", +- "it harder for others to see the citation notice. The development of", +- "GNU parallel is indirectly financed through citations, so if users", +- "do not know they should cite then you are making it harder to finance", +- "development. However, if you pay 10000 EUR, you should feel free to", +- "use '--will-cite' in scripts.", +- ""); +- last; +- } +- } +- } + } + + sub show_limits() { +-- +2.20.1 + Added: 0002-Remove-GNU-branding.patch =================================================================== --- 0002-Remove-GNU-branding.patch (rev 0) +++ 0002-Remove-GNU-branding.patch 2019-03-22 18:10:54 UTC (rev 443174) @@ -0,0 +1,165 @@ +From 9d77b065c2ccd1611f12fd2b30bd2dcc8464aa8e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Johannes=20L=C3=B6thberg?= <johan...@kyriasis.com> +Date: Fri, 22 Mar 2019 19:04:42 +0100 +Subject: [PATCH 2/2] Remove GNU branding +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +To comply with trademark requirements. + +Signed-off-by: Johannes Löthberg <johan...@kyriasis.com> +--- + src/parallel | 40 ++++++++++++++++++++-------------------- + 1 file changed, 20 insertions(+), 20 deletions(-) + +diff --git a/src/parallel b/src/parallel +index 8e4437a..eb2dd48 100755 +--- a/src/parallel ++++ b/src/parallel +@@ -1846,7 +1846,7 @@ sub parse_replacement_string_options() { + sub parse_semaphore() { + # Semaphore defaults + # Must be done before computing number of processes and max_line_length +- # because when running as a semaphore GNU Parallel does not read args ++ # because when running as a semaphore Parallel does not read args + # Uses: + # $opt::semaphore + # $Global::semaphore +@@ -2665,7 +2665,7 @@ sub __RUNNING_THE_JOBS_AND_PRINTING_PROGRESS__() {} + # $Global::total_started = total number of jobs started + # $Global::joblog = filehandle of joblog + # $Global::debug = Is debugging on? +-# $Global::exitstatus = status code of GNU Parallel ++# $Global::exitstatus = status code of Parallel + # $Global::quoting = quote the command to run + + sub init_run_jobs() { +@@ -3620,14 +3620,14 @@ sub run_parallel() { + } + + sub _run_parallel() { +- # Run GNU Parallel ++ # Run Parallel + # This should ideally just fork an internal copy + # and not start it through a shell + # Input: +- # $stdin = data to provide on stdin for GNU Parallel ++ # $stdin = data to provide on stdin for Parallel + # @args = command line arguments + # Returns: +- # $exitstatus = exitcode of GNU Parallel run ++ # $exitstatus = exitcode of Parallel run + # \@stdout = standard output + # \@stderr = standard error + my ($stdin,@args) = @_; +@@ -4003,7 +4003,7 @@ sub onall($@) { + ); + ::debug("init", "| $0 $options\n"); + open(my $parallel_fh, "|-", "$0 -0 --will-cite -j0 $options") || +- ::die_bug("This does not run GNU Parallel: $0 $options"); ++ ::die_bug("This does not run Parallel: $0 $options"); + my @joblogs; + for my $host (sort keys %Global::host) { + my $sshlogin = $Global::host{$host}; +@@ -4067,14 +4067,14 @@ sub sigpipe() { + + sub signal_children() { + # Send signal to all children process groups +- # and GNU Parallel itself ++ # and Parallel itself + # Uses: + # %SIG + # Returns: N/A + my $signal = shift; + debug("run", "Sending $signal "); + kill $signal, map { -$_ } keys %Global::running; +- # Use default signal handler for GNU Parallel itself ++ # Use default signal handler for Parallel itself + $SIG{$signal} = undef; + kill $signal, $$; + } +@@ -4396,11 +4396,11 @@ sub version() { + # Returns: N/A + print join + ("\n", +- "GNU $Global::progname $Global::version", ++ "$Global::progname $Global::version", + "Copyright (C) 2007-2019 Ole Tange and Free Software Foundation, Inc.", + "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>", + "This is free software: you are free to change and redistribute it.", +- "GNU $Global::progname comes with no warranty.\n", ++ "$Global::progname comes with no warranty.\n", + ); + } + +@@ -4415,7 +4415,7 @@ sub show_limits() { + } + + sub embed() { +- # Give an embeddable version of GNU Parallel ++ # Give an embeddable version of Parallel + # Tested with: bash, zsh, ksh, ash, dash, sh + my $randomstring = "cut-here-".join"", + map { (0..9,"a".."z","A".."Z")[rand(62)] } (1..20); +@@ -4460,9 +4460,9 @@ sub embed() { + "; + + print q! +-# Embedded GNU Parallel created with --embed ++# Embedded Parallel created with --embed + parallel() { +- # Start GNU Parallel without leaving temporary files ++ # Start Parallel without leaving temporary files + # + # Not all shells support 'perl <(cat ...)' + # This is a complex way of doing: +@@ -5891,7 +5891,7 @@ sub loadavg($) { + # Recompute a new one in the background + # The load average is computed as the number of processes waiting for disk + # or CPU right now. So it is the server load this instant and not averaged over +- # several minutes. This is needed so GNU Parallel will at most start one job ++ # several minutes. This is needed so Parallel will at most start one job + # that will push the load over the limit. + # + # Returns: +@@ -8110,8 +8110,8 @@ sub base64_zip_eval() { + # Returns: + # $script = 1-liner for perl -e + my $script = ::spacefree(0,q{ +- @GNU_Parallel = split /_/, "use_IPC::Open3;_use_MIME::Base64"; +- eval"@GNU_Parallel"; ++ @Parallel = split /_/, "use_IPC::Open3;_use_MIME::Base64"; ++ eval"@Parallel"; + $chld = $SIG{CHLD}; + $SIG{CHLD} = "IGNORE"; + # Search for bzip2. Not found => use default path +@@ -8163,13 +8163,13 @@ sub base64_eval($) { + # Will be wrapped in ' so single quote is forbidden. + # Spaces are stripped so spaces cannot be significant. + # The funny 'use IPC::Open3'-syntax is to avoid spaces and +- # to make it clear that this is a GNU Parallel command ++ # to make it clear that this is a Parallel command + # when looking at the process table. + # Returns: + # $script = 1-liner for perl -e + my $script = ::spacefree(0,q{ +- @GNU_Parallel=("use","IPC::Open3;","use","MIME::Base64"); +- eval "@GNU_Parallel"; ++ @Parallel=("use","IPC::Open3;","use","MIME::Base64"); ++ eval "@Parallel"; + my $eval = decode_base64(join"",@ARGV); + eval $eval; + }); +@@ -10792,7 +10792,7 @@ sub get($) { + my $ret = $self->{'arg_sub_queue'}->get(); + if($ret) { + if(grep { index($_->orig(),"\0") > 0 } @$ret) { +- # Allow for \0 in position 0 because GNU Parallel uses "\0noarg" ++ # Allow for \0 in position 0 because Parallel uses "\0noarg" + # to mean no-string + ::warning("A NUL character in the input was replaced with \\0.", + "NUL cannot be passed through in the argument list.", +-- +2.20.1 + Modified: PKGBUILD =================================================================== --- PKGBUILD 2019-03-22 18:04:59 UTC (rev 443173) +++ PKGBUILD 2019-03-22 18:10:54 UTC (rev 443174) @@ -4,7 +4,7 @@ # Contributor: Peter Simons <sim...@cryp.to> pkgname=parallel -pkgver=20181222 +pkgver=20190322 pkgrel=1 pkgdesc='A shell tool for executing jobs in parallel' arch=('any') @@ -12,15 +12,18 @@ license=('GPL3') depends=('perl' 'procps') source=(https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.bz2{,.sig} - remove-citation-nagging.patch) -sha1sums=('0eeb7f0503dc55c862f1c12d9d394f21e52764ae' + 0001-Remove-citation-things.patch + 0002-Remove-GNU-branding.patch) +sha1sums=('35bb143b0f344257c22486f8d8d6970ea61a3f7b' 'SKIP' - 'c33163602d9aabfe8a54c58a57f478642274f111') + 'd1384410e9dcff114021a3087d59fc9ac571ab97' + 'b97516acb21e1f95f33ade1bb058e13a8c5fdeb8') validpgpkeys=('CDA01A4208C4F74506107E7BD1AB451688888888') prepare() { cd parallel-$pkgver - patch -p1 <"$srcdir"/remove-citation-nagging.patch + patch -p1 <"$srcdir"/0001-Remove-citation-things.patch + patch -p1 <"$srcdir"/0002-Remove-GNU-branding.patch } build() { Deleted: remove-citation-nagging.patch =================================================================== --- remove-citation-nagging.patch 2019-03-22 18:04:59 UTC (rev 443173) +++ remove-citation-nagging.patch 2019-03-22 18:10:54 UTC (rev 443174) @@ -1,387 +0,0 @@ ---- a/src/parallel 2019-01-01 19:20:08.657296201 +0100 -+++ b/src/parallel 2019-01-01 19:24:39.786562723 +0100 -@@ -1083,8 +1083,6 @@ - "gnu" => \$opt::gnu, - "link|xapply" => \$opt::link, - "linkinputsource|xapplyinputsource=i" => \@opt::linkinputsource, -- # Before changing this line, please read -- # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice - "bibtex|citation" => \$opt::citation, - "wc|willcite|will-cite|nn|nonotice|no-notice" => \$opt::willcite, - # Termination and retries -@@ -1188,12 +1186,6 @@ - my @argv_before = @ARGV; - @ARGV = read_options(); - -- # Before changing this line, please read -- # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice -- if(defined $opt::citation) { -- citation(\@argv_before,\@ARGV); -- wait_and_exit(0); -- } - # no-* overrides * - if($opt::nokeeporder) { $opt::keeporder = undef; } - -@@ -1420,59 +1412,6 @@ - if(defined $opt::eta) { $opt::progress = $opt::eta; } - if(defined $opt::bar) { $opt::progress = $opt::bar; } - -- # Funding a free software project is hard. GNU Parallel is no -- # exception. On top of that it seems the less visible a project -- # is, the harder it is to get funding. And the nature of GNU -- # Parallel is that it will never be seen by "the guy with the -- # checkbook", but only by the people doing the actual work. -- # -- # This problem has been covered by others - though no solution has -- # been found: -- # https://www.slideshare.net/NadiaEghbal/consider-the-maintainer -- # https://www.numfocus.org/blog/why-is-numpy-only-now-getting-funded/ -- # -- # Before implementing the citation notice it was discussed with -- # the users: -- # https://lists.gnu.org/archive/html/parallel/2013-11/msg00006.html -- # -- # Having to spend 10 seconds on running 'parallel --citation' once -- # is no doubt not an ideal solution, but no one has so far come up -- # with an ideal solution - neither for funding GNU Parallel nor -- # other free software. -- # -- # If you believe you have the perfect solution, you should try it -- # out, and if it works, you should post it on the email -- # list. Ideas that will cost work and which have not been tested -- # are, however, unlikely to be prioritized. -- # -- # Please note that GPL version 3 gives you the right to fork GNU -- # Parallel under a new name, but it does not give you the right to -- # distribute modified copies with the citation notice disabled -- # under the name GNU Parallel. To do that you need to be the owner -- # of the GNU Parallel trademark. The xt:Commerce case shows this. -- # -- # Description of the xt:Commerce case in OLG Duesseldorf -- # http://www.inta.org/INTABulletin/Pages/GERMANYGeneralPublicLicenseDoesNotPermitUseofThird-PartyTrademarksforAdvertisingModifiedVersionsofOpen-SourceSoftware.aspx -- # https://web.archive.org/web/20180715073746/http://www.inta.org/INTABulletin/Pages/GERMANYGeneralPublicLicenseDoesNotPermitUseofThird-PartyTrademarksforAdvertisingModifiedVersionsofOpen-SourceSoftware.aspx -- # -- # The verdict in German -- # https://www.admody.com/urteilsdatenbank/cafe6fdaeed3/OLG-Duesseldorf_Urteil_vom_28-September-2010_Az_I-20-U-41-09 -- # https://web.archive.org/web/20180715073717/https://www.admody.com/urteilsdatenbank/cafe6fdaeed3/OLG-Duesseldorf_Urteil_vom_28-September-2010_Az_I-20-U-41-09 -- # -- # Other free software limiting derivates by the same name -- # https://en.wikipedia.org/wiki/Red_Hat_Enterprise_Linux_derivatives#Legal_aspects -- # https://tm.joomla.org/trademark-faq.html -- # https://www.mozilla.org/en-US/foundation/trademarks/faq/ -- # -- # Running 'parallel --citation' one single time takes less than 10 -- # seconds, and will silence the citation notice for future -- # runs. If that is too much trouble for you, why not use one of -- # the alternatives instead? -- # See a list in: 'man parallel_alternatives' -- # -- # Please read the above before changing this line. -- citation_notice(); -- - parse_halt(); - - if($ENV{'PARALLEL_ENV'}) { -@@ -1782,7 +1721,7 @@ - sub parse_semaphore { - # Semaphore defaults - # Must be done before computing number of processes and max_line_length -- # because when running as a semaphore GNU Parallel does not read args -+ # because when running as a semaphore Parallel does not read args - # Uses: - # $opt::semaphore - # $Global::semaphore -@@ -2598,7 +2537,7 @@ - # $Global::total_started = total number of jobs started - # $Global::joblog = filehandle of joblog - # $Global::debug = Is debugging on? --# $Global::exitstatus = status code of GNU Parallel -+# $Global::exitstatus = status code of Parallel - # $Global::quoting = quote the command to run - - sub init_run_jobs { -@@ -3549,14 +3488,14 @@ - } - - sub _run_parallel { -- # Run GNU Parallel -+ # Run Parallel - # This should ideally just fork an internal copy - # and not start it through a shell - # Input: -- # $stdin = data to provide on stdin for GNU Parallel -+ # $stdin = data to provide on stdin for Parallel - # @args = command line arguments - # Returns: -- # $exitstatus = exitcode of GNU Parallel run -+ # $exitstatus = exitcode of Parallel run - # \@stdout = standard output - # \@stderr = standard error - my ($stdin,@args) = @_; -@@ -3931,7 +3870,7 @@ - ); - ::debug("init", "| $0 $options\n"); - open(my $parallel_fh, "|-", "$0 -0 --will-cite -j0 $options") || -- ::die_bug("This does not run GNU Parallel: $0 $options"); -+ ::die_bug("This does not run Parallel: $0 $options"); - my @joblogs; - for my $host (sort keys %Global::host) { - my $sshlogin = $Global::host{$host}; -@@ -3995,14 +3934,14 @@ - - sub signal_children { - # Send signal to all children process groups -- # and GNU Parallel itself -+ # and Parallel itself - # Uses: - # %SIG - # Returns: N/A - my $signal = shift; - debug("run", "Sending $signal "); - kill $signal, map { -$_ } keys %Global::running; -- # Use default signal handler for GNU Parallel itself -+ # Use default signal handler for Parallel itself - $SIG{$signal} = undef; - kill $signal, $$; - } -@@ -4274,77 +4213,9 @@ - "", - "See 'man $Global::progname' for details", - "", -- "Academic tradition requires you to cite works you base your article on.", -- "If you use programs that use GNU Parallel to process data for an article in a", -- "scientific publication, please cite:", -- "", -- " O. Tange (2018): GNU Parallel 2018, Mar 2018, ISBN 9781387509881,", -- " DOI https://doi.org/10.5281/zenodo.1146014", -- "", -- # Before changing this line, please read -- # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice -- "This helps funding further development; AND IT WON'T COST YOU A CENT.", -- "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.", -- "", - "",); - } - --sub citation_notice { -- # if --will-cite or --plain: do nothing -- # if stderr redirected: do nothing -- # if $PARALLEL_HOME/will-cite: do nothing -- # else: print citation notice to stderr -- if($opt::willcite -- or -- $opt::plain -- or -- not -t $Global::original_stderr -- or -- grep { -e "$_/will-cite" } @Global::config_dirs) { -- # skip -- } else { -- ::status -- ("Academic tradition requires you to cite works you base your article on.", -- "If you use programs that use GNU Parallel to process data for an article in a", -- "scientific publication, please cite:", -- "", -- " O. Tange (2018): GNU Parallel 2018, Mar 2018, ISBN 9781387509881,", -- " DOI https://doi.org/10.5281/zenodo.1146014", -- "", -- # Before changing this line, please read -- # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice -- "This helps funding further development; AND IT WON'T COST YOU A CENT.", -- "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.", -- "", -- "More about funding GNU Parallel and the citation notice:", -- "https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice", -- "", -- "To silence this citation notice: run 'parallel --citation' once.", -- "" -- ); -- mkdir $Global::config_dir; -- # Number of times the user has run GNU Parallel without showing -- # willingness to cite -- my $runs = 0; -- if(open (my $fh, "<", $Global::config_dir. -- "/runs-without-willing-to-cite")) { -- $runs = <$fh>; -- close $fh; -- } -- $runs++; -- if(open (my $fh, ">", $Global::config_dir. -- "/runs-without-willing-to-cite")) { -- print $fh $runs; -- close $fh; -- if($runs >= 10) { -- ::status("Come on: You have run parallel $runs times. Isn't it about time ", -- "you run 'parallel --citation' once to silence the citation notice?", -- ""); -- } -- } -- } --} -- - sub status { - my @w = @_; - my $fh = $Global::status_fd || *STDERR; -@@ -4392,93 +4263,16 @@ - # Returns: N/A - print join - ("\n", -- "GNU $Global::progname $Global::version", -+ "$Global::progname $Global::version", - "Copyright (C) 2007-2018 Ole Tange and Free Software Foundation, Inc.", - "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>", - "This is free software: you are free to change and redistribute it.", -- "GNU $Global::progname comes with no warranty.", -+ "$Global::progname comes with no warranty.", - "", - "Web site: http://www.gnu.org/software/${Global::progname}\n", -- "When using programs that use GNU Parallel to process data for publication", -- "please cite as described in 'parallel --citation'.\n", - ); - } - --sub citation { -- # Returns: N/A -- my ($all_argv_ref,$argv_options_removed_ref) = @_; -- my $all_argv = "@$all_argv_ref"; -- my $no_opts = "@$argv_options_removed_ref"; -- $all_argv=~s/--citation//; -- if($all_argv ne $no_opts) { -- ::warning("--citation ignores all other options and arguments."); -- ::status(""); -- } -- -- ::status( -- "Academic tradition requires you to cite works you base your article on.", -- "If you use programs that use GNU Parallel to process data for an article in a", -- "scientific publication, please cite:", -- "", -- "\@book{tange_ole_2018_1146014,", -- " author = {Tange, Ole},", -- " title = {GNU Parallel 2018},", -- " publisher = {Ole Tange},", -- " month = Mar,", -- " year = 2018,", -- " ISBN = {9781387509881},", -- " doi = {10.5281/zenodo.1146014},", -- " url = {https://doi.org/10.5281/zenodo.1146014}", -- "}", -- "", -- "(Feel free to use \\nocite{tange_ole_2018_1146014})", -- "", -- # Before changing this line, please read -- # https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice -- "This helps funding further development; AND IT WON'T COST YOU A CENT.", -- "If you pay 10000 EUR you should feel free to use GNU Parallel without citing.", -- "", -- "More about funding GNU Parallel and the citation notice:", -- "https://www.gnu.org/software/parallel/parallel_design.html#Citation-notice", -- "", -- "If you send a copy of your published article to tange\@gnu.org, it will be", -- "mentioned in the release notes of next version of GNU Parallel.", -- "" -- ); -- while(not grep { -e "$_/will-cite" } @Global::config_dirs) { -- print "\nType: 'will cite' and press enter.\n> "; -- my $input = <STDIN>; -- if(not defined $input) { -- exit(255); -- } -- if($input =~ /will cite/i) { -- mkdir $Global::config_dir; -- if(open (my $fh, ">", $Global::config_dir."/will-cite")) { -- close $fh; -- ::status( -- "", -- "Thank you for your support. It is much appreciated. The citation", -- "notice is now silenced.", -- ""); -- } else { -- ::status( -- "", -- "Thank you for your support. It is much appreciated. The citation", -- "cannot permanently be silenced. Use '--will-cite' instead.", -- "", -- "If you use '--will-cite' in scripts to be run by others you are making", -- "it harder for others to see the citation notice. The development of", -- "GNU parallel is indirectly financed through citations, so if users", -- "do not know they should cite then you are making it harder to finance", -- "development. However, if you pay 10000 EUR, you should feel free to", -- "use '--will-cite' in scripts.", -- ""); -- last; -- } -- } -- } --} -- - sub show_limits { - # Returns: N/A - print("Maximal size of command: ",Limits::Command::real_max_length(),"\n", -@@ -4490,7 +4284,7 @@ - } - - sub embed { -- # Give an embeddable version of GNU Parallel -+ # Give an embeddable version of Parallel - # Tested with: bash, zsh, ksh, ash, dash, sh - my $randomstring = "cut-here-".join"", - map { (0..9,"a".."z","A".."Z")[rand(62)] } (1..20); -@@ -4535,9 +4329,9 @@ - "; - - print q! --# Embedded GNU Parallel created with --embed -+# Embedded Parallel created with --embed - parallel() { -- # Start GNU Parallel without leaving temporary files -+ # Start Parallel without leaving temporary files - # - # Not all shells support 'perl <(cat ...)' - # This is a complex way of doing: -@@ -5946,7 +5740,7 @@ - # Recompute a new one in the background - # The load average is computed as the number of processes waiting for disk - # or CPU right now. So it is the server load this instant and not averaged over -- # several minutes. This is needed so GNU Parallel will at most start one job -+ # several minutes. This is needed so Parallel will at most start one job - # that will push the load over the limit. - # - # Returns: -@@ -8138,8 +7932,8 @@ - # Returns: - # $script = 1-liner for perl -e - my $script = ::spacefree(0,q{ -- @GNU_Parallel = split /_/, "use_IPC::Open3;_use_MIME::Base64"; -- eval"@GNU_Parallel"; -+ @Parallel = split /_/, "use_IPC::Open3;_use_MIME::Base64"; -+ eval"@Parallel"; - $chld = $SIG{CHLD}; - $SIG{CHLD} = "IGNORE"; - # Search for bzip2. Not found => use default path -@@ -8191,13 +7985,13 @@ - # Will be wrapped in ' so single quote is forbidden. - # Spaces are stripped so spaces cannot be significant. - # The funny 'use IPC::Open3'-syntax is to avoid spaces and -- # to make it clear that this is a GNU Parallel command -+ # to make it clear that this is a Parallel command - # when looking at the process table. - # Returns: - # $script = 1-liner for perl -e - my $script = ::spacefree(0,q{ -- @GNU_Parallel=("use","IPC::Open3;","use","MIME::Base64"); -- eval "@GNU_Parallel"; -+ @Parallel=("use","IPC::Open3;","use","MIME::Base64"); -+ eval "@Parallel"; - my $eval = decode_base64(join"",@ARGV); - eval $eval; - }); -@@ -10783,7 +10577,7 @@ - my $ret = $self->{'arg_sub_queue'}->get(); - if($ret) { - if(grep { index($_->orig(),"\0") > 0 } @$ret) { -- # Allow for \0 in position 0 because GNU Parallel uses "\0noarg" -+ # Allow for \0 in position 0 because Parallel uses "\0noarg" - # to mean no-string - ::warning("A NUL character in the input was replaced with \\0.", - "NUL cannot be passed through in the argument list.",