Bug#1127138: starman: will FTBFS during forky support period

Santiago Vila sanvila at debian.org
Fri Feb 6 12:03:05 GMT 2026


Package: src:starman
Version: 0.4017-1
Severity: important
Tags: ftbfs forky sid
User: debian-qa at lists.debian.org
Usertags: ftbfs-during-forky-support-period

Dear maintainer:

During a rebuild of all packages in unstable with the system clock set
at 2030-08-09 (estimated to be three years after the release date of forky),
this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/ftbfs-future/

About the archive rebuild: This is an effort to keep forky free from
FTBFS bugs during its lifetime as a supported distribution, as
explained here for trixie:

https://lists.debian.org/debian-devel/2024/05/msg00414.html

This category of bugs is considered to be RC for forky, but I will
wait two months from now before raising to serious to give people a
little bit more time to fix them.

The build was made using sbuild and a reduced chroot with only
build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:starman, so that this is still
visible in the BTS web page for this package.

Thanks.

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean
   dh_clean
 debian/rules binary
dh binary
   dh_update_autotools_config
   dh_autoreconf
   dh_auto_configure
	/usr/bin/perl Build.PL --installdirs vendor --config optimize="-g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2" --config ld="x86_64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro"
Creating new 'Build' script for 'Starman' version '0.4017'
   dh_auto_build
	/usr/bin/perl Build
cp lib/Starman/Server.pm blib/lib/Starman/Server.pm
cp lib/Starman.pm blib/lib/Starman.pm
cp script/starman blib/script/starman
cp lib/Plack/Handler/Starman.pm blib/lib/Plack/Handler/Starman.pm
cp lib/HTTP/Server/PSGI/Net/Server/PreFork.pm blib/lib/HTTP/Server/PSGI/Net/Server/PreFork.pm
   dh_auto_test
	/usr/bin/perl Build test --verbose 1
t/00_compile.t ........... 
1..1
ok 1 - use Starman;
ok
t/author-pod-syntax.t .... skipped: these tests are for testing by the author
2030/08/09-12:00:15 Starman::Server (type Net::Server::PreFork) starting! pid(43944)
Binding to TCP port 35283 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:15 Server closing!
t/chunked_req.t .......... 
ok 1
ok 2
1..2
ok
t/chunked_termination.t .. 
ok 1 - Reading chunked encoding does not block on well-placed package borders
1..1
ok
2030/08/09-12:00:15 Starman::Server (type Net::Server::PreFork) starting! pid(43952)
Binding to TCP port 34543 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:15 Server closing!
t/chunked_zero_length.t .. 
ok 1
1..1
ok
2030/08/09-12:00:16 Starman::Server (type Net::Server::PreFork) starting! pid(43963)
Binding to TCP port 45103 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:16 Server closing!
t/early-hints.t .......... 
ok 1
ok 2
ok 3
ok 4
1..4
ok
2030/08/09-12:00:16 Starman::Server (type Net::Server::PreFork) starting! pid(43970)
Binding to TCP port 39995 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:17 Server closing!
t/eintr.t ................ 
ok 1
1..1
ok
2030/08/09-12:00:17 Starman::Server (type Net::Server::PreFork) starting! pid(43982)
Binding to TCP port 42349 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:17 Server closing!
t/expect.t ............... 
ok 1
ok 2
ok 3
1..3
ok
2030/08/09-12:00:17 Starman::Server (type Net::Server::PreFork) starting! pid(43989)
Binding to TCP port 44619 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:17 Server closing!
2030/08/09-12:00:17 Starman::Server (type Net::Server::PreFork) starting! pid(43995)
Binding to TCP port 43403 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:17 Server closing!
t/harakiri.t ............. 
ok 1 - In non-harakiri mode, pid is reused
ok 2 - In Harakiri mode, each pid only used once
1..2
ok
2030/08/09-12:00:17 Starman::Server (type Net::Server::PreFork) starting! pid(44023)
Binding to TCP port 45747 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:17 Server closing!
t/lf_only_request.t ...... 
ok 1
1..1
ok
2030/08/09-12:00:17 Starman::Server (type Net::Server::PreFork) starting! pid(44030)
Binding to TCP port 42809 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:17 Server closing!
t/no_chunked_head.t ...... 
ok 1
1..1
ok
t/release-findbin.t ...... skipped: these tests are for release candidate testing
t/release-rand.t ......... skipped: these tests are for release candidate testing
2030/08/09-12:00:17 Starman::Server (type Net::Server::PreFork) starting! pid(44039)
Binding to TCP port 34487 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:17 Server closing!
t/single_zero.t .......... 
ok 1
ok 2
1..2
ok
2030/08/09-12:00:18 Starman::Server (type Net::Server::PreFork) starting! pid(44050)
Resolved [localhost]:38233 to [::1]:38233, IPv6
Resolved [localhost]:38233 to [127.0.0.1]:38233, IPv4
Binding to SSL port 38233 on host ::1 with IPv6
Binding to SSL port 38233 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
Passed serialize value of none is incompatible with multiple ports - using default serialize
Could not finalize SSL connection with client handle (SSL accept attempt failed error:0A000126:SSL routines::unexpected eof while reading)
2030/08/09-12:00:18 Server closing!
Could not finalize SSL connection with client handle (SSL accept attempt failed error:0A000415:SSL routines::ssl/tls alert certificate expired)

#   Failed test 'HTTPS connection succeeded'
#   at t/ssl.t line 47.
# 500 Can't connect to localhost:38233 (certificate verify failed)

