Skip Menu |

This queue is for tickets about the Module-FromPerlVer CPAN distribution.

Report information
The Basics
Id: 124776
Status: resolved
Priority: 0/
Queue: Module-FromPerlVer

People
Owner: Nobody in particular
Requestors: tk [...] giga.or.at
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.005001
Fixed in: (no value)



Subject: Module-FromPerlVer-0.005001 fails self tests
Date: Wed, 14 Mar 2018 20:49:59 +0100
To: bug-Module-FromPerlVer [...] rt.cpan.org
From: Thomas Klausner <tk [...] giga.or.at>
This looks quite similar to the test failure in 0.005000 which was supposedly fixed in this release (see https://rt.cpan.org/Ticket/Display.html?id=124771) Setup: 't/bin/make-version-dir't/bin/make-version-dir fails: No such file or directorySetup: 't/bin/make-sandbox-dir't/bin/make-sandbox-dir fails: No such file or directorySetup: 't/bin/make-tests't/bin/make-tests fails: No such file or directoryChecking if your kit is complete... Warning: the following files are missing in your kit: t/bin/make-sandbox Please inform the author. Generating a Unix-style Makefile and later: t/01-default-args.t .......... 1/? # Require succeeds: VERSION = 0.001000 # Failed test 'Failed import: Bogus source_prefix: no 'version' in or above '/scratch/devel/p5-Module-FromPerlVer/work/Module-FromPerlVer-0.005001/t' at /scratch/devel/p5-Module-FromPerlVer/work/Module-FromPerlVer-0.005001/blib/lib/Module/FromPerlVer.pm line 259. # ' # at t/01-default-args.t line 28. Can't locate object method "source_prefix" via package "Module::FromPerlVer" at t/01-default-args.t line 50. # Tests were run but no plan was declared and done_testing() was not seen. # Looks like your test exited with 2 just after 9. t/01-default-args.t .......... Dubious, test returned 2 (wstat 512, 0x200) Failed 1/9 subtests t/10-dir-defaults-no_copy.t .. 1/? # Failed test 'use Module::FromPerlVer;' # at t/10-dir-defaults-no_copy.t line 8. # Tried to use 'Module::FromPerlVer'. # Error: Bogus source_prefix: no 'version' in or above '/scratch/devel/p5-Module-FromPerlVer/work/Module-FromPerlVer-0.005001/t' at /scratch/devel/p5-Module-FromPerlVer/work/Module-FromPerlVer-0.005001/blib/lib/Module/FromPerlVer.pm line 259. # BEGIN failed--compilation aborted at t/10-dir-defaults-no_copy.t line 8. Bailout called. Further testing stopped: Module::FromPerlVer is not usable. FAILED--Further testing stopped: Module::FromPerlVer is not usable. Thomas
Of course, adding the file to the manifest makes it more likely to run during installation...
CC: lembark [...] wrkhors.com
Subject: Re: [rt.cpan.org #124776] Module-FromPerlVer-0.005001 fails self tests
Date: Fri, 16 Mar 2018 16:14:36 -0500
To: bug-Module-FromPerlVer [...] rt.cpan.org
From: Steven Lembark <lembark [...] wrkhors.com>
On Wed, 14 Mar 2018 15:50:39 -0400 "Thomas Klausner via RT" <bug-Module-FromPerlVer@rt.cpan.org> wrote: Show quoted text
> Wed Mar 14 15:50:39 2018: Request 124776 was acted upon. > Transaction: Ticket created by wiz > Queue: Module-FromPerlVer > Subject: Module-FromPerlVer-0.005001 fails self tests > Broken in: (no value) > Severity: (no value) > Owner: Nobody > Requestors: tk@giga.or.at > Status: new > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=124776 > > > > This looks quite similar to the test failure in 0.005000 which was > supposedly fixed in this release (see > https://rt.cpan.org/Ticket/Display.html?id=124771) > > Setup: 't/bin/make-version-dir't/bin/make-version-dir fails: No such > file or directorySetup: > 't/bin/make-sandbox-dir't/bin/make-sandbox-dir fails: No such file or > directorySetup: 't/bin/make-tests't/bin/make-tests fails: No such > file or directoryChecking if your kit is complete... Warning: the > following files are missing in your kit: t/bin/make-sandbox Please > inform the author. Generating a Unix-style Makefile
There was a problem in the MANIFEST with a missing file. I've added the file that makes that directory to ./MANIFEST -- downside to trying to get the thing done from two places I saved a stale editor session. Part of the original problem is that I was trying to use my existing module-packaging code with the multi-level and dynamic tests, which they weren't originally written to handle. I've replace that much so there shouldn't be further issues with the content -- short of my own idiocies in the editor. The current release script also explicitly unwraps the tarball into a virgin directory, runs Makefile.PL, then make all test distest on that before making the tarball available for upload. What bothers me is that I extract the tarball locally in virgin space and don't see the error with 0.5.5. The perl code in ./t/bin is present and it runs to completion and it creates the ./t/version directory and the tests run to completion with all of them OK. $ ls -lt t/bin/ total 32 -rwxr-xr-x 1 lembark lembark 2230 Mar 15 19:53 31-git-local-version-from_t -rwxr-xr-x 1 lembark lembark 2052 Mar 15 19:52 30-file-version-from_t -rwxr-xr-x 1 lembark lembark 2059 Mar 15 19:51 21-git-local-defaults_t -rwxr-xr-x 1 lembark lembark 1393 Mar 15 19:23 20-file-defaults_t -rwxr-xr-x 1 lembark lembark 1729 Mar 15 11:59 make-tests -rwxr-xr-x 1 lembark lembark 1008 Mar 15 11:26 make-sandbox-dir -rwxr-xr-x 1 lembark lembark 597 Mar 13 18:01 make-sandbox-tarball * -rwxr-xr-x 1 lembark lembark 3750 Mar 13 15:32 make-version-dir The file is present and executable and when I run it: $ t/bin/make-version-dir # Working directory: /var/tmp/Module-FromPerlVer-0.005005/t $ ls t/version/ 5.0.1 5.006_000 5.888.888 v5.0.1 v5.006_000 v5.888.888 5.000.001 5.008.008 5.888888 v5.000.001 v5.008.008 v5.888888 5.000001 5.008008 5.888_888 v5.000001 v5.008008 v5.888_888 5.000_001 5.008_008 5.999.999 v5.000_001 v5.008_008 v5.999.999 5.006.000 5.6.0 5.999999 v5.006.000 v5.6.0 v5.999999 5.006000 5.8.8 5.999_999 v5.006000 v5.8.8 v5.999_999 Viola!, a working ./t/version directory is pressent. When I link and execute the tests: $ ./t/bin/make-sandbox-dir; $ ./t/bin/make-tests; $ prove -r; Possible attempt to put comments in qw() list at /opt/perl/5.26/lib/site_perl/5.26.1/x86_64-linux/Time/HiRes.pm line 54. Possible attempt to separate words with commas at /opt/perl/5.26/lib/site_perl/5.26.1/x86_64-linux/Time/HiRes.pm line 54. ./t/00-usable.t ..................................... ok ./t/01-default-args.t ............................... 1/? # Require succeeds: VERSION = 0.001000 ./t/01-default-args.t ............................... ok ./t/10-dir-defaults-no_copy.t ....................... ok ./t/11-use_dir.t .................................... ok ./t/12-dir-default-use.t ............................ ok ./t/13-reject-bogus-no-5.0.t ........................ ok ./t/dynamic/20-file-defaults-5.005.003.t ............ ok <snip> ./t/dynamic/21-git-local-defaults-5.005.003.t ....... Previous HEAD position was ff1600c ../version/5.999_999 HEAD is now at 29cc0f4 ../version/5.005003 ./t/dynamic/21-git-local-defaults-5.005.003.t ....... ok <snip> ./t/dynamic/21-git-local-defaults-v5.999_999.t ...... ok <snip> ./t/dynamic/30-file-version-from-5.005.003.t ........ ok ./t/dynamic/30-file-version-from-v5.999_999.t ....... ok <snip> ./t/dynamic/31-git-local-version-from-5.005.003.t ... Previous HEAD position was ff1600c ../version/5.999_999 HEAD is now at 29cc0f4 ../version/5.005003 ./t/dynamic/31-git-local-version-from-5.005.003.t ... ok <snip> ./t/dynamic/31-git-local-version-from-v5.999_999.t .. ok All tests successful. Files=86, Tests=705, 8 wallclock secs ( 0.23 usr 0.06 sys + 7.55 cusr 0.58 csys = 8.42 CPU) Result: PASS It worked here in the 0.5.4 because I hadn't remove the generated version directory prior to testing it and used a stale copy, which is no longer a problem in the release code. Re-testing it by blowing it off, re-extracting the tarball and: $ perl Makefile.PL Setup: 't/bin/make-version-dir'# Working directory: /var/tmp/Module-FromPerlVer-0.005005/t Setup: 't/bin/make-sandbox-dir'Git version: 'git version 2.16.1 'Recover t/sandbox/.git using 't/sandbox/.git.tar'. Extracted t/sandbox/.git.tar -> t/sandbox/.git Prepared sandbox: 't/sandbox/.git' Setup: 't/bin/make-tests'# Link: '../bin/20-file-defaults_t' # Cleanup: '20-*' # Link: '../bin/21-git-local-defaults_t' # Cleanup: '21-*' # Link: '../bin/30-file-version-from_t' # Cleanup: '30-*' # Link: '../bin/31-git-local-version-from_t' # Cleanup: '31-*' Checking if your kit is complete... Warning: the following files are missing in your kit: t/bin/make-tests~ Please inform the author. Generating a Unix-style Makefile Writing Makefile for Module::FromPerlVer Writing MYMETA.yml and MYMETA.json $ make all test; cp lib/Module/FromPerlVer.pm blib/lib/Module/FromPerlVer.pm cp lib/Module/FromPerlVer/Extract.pm blib/lib/Module/FromPerlVer/Extract.pm cp lib/Module/FromPerlVer/Git.pm blib/lib/Module/FromPerlVer/Git.pm cp lib/Module/FromPerlVer/Dir.pm blib/lib/Module/FromPerlVer/Dir.pm Manifying 2 pod docuents PERL_DL_NONLAZY=1 "/opt/perl/5.26/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/*/*.t t/00-usable.t ..................................... ok t/01-default-args.t ............................... 1/? # Require succeeds: VERSION = 0.001000 t/01-default-args.t ............................... ok t/10-dir-defaults-no_copy.t ....................... ok t/11-use_dir.t .................................... ok t/12-dir-default-use.t ............................ ok t/13-reject-bogus-no-5.0.t ........................ ok t/dynamic/20-file-defaults-5.005.003.t ............ ok t/dynamic/20-file-defaults-5.005003.t ............. ok <snip> t/dynamic/31-git-local-version-from-v5.999_999.t .. HEAD is now at ff1600c ../version/5.999_999 t/dynamic/31-git-local-version-from-v5.999_999.t .. ok All tests successful. Files=86, Tests=705, 8 wallclock secs ( 0.24 usr 0.04 sys + 7.41 cusr 0.72 csys = 8.41 CPU) Result: PASS I've replaced the test for '/' eq dirname $whence (admittedly a kwikhak) with splitpath + pop + catpath to walk up the file tree so the issue should be filesystem specific (at least on *NIX, VMS, or Windows that I know of with File::Spec::Functions). I've replaced all of the shell with perl to untar the sandbox dir (avoids windows issues with the lack of tar) and perform clenaups (replace rm with unlink). I don't see at this point why the tarball works here and fails on another *NIX system. Q: If you extract the tarball on your system, cd M*0.5.5, and manually run: ls -l t/bin/*; is "./t/bin/make-version-dir" present? Q: If you manually run: ./t/bin/make-version-dir; ./t/bin/make-sandbox-dir; ./t/bin/make-tests; what happens? thanks -- Steven Lembark 1505 National Ave Workhorse Computing Rockford, IL 61103 lembark@wrkhors.com +1 888 359 3508
Subject: Re: [rt.cpan.org #124776] Module-FromPerlVer-0.005001 fails self tests
Date: Sat, 17 Mar 2018 08:43:53 +0100
To: "lembark [...] wrkhors.com via RT" <bug-Module-FromPerlVer [...] rt.cpan.org>
From: Thomas Klausner <tk [...] giga.or.at>
On Fri, Mar 16, 2018 at 05:16:00PM -0400, lembark@wrkhors.com via RT > Q: If you extract the tarball on your system, cd M*0.5.5, and Show quoted text
> manually run: > > ls -l t/bin/*; > > is "./t/bin/make-version-dir" present?
Yes. Show quoted text
> Q: If you manually run: > > ./t/bin/make-version-dir; > ./t/bin/make-sandbox-dir; > ./t/bin/make-tests; > > what happens?
They fail because I don't have /bin/env (nor /bin/bash). env lives in /usr/bin/env (and bash is in /usr/pkg/bin/bash, but please check if /bin/sh might be sufficient). After I fix that, I see # ./t/bin/make-version-dir Can't locate List/MoreUtils.pm in @INC (you may need to install the List::MoreUtils module) (@INC contains: /archive/foreign/nfotex/nsl/lib /archive/foreign/nfotex/nsl/lib /usr/pkg/lib/perl5/site_perl/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/site_perl/5.26.0 /usr/pkg/lib/perl5/vendor_perl/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/vendor_perl/5.26.0 /usr/pkg/lib/perl5/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/5.26.0) at ./work/Module-FromPerlVer-0.005005/t/bin/make-version-dir line 15. BEGIN failed--compilation aborted at ./work/Module-FromPerlVer-0.005005/t/bin/make-version-dir line 15. # ./work/Module-FromPerlVer-0.005005/t/bin/make-sandbox-dir Missing sandbox: t/sandbox/.git Git.pm tests will skip: missing 't/sandbox/.git' and 't/sandbox/.git.tar'. # ./work/Module-FromPerlVer-0.005005/t/bin/make-tests Can't locate List/MoreUtils.pm in @INC (you may need to install the List::MoreUtils module) (@INC contains: /archive/foreign/nfotex/nsl/lib /archive/foreign/nfotex/nsl/lib /usr/pkg/lib/perl5/site_perl/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/site_perl/5.26.0 /usr/pkg/lib/perl5/vendor_perl/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/vendor_perl/5.26.0 /usr/pkg/lib/perl5/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/5.26.0) at ./work/Module-FromPerlVer-0.005005/t/bin/make-tests line 10. BEGIN failed--compilation aborted at ./work/Module-FromPerlVer-0.005005/t/bin/make-tests line 10. After I install List-MoreUtils, I see: # ./work/Module-FromPerlVer-0.005005/t/bin/make-version-dir # Working directory: /scratch/nih/p5-Module-FromPerlVer/work/Module-FromPerlVer-0.005005/t # ./work/Module-FromPerlVer-0.005005/t/bin/make-tests # Link: '../bin/20-file-defaults_t' # Cleanup: '20-*' # Link: '../bin/21-git-local-defaults_t' # Cleanup: '21-*' # Link: '../bin/30-file-version-from_t' # Cleanup: '30-*' # Link: '../bin/31-git-local-version-from_t' # Cleanup: '31-*' However, there are still problems: Setup: 't/bin/make-version-dir't/bin/make-version-dir fails: No such file or directorySetup: 't/bin/make-sandbox-dir't/bin/make-sandbox-dir fails: No such file or directorySetup: 't/bin/make-tests't/bin/make-tests fails: No such file or directoryChecking if your kit is complete... The reason for this one is that Makefile.PL also hardcodes "/bin/env". Warning: the following files are missing in your kit: t/bin/make-tests~ ... The reason for this warnings is this bogus line in the MANIFEST: t/bin/make-tests~ Once I fix these, the tests pass: All tests successful. Files=86, Tests=545, 15 wallclock secs ( 0.34 usr 0.09 sys + 11.39 cusr 3.11 csys = 14.93 CPU) Result: PASS Thomas

Message body is not shown because sender requested not to inline it.

Message body is not shown because sender requested not to inline it.

CC: lembark [...] wrkhors.com
Subject: Re: [rt.cpan.org #124776] Module-FromPerlVer-0.005001 fails self tests
Date: Sat, 17 Mar 2018 18:27:39 -0500
To: bug-Module-FromPerlVer [...] rt.cpan.org
From: Steven Lembark <lembark [...] wrkhors.com>
On Sat, 17 Mar 2018 03:44:11 -0400 "Thomas Klausner via RT" <bug-Module-FromPerlVer@rt.cpan.org> wrote: Show quoted text
> Queue: Module-FromPerlVer > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=124776 > > > On Fri, Mar 16, 2018 at 05:16:00PM -0400, lembark@wrkhors.com via RT
> > Q: If you extract the tarball on your system, cd M*0.5.5, and > > manually run: > > > > ls -l t/bin/*; > > > > is "./t/bin/make-version-dir" present?
> > Yes. >
> > Q: If you manually run: > > > > ./t/bin/make-version-dir; > > ./t/bin/make-sandbox-dir; > > ./t/bin/make-tests; > > > > what happens?
> > They fail because I don't have /bin/env (nor /bin/bash). > > env lives in /usr/bin/env (and bash is in /usr/pkg/bin/bash, but > please check if /bin/sh might be sufficient).
Gads... I went through the path-to-env session before; eveyone told me to use /bin/env when I thought std GNU path for it was /usr/bin. OK... try a new release with /bin/sh. Thank you. Show quoted text
> After I fix that, I see > # ./t/bin/make-version-dir > Can't locate List/MoreUtils.pm in @INC (you may need to install the > List::MoreUtils module) (@INC > contains: /archive/foreign/nfotex/nsl/lib /archive/foreign/nfotex/nsl/lib /usr/pkg/lib/perl5/site_perl/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/site_perl/5.26.0 /usr/pkg/lib/perl5/vendor_perl/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/vendor_perl/5.26.0 /usr/pkg/lib/perl5/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/5.26.0) > at ./work/Module-FromPerlVer-0.005005/t/bin/make-version-dir line 15. > BEGIN failed--compilation aborted > at ./work/Module-FromPerlVer-0.005005/t/bin/make-version-dir line 15. > > # ./work/Module-FromPerlVer-0.005005/t/bin/make-sandbox-dir > Missing sandbox: t/sandbox/.git > Git.pm tests will skip: missing 't/sandbox/.git' and > 't/sandbox/.git.tar'. > > # ./work/Module-FromPerlVer-0.005005/t/bin/make-tests > Can't locate List/MoreUtils.pm in @INC (you may need to install the > List::MoreUtils module) (@INC > contains: /archive/foreign/nfotex/nsl/lib /archive/foreign/nfotex/nsl/lib /usr/pkg/lib/perl5/site_perl/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/site_perl/5.26.0 /usr/pkg/lib/perl5/vendor_perl/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/vendor_perl/5.26.0 /usr/pkg/lib/perl5/5.26.0/x86_64-netbsd-thread-multi /usr/pkg/lib/perl5/5.26.0) > at ./work/Module-FromPerlVer-0.005005/t/bin/make-tests line 10. BEGIN > failed--compilation aborted > at ./work/Module-FromPerlVer-0.005005/t/bin/make-tests line 10. > > After I install List-MoreUtils, I see: > > # ./work/Module-FromPerlVer-0.005005/t/bin/make-version-dir > # Working > directory: /scratch/nih/p5-Module-FromPerlVer/work/Module-FromPerlVer-0.005005/t > > # ./work/Module-FromPerlVer-0.005005/t/bin/make-tests > # Link: '../bin/20-file-defaults_t' > # Cleanup: '20-*' > # Link: '../bin/21-git-local-defaults_t' > # Cleanup: '21-*' > # Link: '../bin/30-file-version-from_t' > # Cleanup: '30-*' > # Link: '../bin/31-git-local-version-from_t' > # Cleanup: '31-*'
Show quoted text
> > However, there are still problems: > > Setup: 't/bin/make-version-dir't/bin/make-version-dir fails: No such > file or directorySetup: > 't/bin/make-sandbox-dir't/bin/make-sandbox-dir fails: No such file or > directorySetup: 't/bin/make-tests't/bin/make-tests fails: No such > file or directoryChecking if your kit is complete... > > The reason for this one is that Makefile.PL also hardcodes "/bin/env". > > Warning: the following files are missing in your kit: > t/bin/make-tests~ > ... > > The reason for this warnings is this bogus line in the MANIFEST: > t/bin/make-tests~
Just took that out. I'd just noticed that myself. A script here is supposed to clean all of those out before I make the MANIFEST... one more thing to check. Thank you. -- Steven Lembark 1505 National Ave Workhorse Computing Rockford, IL 61103 lembark@wrkhors.com +1 888 359 3508
CC: lembark [...] wrkhors.com
Subject: Re: [rt.cpan.org #124776] Module-FromPerlVer-0.005001 fails self tests
Date: Sat, 17 Mar 2018 19:03:28 -0500
To: bug-Module-FromPerlVer [...] rt.cpan.org
From: Steven Lembark <lembark [...] wrkhors.com>
For the moment I've replaced the original lines with "#!/usr/bin/env perl" "#!/usr/bin/env bash" which should work on your system (assuming bash is on your standard path???). Thanks again for the help. -- Steven Lembark 1505 National Ave Workhorse Computing Rockford, IL 61103 lembark@wrkhors.com +1 888 359 3508