[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

unblock: feersum/1.406-3



Control: retitle -1 unblock: feersum/1.406-3

Le 10/04/2019 à 22:59, Xavier Guimard a écrit :
> Package: release.debian.org
> Severity: normal
> User: release.debian.org@packages.debian.org
> Usertags: unblock
> 
> Please unblock package feersum
> 
> Hi all,
> 
> due to libhttp-tiny-perl bug, feersum build fails when only one CPU is
> available or on very poor configuration. I patched it to:
>  * ignore errors on t/63-plack-apps.t test
>  * don't test t/{13-pre-fork.t,60-plack.t,61-plack-suite.t} if nproc==1
> 
> See https://bugs.debian.org/909480 for the full discussion.
> 
> Feersum has no reverse dependencies.
> 
> Since this patch affects only tests, I think it is not risky to unblock
> this new version. This fixes no bug but workaround #909480, severity
> "normal" and avoid FTBFS.
> 
> Cheers,
> Xavier
> 
> unblock feersum/1.406-2

Hello,

I updated my patch to better manage paralleled jobs. Thanks to gregoa !

Cheers,
Xavier

unblock feersum/1.406-3
diff --git a/debian/changelog b/debian/changelog
index a4832a2..bff23f2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,17 @@
+feersum (1.406-3) unstable; urgency=medium
+
+  * debian/rules: rewrite fix for 1-CPU workaround
+
+ -- Xavier Guimard <yadd@debian.org>  Thu, 11 Apr 2019 21:55:38 +0200
+
+feersum (1.406-2) unstable; urgency=medium
+
+  * Declare compliance with policy 4.3.0
+  * Add patch to workaround libhttp-tiny-perl bug in tests and disable 3 other
+    tests when only 1 CPU is available (#909480)
+
+ -- Xavier Guimard <yadd@debian.org>  Wed, 10 Apr 2019 21:24:03 +0200
+
 feersum (1.406-1) unstable; urgency=medium
 
   * debian/rules: fix Perl path in example files
diff --git a/debian/control b/debian/control
index 081e2ba..e995ca7 100644
--- a/debian/control
+++ b/debian/control
@@ -15,7 +15,7 @@ Build-Depends: debhelper (>= 10),
                libtest-leaktrace-perl,
                libtest-tcp-perl,
                perl
-Standards-Version: 4.2.1
+Standards-Version: 4.3.0
 Vcs-Browser: https://salsa.debian.org/perl-team/modules/packages/feersum
 Vcs-Git: https://salsa.debian.org/perl-team/modules/packages/feersum.git
 Homepage: https://metacpan.org/release/Feersum
diff --git a/debian/patches/series b/debian/patches/series
index aba7ccb..2bcab6e 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
 autopkgtest.patch
+workaround-for-909480.diff
diff --git a/debian/patches/workaround-for-909480.diff b/debian/patches/workaround-for-909480.diff
new file mode 100644
index 0000000..7c22ffb
--- /dev/null
+++ b/debian/patches/workaround-for-909480.diff
@@ -0,0 +1,30 @@
+Description: Workaround for #909480
+ Feersum sometimes FTBFS due to libhttp-tiny-perl
+ bug (https://bugs.debian.org/909480
+ .
+ This workaround adds a "TODO" loop to not fail on build even if HTTP::Tiny
+ tries to reuse closed connections.
+Author: Xavier Guimard <yadd@debian.org>
+Bug-Debian: https://bugs.debian.org/909480
+Forwarded: not-needed
+Last-Update: 2019-04-10
+
+--- a/t/63-plack-apps.t
++++ b/t/63-plack-apps.t
+@@ -22,6 +22,8 @@
+ use Plack::Request;
+ use Test::TCP;
+ 
++TODO: {
++local $TODO = 'Failure ignored to workaround #909480';
+ via_map: test_psgi(
+     app => builder {
+         mount '/' => Plack::App::File->new(root => 't');
+@@ -85,6 +87,7 @@
+         like $res->content, qr/^\Q$s\E$/m, "found static line (cascade)";
+     }
+ );
++}
+ 
+ __END__
+ # IS THIS FILE STATICALLY SERVED?
diff --git a/debian/rules b/debian/rules
index d1559c8..13bdb95 100755
--- a/debian/rules
+++ b/debian/rules
@@ -4,6 +4,7 @@ PACKAGE = $(shell dh_listpackages)
 TMP     = $(CURDIR)/debian/$(PACKAGE)
 
 export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+TEST_FILES_1_CPU=$(filter-out t/13-pre-fork.t t/60-plack.t t/61-plack-suite.t,$(shell echo t/*.t)); \
 
 %:
 	dh $@
@@ -15,3 +16,12 @@ override_dh_installexamples:
 override_dh_auto_install:
 	dh_auto_install
 	sed -i '1s|^#!.*perl|#!/usr/bin/perl|' $(TMP)/usr/*bin/*
+
+override_dh_auto_test:
+ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS) $(DEB_BUILD_PROFILES)))
+	if [ `nproc` -gt 1 ]; then \
+		dh_auto_test; \
+	else \
+		dh_auto_test --no-parallel -- TEST_FILES="$(TEST_FILES_1_CPU)"; \
+	fi
+endif

Reply to: