On Sat, Jul 08, 2023 at 11:18:00AM +0200, Marc Espie wrote: > Hey, Philip, you wrote this a long time ago. > > Now, I'm trying to get some coverage out of Devel::Cover on pkg_add, > and somehow, it gets in the way. > > # perl -MDevel::Cover=+select,OpenBSD/.* /usr/sbin/pkg_add random_run <snip> > the problem was: > > Found type 9 GLOB(0x64a7292fc10), but it is not representable by the Sereal > encoding format at > /usr/local/libdata/perl5/site_perl/amd64-openbsd/Devel/Cover/DB/IO/Sereal.pm > line 46. > > > I have zero idea if Devel::Cover is to blame or if OpenBSD::MkTemp is missing > some magic annotation to cover for _GEN_1, _GEN_2, but the end result is > that NO coverage data gets written, none at all (I suspect some missing > annotations, see below)
Same, especially when I can't reproduce on my laptop that needs to be updated or on my sparc64 that just got updated today: $ sysctl kern.version kern.version=OpenBSD 7.3-current (GENERIC.MP) #1193: Fri May 19 11:04:34 MDT 2023 dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP $ perl -MDevel::Cover=+select,OpenBSD/.* /usr/sbin/pkg_add random_run Devel::Cover 1.40: Collecting coverage data for branch, condition, pod, statement, subroutine and time. Selecting packages matching: OpenBSD/.* Ignoring packages matching: /Devel/Cover[./] Ignoring packages in: /usr/local/libdata/perl5/site_perl/amd64-openbsd /usr/local/libdata/perl5/site_perl /usr/libdata/perl5/amd64-openbsd /usr/libdata/perl5 pkg_add: pkg_add must be run as root Devel::Cover: getting BEGIN block coverage Devel::Cover: 100% - 1s taken Devel::Cover: getting CHECK block coverage Devel::Cover: 100% - 0s taken Devel::Cover: getting END/INIT block coverage Devel::Cover: 100% - 0s taken Devel::Cover: getting CV coverage Devel::Cover: 100% - 5s taken Devel::Cover: Writing coverage database to /tmp/x/cover_db/runs/1688842881.32512.14344 ---------------------------- ------ ------ ------ ------ ------ ------ ------ File stmt bran cond sub pod time total ---------------------------- ------ ------ ------ ------ ------ ------ ------ ...data/perl5/OpenBSD/Add.pm 13.3 0.0 0.0 26.1 0.0 4.7 10.0 ...penBSD/AddCreateDelete.pm 51.5 35.0 20.0 39.3 0.0 0.7 45.2 ...erl5/OpenBSD/AddDelete.pm 31.2 12.0 17.1 33.3 0.0 5.6 25.9 ...perl5/OpenBSD/ArcCheck.pm 12.6 0.0 0.0 41.6 0.0 3.6 9.6 ...erl5/OpenBSD/BaseState.pm 24.3 7.4 11.1 31.0 0.0 0.7 19.2 ...ta/perl5/OpenBSD/Error.pm 54.0 37.5 0.0 52.1 0.0 0.6 48.2 ...a/perl5/OpenBSD/Getopt.pm 47.9 15.0 0.0 83.3 0.0 0.2 39.2 ...a/perl5/OpenBSD/Handle.pm 9.6 0.0 0.0 18.5 0.0 0.6 7.0 .../perl5/OpenBSD/IdCache.pm 29.6 0.0 n/a 33.3 0.0 0.1 23.4 ...l5/OpenBSD/Interactive.pm 11.9 0.0 0.0 50.0 0.0 0.2 9.0 .../perl5/OpenBSD/LibSpec.pm 6.8 0.0 0.0 8.1 0.0 0.5 5.1 ...data/perl5/OpenBSD/Log.pm 13.1 0.0 0.0 20.0 0.0 0.2 10.2 ...l5/OpenBSD/PackageInfo.pm 24.4 8.8 0.0 33.3 0.0 0.7 19.8 ...l5/OpenBSD/PackageName.pm 3.5 0.0 0.0 5.5 0.0 0.8 2.6 ...OpenBSD/PackingElement.pm 6.5 1.3 0.0 8.6 0.0 5.5 5.4 ...l5/OpenBSD/PackingList.pm 5.9 0.0 0.0 9.2 0.0 1.4 4.1 ...ta/perl5/OpenBSD/Paths.pm 10.5 0.0 0.0 8.6 0.0 0.3 6.4 ...a/perl5/OpenBSD/PkgAdd.pm 7.6 0.5 5.0 19.4 0.0 3.4 6.0 ...a/perl5/OpenBSD/PkgCfl.pm 19.7 0.0 0.0 41.6 0.0 0.4 16.1 .../OpenBSD/ProgressMeter.pm 28.2 10.0 22.2 16.0 0.0 0.3 19.8 ...BSD/ProgressMeter/Term.pm 19.8 6.0 5.2 21.4 0.0 41.6 14.9 ...a/perl5/OpenBSD/Search.pm 4.5 0.0 n/a 6.6 0.0 0.6 4.1 ...rl5/OpenBSD/SharedLibs.pm 26.0 0.0 0.0 35.2 0.0 0.4 19.5 ...ta/perl5/OpenBSD/State.pm 44.0 26.9 25.0 43.5 0.0 1.0 38.1 ...ta/perl5/OpenBSD/Subst.pm 15.5 0.0 0.0 30.7 0.0 0.3 12.6 ...ata/perl5/OpenBSD/Temp.pm 19.7 0.0 0.0 33.3 0.0 0.4 16.9 ...erl5/OpenBSD/UpdateSet.pm 3.6 0.0 0.0 6.1 0.0 0.9 2.9 ...ta/perl5/OpenBSD/Ustar.pm 5.4 0.0 0.0 14.0 0.0 2.0 4.2 ...ta/perl5/OpenBSD/Vstat.pm 7.1 0.0 0.0 9.6 0.0 0.9 5.5 ...openbsd/OpenBSD/MkTemp.pm 61.1 0.0 0.0 66.6 0.0 0.1 44.1 /usr/sbin/pkg_add 90.4 75.0 n/a 100.0 n/a 19.9 89.6 Total 14.1 2.6 3.4 20.1 0.0 100.0 11.1 ---------------------------- ------ ------ ------ ------ ------ ------ ------ $ sysctl kern.version kern.version=OpenBSD 7.3-current (GENERIC.MP) #1815: Thu Jul 6 14:47:12 MDT 2023 dera...@sparc64.openbsd.org:/usr/src/sys/arch/sparc64/compile/GENERIC.MP $ perl -MDevel::Cover=+select,OpenBSD/.* /usr/sbin/pkg_add random_run This version of Devel::Cover was built with Perl version 5.036000. It is now being run with Perl version 5.036001. Attempting to make adjustments, but you may find that some of your modules do not have coverage data collected. You may need to alter the +-inc, +-ignore and +-select options. Devel::Cover 1.40: Collecting coverage data for branch, condition, pod, statement, subroutine and time. Selecting packages matching: OpenBSD/.* Ignoring packages matching: /Devel/Cover[./] Ignoring packages in: /usr/local/libdata/perl5/site_perl/sparc64-openbsd /usr/local/libdata/perl5/site_perl /usr/libdata/perl5/sparc64-openbsd /usr/libdata/perl5 pkg_add: pkg_add must be run as root Devel::Cover: getting BEGIN block coverage Devel::Cover: 100% - 3s taken Devel::Cover: getting CHECK block coverage Devel::Cover: 100% - 0s taken Devel::Cover: getting END/INIT block coverage Devel::Cover: 100% - 0s taken Devel::Cover: getting CV coverage Devel::Cover: 100% - 39s taken Devel::Cover: Writing coverage database to /tmp/x/cover_db/runs/1688843105.57022.23046 File stmt bran cond sub pod time total ---------------------------- ------ ------ ------ ------ ------ ------ ------ ...data/perl5/OpenBSD/Add.pm 9.1 0.0 0.0 26.9 0.0 7.4 7.9 ...penBSD/AddCreateDelete.pm 38.4 35.0 n/a 39.3 0.0 1.0 37.9 ...erl5/OpenBSD/AddDelete.pm 28.0 12.0 17.1 33.9 0.0 7.4 24.8 ...perl5/OpenBSD/ArcCheck.pm 7.4 0.0 0.0 26.6 0.0 6.7 6.3 ...erl5/OpenBSD/BaseState.pm 23.6 7.4 16.6 32.0 0.0 0.6 20.0 ...ta/perl5/OpenBSD/Error.pm 48.7 37.5 0.0 50.0 0.0 2.1 45.6 ...a/perl5/OpenBSD/Getopt.pm 42.0 11.1 0.0 80.0 0.0 0.1 34.6 ...a/perl5/OpenBSD/Handle.pm 5.2 0.0 0.0 15.3 0.0 0.7 4.4 .../perl5/OpenBSD/IdCache.pm 13.3 0.0 n/a 25.0 0.0 0.0 12.5 ...l5/OpenBSD/Interactive.pm 10.2 0.0 0.0 40.0 0.0 0.0 7.5 ...data/perl5/OpenBSD/Log.pm 7.5 0.0 0.0 14.2 0.0 0.0 6.5 ...l5/OpenBSD/PackageInfo.pm 17.4 8.8 0.0 30.0 0.0 0.7 15.7 ...l5/OpenBSD/PackageName.pm 0.8 0.0 0.0 2.8 0.0 0.0 0.8 ...OpenBSD/PackingElement.pm 13.1 0.0 0.0 23.3 0.0 7.5 12.3 ...l5/OpenBSD/PackingList.pm 2.9 0.0 0.0 7.6 0.0 1.5 2.4 ...ta/perl5/OpenBSD/Paths.pm 5.7 0.0 0.0 7.0 0.0 0.0 4.6 ...a/perl5/OpenBSD/PkgAdd.pm 6.5 0.8 6.1 18.6 0.0 5.7 5.6 ...a/perl5/OpenBSD/PkgCfl.pm 14.7 0.0 0.0 41.6 0.0 0.5 13.2 .../OpenBSD/ProgressMeter.pm 19.0 10.0 22.2 20.0 0.0 0.1 17.3 ...BSD/ProgressMeter/Term.pm 16.0 7.5 5.8 21.4 0.0 16.2 13.8 ...a/perl5/OpenBSD/Search.pm 0.9 0.0 n/a 3.4 0.0 0.0 1.1 ...ta/perl5/OpenBSD/State.pm 40.3 26.9 25.0 43.2 0.0 1.5 36.8 ...ta/perl5/OpenBSD/Subst.pm 11.8 0.0 0.0 25.0 0.0 0.0 10.2 ...ata/perl5/OpenBSD/Temp.pm 11.2 0.0 n/a 28.5 0.0 0.5 10.9 ...erl5/OpenBSD/UpdateSet.pm 1.4 0.0 0.0 4.1 0.0 1.3 1.3 ...ta/perl5/OpenBSD/Ustar.pm 3.1 0.0 0.0 9.0 0.0 3.9 2.8 ...ta/perl5/OpenBSD/Vstat.pm 3.8 0.0 0.0 7.8 0.0 2.2 3.5 ...openbsd/OpenBSD/MkTemp.pm 61.1 0.0 0.0 66.6 0.0 0.1 44.1 /usr/sbin/pkg_add 90.0 75.0 n/a 100.0 n/a 31.2 88.8