* [Debian 9][Perl 5.24] uninitialized value errors in Encode/MIME/Header.pm
@ 2020-12-26 11:27 Ali Alnubani
2020-12-26 12:25 ` [PATCH] eml: fix undefined vars on <Perl 5.28 Eric Wong
2020-12-26 12:30 ` [PATCH] t/config: test --get-urlmatch for git <2.26 Eric Wong
0 siblings, 2 replies; 7+ messages in thread
From: Ali Alnubani @ 2020-12-26 11:27 UTC (permalink / raw)
To: meta@public-inbox.org
Hi,
I see errors similar to the following in Debian 9 (stretch) with Perl 5.24:
"""
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
"""
The errors reproduce when running make test, public-inbox-watch, and public-inbox-index on v1.5.0 and later, including v1.6.0 and latest master 451ffd30.
git-bisect points to "d35a49e1 eml: remove dependency on Email::MIME::Encodings" as the first bad commit. However, reverting it causes a different failure in t/eml.t:
"""
t/eml.t ...................... 1/? Undefined subroutine &PublicInbox::Eml::encode_base64 called at /opt/public-inbox.org/blib/lib/PublicInbox/Eml.pm line 291.
"""
Output of make test on v1.5.0 (Result: PASS):
"""
PERL_DL_NONLAZY=1 PERL_USE_UNSAFE_INC=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/address.t .................. ok
t/admin.t .................... ok
...
t/emergency.t ................ ok
t/eml.t ...................... 1/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/eml.t ...................... ok
...
t/filter_subjecttag.t ........ 1/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/filter_subjecttag.t ........ ok
...
t/hval.t ..................... ok
t/import.t ................... 1/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198, <$r> line 1.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198, <$r> line 2.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198, <$r> line 5.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/import.t ................... ok
t/inbox.t .................... ok
...
t/mda.t ...................... 1/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/mda.t ...................... ok
...
t/nntp.t ..................... ok
t/nntpd-tls.t ................ skipped: certs/ missing for t/nntpd-tls.t, run /usr/bin/perl ./create-certs.perl in certs/
t/nntpd.t .................... 1/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198, <$r> line 2.
t/nntpd.t .................... ok
t/nulsubject.t ............... 1/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/nulsubject.t ............... ok
t/over.t ..................... ok
...
t/search-thr-index.t ......... ok
t/search.t ................... 10/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
t/search.t ................... ok
...
All tests successful.
Files=91, Tests=3499, 87 wallclock secs ( 0.67 usr 0.10 sys + 18.26 cusr 9.28 csys = 28.31 CPU)
Result: PASS
"""
Output of make test on master 451ffd30 (Result: FAIL):
"""
PERL_DL_NONLAZY=1 PERL_USE_UNSAFE_INC=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/address.t .................. ok
t/admin.t .................... ok
t/altid.t .................... ok
t/altid_v2.t ................. ok
t/cgi.t ...................... ok
t/config.t ................... 1/?
# Failed test 'urlmatch hit'
# at t/config.t line 249.
# got: undef
# expected: '9'
# Looks like you failed 1 test of 95.
t/config.t ................... Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/95 subtests
t/config_limiter.t ........... ok
...
t/eml.t ...................... 1/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/eml.t ...................... ok
t/eml_content_disposition.t .. ok
t/eml_content_type.t ......... ok
t/epoll.t .................... ok
t/extsearch.t ................ 4/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
/tmp/pi-extsearch-7425-uu6DWm/v1test: e826130e3f1a89b68e41c17004bdb952893ea0ad: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
/tmp/pi-extsearch-7425-uu6DWm/v1test: e826130e3f1a89b68e41c17004bdb952893ea0ad: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
v2test 0.git 24dce2a64c97ee93ded01e4846fb29bd42fd5794: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
v2test 0.git 24dce2a64c97ee93ded01e4846fb29bd42fd5794: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
[0] X=v2.example\0 395 407 1 24dce2a64c97ee93ded01e4846fb29bd42fd5794 0 0 1 testmessage@example.com: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198, <$r> line 1.
...
[0] X=v2.example\0 395 407 1 24dce2a64c97ee93ded01e4846fb29bd42fd5794 0 0 1 testmessage@example.com: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198, <$r> line 1.
v1test e826130e3f1a89b68e41c17004bdb952893ea0ad: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
v1test 24dce2a64c97ee93ded01e4846fb29bd42fd5794: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/extsearch.t ................ 6/? v2test 0.git a90dbf79129609b6b9f92d95b7f867d3787996f2: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
v2test 0.git a90dbf79129609b6b9f92d95b7f867d3787996f2: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
v2test 0.git a90dbf79129609b6b9f92d95b7f867d3787996f2: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/extsearch.t ................ 56/? #1 e826130e3f1a89b68e41c17004bdb952893ea0ad: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
#1 e826130e3f1a89b68e41c17004bdb952893ea0ad: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
#1 e826130e3f1a89b68e41c17004bdb952893ea0ad: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
[0] X=v1.example\0 395 407 1 e826130e3f1a89b68e41c17004bdb952893ea0ad 0 0 6 testmessage@example.com: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198, <$r> line 1.
...
[0] X=v1.example\0 395 407 1 e826130e3f1a89b68e41c17004bdb952893ea0ad 0 0 6 testmessage@example.com: Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198, <$r> line 1.
t/extsearch.t ................ ok
...
t/filter_subjecttag.t ........ 1/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/filter_subjecttag.t ........ ok
...
t/import.t ................... 1/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/import.t ................... ok
t/inbox.t .................... ok
t/inbox_idle.t ............... 2/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198, <$r> line 2.
t/inbox_idle.t ............... ok
...
t/mda.t ...................... 1/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/mda.t ...................... ok
...
t/nntpd-tls.t ................ skipped: certs/ missing for t/nntpd-tls.t, run /usr/bin/perl ./create-certs.perl in certs/
t/nntpd-v2.t ................. 3/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198, <$r> line 2.
t/nntpd-v2.t ................. 104/? # waiting for initial fetch...
# inbox unlocked on initial fetch
t/nntpd-v2.t ................. ok
t/nntpd.t .................... 3/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/nntpd.t .................... 104/? # waiting for initial fetch...
# inbox unlocked on initial fetch
t/nntpd.t .................... ok
...
t/search.t ................... 40/? Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
...
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
t/search.t ................... ok
...
t/xcpdb-reshard.t ............ ok
Test Summary Report
-------------------
t/config.t (Wstat: 256 Tests: 95 Failed: 1)
Failed test: 94
Non-zero exit status: 1
Files=112, Tests=4214, 109 wallclock secs ( 0.86 usr 0.08 sys + 24.04 cusr 11.98 csys = 36.96 CPU)
Result: FAIL
Failed 1/112 test programs. 1/4214 subtests failed.
Makefile:1308: recipe for target 'test_dynamic' failed
make: *** [test_dynamic] Error 255
"""
Packages (On Debian 9 where the issue reproduces):
"""
libalgorithm-diff-perl: 1.19.03-1
libalgorithm-diff-xs-perl: 0.04-4+b2
libalgorithm-merge-perl: 0.08-3
libapache-logformat-compiler-perl: 0.33-2
libauthen-sasl-perl: 2.1600-1
libcgi-compile-perl: 0.21-1
libcgi-emulate-psgi-perl: 0.22-1
libcgi-fast-perl: 1:2.12-1
libcgi-pm-perl: 4.35-1
libclass-inspector-perl: 1.31-1
libclass-isa-perl: 0.36-5
libcommon-sense-perl: 3.74-2
libcookie-baker-perl: 0.07-1
libcpanel-json-xs-perl: 3.0225-1
libcrypt-cbc-perl: 2.33-1
libcrypt-rijndael-perl: 1.13-1+b2
libdbd-sqlite3-perl: 1.54-1
libdbi-perl: 1.636-1+deb9u1
libdevel-globaldestruction-perl: 0.14-1
libdevel-stacktrace-ashtml-perl: 0.15-1
libdevel-stacktrace-perl: 2.0200-1
libdist-checkconflicts-perl: 0.11-1
libdpkg-perl: 1.18.25
libemail-address-perl: 1.908-1+deb9u1
libemail-date-format-perl: 1.005-1
libemail-messageid-perl: 1.406-1
libemail-mime-contenttype-perl: 1.018-1
libemail-mime-encodings-perl: 1.315-1
libemail-mime-perl: 1.937-1
libemail-simple-perl: 2.213-1
libencode-locale-perl: 1.05-1
libencode-perl: 2.88-1
liberror-perl: 0.17024-1
libfcgi-perl: 0.78-2
libfcgi-procmanager-perl: 0.25-1
libfile-fcntllock-perl: 0.22-3+b2
libfile-listing-perl: 6.04-1
libfile-pushd-perl: 1.014-1
libfile-sharedir-perl: 1.102-1
libfilesys-notify-simple-perl: 0.12-1
libfont-afm-perl: 1.20-2
libhash-multivalue-perl: 0.16-1
libhighlight-perl: 3.18-3+b5
libhtml-form-perl: 6.03-1
libhtml-format-perl: 2.12-1
libhtml-parser-perl: 3.72-3
libhtml-tagset-perl: 3.20-3
libhtml-tree-perl: 5.03-2
libhttp-cookies-perl: 6.01-1
libhttp-daemon-perl: 6.01-1
libhttp-date-perl: 6.02-1
libhttp-entity-parser-perl: 0.18-1
libhttp-headers-fast-perl: 0.20-1
libhttp-message-perl: 6.11-1
libhttp-multipartparser-perl: 0.01-1
libhttp-negotiate-perl: 6.00-2
libinline-c-perl: 0.76-1
libinline-files-perl: 0.68-1
libinline-perl: 0.80-1
libio-html-perl: 1.001-1
libio-multiplex-perl: 1.16-1
libio-socket-inet6-perl: 2.72-2
libio-socket-ssl-perl: 2.044-1
libipc-shareable-perl: 0.61-1
libjson-maybexs-perl: 1.003008-1
liblinux-inotify2-perl: 1:1.22-3
liblocale-gettext-perl: 1.07-3+b1
liblog-dispatch-perl: 2.58-1
liblog-log4perl-perl: 1.48-1+deb9u1
liblwp-mediatypes-perl: 6.02-1
liblwp-protocol-https-perl: 6.06-2
libmail-sendmail-perl: 0.79.16-2
libmailtools-perl: 2.18-1
libmime-lite-perl: 3.030-2
libmime-types-perl: 2.13-1
libmodule-implementation-perl: 0.09-1
libmodule-refresh-perl: 0.17-1
libmodule-runtime-perl: 0.014-2
libnet-cidr-perl: 0.18-1
libnet-http-perl: 6.12-1
libnet-server-perl: 2.008-3
libnet-smtp-ssl-perl: 1.04-1
libnet-ssleay-perl: 1.80-1
libparams-classify-perl: 0.013-6+b1
libparams-validate-perl: 1.26-1
libparse-recdescent-perl: 1.967013+dfsg-1
libpcre3: 2:8.39-3
libpegex-perl: 0.63-1
libperl5.24: 5.24.1-3+deb9u7
libplack-middleware-deflater-perl: 0.12-1
libplack-middleware-reverseproxy-perl: 0.15-1
libplack-perl: 1.0042-1
libposix-strftime-compiler-perl: 0.42-1
libsearch-xapian-perl: 1.2.24.0-1
libsocket6-perl: 0.27-1+b1
libstream-buffered-perl: 0.03-1
libsub-exporter-progressive-perl: 0.001013-1
libswitch-perl: 2.17-2
libsys-hostname-long-perl: 1.5-1
libtest-sharedfork-perl: 0.35-1
libtest-tcp-perl: 2.17-1
libtext-charwidth-perl: 0.04-7+b5
libtext-iconv-perl: 1.7-5+b4
libtext-wrapi18n-perl: 0.06-7.1
libtimedate-perl: 2.3000-2+deb9u1
libtry-tiny-perl: 0.28-1
liburi-perl: 1.71-1
libwww-form-urlencoded-perl: 0.23-2
libwww-form-urlencoded-xs-perl: 0.23-1
libwww-perl: 6.15-1
libwww-robotrules-perl: 6.01-1
libxapian30: 1.4.3-2+deb9u3
libxml-treepp-perl: 0.43-1
perl: 5.24.1-3+deb9u7
perl-base: 5.24.1-3+deb9u7
perl-modules-5.24: 5.24.1-3+deb9u7
perl-openssl-defaults: 3
xapian-tools: 1.4.3-2+deb9u3
"""
The uninitialized value warnings and test errors do not reproduce on Debian 10 (buster) with packages:
"""
libalgorithm-c3-perl: 0.10-1
libalgorithm-diff-perl: 1.19.03-2
libalgorithm-diff-xs-perl: 0.04-5+b1
libalgorithm-merge-perl: 0.08-3
libapache-logformat-compiler-perl: 0.35-1
libauthen-sasl-perl: 2.1600-1
libb-hooks-endofscope-perl: 0.24-1
libb-hooks-op-check-perl: 0.22-1+b1
libcgi-compile-perl: 0.22-2
libcgi-emulate-psgi-perl: 0.23-1
libcgi-fast-perl: 1:2.13-1
libcgi-pm-perl: 4.40-1
libclass-c3-perl: 0.34-1
libclass-c3-xs-perl: 0.14-1+b3
libclass-data-inheritable-perl: 0.08-3
libclass-inspector-perl: 1.32-1
libclass-method-modifiers-perl: 2.12-1
libclass-xsaccessor-perl: 1.19-3+b2
libcommon-sense-perl: 3.74-2+b7
libcookie-baker-perl: 0.10-4
libcookie-baker-xs-perl: 0.10-1+b1
libcpanel-json-xs-perl: 4.09-1
libcrypt-cbc-perl: 2.33-2
libcrypt-rijndael-perl: 1.13-1+b5
libdata-dump-perl: 1.23-1
libdata-optlist-perl: 0.110-1
libdbd-sqlite3-perl: 1.62-3
libdbi-perl: 1.642-1+deb10u1
libdevel-callchecker-perl: 0.008-1
libdevel-caller-perl: 2.06-2+b1
libdevel-globaldestruction-perl: 0.14-1
libdevel-lexalias-perl: 0.05-2+b1
libdevel-stacktrace-ashtml-perl: 0.15-1
libdevel-stacktrace-perl: 2.0300-1
libdist-checkconflicts-perl: 0.11-1
libdpkg-perl: 1.19.7
libdynaloader-functions-perl: 0.003-1
libemail-address-xs-perl: 1.04-1+b1
libemail-date-format-perl: 1.005-1
libemail-messageid-perl: 1.406-1
libemail-mime-contenttype-perl: 1.022-1
libemail-mime-encodings-perl: 1.315-2
libemail-mime-perl: 1.946-1
libemail-simple-perl: 2.216-1
libencode-locale-perl: 1.05-1
libencode-perl: 3.00-1
liberror-perl: 0.17027-2
libeval-closure-perl: 0.14-1
libexception-class-perl: 1.44-1
libfcgi-perl: 0.78-2+b3
libfcgi-procmanager-perl: 0.28-1
libfile-fcntllock-perl: 0.22-3+b5
libfile-listing-perl: 6.04-1
libfile-pushd-perl: 1.016-1
libfile-sharedir-perl: 1.116-2
libfilesys-notify-simple-perl: 0.13-1
libfont-afm-perl: 1.20-2
libhash-multivalue-perl: 0.16-1
libhighlight-perl: 3.41-2+b1
libhtml-form-perl: 6.03-1
libhtml-format-perl: 2.12-1
libhtml-parser-perl: 3.72-3+b3
libhtml-tagset-perl: 3.20-3
libhtml-tree-perl: 5.07-2
libhttp-cookies-perl: 6.04-1
libhttp-daemon-perl: 6.01-3
libhttp-date-perl: 6.02-1
libhttp-entity-parser-perl: 0.21-1
libhttp-headers-fast-perl: 0.21-1
libhttp-message-perl: 6.18-1
libhttp-multipartparser-perl: 0.02-1
libhttp-negotiate-perl: 6.01-1
libinline-c-perl: 0.78-1
libinline-files-perl: 0.68-1
libinline-perl: 0.81-1
libio-html-perl: 1.001-1
libio-multiplex-perl: 1.16-1
libio-socket-inet6-perl: 2.72-2
libio-socket-ssl-perl: 2.060-3
libipc-shareable-perl: 0.61-2
libjson-maybexs-perl: 1.004000-1
liblinux-inotify2-perl: 1:2.1-1
liblocale-gettext-perl: 1.07-3+b4
liblog-dispatch-perl: 2.68-1
liblog-log4perl-perl: 1.49-1
liblwp-mediatypes-perl: 6.02-1
liblwp-protocol-https-perl: 6.07-2
libmail-sendmail-perl: 0.80-1
libmailtools-perl: 2.18-1
libmime-lite-perl: 3.030-2
libmime-types-perl: 2.17-1
libmodule-implementation-perl: 0.09-1
libmodule-refresh-perl: 0.17-1
libmodule-runtime-perl: 0.016-1
libmro-compat-perl: 0.13-1
libnamespace-autoclean-perl: 0.28-1
libnamespace-clean-perl: 0.27-1
libnet-cidr-perl: 0.19-1
libnet-http-perl: 6.18-1
libnet-server-perl: 2.009-1
libnet-smtp-ssl-perl: 1.04-1
libnet-ssleay-perl: 1.85-2+b1
libpackage-stash-perl: 0.38-1
libpackage-stash-xs-perl: 0.29-1
libpadwalker-perl: 2.3-1+b1
libparams-classify-perl: 0.015-1+b1
libparams-util-perl: 1.07-3+b4
libparams-validationcompiler-perl: 0.30-1
libparse-recdescent-perl: 1.967015+dfsg-2
libpcre2-8-0: 10.32-5
libpcre3: 2:8.39-12
libpegex-perl: 0.70-1
libperl5.28: 5.28.1-6+deb10u1
libplack-middleware-deflater-perl: 0.12-2
libplack-middleware-reverseproxy-perl: 0.16-1
libplack-perl: 1.0047-1
libposix-strftime-compiler-perl: 0.42-1
libreadonly-perl: 2.050-1
libref-util-perl: 0.204-1
libref-util-xs-perl: 0.117-1+b1
librole-tiny-perl: 2.000006-1
libsearch-xapian-perl: 1.2.25.2-1+b2
libsocket6-perl: 0.29-1+b1
libspecio-perl: 0.43-1
libstream-buffered-perl: 0.03-1
libsub-exporter-perl: 0.987-1
libsub-exporter-progressive-perl: 0.001013-1
libsub-identify-perl: 0.14-1+b1
libsub-install-perl: 0.928-1
libsub-name-perl: 0.21-1+b3
libsub-quote-perl: 2.005001-1
libsys-hostname-long-perl: 1.5-1
libtest-sharedfork-perl: 0.35-1
libtest-tcp-perl: 2.19-1
libtext-charwidth-perl: 0.04-7.1+b1
libtext-iconv-perl: 1.7-5+b7
libtext-wrapi18n-perl: 0.06-7.1
libtimedate-perl: 2.3000-2+deb10u1
libtry-tiny-perl: 0.30-1
liburi-perl: 1.76-1
libvariable-magic-perl: 0.62-1+b1
libwww-form-urlencoded-perl: 0.25-1
libwww-form-urlencoded-xs-perl: 0.25-1+b1
libwww-perl: 6.36-2
libwww-robotrules-perl: 6.02-1
libxapian30: 1.4.11-1
libxml-treepp-perl: 0.43-1
perl: 5.28.1-6+deb10u1
perl-base: 5.28.1-6+deb10u1
perl-modules-5.28: 5.28.1-6+deb10u1
perl-openssl-defaults: 3
xapian-tools: 1.4.11-1
"""
Thanks in advance for helping,
- Ali
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] eml: fix undefined vars on <Perl 5.28
2020-12-26 11:27 [Debian 9][Perl 5.24] uninitialized value errors in Encode/MIME/Header.pm Ali Alnubani
@ 2020-12-26 12:25 ` Eric Wong
2020-12-26 14:10 ` Ali Alnubani
2020-12-26 12:30 ` [PATCH] t/config: test --get-urlmatch for git <2.26 Eric Wong
1 sibling, 1 reply; 7+ messages in thread
From: Eric Wong @ 2020-12-26 12:25 UTC (permalink / raw)
To: Ali Alnubani; +Cc: meta
Ali Alnubani <alialnu@nvidia.com> wrote:
> Hi,
>
> I see errors similar to the following in Debian 9 (stretch) with Perl 5.24:
> """
> Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
Thanks for the bug report, it looks like the default was only
applied in top-level Encode::decode() wrapper and not the
per-object ->decode callbacks which we use with find_encoding().
(separate patch coming for the t/config.t fix)
-----------8<-----------
Subject: [PATCH] eml: fix undefined vars on <Perl 5.28
Encode::MIME::Header::_decode_octets did not correctly default
to Encode::FB_DEFAULT until Encode 2.93 (perl5.git commit
0c541dc5633a341cf44b818014b58e7f8be532e9). Provide the default
again to work with older Perls.
Reported-by: Ali Alnubani <alialnu@nvidia.com>
Link: https://public-inbox.org/meta/DM6PR12MB49106F8E3BD697B63B943A22DADB0@DM6PR12MB4910.namprd12.prod.outlook.com/
---
lib/PublicInbox/Eml.pm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/PublicInbox/Eml.pm b/lib/PublicInbox/Eml.pm
index 571edc5c..4d3fffc0 100644
--- a/lib/PublicInbox/Eml.pm
+++ b/lib/PublicInbox/Eml.pm
@@ -378,7 +378,9 @@ sub header_str_set {
header_set($self, $name, @vals);
}
-sub mhdr_decode ($) { eval { $MIME_Header->decode($_[0]) } // $_[0] }
+sub mhdr_decode ($) {
+ eval { $MIME_Header->decode($_[0], Encode::FB_DEFAULT) } // $_[0];
+}
sub filename {
my $dis = header_raw($_[0], 'Content-Disposition');
^ permalink raw reply related [flat|nested] 7+ messages in thread
* RE: [PATCH] eml: fix undefined vars on <Perl 5.28
2020-12-26 12:25 ` [PATCH] eml: fix undefined vars on <Perl 5.28 Eric Wong
@ 2020-12-26 14:10 ` Ali Alnubani
2020-12-26 20:35 ` stable 1.6.1 release? [was: [PATCH] eml: fix undefined vars on <Perl 5.28] Eric Wong
0 siblings, 1 reply; 7+ messages in thread
From: Ali Alnubani @ 2020-12-26 14:10 UTC (permalink / raw)
To: Eric Wong; +Cc: meta@public-inbox.org
Hi Eric,
> -----Original Message-----
> From: Eric Wong <e@80x24.org>
> Sent: Saturday, December 26, 2020 2:26 PM
> To: Ali Alnubani <alialnu@nvidia.com>
> Cc: meta@public-inbox.org
> Subject: [PATCH] eml: fix undefined vars on <Perl 5.28
>
> Ali Alnubani <alialnu@nvidia.com> wrote:
> > Hi,
> >
> > I see errors similar to the following in Debian 9 (stretch) with Perl 5.24:
> > """
> > Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-
> gnu/perl5/5.24/Encode/MIME/Header.pm line 198.
>
> Thanks for the bug report, it looks like the default was only applied in top-
> level Encode::decode() wrapper and not the per-object ->decode callbacks
> which we use with find_encoding().
>
Thanks a lot for your response and working on this!
I no longer see the uninitialized value warnings or the test failure on Debian 9 with both patches applied on master. Do you plan on creating a new release tag soon with these fixes?
Tested-by: Ali Alnubani <alialnu@nvidia.com>
Thanks,
Ali
^ permalink raw reply [flat|nested] 7+ messages in thread
* stable 1.6.1 release? [was: [PATCH] eml: fix undefined vars on <Perl 5.28]
2020-12-26 14:10 ` Ali Alnubani
@ 2020-12-26 20:35 ` Eric Wong
2020-12-31 0:06 ` Eric Wong
0 siblings, 1 reply; 7+ messages in thread
From: Eric Wong @ 2020-12-26 20:35 UTC (permalink / raw)
To: Ali Alnubani, Konstantin Ryabitsev; +Cc: meta
Ali Alnubani <alialnu@nvidia.com> wrote:
> I no longer see the uninitialized value warnings or the test
> failure on Debian 9 with both patches applied on master. Do
> you plan on creating a new release tag soon with these fixes?
Thanks, pushed to master and I've started a stable-1.6 branch
to https://80x24.org/public-inbox.git with 29 commits
cherry-picked from master which I hope are suitable.
There's two more I'm tempted to cherry-pick, though they
introduce behavior changes:
fe01d7b117c8b1e1 import: drop X-Status in addition to Status
1bf653ad139bf7bb nntp+www: drop List-* and Archived-At headers
Konstantin: thoughts on 1bf653ad139bf7bb being suitable for 1.6.1?
Anyways, here's what I have so far:
fdbd73069af6eed9 eml: fix undefined vars on <Perl 5.28
e16e09b239b4d8bf t/config: test --get-urlmatch for git <2.26
933fce93167eba86 inboxidle: avoid needless syscalls on refresh
a0b470cbaf01c699 inboxidle: clue users into resolving ENOSPC from inotify
b782533a0413578d inbox: name variable for values loop iterator
4f1a683dc895a7bd public-inbox-v[12]-format.pod: make lexgrog happy
7a92c24157953dc6 manifest.js.gz: fix per-inbox /$INBOX/manifest.js.gz
78e81ae914ad24df Fix manpage section of perl module documentation
a4a1a74a2f60ec58 t/psgi_v2: ignore warnings on missing P::M::ReverseProxy
1cbb6243533fc2d4 daemon: support --daemonize without Net::Server::Daemonize
734daa9b165e248c doc: v2-format: drop repeated word
b63c27f36a44d8de over: ensure old, merged {tid} is really gone
c39ed01a3a4c6c46 wwwattach: prevent deep-linking via Referer match
0366c73f20b436d4 t/eml.t: workaround newer Email::MIME* behavior
bf14a3670da72358 nntp: attempt RFC 5536 3.1.5-conformant Path: headers
2fcf2b14a9ce3336 nntp: delimit Newsgroup: header with commas
31f9b61a318f4daf tls: epollbit: account for miscellaneous OpenSSL errors
5efbbd5e3e45ff3a scripts/dupe-finder: restore $dbh variable
59cc88bb5bc5ce3e searchidx: index lower-case List-Id value
4ccff6f9122da89c ds: add missing label for systems w/o EPOLLEXCLUSIVE
f9c3b3746445219b imap: avoid raising exception if client disconnects
e578a012532cd91f idxstack: fix comment about file_char
d94b6dd634381748 mda: match List-Id insensitively
c6ca576baf1700a8 mid: drop repeated ';' in mid_escape() regular expression
8e9d4f877730dbdf doc: post-1.6 updates, start 1.7
d6d442866106248e config: warn on multiple values for some fields
64f7ab3a571b9db0 doc: txt2pre: more manpage URLs
915e01b9cd771a84 doc: flow: include -imapd
dec02da946b6bb29 t/indexlevels-mirror: fix improperly skipped test
Thoughts?
Fwiw, I consider these two the most important and was
considering a 1.6.1 release even before the recent fixes:
7a92c24157953dc6 manifest.js.gz: fix per-inbox /$INBOX/manifest.js.gz
b63c27f36a44d8de over: ensure old, merged {tid} is really gone
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: stable 1.6.1 release? [was: [PATCH] eml: fix undefined vars on <Perl 5.28]
2020-12-26 20:35 ` stable 1.6.1 release? [was: [PATCH] eml: fix undefined vars on <Perl 5.28] Eric Wong
@ 2020-12-31 0:06 ` Eric Wong
0 siblings, 0 replies; 7+ messages in thread
From: Eric Wong @ 2020-12-31 0:06 UTC (permalink / raw)
To: Ali Alnubani, Konstantin Ryabitsev; +Cc: meta
Eric Wong <e@80x24.org> wrote:
> Ali Alnubani <alialnu@nvidia.com> wrote:
> > I no longer see the uninitialized value warnings or the test
> > failure on Debian 9 with both patches applied on master. Do
> > you plan on creating a new release tag soon with these fixes?
>
> Thanks, pushed to master and I've started a stable-1.6 branch
> to https://80x24.org/public-inbox.git with 29 commits
> cherry-picked from master which I hope are suitable.
>
> There's two more I'm tempted to cherry-pick, though they
> introduce behavior changes:
>
> fe01d7b117c8b1e1 import: drop X-Status in addition to Status
I've picked fe01d7b117c8b1e1 since it's a potential privacy leak.
> 1bf653ad139bf7bb nntp+www: drop List-* and Archived-At headers
Doesn't apply cleanly, but trivial to fix. But not sure if it's
a big-enough issue. Anyways, I'll release 1.6.1 before 2021...
(still lots of stuff brewing for lei + extindex...)
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] t/config: test --get-urlmatch for git <2.26
2020-12-26 11:27 [Debian 9][Perl 5.24] uninitialized value errors in Encode/MIME/Header.pm Ali Alnubani
2020-12-26 12:25 ` [PATCH] eml: fix undefined vars on <Perl 5.28 Eric Wong
@ 2020-12-26 12:30 ` Eric Wong
2020-12-26 14:12 ` Ali Alnubani
1 sibling, 1 reply; 7+ messages in thread
From: Eric Wong @ 2020-12-26 12:30 UTC (permalink / raw)
To: Ali Alnubani; +Cc: meta
Ali Alnubani <alialnu@nvidia.com> wrote:
> t/config.t ................... 1/?
> # Failed test 'urlmatch hit'
> # at t/config.t line 249.
> # got: undef
> # expected: '9'
> # Looks like you failed 1 test of 95.
Just fixing the test, for now; I guess -watch documentation
could use some updates or the code updated to not depend on
git for URL matching at all (it's not in libgit2, either,
but wildcard => Perl regexp translation isn't too bad, and
we'll be needing it elsewhere, I think)
----------8<---------
Subject: [PATCH] t/config: test --get-urlmatch for git <2.26
While git 1.8.5 learned --get-urlmatch, git did not learn to
match URLs against wildcards until 2.26. So only depend on
1.8.5 for this test since 2.26 is too new.
Reported-by: Ali Alnubani <alialnu@nvidia.com>
Link: https://public-inbox.org/meta/DM6PR12MB49106F8E3BD697B63B943A22DADB0@DM6PR12MB4910.namprd12.prod.outlook.com/
---
t/config.t | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/t/config.t b/t/config.t
index 99a7fef4..7fb44acc 100644
--- a/t/config.t
+++ b/t/config.t
@@ -234,12 +234,13 @@ EOF
}
SKIP: {
+ # XXX wildcard match requires git 2.26+
require_git('1.8.5', 2) or
skip 'git 1.8.5+ required for --url-match', 2;
my $f = "$tmpdir/urlmatch";
open my $fh, '>', $f or BAIL_OUT $!;
print $fh <<EOF or BAIL_OUT $!;
-[imap "imap://*.example.com"]
+[imap "imap://mail.example.com"]
pollInterval = 9
EOF
close $fh or BAIL_OUT;
^ permalink raw reply related [flat|nested] 7+ messages in thread
* RE: [PATCH] t/config: test --get-urlmatch for git <2.26
2020-12-26 12:30 ` [PATCH] t/config: test --get-urlmatch for git <2.26 Eric Wong
@ 2020-12-26 14:12 ` Ali Alnubani
0 siblings, 0 replies; 7+ messages in thread
From: Ali Alnubani @ 2020-12-26 14:12 UTC (permalink / raw)
To: Eric Wong; +Cc: meta@public-inbox.org
> -----Original Message-----
> From: Eric Wong <e@80x24.org>
> Sent: Saturday, December 26, 2020 2:31 PM
> To: Ali Alnubani <alialnu@nvidia.com>
> Cc: meta@public-inbox.org
> Subject: [PATCH] t/config: test --get-urlmatch for git <2.26
>
> Ali Alnubani <alialnu@nvidia.com> wrote:
> > t/config.t ................... 1/?
> > # Failed test 'urlmatch hit'
> > # at t/config.t line 249.
> > # got: undef
> > # expected: '9'
> > # Looks like you failed 1 test of 95.
>
> Just fixing the test, for now; I guess -watch documentation could use some
> updates or the code updated to not depend on git for URL matching at all (it's
> not in libgit2, either, but wildcard => Perl regexp translation isn't too bad, and
> we'll be needing it elsewhere, I think)
>
Tested-by: Ali Alnubani <alialnu@nvidia.com>
Thanks Eric.
Regards,
Ali
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2020-12-31 0:06 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-12-26 11:27 [Debian 9][Perl 5.24] uninitialized value errors in Encode/MIME/Header.pm Ali Alnubani
2020-12-26 12:25 ` [PATCH] eml: fix undefined vars on <Perl 5.28 Eric Wong
2020-12-26 14:10 ` Ali Alnubani
2020-12-26 20:35 ` stable 1.6.1 release? [was: [PATCH] eml: fix undefined vars on <Perl 5.28] Eric Wong
2020-12-31 0:06 ` Eric Wong
2020-12-26 12:30 ` [PATCH] t/config: test --get-urlmatch for git <2.26 Eric Wong
2020-12-26 14:12 ` Ali Alnubani
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).