Fails with the correct error on Xubuntu 22.04 with a manually compiled 5.38.2 perl:
$ perl -wE'say $];require (0 + 5.040)' 5.038002 Perl v5.40.0 required--this is only v5.38.2, stopped at -e line 1.
Also fails correctly with the system perl:
/usr/bin/perl -wE'say $];require (0 + 5.040)' 5.034000 Perl v5.40.0 required--this is only v5.34.0, stopped at -e line 1.
Running the tests of your dev version on my 5.38.2 also seems to detect the correct perl version:
$ perl Makefile.PL Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for Syntax::Construct Writing MYMETA.yml and MYMETA.json $ make test cp lib/Syntax/Construct.pm blib/lib/Syntax/Construct.pm PERL_DL_NONLAZY=1 "/home/cavac/bin/CavacPerl-5.38.2/bin/perl" "-MExtUt +ils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switc +hes; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/00-load.t ........ 1/1 # Testing Syntax::Construct 1.036_001, Perl 5 +.038002, /home/cavac/bin/CavacPerl-5.38.2/bin/perl t/00-load.t ........ ok t/01-invalid.t ..... ok t/02-constructs.t .. DEBUG: require 5.024 in 5.038002: 1 at t/02-const +ructs.t line 346. t/02-constructs.t .. 1/? DEBUG: require 5.026 in 5.038002: 1 at t/02-c +onstructs.t line 346. DEBUG: require 5.030 in 5.038002: 1 at t/02-constructs.t line 346. The Unicode property wildcards feature is experimental at (eval 31) li +ne 1. Use of uninitialized value in string eq at (eval 35) line 1. DEBUG: require 5.038 in 5.038002: 1 at t/02-constructs.t line 346. DEBUG: require 5.010 in 5.038002: 1 at t/02-constructs.t line 346. DEBUG: require 5.018 in 5.038002: 1 at t/02-constructs.t line 346. DEBUG: require 5.022 in 5.038002: 1 at t/02-constructs.t line 346. :const is experimental at (eval 101) line 1, <> line 1. DEBUG: require 5.034 in 5.038002: 1 at t/02-constructs.t line 346, <> +line 1. DEBUG: require 5.014 in 5.038002: 1 at t/02-constructs.t line 346, <> +line 1. DEBUG: require 5.008001 in 5.038002: 1 at t/02-constructs.t line 346, +<> line 1. DEBUG: require 5.040 in 5.038002: 0 at t/02-constructs.t line 346, <> +line 1. DEBUG: require 5.036 in 5.038002: 1 at t/02-constructs.t line 346, <> +line 1. DEBUG: require 5.016 in 5.038002: 1 at t/02-constructs.t line 346, <> +line 1. DEBUG: require 5.020 in 5.038002: 1 at t/02-constructs.t line 346, <> +line 1. DEBUG: require 5.028 in 5.038002: 1 at t/02-constructs.t line 346, <> +line 1. DEBUG: require 5.012 in 5.038002: 1 at t/02-constructs.t line 346, <> +line 1. DEBUG: require 5.032 in 5.038002: 1 at t/02-constructs.t line 346, <> +line 1. The Unicode property wildcards feature is experimental at (eval 195) l +ine 1, <> line 1. t/02-constructs.t .. ok t/03-hooks.t ....... ok t/04-extra.t ....... 1/4 Useless use of split in void context at (eval + 12) line 1. t/04-extra.t ....... ok t/05-functions.t ... ok t/06-alias.t ....... ok All tests successful. Files=7, Tests=121, 1 wallclock secs ( 0.05 usr 0.01 sys + 0.53 cus +r 0.07 csys = 0.66 CPU) Result: PASS
Here is the same test on another Xubuntu 22.04, using a manually compiled 5.40.0:
$ perl Makefile.PL Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for Syntax::Construct Writing MYMETA.yml and MYMETA.json $ make test cp lib/Syntax/Construct.pm blib/lib/Syntax/Construct.pm PERL_DL_NONLAZY=1 "/home/cavac/bin/CavacPerl-5.40.0/bin/perl" "-MExtUt +ils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switc +hes; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/00-load.t ........ 1/1 # Testing Syntax::Construct 1.036_001, Perl 5 +.040000, /home/cavac/bin/CavacPerl-5.40.0/bin/perl t/00-load.t ........ ok t/01-invalid.t ..... ok t/02-constructs.t .. DEBUG: require 5.016 in 5.040000: 1 at t/02-const +ructs.t line 346. t/02-constructs.t .. 1/? DEBUG: require 5.028 in 5.040000: 1 at t/02-c +onstructs.t line 346. DEBUG: require 5.024 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.010 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.040 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.020 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.026 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.032 in 5.040000: 1 at t/02-constructs.t line 346. The Unicode property wildcards feature is experimental at (eval 98) li +ne 1. DEBUG: require 5.014 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.018 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.038 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.034 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.012 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.008001 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.030 in 5.040000: 1 at t/02-constructs.t line 346. The Unicode property wildcards feature is experimental at (eval 167) l +ine 1. Use of uninitialized value in string eq at (eval 171) line 1. DEBUG: require 5.036 in 5.040000: 1 at t/02-constructs.t line 346. DEBUG: require 5.022 in 5.040000: 1 at t/02-constructs.t line 346. t/02-constructs.t .. ok t/03-hooks.t ....... ok t/04-extra.t ....... 1/4 Useless use of split in void context at (eval + 12) line 1. t/04-extra.t ....... ok t/05-functions.t ... ok t/06-alias.t ....... ok All tests successful. Files=7, Tests=118, 1 wallclock secs ( 0.03 usr 0.00 sys + 0.26 cus +r 0.01 csys = 0.30 CPU) Result: PASS
In reply to Re: Requiring a version
by cavac
in thread Requiring a version
by choroba
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |