[arch-commits] Commit in parallel/trunk (PKGBUILD remove-citation-nagging.patch)
Johannes Löthberg
demize at archlinux.org
Tue Jan 1 18:27:28 UTC 2019
Date: Tuesday, January 1, 2019 @ 18:27:28
Author: demize
Revision: 420212
upgpkg: parallel 20181222-1
Modified:
parallel/trunk/PKGBUILD
parallel/trunk/remove-citation-nagging.patch
-------------------------------+
PKGBUILD | 6
remove-citation-nagging.patch | 392 +++++++++++++++++++++++++++++++++++++++-
2 files changed, 387 insertions(+), 11 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2019-01-01 18:05:45 UTC (rev 420211)
+++ PKGBUILD 2019-01-01 18:27:28 UTC (rev 420212)
@@ -4,7 +4,7 @@
# Contributor: Peter Simons <simons at cryp.to>
pkgname=parallel
-pkgver=20181122
+pkgver=20181222
pkgrel=1
pkgdesc='A shell tool for executing jobs in parallel'
arch=('any')
@@ -13,9 +13,9 @@
depends=('perl' 'procps')
source=(https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.bz2{,.sig}
remove-citation-nagging.patch)
-sha1sums=('e5501422315f989f622b564d4b75347abe799422'
+sha1sums=('0eeb7f0503dc55c862f1c12d9d394f21e52764ae'
'SKIP'
- '118706e9604bbb8de4d27682bb014a0614d6489a')
+ 'c33163602d9aabfe8a54c58a57f478642274f111')
validpgpkeys=('CDA01A4208C4F74506107E7BD1AB451688888888')
prepare() {
Modified: remove-citation-nagging.patch
===================================================================
--- remove-citation-nagging.patch 2019-01-01 18:05:45 UTC (rev 420211)
+++ remove-citation-nagging.patch 2019-01-01 18:27:28 UTC (rev 420212)
@@ -1,11 +1,387 @@
---- a/src/parallel 2018-12-19 19:03:15.922924562 +0100
-+++ a/src/parallel 2018-12-19 19:06:12.754363549 +0100
-@@ -1455,7 +1455,7 @@
- # runs. If that is too much trouble for you, why not use one of
- # the alternatives instead?
- # See a list in: 'man parallel_alternatives'
+--- 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();
-+ #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, at 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"", at 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.",
More information about the arch-commits
mailing list