corsepiu pushed to perl-Server-Starter (master). "Upstream update. (..more)"
notifications at fedoraproject.org
notifications at fedoraproject.org
Tue Apr 7 03:16:42 UTC 2015
>From 96b6f5340aaf906e870d20b95d546801de03c587 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ralf=20Cors=C3=A9pius?= <corsepiu at fedoraproject.org>
Date: Tue, 7 Apr 2015 05:16:23 +0200
Subject: Upstream update.
- Rework spec.
- Remove bundled modules.
- Drop Fedora/RH-patches.
diff --git a/.gitignore b/.gitignore
index 48e455c..2ba2233 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-/Server-Starter-0.17.tar.gz
+/Server-Starter-0.25.tar.gz
diff --git a/Server-Starter-0.17-Fix-loading-envdir.patch b/Server-Starter-0.17-Fix-loading-envdir.patch
deleted file mode 100644
index d0b9dbf..0000000
--- a/Server-Starter-0.17-Fix-loading-envdir.patch
+++ /dev/null
@@ -1,107 +0,0 @@
-From 6d965848ff8905f82da0f1ac142000b12a05905e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar at redhat.com>
-Date: Mon, 16 Jun 2014 17:25:08 +0200
-Subject: [PATCH 2/2] Fix loading envdir
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The envdir was scanned each second regardless of signal received. This
-caused random failures of the 'removed env' t/07-envdir.t test.
-
-This patch fixes it by loading the environment only just before
-intended restart. It also documents this start_server() option.
-
-Signed-off-by: Petr Písař <ppisar at redhat.com>
----
- lib/Server/Starter.pm | 31 ++++++++++++++++++++++---------
- 1 file changed, 22 insertions(+), 9 deletions(-)
-
-diff --git a/lib/Server/Starter.pm b/lib/Server/Starter.pm
-index 47bc18a..c171307 100644
---- a/lib/Server/Starter.pm
-+++ b/lib/Server/Starter.pm
-@@ -179,15 +179,13 @@ sub start_server {
-
- # the main loop
- my $term_signal = 0;
-- $current_worker = _start_worker($opts);
-+ my %loaded_env;
-+ $current_worker = _start_worker($opts, \%loaded_env);
- $update_status->();
- my $auto_restart_interval = 0;
- my $last_restart_time = time();
- my $restart_flag = 0;
- while (1) {
-- my %loaded_env = _reload_env();
-- my @loaded_env_keys = keys %loaded_env;
-- local @ENV{@loaded_env_keys} = map { $loaded_env{$_} } (@loaded_env_keys);
- if ($ENV{ENABLE_AUTO_RESTART}) {
- # restart workers periodically
- $auto_restart_interval = $ENV{AUTO_RESTART_INTERVAL} ||= 360;
-@@ -201,7 +199,7 @@ sub start_server {
- last if ($died_worker <= 0);
- if ($died_worker == $current_worker) {
- print STDERR "worker $died_worker died unexpectedly with status:$status, restarting\n";
-- $current_worker = _start_worker($opts);
-+ $current_worker = _start_worker($opts, \%loaded_env);
- $last_restart_time = time();
- } else {
- print STDERR "old worker $died_worker died, status:$status\n";
-@@ -232,9 +230,10 @@ sub start_server {
- }
- }
- if ($restart_flag > 1 || ($restart_flag > 0 && $num_old_workers == 0)) {
-+ %loaded_env = _reload_env();
- print STDERR "spawning a new worker (num_old_workers=$num_old_workers)\n";
- $old_workers{$current_worker} = $ENV{SERVER_STARTER_GENERATION};
-- $current_worker = _start_worker($opts);
-+ $current_worker = _start_worker($opts, \%loaded_env);
- $last_restart_time = time();
- $restart_flag = 0;
- $update_status->();
-@@ -342,7 +341,7 @@ sub _reload_env {
- }
-
- sub _start_worker {
-- my $opts = shift;
-+ my ($opts, $loaded_env) = @_;
- my $pid;
- while (1) {
- $ENV{SERVER_STARTER_GENERATION}++;
-@@ -350,6 +349,8 @@ sub _start_worker {
- die "fork(2) failed:$!"
- unless defined $pid;
- if ($pid == 0) {
-+ my @loaded_env_keys = keys %$loaded_env;
-+ @ENV{@loaded_env_keys} = map { $loaded_env->{$_} } (@loaded_env_keys);
- my @args = @{$opts->{exec}};
- # child process
- if (defined $opts->{dir}) {
-@@ -418,9 +419,21 @@ A Net::Server personality that can be run under L<Server::Starter> exists under
-
- Returns zero or more file descriptors on which the server program should call accept(2) in a hashref. Each element of the hashref is: (host:port|port|path_of_unix_socket) => file_descriptor.
-
--=item start_server
-+=item start_server(%options)
-
--Starts the superdaemon. Used by the C<start_server> script.
-+Starts the superdaemon. Used by the C<start_server> script. Options are:
-+
-+=over 4
-+
-+=item envdir
-+
-+Defines a directory whose content is added into server's environment. Each file name specifies an environment variable, the file's content specifies a value of the environment variable. Files with names starting with a dot are ignored.
-+
-+The environment directory is scanned and read only on time-based autorestart or SIGHUP signal. The first server instances have default environment. To remove an enviroment variable added before, remove the file and send the signal.
-+
-+This option is not mandatory.
-+
-+=back
-
- =back
-
---
-1.9.3
-
diff --git a/Server-Starter-0.17-Synchronize-to-PID-in-t-01-starter.t.patch b/Server-Starter-0.17-Synchronize-to-PID-in-t-01-starter.t.patch
deleted file mode 100644
index e194cf3..0000000
--- a/Server-Starter-0.17-Synchronize-to-PID-in-t-01-starter.t.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From f7d5f6bfb5e94a3ea01e53c5b69186ff7172b4bf Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar at redhat.com>
-Date: Fri, 8 Aug 2014 12:58:40 +0200
-Subject: [PATCH] Synchronize to PID in t/01-starter.t
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-There were races between various sleeps and the restarting server.
-THis patch fixes it by waiting for complete generation change in the
-status file.
-
-This fixes CPAN RT#73711.
-
-Signed-off-by: Petr Písař <ppisar at redhat.com>
----
- t/01-starter.t | 33 +++++++++++++++++++++++++--------
- 1 file changed, 25 insertions(+), 8 deletions(-)
-
-diff --git a/t/01-starter.t b/t/01-starter.t
-index ec671f0..1ddb925 100644
---- a/t/01-starter.t
-+++ b/t/01-starter.t
-@@ -3,7 +3,7 @@ use warnings;
-
- use File::Temp ();
- use Test::TCP;
--use Test::More tests => 28;
-+use Test::More tests => 26;
-
- use Server::Starter qw(start_server);
-
-@@ -43,14 +43,17 @@ for my $signal_on_hup ('TERM', 'USR1') {
- $buf =~ /^(\d+):/;
- my $worker_pid = $1;
- # switch to next gen
-- sleep 2;
-- my $status = get_status();
-- like(get_status(), qr/^1:\d+\n$/s, 'status before restart');
-+ my $previous_generation = get_single_generation();
-+ like($previous_generation, qr/^1:\d+\n$/s, 'status before restart');
- kill 'HUP', $server_pid;
-- sleep 3;
-- like(get_status(), qr/^1:\d+\n2:\d+$/s, 'status during restart');
-- sleep 2;
-- like(get_status(), qr/^2:\d+\n$/s, 'status after restart');
-+ my $current_generation;
-+ while (($current_generation = get_single_generation()) eq
-+ $previous_generation) {
-+ sleep 1;
-+ }
-+ diag "Server changed from <$previous_generation> ",
-+ "to <$current_generation>\n";
-+ like($current_generation, qr/^2:\d+\n$/s, 'status after restart');
- is(
- do {
- open my $fh, '<', "$tempdir/signame"
-@@ -76,7 +79,21 @@ for my $signal_on_hup ('TERM', 'USR1') {
- }
-
- sub get_status {
-+ while (! -e "$tempdir/status") {
-+ sleep 1;
-+ }
- open my $fh, '<', "$tempdir/status"
- or die "failed to open file:$tempdir/status:$!";
- do { undef $/; <$fh> };
- }
-+
-+sub get_single_generation {
-+ my $status;
-+ do {
-+ sleep 1 if defined $status;
-+ $status = get_status;
-+ } until ($status =~ /\A\d+:\d+\n\z/);
-+ chomp $status;
-+ $status;
-+}
-+
---
-1.9.3
-
diff --git a/Server-Starter-0.17-Synchronize-to-PID-in-t-05-killolddelay.t.patch b/Server-Starter-0.17-Synchronize-to-PID-in-t-05-killolddelay.t.patch
deleted file mode 100644
index 7dad7e0..0000000
--- a/Server-Starter-0.17-Synchronize-to-PID-in-t-05-killolddelay.t.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From 046fb1328e76851a1398a624b77e746c37c62a67 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar at redhat.com>
-Date: Thu, 21 Aug 2014 14:17:25 +0200
-Subject: [PATCH] Synchronize to PID in t/05-killolddelay.t
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-There were races between various sleeps and the restarting server.
-This patch fixes it by waiting for complete generation change in the
-status file.
-
-Similar to CPAN RT#73711.
-
-Signed-off-by: Petr Písař <ppisar at redhat.com>
----
- t/05-killolddelay.t | 36 +++++++++++++++++++++++++-----------
- 1 file changed, 25 insertions(+), 11 deletions(-)
-
-diff --git a/t/05-killolddelay.t b/t/05-killolddelay.t
-index 19856af..457bdd9 100644
---- a/t/05-killolddelay.t
-+++ b/t/05-killolddelay.t
-@@ -3,7 +3,7 @@ use warnings;
-
- use File::Temp ();
- use Test::TCP;
--use Test::More tests => 28;
-+use Test::More tests => 26;
-
- use Server::Starter qw(start_server);
-
-@@ -45,17 +45,18 @@ for my $signal_on_hup ('TERM', 'USR1') {
- $buf =~ /^(\d+):/;
- my $worker_pid = $1;
- # switch to next gen
-- sleep 2;
-- my $status = get_status();
-- like(get_status(), qr/^1:\d+\n$/s, 'status before restart');
-+ my $previous_generation = get_single_generation();
-+ like($previous_generation, qr/^1:\d+\n$/s, 'status before restart');
- kill 'HUP', $server_pid;
-- sleep 4;
-- like(get_status(), qr/^1:\d+\n2:\d+$/s, 'status during restart');
-- # Child process has finished in 2 seconds but the parent
-- # checks and calls waitpid every second, so wait for an
-- # additional 1 second.
-- sleep 3;
-- like(get_status(), qr/^2:\d+\n$/s, 'status after restart');
-+ my $current_generation;
-+ while (($current_generation = get_single_generation()) eq
-+ $previous_generation) {
-+ sleep 1;
-+ }
-+ diag "Server changed from <$previous_generation> ",
-+ "to <$current_generation>\n";
-+
-+ like($current_generation, qr/^2:\d+\n$/s, 'status after restart');
- is(
- do {
- open my $fh, '<', "$tempdir/signame"
-@@ -81,7 +82,20 @@ for my $signal_on_hup ('TERM', 'USR1') {
- }
-
- sub get_status {
-+ while (! -e "$tempdir/status") {
-+ sleep 1;
-+ }
- open my $fh, '<', "$tempdir/status"
- or die "failed to open file:$tempdir/status:$!";
- do { undef $/; <$fh> };
- }
-+
-+sub get_single_generation {
-+ my $status;
-+ do {
-+ sleep 1 if defined $status;
-+ $status = get_status;
-+ } until ($status =~ /\A\d+:\d+\n\z/);
-+ chomp $status;
-+ $status;
-+}
---
-1.9.3
-
diff --git a/Server-Starter-0.17-Synchronize-to-PID-in-t-06-autorestart.t.patch b/Server-Starter-0.17-Synchronize-to-PID-in-t-06-autorestart.t.patch
deleted file mode 100644
index 9b4a713..0000000
--- a/Server-Starter-0.17-Synchronize-to-PID-in-t-06-autorestart.t.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From b2cee396fea96266a95a829b94cdf759d0eae76d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar at redhat.com>
-Date: Thu, 10 Jul 2014 15:37:47 +0200
-Subject: [PATCH] Synchronize to PID in t/06-autorestart.t
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-There were races between various sleeps and 4s auto_restart_interval.
-This patch replaces the sleeps by waiting for status with a single PID
-entry.
-
-Similar to CPAN RT#73711.
-
-Signed-off-by: Petr Písař <ppisar at redhat.com>
----
- t/06-autorestart.t | 35 +++++++++++++++++++++++++++--------
- 1 file changed, 27 insertions(+), 8 deletions(-)
-
-diff --git a/t/06-autorestart.t b/t/06-autorestart.t
-index bab9241..9401500 100644
---- a/t/06-autorestart.t
-+++ b/t/06-autorestart.t
-@@ -3,7 +3,7 @@ use warnings;
-
- use File::Temp ();
- use Test::TCP;
--use Test::More tests => 28;
-+use Test::More tests => 26;
-
- use Server::Starter qw(start_server);
-
-@@ -46,13 +46,19 @@ for my $signal_on_hup ('TERM', 'USR1') {
- $buf =~ /^(\d+):/;
- my $worker_pid = $1;
- # switch to next gen
-- sleep 2;
-- my $status = get_status();
-- like(get_status(), qr/^1:\d+\n$/s, 'status before auto-restart');
-- sleep 5;
-- like(get_status(), qr/^1:\d+\n2:\d+$/s, 'status during transient state');
-- sleep 4;
-- like(get_status(), qr/^2:\d+\n$/s, 'status after auto-restart');
-+ my $previous_generation = get_single_generation();
-+ like($previous_generation, qr/^\d+:\d+\n$/s,
-+ 'status before auto-restart');
-+ my $current_generation;
-+ while (($current_generation = get_single_generation()) eq
-+ $previous_generation) {
-+ sleep 1;
-+ }
-+ diag "Server changed from <$previous_generation> ",
-+ "to <$current_generation>\n";
-+
-+ like($current_generation, qr/^\d+:\d+\n$/s,
-+ 'status after auto-restart');
- is(
- do {
- open my $fh, '<', "$tempdir/signame"
-@@ -78,7 +84,20 @@ for my $signal_on_hup ('TERM', 'USR1') {
- }
-
- sub get_status {
-+ while (! -e "$tempdir/status") {
-+ sleep 1;
-+ }
- open my $fh, '<', "$tempdir/status"
- or die "failed to open file:$tempdir/status:$!";
- do { undef $/; <$fh> };
- }
-+
-+sub get_single_generation {
-+ my $status;
-+ do {
-+ sleep 1 if defined $status;
-+ $status = get_status;
-+ } until ($status =~ /\A\d+:\d+\n\z/);
-+ chomp $status;
-+ $status;
-+}
---
-1.9.3
-
diff --git a/Server-Starter-0.17-Synchronize-to-PID-in-t-07-envdir.t.patch b/Server-Starter-0.17-Synchronize-to-PID-in-t-07-envdir.t.patch
deleted file mode 100644
index c71590d..0000000
--- a/Server-Starter-0.17-Synchronize-to-PID-in-t-07-envdir.t.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-From 9fc8c81a018ba6cb5f3f0ad3fbc836e301468978 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar at redhat.com>
-Date: Mon, 16 Jun 2014 15:20:43 +0200
-Subject: [PATCH 1/2] Synchronize to PID in t/07-envdir.t
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The t/07-envdir.t used various sleeps to deal with races. This broke obviously
-when the timing was abnormal like on have loaded machine. This patch
-synchronizes on the status file by checking only the new worker is
-running.
-
-Similar to CPAN RT#73711.
-
-Signed-off-by: Petr Písař <ppisar at redhat.com>
----
- t/07-envdir-print.pl | 3 ++-
- t/07-envdir.t | 29 ++++++++++++++++++++++++++---
- 2 files changed, 28 insertions(+), 4 deletions(-)
-
-diff --git a/t/07-envdir-print.pl b/t/07-envdir-print.pl
-index 22cb01a..fb14225 100755
---- a/t/07-envdir-print.pl
-+++ b/t/07-envdir-print.pl
-@@ -11,6 +11,7 @@ use Server::Starter qw(server_ports);
- $SIG{TERM} = $SIG{USR1} = sub {
- exit 0;
- };
-+$ENV{PID} = $$;
-
- my $listener = IO::Socket::INET->new(
- Proto => 'tcp',
-@@ -21,7 +22,7 @@ $listener->fdopen((values %{server_ports()})[0], 'w')
- while (1) {
- if (my $conn = $listener->accept) {
- my $s = "";
-- for my $envkey (keys %ENV) {
-+ for my $envkey (sort keys %ENV) {
- $s .= $envkey . "=" . $ENV{$envkey} . "\n";
- }
- $conn->syswrite($s);
-diff --git a/t/07-envdir.t b/t/07-envdir.t
-index 8bf2352..2050706 100644
---- a/t/07-envdir.t
-+++ b/t/07-envdir.t
-@@ -46,13 +46,36 @@ test_tcp(
- $buf;
- };
- my $restart = sub {
-- sleep 1;
-+ sub getstatus {
-+ my ($file, $value);
-+ open($file, '<', "$tempdir/status") or return '';
-+ do { local $/ = undef; $value = <$file>; };
-+ close $file;
-+ $value // '';
-+ }
-+ sub getsinglegeneration {
-+ my $status;
-+ do {
-+ sleep 1 if defined $status;
-+ $status = getstatus;
-+ } until ($status =~ /\A\d+:\d+\n\z/);
-+ chomp $status;
-+ $status;
-+ }
-+ my $previous_generation = getsinglegeneration;
- kill "HUP", $server_pid;
-- sleep 2;
-+ my $current_generation;
-+ while (($current_generation = getsinglegeneration) eq
-+ $previous_generation) {
-+ sleep 1;
-+ }
-+ diag "Server changed from <$previous_generation> ",
-+ "to <$current_generation>\n";
- };
- # Initial worker does not read envdir
- my $buf = $fetch_env->();
-- unlike($buf, qr/^FOO=foo-value1$/m, 'changed env');
-+ unlike($buf, qr/^FOO=foo-value1$/m,
-+ 'environment not read for the first time');
- # rewrite envdir
- open my $envfh, ">", "$tempdir/env/FOO" or die $!;
- print $envfh "foo-value2";
---
-1.9.3
-
diff --git a/Server-Starter-0.17-Synchronize-to-content-in-signame-file.patch b/Server-Starter-0.17-Synchronize-to-content-in-signame-file.patch
deleted file mode 100644
index 6236bea..0000000
--- a/Server-Starter-0.17-Synchronize-to-content-in-signame-file.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From 3ec63d1650f9199d6d2b2413c7e855bc108646a4 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar at redhat.com>
-Date: Mon, 8 Sep 2014 19:03:08 +0200
-Subject: [PATCH] Synchronize to content in signame file
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-There is a race between t/06-autorestart.t and
-t/05-killolddelay-echod.pl. If t/05-killolddelay-echod.pl is not fast
-enough with writing received signal name (e.g. by adding "sleep 2;" in
-the beginning of a signal handler), the t/06-autorestart.t will get
-empty signame file and the test for the signal name will fail.
-
-This patch adds synchornization by locking the signame file.
-
-Similar to CPAN RT#73711.
-
-Signed-off-by: Petr Písař <ppisar at redhat.com>
----
- t/05-killolddelay-echod.pl | 3 +++
- t/06-autorestart.t | 8 ++++++--
- 2 files changed, 9 insertions(+), 2 deletions(-)
-
-diff --git a/t/05-killolddelay-echod.pl b/t/05-killolddelay-echod.pl
-index 5b48ca5..bd6be30 100755
---- a/t/05-killolddelay-echod.pl
-+++ b/t/05-killolddelay-echod.pl
-@@ -5,16 +5,19 @@ use warnings;
-
- use lib qw(blib/lib lib);
-
-+use Fcntl qw(:flock);
- use IO::Socket::INET;
- use Server::Starter qw(server_ports);
-
- my $sigfn = shift @ARGV;
- open my $sigfh, '>', $sigfn
- or die "could not open file:$sigfn:$!";
-+flock $sigfh, LOCK_EX or die "could lock file:$sigfh:$!";
-
- $SIG{TERM} = $SIG{USR1} = sub {
- my $signame = shift;
- print $sigfh $signame;
-+ flock $sigfh, LOCK_UN or die $!;
- sleep 1;
- exit 0;
- };
-diff --git a/t/06-autorestart.t b/t/06-autorestart.t
-index 9401500..58e98d1 100644
---- a/t/06-autorestart.t
-+++ b/t/06-autorestart.t
-@@ -1,6 +1,7 @@
- use strict;
- use warnings;
-
-+use Fcntl qw(:flock);
- use File::Temp ();
- use Test::TCP;
- use Test::More tests => 26;
-@@ -61,9 +62,12 @@ for my $signal_on_hup ('TERM', 'USR1') {
- 'status after auto-restart');
- is(
- do {
-- open my $fh, '<', "$tempdir/signame"
-+ open my $fh, '+<', "$tempdir/signame"
- or die $!;
-- <$fh>;
-+ flock $fh, LOCK_EX or die $!;
-+ my $signal = <$fh>;
-+ flock $fh, LOCK_UN or die $!;
-+ $signal;
- },
- $signal_on_hup,
- 'signal sent on hup',
---
-1.9.3
-
diff --git a/perl-Server-Starter.spec b/perl-Server-Starter.spec
index 6a5bbf4..7ad89af 100644
--- a/perl-Server-Starter.spec
+++ b/perl-Server-Starter.spec
@@ -1,41 +1,36 @@
Name: perl-Server-Starter
-Version: 0.17
-Release: 9%{?dist}
+Version: 0.25
+Release: 1%{?dist}
Summary: Superdaemon for hot-deploying server programs
License: GPL+ or Artistic
Group: Development/Libraries
URL: http://search.cpan.org/dist/Server-Starter/
Source0: http://www.cpan.org/authors/id/K/KA/KAZUHO/Server-Starter-%{version}.tar.gz
-# Fix t/07-envdir.t race, bug #1100158, CPAN RT#73711
-Patch0: Server-Starter-0.17-Synchronize-to-PID-in-t-07-envdir.t.patch
-# Fix loading the environment directory, bug #1100158, CPAN RT#73711
-Patch1: Server-Starter-0.17-Fix-loading-envdir.patch
-# Fix t/06-autorestart.t race, bug #1100158, CPAN RT#73711
-Patch2: Server-Starter-0.17-Synchronize-to-PID-in-t-06-autorestart.t.patch
-# Fix t/01-starter.t race, bug #1100158, CPAN RT#73711
-Patch3: Server-Starter-0.17-Synchronize-to-PID-in-t-01-starter.t.patch
-# Fix t/05-killolddelay.t race, bug #1100158, CPAN RT#73711
-Patch4: Server-Starter-0.17-Synchronize-to-PID-in-t-05-killolddelay.t.patch
-# Fix a race between t/06-autorestart.t and t/05-killolddelay-echod.pl,
-# bug #1100158, CPAN RT#73711
-Patch5: Server-Starter-0.17-Synchronize-to-content-in-signame-file.patch
BuildArch: noarch
+BuildRequires: perl(Carp)
+BuildRequires: perl(Exporter)
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.42
+BuildRequires: perl(Fcntl)
BuildRequires: perl(Getopt::Long)
-BuildRequires: perl(List::MoreUtils)
-BuildRequires: perl(Proc::Wait3)
-BuildRequires: perl(Scope::Guard)
+BuildRequires: perl(IO::Handle)
+BuildRequires: perl(IO::Socket::UNIX)
+BuildRequires: perl(POSIX)
+BuildRequires: perl(Socket)
+BuildRequires: perl(strict)
+BuildRequires: perl(warnings)
+
# For the tests
-BuildRequires: perl(Fcntl)
+BuildRequires: perl(IO::Socket::IP)
+BuildRequires: perl(Net::EmptyPort)
BuildRequires: perl(Test::TCP) >= 2.00
+BuildRequires: perl(Test::Requires)
+BuildRequires: perl(Test::SharedFork)
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
%package start_server
Summary: perl-Server-Starter start_server script
-# FIXME: This doesn't make much sense. If at all, then this should be
-# Requires: perl(Server::Starter) = perl-version(Server::Starter)
Requires: perl-Server-Starter = %{version}-%{release}
%description
@@ -53,12 +48,13 @@ perl-Server-Starter's start_server script.
%prep
%setup -q -n Server-Starter-%{version}
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
+# Remove bundled modules
+for f in inc/Test/TCP.pm inc/IO/Socket/IP.pm inc/Net/EmptyPort.pm \
+ inc/Test/SharedFork.pm; do
+ pat=$(echo "$f" | sed 's,/,\\/,g;s,\.,\\.,g')
+ rm $f
+ sed -i -e "/$pat/d" MANIFEST
+done
%build
# --skipdeps causes ExtUtils::AutoInstall not to try auto-installing
@@ -67,8 +63,6 @@ perl-Server-Starter's start_server script.
make %{?_smp_mflags}
%install
-rm -rf $RPM_BUILD_ROOT
-
make pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} \;
@@ -89,6 +83,12 @@ make test
%{_mandir}/man1/start_server.*
%changelog
+* Tue Apr 07 2015 Ralf Corsépius <corsepiu at fedoraproject.org> - 0.25-1
+- Upstream update.
+- Rework spec.
+- Remove bundled modules.
+- Drop Fedora/RH-patches.
+
* Tue Sep 09 2014 Jitka Plesnikova <jplesnik at redhat.com> - 0.17-9
- Perl 5.20 mass
diff --git a/sources b/sources
index 5088c35..628286e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-c08d2e7d93c60b0c6def9db09b3b2426 Server-Starter-0.17.tar.gz
+0b94ee58578d4f5a7a7b97b0a98c90c2 Server-Starter-0.25.tar.gz
--
cgit v0.10.2
http://pkgs.fedoraproject.org/cgit/perl-Server-Starter.git/commit/?h=master&id=96b6f5340aaf906e870d20b95d546801de03c587
More information about the scm-commits
mailing list