Skip Menu |
 

This queue is for tickets about the XSConfig CPAN distribution.

Report information
The Basics
Id: 110631
Status: open
Priority: 0/
Queue: XSConfig

People
Owner: Nobody in particular
Requestors: ANDK [...] cpan.org
Cc: SREZIC [...] cpan.org
AdminCc:

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



Subject: 6.05 breaks all MakeMaker-based CPAN modules
I just built an arbitrary new perl. It's bleadperl v5.23.6-29-g903c858, but as evidence goes, no matter which perl. I test the MakeMaker-based module CPAN::Testers::ParseReport, but as evidence goes, any MakeMaker-based module has the problem. I run perl 'Makefile.PL&&make' and it works: % /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29-g903c858/????/bin/perl Makefile.PL&&make Warning: prerequisite Class::ISA 0 not found. Warning: prerequisite Statistics::Regression 0 not found. Generating a Unix-style Makefile Writing Makefile for CPAN::Testers::ParseReport Writing MYMETA.yml and MYMETA.json Skip blib/lib/CPAN/Testers/ParseReport.pm (unchanged) cp bin/ctgetreports blib/script/ctgetreports "/tmp/basesmoker-reloperl-Eq1z/bin/perl" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/ctgetreports Manifying 1 pod document Manifying 1 pod document I install XSConfig 6.05: /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29-g903c858/????/bin/cpan XSConfig And when I retry 'Makefile.PL&&make', it does not work anymore: % /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29-g903c858/????/bin/perl Makefile.PL&&make Warning: prerequisite Class::ISA 0 not found. Warning: prerequisite Statistics::Regression 0 not found. Have /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29-g903c858/127e/lib/site_perl/5.23.7/x86_64-linux-ld Want /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29-g903c858/127e/lib/5.23.7/x86_64-linux-ld Your perl and your Config.pm seem to have different ideas about the architecture they are running on. Perl thinks: [x86_64-linux-ld] Config says: [x86_64-linux-ld] This may or may not cause problems. Please check your installation of perl if you have problems building this extension. Generating a Unix-style Makefile Writing Makefile for CPAN::Testers::ParseReport Writing MYMETA.yml and MYMETA.json make: *** No rule to make target '/home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29-g903c858/127e/lib/5.23.7/x86_64-linux-ld/Config.pm', needed by 'Makefile'. Stop.
Download (untitled) / with headers
text/plain 2.4k
On Sat Dec 26 17:45:31 2015, ANDK wrote: Show quoted text
> I just built an arbitrary new perl. It's bleadperl > v5.23.6-29-g903c858, but as evidence goes, no matter which perl. I > test the MakeMaker-based module CPAN::Testers::ParseReport, but as > evidence goes, any MakeMaker-based module has the problem. I run perl > 'Makefile.PL&&make' and it works: > > % /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29- > g903c858/????/bin/perl Makefile.PL&&make > Warning: prerequisite Class::ISA 0 not found. > Warning: prerequisite Statistics::Regression 0 not found. > Generating a Unix-style Makefile > Writing Makefile for CPAN::Testers::ParseReport > Writing MYMETA.yml and MYMETA.json > Skip blib/lib/CPAN/Testers/ParseReport.pm (unchanged) > cp bin/ctgetreports blib/script/ctgetreports > "/tmp/basesmoker-reloperl-Eq1z/bin/perl" -MExtUtils::MY -e 'MY-
> >fixin(shift)' -- blib/script/ctgetreports
> Manifying 1 pod document > Manifying 1 pod document > > I install XSConfig 6.05: > > /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29- > g903c858/????/bin/cpan XSConfig > > And when I retry 'Makefile.PL&&make', it does not work anymore: > > % /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29- > g903c858/????/bin/perl Makefile.PL&&make > Warning: prerequisite Class::ISA 0 > not found. > Warning: prerequisite Statistics::Regression 0 not found. > Have /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29- > g903c858/127e/lib/site_perl/5.23.7/x86_64-linux-ld > Want /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29- > g903c858/127e/lib/5.23.7/x86_64-linux-ld > Your perl and your Config.pm seem to have different ideas about the > architecture they are running on. > Perl thinks: [x86_64-linux-ld] > Config says: [x86_64-linux-ld] > This may or may not cause problems. Please check your installation of > perl > if you have problems building this extension. > Generating a Unix-style Makefile > Writing Makefile for CPAN::Testers::ParseReport > Writing MYMETA.yml and MYMETA.json > make: *** No rule to make target > '/home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29- > g903c858/127e/lib/5.23.7/x86_64-linux-ld/Config.pm', needed by > 'Makefile'. Stop.
The issue at hand is that MakeMaker has a sanity check to ensure it doesn't use the Config.pm of another perl install. This check assumes it will be found in the core library dir, while XSConfig typically installs to site. Leon
Download (untitled) / with headers
text/plain 415b
On Sat Dec 26 19:38:11 2015, LEONT wrote: Show quoted text
> The issue at hand is that MakeMaker has a sanity check to ensure it > doesn't use the Config.pm of another perl install. This check assumes > it will be found in the core library dir, while XSConfig typically > installs to site.
I added an gh issue here: https://github.com/perl11/p5-Config/issues/5 The fix is trivial. There was more breakage in 6.05 -- Reini Urban
Download (untitled) / with headers
text/plain 6.3k
On Sun Dec 27 09:42:49 2015, RURBAN wrote: Show quoted text
> On Sat Dec 26 19:38:11 2015, LEONT wrote:
> > The issue at hand is that MakeMaker has a sanity check to ensure it > > doesn't use the Config.pm of another perl install. This check assumes > > it will be found in the core library dir, while XSConfig typically > > installs to site.
> > I added an gh issue here: https://github.com/perl11/p5-Config/issues/5 > The fix is trivial. > There was more breakage in 6.05 >
Installing to 'perl' means that XSConfig CANT be uninstalled, and will pretty much destroy your installed perl and you have to rebuild perl from source (I have an idea how to create an uninstall process for a 'perl' install but I'd rather keep the whole thing in 'site', deleting 'site' is a normal produce to fix a broken perl that cant build modules). For a currently somewhat unstable module installing to 'perl' seems like a very bad idea. The warning "Your perl and your Config.pm seem to have different ideas about the architecture they are running on." is just a warning and console noise for me, it doesn't cause breakage, atleast on Win32. Fixing the warning in EUMM is very low priority for me, since EUMM dev is frozen and it is impossible to fix old EUMMs on old perls. If I add a minimum ver of EUMM of a future EUMM 7.14, I will decreases compatibility/the pool of perls that can install the module. Example of a successful with the EUMM warning module build on my system. ------------------------------------------------- cpan[1]> test Time::Piece Reading 'C:\Users\Owner\.cpan\Metadata' Database was generated on Sun, 27 Dec 2015 20:53:32 GMT Running test for module 'Time::Piece' Fetching with LWP: http://www.cpan.org/authors/id/E/ES/ESAYM/Time-Piece-1.31.tar.gz Warning (usually harmless): 'YAML' not installed, cannot parse 'C:\Users\Owner\. cpan\FTPstats.yml' Fetching with LWP: http://www.cpan.org/authors/id/E/ES/ESAYM/CHECKSUMS Checksum for C:\Users\Owner\.cpan\sources\authors\id\E\ES\ESAYM\Time-Piece-1.31. tar.gz ok Scanning cache C:\Users\Owner\.cpan\build for sizes ............................................................................DONE 'YAML' not installed, will not store persistent state Configuring E/ES/ESAYM/Time-Piece-1.31.tar.gz with Makefile.PL Checking if your kit is complete... Looks good Have \p523\site\lib Want \p523\lib Your perl and your Config.pm seem to have different ideas about the architecture they are running on. Perl thinks: [lib] Config says: [MSWin32-x86-multi-thread] This may or may not cause problems. Please check your installation of perl if you have problems building this extension. Generating a dmake-style Makefile Writing Makefile for Time::Piece Writing MYMETA.yml and MYMETA.json ESAYM/Time-Piece-1.31.tar.gz C:\p523\bin\perl.exe Makefile.PL -- OK Running make for E/ES/ESAYM/Time-Piece-1.31.tar.gz cp Seconds.pm blib\lib\Time\Seconds.pm cp Piece.pm blib\lib\Time\Piece.pm Running Mkbootstrap for Time::Piece () "C:\p523\bin\perl.exe" -MExtUtils::Command -e chmod -- 644 "Piece.bs" "C:\p523\bin\perl.exe" "C:\p523\lib\ExtUtils\xsubpp" -typemap "C:\p523\lib\ExtU tils\typemap" Piece.xs > Piece.xsc && "C:\p523\bin\perl.exe" -MExtUtils::Comman d -e mv -- Piece.xsc Piece.c cl -c -nologo -GF -W3 -O1 -MD -Zi -DNDEBUG -GL -DWIN32 -D_CONSOLE -DNO _STRICT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DPERL_TEXTMODE_S CRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -O1 -MD -Zi -DNDEBUG -GL -DVERSION=\"1.31\" -DXS_VERSION=\"1.31\" "-IC:\p523\lib\CORE" Piece.c Piece.c "C:\p523\bin\perl.exe" -MExtUtils::Mksymlists \ -e "Mksymlists('NAME'=>\"Time::Piece\", 'DLBASE' => 'Piece', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" link -out:blib\arch\auto\Time\Piece\Piece.dll -dll -nologo -nodefaultlib -debug -opt:ref,icf -ltcg -libpath:"c:\p523\lib\CORE" -machine :x86 "/manifestdependency:type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' la nguage='*'" -subsystem:console,"5.01" Piece.obj "C:\p523\lib\CORE\perl523.lib" oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi 32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.l ib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib -def:Pi ece.def Creating library blib\arch\auto\Time\Piece\Piece.lib and object blib\arch\aut o\Time\Piece\Piece.exp Generating code Finished generating code if exist blib\arch\auto\Time\Piece\Piece.dll.manifest mt -nologo -manifest blib\ arch\auto\Time\Piece\Piece.dll.manifest -outputresource:blib\arch\auto\Time\Piec e\Piece.dll;2 if exist blib\arch\auto\Time\Piece\Piece.dll.manifest del blib\arch\auto\Time\Pi ece\Piece.dll.manifest "C:\p523\bin\perl.exe" -MExtUtils::Command -e chmod -- 755 blib\arch\auto\Time\P iece\Piece.dll ESAYM/Time-Piece-1.31.tar.gz dmake -- OK Running make test "C:\p523\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef * Test::Harness::Switches; test_harness(0, 'blib\lib', 'blib\arch')" t/*.t t/01base.t ...... ok t/02core.t ...... ok t/02core_dst.t .. ok t/03compare.t ... ok t/04mjd.t ....... ok t/05overload.t .. ok t/06subclass.t .. ok t/07arith.t ..... ok All tests successful. Files=8, Tests=229, 1 wallclock secs ( 0.08 usr + 0.06 sys = 0.14 CPU) Result: PASS ESAYM/Time-Piece-1.31.tar.gz dmake test -- OK cpan[2]> ------------------------------------------------- I dont understand the error "make: *** No rule to make target '/home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29-g903c858/127e/lib/5.23.7/x86_64-linux-ld/Config.pm', needed by 'Makefile'. Stop." The EUMM mkf has a time dep on the original PP Config in /lib/arch, the EUMM mkf is unaware of a /site/arch [XS] Config.pm and doesn't check the timestamp of XS Config and doesn't need to, as XS Config promises to be a copy of PP Config and XS Config.pm supposed to be mtime backdated to the mtime of PP Config.pm to further create the illusion that it is identical to PP Config.pm MM_Any.pm contains ------------------------------------------------------------- push @m, q{ # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIBDEP)$(DFSEP)Config.pm $(PERL_INCDEP)$(DFSEP)config.h } if -e File::Spec->catfile( $self->{PERL_INC}, 'config.h' ); -------------------------------------------------------------
CC: ANDK [...] cpan.org, SREZIC [...] cpan.org
Subject: Re: [rt.cpan.org #110631] 6.05 breaks all MakeMaker-based CPAN modules
Date: Mon, 28 Dec 2015 09:15:22 +0100
To: "Daniel Dragan via RT" <bug-XSConfig [...] rt.cpan.org>
From: Andreas Koenig <andreas.koenig.7os6VVqR [...] franz.ak.mind.de>
Download (untitled) / with headers
text/plain 1.9k
Show quoted text
>>>>> On Sun, 27 Dec 2015 16:26:07 -0500, "Daniel Dragan via RT" <bug-XSConfig@rt.cpan.org> said:
Show quoted text
> I dont understand the error "make: *** No rule to make target '/home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-29-g903c858/127e/lib/5.23.7/x86_64-linux-ld/Config.pm', needed by 'Makefile'. Stop."
Show quoted text
> The EUMM mkf has a time dep on the original PP Config in /lib/arch, the EUMM mkf is unaware of a /site/arch [XS] Config.pm and doesn't check the timestamp of XS Config and doesn't need to, as XS Config promises to be a copy of PP Config and XS Config.pm supposed to be mtime backdated to the mtime of PP Config.pm to further create the illusion that it is identical to PP Config.pm
Show quoted text
> MM_Any.pm contains > ------------------------------------------------------------- > push @m, q{ > # Where is the Config information that we are using/depend on > CONFIGDEP = $(PERL_ARCHLIBDEP)$(DFSEP)Config.pm $(PERL_INCDEP)$(DFSEP)config.h > } if -e File::Spec->catfile( $self->{PERL_INC}, 'config.h' ); > -------------------------------------------------------------
Yupp, sorry, what I didn't tell you, I'm using UNINST=1, and that uninstalls the previous Config.pm when yours is installed. From the ExtUtils::Install manpage: If $uninstall_shadows is true any differing versions throughout @INC will be uninstalled. This is "make install UNINST=1" So when XSConfig's Makefile says: Installing /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-21-ge273c3f/a2da/lib/site_perl/5.23.7/x86_64-linux-thread-multi-ld/Config.pm then it silently uninstalls /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6-21-ge273c3f/a2da/lib/5.23.7/x86_64-linux-thread-multi-ld/Config.pm And subsequent generation of a Makefile literally contains: CONFIGDEP = $(PERL_ARCHLIBDEP)$(DFSEP)Config.pm $(PERL_INCDEP)$(DFSEP)config.h and $(FIRST_MAKEFILE) : Makefile.PL $(CONFIGDEP) and this cannot be fulfilled anymore. -- andreas
Download (untitled) / with headers
text/plain 1.1k
On Mon Dec 28 03:15:41 2015, andreas.koenig.7os6VVqR@franz.ak.mind.de wrote: Show quoted text
> Yupp, sorry, what I didn't tell you, I'm using UNINST=1, and that > uninstalls the previous Config.pm when yours is installed. > > From the ExtUtils::Install manpage: > > If $uninstall_shadows is true any differing versions throughout @INC > will be uninstalled. This is "make install UNINST=1" > > So when XSConfig's Makefile says: > > Installing /home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6- > 21-ge273c3f/a2da/lib/site_perl/5.23.7/x86_64-linux-thread-multi- > ld/Config.pm > > then it silently uninstalls /home/sand/src/perl/repoperls/installed- > perls/perl/v5.23.6-21-ge273c3f/a2da/lib/5.23.7/x86_64-linux-thread- > multi-ld/Config.pm > > And subsequent generation of a Makefile literally contains: > > CONFIGDEP = $(PERL_ARCHLIBDEP)$(DFSEP)Config.pm > $(PERL_INCDEP)$(DFSEP)config.h > > and > > $(FIRST_MAKEFILE) : Makefile.PL $(CONFIGDEP) > > and this cannot be fulfilled anymore.
I reproduced your problem with UNINST=1. A fix was published in https://metacpan.org/release/BULKDD/XSConfig-6.05_04 . Please test it. If you use "UNINST=1", XSConfig installs to 'perl', not 'site'.
Download (untitled) / with headers
text/plain 1.9k
If I let the CPAN.pm shell run, there is no "false" result from a Makefile allowed, so while 'make' and 'make test' succeed, the final 'make install' fails like so: : CPAN::Reporter: make result is 'pass', No errors. : BULKDD/other/XSConfig-6.06.tar.gz : /usr/bin/make -- OK : Running make test : Running Mkbootstrap for Config () : chmod 644 "Config.bs" : PERL_DL_NONLAZY=1 "/home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6/79cc/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/arch', 'blib/arch')" t/*.t : t/Config.t .... ok : t/XSConfig.t .. ok : All tests successful. : Files=2, Tests=183, 1 wallclock secs ( 0.03 usr 0.03 sys + 0.19 cusr 0.00 csys = 0.25 CPU) : Result: PASS : (/usr/bin/make test exited with 0) : CPAN::Reporter: Test result is 'pass', All tests successful. : CPAN::Reporter: preparing a CPAN Testers report for XSConfig-6.06 : CPAN::Reporter: sending test report with 'pass' via File : BULKDD/other/XSConfig-6.06.tar.gz : /usr/bin/make test -- OK : Running make install : Prepending /tmp/loop_over_bdir-bQg7EB/XSConfig-6.06-mObJa1/blib/arch /tmp/loop_over_bdir-bQg7EB/XSConfig-6.06-mObJa1/blib/lib to PERL5LIB for 'install' : Makefile out-of-date with respect to UNINST_1 : Cleaning current config before rebuilding Makefile... : make -f Makefile.old clean > /dev/null 2>&1 : "/home/sand/src/perl/repoperls/installed-perls/perl/v5.23.6/79cc/bin/perl" Makefile.PL "UNINST=1" : Checking if your kit is complete... : Looks good : Generating a Unix-style Makefile : Writing Makefile for Config : Writing MYMETA.yml and MYMETA.json : ==> Your Makefile has been rebuilt. <== : ==> Please rerun the make command. <== : false : Makefile:1008: recipe for target 'Makefile' failed : make: *** [Makefile] Error 1 : BULKDD/other/XSConfig-6.06.tar.gz : /usr/bin/make install UNINST=1 -- NOT OK : Failed during this command: : BULKDD/other/XSConfig-6.06.tar.gz : install NO
Download (untitled) / with headers
text/plain 322b
On Sun Jan 03 12:35:38 2016, ANDK wrote: Show quoted text
> If I let the CPAN.pm shell run, there is no "false" result from a > Makefile allowed, so while 'make' and 'make test' succeed, the final > 'make install' fails like so: >
Automated installation with CPAN.pm and UNINST=1 in CPAN.pm's config file should be fixed in release 6.07.
CC: ANDK [...] cpan.org, SREZIC [...] cpan.org
Subject: Re: [rt.cpan.org #110631] 6.05 breaks all MakeMaker-based CPAN modules
Date: Mon, 18 Jan 2016 20:29:38 +0100
To: "Daniel Dragan via RT" <bug-XSConfig [...] rt.cpan.org>
From: Andreas Koenig <andreas.koenig.7os6VVqR [...] franz.ak.mind.de>
Download (untitled) / with headers
text/plain 681b
Show quoted text
>>>>> On Sat, 16 Jan 2016 19:44:13 -0500, "Daniel Dragan via RT" <bug-XSConfig@rt.cpan.org> said:
Show quoted text
> Automated installation with CPAN.pm and UNINST=1 in CPAN.pm's config file should be fixed in release 6.07.
Cool, confirmed for three arbitrary perls I tested it with (5.23.6, 5.18.4, 5.8.9) with 6.10. Next bug: a $XSConfig::VERSION is missing. I think there should be a way to tell that XSConfig is already installed and the usual way to do that is by looking at the $VERSION of the package one is interested in. So currently I cannot easily tell whether I have XSConfig or Config installed. Let me know if you prefer to discuss this issue in a separate ticket. -- andreas
Download (untitled) / with headers
text/plain 1.7k
On Mon Jan 18 14:29:54 2016, andreas.koenig.7os6VVqR@franz.ak.mind.de wrote: Show quoted text
> >>>>> On Sat, 16 Jan 2016 19:44:13 -0500, "Daniel Dragan via RT" <bug- > >>>>> XSConfig@rt.cpan.org> said:
>
> > Automated installation with CPAN.pm and UNINST=1 in CPAN.pm's config > > file should be fixed in release 6.07.
> > Cool, confirmed for three arbitrary perls I tested it with (5.23.6, > 5.18.4, 5.8.9) with 6.10. > > Next bug: a $XSConfig::VERSION is missing. I think there should be a > way > to tell that XSConfig is already installed and the usual way to do > that > is by looking at the $VERSION of the package one is interested in. So > currently I cannot easily tell whether I have XSConfig or Config > installed. > > Let me know if you prefer to discuss this issue in a separate ticket.
The version number separates PP and XS Config. P5P's PP Config.pm uses a 5.****** style version number (ask RJBS if he will be ready to ship Perl 8 on May 20 2016 :P). Although prior to 5.17.9 ( http://perl5.git.perl.org/perl.git/commitdiff/c7a7bc4d893b49c02fd57bcedcf8c119538c6120 ) P5P Config.pm had !!!NO!!! version number. XSConfig uses a 6.** series version number that can (hopefully, see Perl 8 comment above) never conflict with P5P's PP Config.pm version number. Example below with me first showing XS Config, then deleting/uninstalling XS Config and using P5P Config. ---------------------------------------------------------------------------- C:\sources>perl -MConfig -E"say $Config::VERSION" 6.10 C:\sources>del C:\p523\site\lib\config.pm C:\p523\site\lib\Config.pm Access is denied. C:\sources>attrib -r C:\p523\site\lib\config.pm C:\sources>del C:\p523\site\lib\config.pm C:\sources>perl -MConfig -E"say $Config::VERSION" 5.023005 C:\sources> --------------------------------------------------------------------------------
Download (untitled) / with headers
text/plain 1.5k
On Mon Jan 18 15:57:20 2016, BULKDD wrote: Show quoted text
> The version number separates PP and XS Config. P5P's PP Config.pm uses > a 5.****** style version number (ask RJBS if he will be ready to ship > Perl 8 on May 20 2016 :P). Although prior to 5.17.9 ( > http://perl5.git.perl.org/perl.git/commitdiff/c7a7bc4d893b49c02fd57bcedcf8c119538c6120 > ) P5P Config.pm had !!!NO!!! version number. XSConfig uses a 6.** > series version number that can (hopefully, see Perl 8 comment above) > never conflict with P5P's PP Config.pm version number. Example below > with me first showing XS Config, then deleting/uninstalling XS Config > and using P5P Config. > > ---------------------------------------------------------------------------- > C:\sources>perl -MConfig -E"say $Config::VERSION" > 6.10 > > C:\sources>del C:\p523\site\lib\config.pm > C:\p523\site\lib\Config.pm > Access is denied. > > C:\sources>attrib -r C:\p523\site\lib\config.pm > > C:\sources>del C:\p523\site\lib\config.pm > > C:\sources>perl -MConfig -E"say $Config::VERSION" > 5.023005 > > C:\sources> > --------------------------------------------------------------------------------
I'll add, when XS Config was only shipped part of cperl, XS Config naturally used cperl's version numbers like p5p Config.pm uses p5p perl's version number. When XS Config was published on CPAN, a decision was made that it can't ever have a version number that can conflict/be mistaken for a p5p or cperl version number, hence the 6.**. XS Config in cperl now uses 6.** version numbers like it does on CPAN.
Download (untitled) / with headers
text/plain 267b
On Mon Jan 18 15:57:20 2016, BULKDD wrote: Show quoted text
> The version number separates PP and XS Config.
You can also separate XS Config from PP Config by testing if sub Config::FETCH is an XSUB or not with B:: https://github.com/perl11/p5-Config/blob/master/t/XSConfig.t#L9 jkjk
CC: ANDK [...] cpan.org, SREZIC [...] cpan.org
Subject: Re: [rt.cpan.org #110631] 6.05 breaks all MakeMaker-based CPAN modules
Date: Tue, 19 Jan 2016 08:01:38 +0100
To: "Daniel Dragan via RT" <bug-XSConfig [...] rt.cpan.org>
From: Andreas Koenig <andreas.koenig.7os6VVqR [...] franz.ak.mind.de>
Download (untitled) / with headers
text/plain 310b
Why not a separate $XSConfig::VERSION ? ATM I have no reason to care about $Config::VERSION, but I\m pretty sure that a $XSConfig::VERSION is what everybody would expect. We are not used to having different methods to identify running code for different packages. Well, at least as a first step. -- andreas


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.