#   Failed test '... and URL scheme is reported correctly'
#   at t/ssl.t line 49.
#          got: 'Can't connect to localhost:38233 (certificate verify failed)
# 
# SSL connect attempt failed error:0A000086:SSL routines::certificate verify failed at /usr/share/perl5/LWP/Protocol/http.pm line 49.
# '
#     expected: 'https'
# Looks like you failed 2 tests of 2.
t/ssl.t .................. 
not ok 1 - HTTPS connection succeeded
not ok 2 - ... and URL scheme is reported correctly
1..2
Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/2 subtests 
2030/08/09-12:00:18 Starman::Server (type Net::Server::PreFork) starting! pid(44058)
Resolved [localhost]:46615 to [::1]:46615, IPv6
Resolved [localhost]:46615 to [127.0.0.1]:46615, IPv4
Binding to SSL port 46615 on host ::1 with IPv6
Binding to SSL port 46615 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
Passed serialize value of none is incompatible with multiple ports - using default serialize
Could not finalize SSL connection with client handle (SSL accept attempt failed error:0A000126:SSL routines::unexpected eof while reading)
Could not finalize SSL connection with client handle (SSL accept attempt failed error:0A000415:SSL routines::ssl/tls alert certificate expired)
2030/08/09-12:00:18 Server closing!

#   Failed test 'HTTPS connection succeeded'
#   at t/ssl_largebody.t line 50.
# 500 Can't connect to localhost:46615 (certificate verify failed)

#   Failed test at t/ssl_largebody.t line 52.
#          got: 'Can't connect to localhost:46615 (certificate verify failed)
# 
# SSL connect attempt failed error:0A000086:SSL routines::certificate verify failed at /usr/share/perl5/LWP/Protocol/http.pm line 49.
# '
#     expected: '0'
# Looks like you failed 2 tests of 2.
t/ssl_largebody.t ........ 
not ok 1 - HTTPS connection succeeded
not ok 2
1..2
Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/2 subtests 
2030/08/09-12:00:18 Starman::Server (type Net::Server::PreFork) starting! pid(44067)
Binding to TCP port 46363 on host 127.0.0.1 with IPv4
Setting gid to "924 924 107 924"
2030/08/09-12:00:18 Server closing!
t/suite.t ................ 
# SCRIPT_NAME
ok 1
# GET
ok 2
ok 3
ok 4
ok 5
# POST
ok 6
ok 7
ok 8
ok 9
ok 10
ok 11
# big POST
ok 12
ok 13
ok 14
ok 15
ok 16
# psgi.url_scheme
ok 17
ok 18
ok 19
ok 20
# return glob
ok 21
ok 22
ok 23
ok 24
ok 25
# filehandle
ok 26
ok 27
ok 28
ok 29
# bigger file
ok 30
ok 31
ok 32
ok 33
ok 34
# handle HTTP-Header
ok 35
ok 36
ok 37
ok 38
# handle HTTP-Cookie
ok 39
ok 40
ok 41
ok 42
# validate env
ok 43
ok 44
ok 45
ok 46
# % encoding in PATH_INFO
ok 47 - PATH_INFO should be decoded per RFC 3875
# % double encoding in PATH_INFO
ok 48 - PATH_INFO should be decoded only once, per RFC 3875
# % encoding in PATH_INFO (outside of URI characters)
ok 49
# SERVER_PROTOCOL is required
ok 50
ok 51
ok 52
ok 53
# SCRIPT_NAME should not be undef
ok 54
# call close after read IO::Handle-like
ok 55 - closed
ok 56
# has errors
ok 57
# status line
ok 58
# Do not crash when the app dies
ok 59
ok 60
# multi headers (request)
ok 61
# multi headers (response)
ok 62
# Do not set $env->{COOKIE}
ok 63
ok 64
# no entity headers on 304
ok 65
ok 66
ok 67
ok 68 - No Content-Type
ok 69 - No Content-Length
ok 70 - No Transfer-Encoding
# REQUEST_URI is set
ok 71
# filehandle with path()
ok 72
ok 73
ok 74
ok 75
# a big header value > 128 bytes
ok 76
ok 77
ok 78
# coderef res
ok 79
ok 80
ok 81
ok 82
# coderef streaming
ok 83
ok 84
ok 85
ok 86
# CRLF output and FCGI parse bug
ok 87
ok 88
# newlines
ok 89
# test 404
ok 90
ok 91
ok 92
# request->input seekable
ok 93
# request->content on GET
ok 94
# handle Authorization header
ok 95
ok 96
ok 97
ok 98
# repeated slashes
ok 99
ok 100
ok 101
ok 102
1..102
ok

Test Summary Report
-------------------
t/ssl.t                (Wstat: 512 (exited 2) Tests: 2 Failed: 2)
  Failed tests:  1-2
  Non-zero exit status: 2
t/ssl_largebody.t      (Wstat: 512 (exited 2) Tests: 2 Failed: 2)
  Failed tests:  1-2
  Non-zero exit status: 2
Files=17, Tests=125,  3 wallclock secs ( 0.03 usr  0.02 sys +  1.25 cusr  0.51 csys =  1.81 CPU)
Result: FAIL
dh_auto_test: error: /usr/bin/perl Build test --verbose 1 returned exit code 4
make: *** [debian/rules:7: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
--------------------------------------------------------------------------------



More information about the pkg-perl-maintainers mailing list