Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

blead's EUMM always fails tests on Win32 Perl on Win64 #14566

Closed
p5pRT opened this issue Mar 6, 2015 · 30 comments
Closed

blead's EUMM always fails tests on Win32 Perl on Win64 #14566

p5pRT opened this issue Mar 6, 2015 · 30 comments

Comments

@p5pRT
Copy link

p5pRT commented Mar 6, 2015

Migrated from rt.perl.org#123998 (status was 'resolved')

Searchable as RT123998$

@p5pRT
Copy link
Author

p5pRT commented Mar 6, 2015

From natti2121@outlook.com

Created by @bulk88

This is a 5.22 blocker so please link it to the 5.22 blocker ticket.

The ExtUtils​::MakeMaker that is included with Perl 5.21.9 fails tests
when a 32 bit Perl is tested on Win64 (Server 2003).

This was reported and fixed a while ago in
Perl-Toolchain-Gang/ExtUtils-MakeMaker#193 and
ultimately published in v7.05_06 but blead perl is still on 7.04.

examples from "nmake test"
-------------------------------------------------------

../lib/warnings.t .................................................. ok

Test Summary Report
-------------------
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t (Wstat​:
512 Tes
ts​: 36 Failed​: 2)
  Failed tests​: 19, 25
  Non-zero exit status​: 2
../cpan/ExtUtils-MakeMaker/t/prereq_print.t (Wstat​:
768 Tes
ts​: 11 Failed​: 3)
  Failed tests​: 5-6, 9
  Non-zero exit status​: 3
../ext/IPC-Open3/t/IPC-Open3.t (Wstat​:
0 Tests
: 44 Failed​: 0)
  TODO passed​: 25
Files=2434, Tests=696169, 2436 wallclock secs (94.30 usr + 22.91 sys =
117.20 CP
U)
Result​: FAIL
NMAKE : fatal error U1077​: '.\perl.exe' : return code '0x5'
Stop.

C​:\p521\219src\win32>
C​:\p521\219src\t>perl harness
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t .. 'chcp' is not
recognized as a
n internal or external command,
operable program or batch file.
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t .. 8/36
# Failed test ' and talking like we expect'
# at t/min_perl_version.t line 142.
# 'chcp' is not recognized as an internal or external command,
# operable program or batch file.
# $PREREQ_PM = {
# 'strict' => '0'
# };
# $MIN_PERL_VERSION = '5.005';
# $BUILD_REQUIRES = {};
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t .. 23/36
# Failed test 'dump has prereqs and perl version'
# at t/min_perl_version.t line 166.
# ''chcp' is not recognized as an internal or external
command
,
# operable program or batch file.
# perl(perl)>=5.005 perl(strict)>=0
# '
# doesn't match '(?^x​:^perl\(perl\) \s* >= 5\.005 \s+ perl\(strict\)
\s* >=
\s* 0 \s*$)'
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t .. 31/36 # Looks like
you failed
2 tests of 36.
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t .. Dubious, test
returned 2 (wst
at 512, 0x200)
Failed 2/36 subtests
  (less 3 skipped subtests​: 31 okay)

Test Summary Report
-------------------
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t (Wstat​: 512 Tests​: 36
Failed​: 2)

  Failed tests​: 19, 25
  Non-zero exit status​: 2
Files=1, Tests=36, 10 wallclock secs ( 0.03 usr + 0.00 sys = 0.03 CPU)
Result​: FAIL

C​:\p521\219src\t>
C​:\p521\219src\t>perl harness ../cpan/ExtUtils-MakeMaker/t/prereq_print.t
../cpan/ExtUtils-MakeMaker/t/prereq_print.t .. 'chcp' is not recognized
as an in
ternal or external command,
operable program or batch file.
../cpan/ExtUtils-MakeMaker/t/prereq_print.t .. 1/11 Bareword found where
operato
r expected at (eval 30) line 1, near "'chcp' is"
../cpan/ExtUtils-MakeMaker/t/prereq_print.t .. 3/11 (Missing
operator before
is?)
Unquoted string "is" may clash with future reserved word at (eval 30)
line 1.

# Failed test 'prereqs dumped'
# at t/prereq_print.t line 56.
# Structures begin differing at​:
# $got = undef
# $expected = HASH(0x2529754)

# Failed test ' without error'
# at t/prereq_print.t line 57.
# got​: 'syntax error at (eval 30) line 1, near "'chcp' is "
# '
# expected​: ''

# Failed test 'prereqs dumped'
# at t/prereq_print.t line 64.
# ''chcp' is not recognized as an internal or external
command
,
# operable program or batch file.
# perl(strict)>=0
# '
# doesn't match '(?^x​:^perl\(strict\) \s* >= \s* 0 \s*$)'
# Looks like you failed 3 tests of 11.
../cpan/ExtUtils-MakeMaker/t/prereq_print.t .. Dubious, test returned 3
(wstat 7
68, 0x300)
Failed 3/11 subtests

Test Summary Report
-------------------
../cpan/ExtUtils-MakeMaker/t/prereq_print.t (Wstat​: 768 Tests​: 11 Failed​: 3)
  Failed tests​: 5-6, 9
  Non-zero exit status​: 3
Files=1, Tests=11, 2 wallclock secs ( 0.02 usr + 0.02 sys = 0.03 CPU)
Result​: FAIL

C​:\p521\219src\t>
-------------------------------------------------------

Perl Info

Flags:
    category=library
    severity=medium

Site configuration information for perl 5.21.9:

Configured by Administrator at Thu Mar  5 17:16:26 2015.

Summary of my perl5 (revision 5 version 21 subversion 9 patch blead 
2015-02-21.04:03:37 9200eb3463082f416cc7f441ae6ec39829d1e46a v5.21.9) 
configuration:
  Snapshot of: 9200eb3463082f416cc7f441ae6ec39829d1e46a
  Platform:
    osname=MSWin32, osvers=5.2, archname=MSWin32-x86-multi-thread
    uname=''
    config_args='undef'
    hint=recommended, useposix=true, d_sigaction=undef
    useithreads=define, usemultiplicity=define
    use64bitint=undef, use64bitall=undef, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cl', ccflags ='-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_SCRIPTS 
-DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS',
    optimize='-O1 -MD -Zi -DNDEBUG -GL',
    cppflags='-DWIN32'
    ccversion='15.00.30729.01', gccversion='', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234, 
doublekind=3
    d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=8, 
longdblkind=0
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='__int64', 
lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='link', ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf 
-ltcg  -libpath:"c:\perl\lib\CORE"  -machine:x86 
"/manifestdependency:type='Win32' 
name='Microsoft.Windows.Common-Controls' version='6.0.0.0' 
processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"'
    libpth=\lib
    libs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib  
comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib  
netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib  version.lib 
odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib
    perllibs=oldnames.lib kernel32.lib user32.lib gdi32.lib 
winspool.lib  comdlg32.lib advapi32.lib shell32.lib ole32.lib 
oleaut32.lib  netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib  
version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib
    libc=msvcrt.lib, so=dll, useshrplib=true, libperl=perl521.lib
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -debug 
-opt:ref,icf -ltcg  -libpath:"c:\perl\lib\CORE"  -machine:x86 
"/manifestdependency:type='Win32' 
name='Microsoft.Windows.Common-Controls' version='6.0.0.0' 
processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"'



@INC for perl 5.21.9:
    C:/p521/219src/lib
    .


Environment for perl 5.21.9:
    CYGWIN=tty
    HOME (unset)
    LANG (unset)
    LANGUAGE (unset)
    LD_LIBRARY_PATH=/usr/lib/x86:/usr/X11R6/lib
    LOGDIR (unset)
    PATH=C:\WINDOWS\system32;C:\Program Files (x86)\Microsoft Visual 
Studio 9.0\VC\BIN;C:\Program Files\Microsoft 
SDKs\Windows\v6.0A\bin;C:\Perl\bin;C:\WINDOWS;C:\Program Files 
(x86)\Microsoft Visual Studio 9.0\Common7\IDE;C:\Program Files (x86)\Git\bin
    PERL_BADLANG (unset)
    SHELL (unset)


@p5pRT
Copy link
Author

p5pRT commented Mar 6, 2015

From @bulk88

Created by @bulk88

This is a 5.22 blocker so please link it to the 5.22 blocker ticket.

The ExtUtils​::MakeMaker that is included with Perl 5.21.9 fails tests
when a 32 bit Perl is tested on Win64 (Server 2003).

This was reported and fixed a while ago in
Perl-Toolchain-Gang/ExtUtils-MakeMaker#193 and
ultimately published in v7.05_06 but blead perl is still on 7.04.

examples from "nmake test"
-------------------------------------------------------

../lib/warnings.t .................................................. ok

Test Summary Report
-------------------
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t (Wstat​:
512 Tes
ts​: 36 Failed​: 2)
  Failed tests​: 19, 25
  Non-zero exit status​: 2
../cpan/ExtUtils-MakeMaker/t/prereq_print.t (Wstat​:
768 Tes
ts​: 11 Failed​: 3)
  Failed tests​: 5-6, 9
  Non-zero exit status​: 3
../ext/IPC-Open3/t/IPC-Open3.t (Wstat​:
0 Tests
: 44 Failed​: 0)
  TODO passed​: 25
Files=2434, Tests=696169, 2436 wallclock secs (94.30 usr + 22.91 sys =
117.20 CP
U)
Result​: FAIL
NMAKE : fatal error U1077​: '.\perl.exe' : return code '0x5'
Stop.

C​:\p521\219src\win32>
C​:\p521\219src\t>perl harness
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t .. 'chcp' is not
recognized as a
n internal or external command,
operable program or batch file.
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t .. 8/36
# Failed test ' and talking like we expect'
# at t/min_perl_version.t line 142.
# 'chcp' is not recognized as an internal or external command,
# operable program or batch file.
# $PREREQ_PM = {
# 'strict' => '0'
# };
# $MIN_PERL_VERSION = '5.005';
# $BUILD_REQUIRES = {};
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t .. 23/36
# Failed test 'dump has prereqs and perl version'
# at t/min_perl_version.t line 166.
# ''chcp' is not recognized as an internal or external
command
,
# operable program or batch file.
# perl(perl)>=5.005 perl(strict)>=0
# '
# doesn't match '(?^x​:^perl\(perl\) \s* >= 5\.005 \s+ perl\(strict\)
\s* >=
\s* 0 \s*$)'
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t .. 31/36 # Looks like
you failed
2 tests of 36.
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t .. Dubious, test
returned 2 (wst
at 512, 0x200)
Failed 2/36 subtests
  (less 3 skipped subtests​: 31 okay)

Test Summary Report
-------------------
../cpan/ExtUtils-MakeMaker/t/min_perl_version.t (Wstat​: 512 Tests​: 36
Failed​: 2)

  Failed tests​: 19, 25
  Non-zero exit status​: 2
Files=1, Tests=36, 10 wallclock secs ( 0.03 usr + 0.00 sys = 0.03 CPU)
Result​: FAIL

C​:\p521\219src\t>
C​:\p521\219src\t>perl harness ../cpan/ExtUtils-MakeMaker/t/prereq_print.t
../cpan/ExtUtils-MakeMaker/t/prereq_print.t .. 'chcp' is not recognized
as an in
ternal or external command,
operable program or batch file.
../cpan/ExtUtils-MakeMaker/t/prereq_print.t .. 1/11 Bareword found where
operato
r expected at (eval 30) line 1, near "'chcp' is"
../cpan/ExtUtils-MakeMaker/t/prereq_print.t .. 3/11 (Missing
operator before
is?)
Unquoted string "is" may clash with future reserved word at (eval 30)
line 1.

# Failed test 'prereqs dumped'
# at t/prereq_print.t line 56.
# Structures begin differing at​:
# $got = undef
# $expected = HASH(0x2529754)

# Failed test ' without error'
# at t/prereq_print.t line 57.
# got​: 'syntax error at (eval 30) line 1, near "'chcp' is "
# '
# expected​: ''

# Failed test 'prereqs dumped'
# at t/prereq_print.t line 64.
# ''chcp' is not recognized as an internal or external
command
,
# operable program or batch file.
# perl(strict)>=0
# '
# doesn't match '(?^x​:^perl\(strict\) \s* >= \s* 0 \s*$)'
# Looks like you failed 3 tests of 11.
../cpan/ExtUtils-MakeMaker/t/prereq_print.t .. Dubious, test returned 3
(wstat 7
68, 0x300)
Failed 3/11 subtests

Test Summary Report
-------------------
../cpan/ExtUtils-MakeMaker/t/prereq_print.t (Wstat​: 768 Tests​: 11 Failed​: 3)
  Failed tests​: 5-6, 9
  Non-zero exit status​: 3
Files=1, Tests=11, 2 wallclock secs ( 0.02 usr + 0.02 sys = 0.03 CPU)
Result​: FAIL

C​:\p521\219src\t>
-------------------------------------------------------

Perl Info

Flags:
    category=library
    severity=medium

Site configuration information for perl 5.21.9:

Configured by Administrator at Thu Mar  5 17:16:26 2015.

Summary of my perl5 (revision 5 version 21 subversion 9 patch blead
2015-02-21.04:03:37 9200eb3463082f416cc7f441ae6ec39829d1e46a v5.21.9)
configuration:
  Snapshot of: 9200eb3463082f416cc7f441ae6ec39829d1e46a
  Platform:
    osname=MSWin32, osvers=5.2, archname=MSWin32-x86-multi-thread
    uname=''
    config_args='undef'
    hint=recommended, useposix=true, d_sigaction=undef
    useithreads=define, usemultiplicity=define
    use64bitint=undef, use64bitall=undef, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cl', ccflags ='-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_SCRIPTS
-DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS',
    optimize='-O1 -MD -Zi -DNDEBUG -GL',
    cppflags='-DWIN32'
    ccversion='15.00.30729.01', gccversion='', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234,
doublekind=3
    d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=8,
longdblkind=0
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='__int64',
lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='link', ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf
-ltcg  -libpath:"c:\perl\lib\CORE"  -machine:x86
"/manifestdependency:type='Win32'
name='Microsoft.Windows.Common-Controls' version='6.0.0.0'
processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"'
    libpth=\lib
    libs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib
comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib
netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib  version.lib
odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib
    perllibs=oldnames.lib kernel32.lib user32.lib gdi32.lib
winspool.lib  comdlg32.lib advapi32.lib shell32.lib ole32.lib
oleaut32.lib  netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib
version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib
    libc=msvcrt.lib, so=dll, useshrplib=true, libperl=perl521.lib
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -debug
-opt:ref,icf -ltcg  -libpath:"c:\perl\lib\CORE"  -machine:x86
"/manifestdependency:type='Win32'
name='Microsoft.Windows.Common-Controls' version='6.0.0.0'
processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"'



@INC for perl 5.21.9:
    C:/p521/219src/lib
    .


Environment for perl 5.21.9:
    CYGWIN=tty
    HOME (unset)
    LANG (unset)
    LANGUAGE (unset)
    LD_LIBRARY_PATH=/usr/lib/x86:/usr/X11R6/lib
    LOGDIR (unset)
    PATH=C:\WINDOWS\system32;C:\Program Files (x86)\Microsoft Visual
Studio 9.0\VC\BIN;C:\Program Files\Microsoft
SDKs\Windows\v6.0A\bin;C:\Perl\bin;C:\WINDOWS;C:\Program Files
(x86)\Microsoft Visual Studio 9.0\Common7\IDE;C:\Program Files (x86)\Git\bin
    PERL_BADLANG (unset)
    SHELL (unset)



@p5pRT
Copy link
Author

p5pRT commented Mar 6, 2015

From @jkeenan

Appears to be a duplicate of RT #123998; merging.
--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Apr 5, 2015

From @bulk88

The failure list has grown in the last month or so, previously ../cpan/ExtUtils-MakeMaker/t/prereq_print.t and ../cpan/ExtUtils-MakeMaker/t/min_perl_version.t failed, now t/porting/utils.t is also failing. IDK what exactly changed.

C​:\p521\srcpara>perl t/porting/utils.t
# Porting/bisect-example.sh isn't a Perl script
# Porting/config_H isn't a Perl script
# Porting/config.sh isn't a Perl script
# Porting/corelist-diff isn't a Perl script
# Porting/deparse-skips.txt isn't a Perl script
# Porting/epigraphs.pod isn't a Perl script
# Porting/exec-bit.txt isn't a Perl script
# Porting/git-make-p4-refs isn't a Perl script
# Porting/Glossary isn't a Perl script
# Porting/how_to_write_a_perldelta.pod isn't a Perl script
# Porting/perl5220delta.pod isn't a Perl script
# Porting/perldelta_template.pod isn't a Perl script
# Porting/pumpkin.pod isn't a Perl script
# Porting/README.pod isn't a Perl script
# Porting/README.y2038 isn't a Perl script
# Porting/release_announcement_template.txt isn't a Perl script
# Porting/release_managers_guide.pod isn't a Perl script
# Porting/release_schedule.pod isn't a Perl script
# Porting/rt_list_patches isn't a Perl script
# Porting/timecheck2.c isn't a Perl script
# Porting/timecheck.c isn't a Perl script
# Porting/todo.pod isn't a Perl script
1..81
ok 1 - installman compiles
ok 2 - installperl compiles
ok 3 - regen_perly.pl compiles
ok 4 - regen/uconfig_h.pl compiles
ok 5 - Porting/acknowledgements.pl compiles
ok 6 - Porting/add-package.pl compiles
ok 7 - Porting/bench.pl compiles
ok 8 - Porting/bisect.pl compiles
ok 9 - Porting/bisect-runner.pl compiles
ok 10 - Porting/bump-perl-version compiles
ok 11 - Porting/check83.pl compiles
ok 12 - Porting/checkansi.pl compiles
ok 13 - Porting/checkAUTHORS.pl compiles
ok 14 - Porting/checkcfgvar.pl compiles
ok 15 - Porting/check-cpan-pollution compiles
ok 16 - Porting/checkpodencoding.pl compiles
ok 17 - Porting/checkURL.pl compiles
ok 18 - Porting/checkVERSION.pl compiles
ok 19 - Porting/cherrymaint compiles
not ok 20 - Porting/cmpVERSION.pl compiles
# Failed test 20 - Porting/cmpVERSION.pl compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noper
able program or batch file.\nPorting/cmpVERSION.pl syntax OK\n"
# expected "Porting/cmpVERSION.pl syntax OK\n"
# when executing perl with '-c Porting/cmpVERSION.pl'
ok 21 - Porting/config_h.pl compiles
not ok 22 - Porting/core-cpan-diff compiles
# Failed test 22 - Porting/core-cpan-diff compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noper
able program or batch file.\nPorting/core-cpan-diff syntax OK\n"
# expected "Porting/core-cpan-diff syntax OK\n"
# when executing perl with '-c Porting/core-cpan-diff'
not ok 23 - Porting/corecpan.pl compiles
# Failed test 23 - Porting/corecpan.pl compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noper
able program or batch file.\nPorting/corecpan.pl syntax OK\n"
# expected "Porting/corecpan.pl syntax OK\n"
# when executing perl with '-c Porting/corecpan.pl'
ok 24 - Porting/corelist-perldelta.pl compiles
not ok 25 - Porting/corelist.pl compiles
# Failed test 25 - Porting/corelist.pl compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noper
able program or batch file.\nPorting/corelist.pl syntax OK\n"
# expected "Porting/corelist.pl syntax OK\n"
# when executing perl with '-c Porting/corelist.pl'
ok 26 - Porting/exercise_makedef.pl compiles
ok 27 - Porting/expand-macro.pl compiles
ok 28 - Porting/findrfuncs compiles
ok 29 # skip Porting/git-deltatool uses Git​::Wrapper, so can't test with just co
re modules
ok 30 - Porting/git-find-p4-change compiles
ok 31 - Porting/GitUtils.pm compiles
ok 32 # skip Porting/leakfinder.pl uses XS​::APItest, so can't test with just cor
e modules
ok 33 - Porting/Maintainers compiles
ok 34 - Porting/Maintainers.pl compiles
ok 35 - Porting/Maintainers.pm compiles
ok 36 - Porting/make_dot_patch.pl compiles
ok 37 - Porting/makemeta compiles
ok 38 - Porting/make_modlib_cpan.pl compiles
ok 39 - Porting/makerel compiles
ok 40 - Porting/make-rmg-checklist compiles
ok 41 - Porting/make_snapshot.pl compiles
ok 42 - Porting/manicheck compiles
ok 43 - Porting/manisort compiles
ok 44 - Porting/new-perldelta.pl compiles
ok 45 - Porting/newtests-perldelta.pl compiles
ok 46 - Porting/perlhist_calculate.pl compiles
ok 47 - Porting/pod_lib.pl compiles
ok 48 - Porting/pod_rules.pl compiles
ok 49 # skip Porting/podtidy uses Pod​::Tidy, so can't test with just core module
s
ok 50 - Porting/sort_perldiag.pl compiles
ok 51 - Porting/sync-with-cpan compiles
ok 52 - Porting/valgrindpp.pl compiles
ok 53 - cpan/podlators/blib/script/pod2man compiles
ok 54 - cpan/podlators/blib/script/pod2text compiles
ok 55 - cpan/Pod-Usage/blib/script/pod2usage compiles
ok 56 - cpan/Pod-Checker/blib/script/podchecker compiles
ok 57 - cpan/Pod-Parser/blib/script/podselect compiles
ok 58 - utils/c2ph compiles
not ok 59 - utils/cpan compiles
# Failed test 59 - utils/cpan compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noper
able program or batch file.\nutils/cpan syntax OK\n"
# expected "utils/cpan syntax OK\n"
# when executing perl with '-c utils/cpan'
ok 60 - utils/corelist compiles
ok 61 - utils/enc2xs compiles
ok 62 - utils/encguess compiles
ok 63 - utils/h2ph compiles
ok 64 - utils/h2xs compiles
not ok 65 - utils/instmodsh compiles
# Failed test 65 - utils/instmodsh compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noper
able program or batch file.\nutils/instmodsh syntax OK\n"
# expected "utils/instmodsh syntax OK\n"
# when executing perl with '-c utils/instmodsh'
ok 66 - utils/json_pp compiles
not ok 67 - utils/libnetcfg compiles
# Failed test 67 - utils/libnetcfg compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noper
able program or batch file.\nutils/libnetcfg syntax OK\n"
# expected "utils/libnetcfg syntax OK\n"
# when executing perl with '-c utils/libnetcfg'
ok 68 - utils/perlbug compiles
ok 69 - utils/perldoc compiles
not ok 70 - utils/perlivp compiles
# Failed test 70 - utils/perlivp compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noper
able program or batch file.\nutils/perlivp syntax OK\n"
# expected "utils/perlivp syntax OK\n"
# when executing perl with '-c utils/perlivp'
ok 71 - utils/piconv compiles
ok 72 - utils/pl2pm compiles
ok 73 - utils/pod2html compiles
ok 74 - utils/prove compiles
ok 75 - utils/ptar compiles
ok 76 - utils/ptardiff compiles
ok 77 - utils/ptargrep compiles
ok 78 - utils/shasum compiles
ok 79 - utils/splain compiles
ok 80 - utils/xsubpp compiles
ok 81 - utils/zipdetails compiles

C​:\p521\srcpara>

The chcp warning comes from whenever "use ExtUtils​::MakeMaker;" executes.


C​:\p521\srcpara>perl -MExtUtils​::MakeMaker -E"0"
'chcp' is not recognized as an internal or external command,
operable program or batch file.

C​:\p521\srcpara>


--
bulk88 ~ bulk88 at hotmail.com

@p5pRT
Copy link
Author

p5pRT commented Apr 10, 2015

From @tonycoz

On Thu Mar 05 18​:51​:22 2015, natti2121@​outlook.com wrote​:

This is a 5.22 blocker so please link it to the 5.22 blocker ticket.

The ExtUtils​::MakeMaker that is included with Perl 5.21.9 fails tests
when a 32 bit Perl is tested on Win64 (Server 2003).

This was reported and fixed a while ago in
Perl-Toolchain-Gang/ExtUtils-MakeMaker#193 and
ultimately published in v7.05_06 but blead perl is still on 7.04.

The tests pass for me on x64 Win 7 with a 32-bit build​:

J​:\dev\perl\git\perl\win32>nmake test TEST_FILES="porting\utils.t ..\cpan\ExtUtils-MakeMaker\t\*.t"
...
  perl.exe harness porting\utils.t ..\cpan\ExtUtils-MakeMaker\t\*.t
porting/utils.t ...................................... ok
../cpan/ExtUtils-MakeMaker/t/00compile.t ............. skipped​: No MANIFEST
../cpan/ExtUtils-MakeMaker/t/01perl_bugs.t ........... ok
...
../cpan/ExtUtils-MakeMaker/t/WriteEmptyMakefile.t .... ok
../cpan/ExtUtils-MakeMaker/t/writemakefile_args.t .... ok
../cpan/ExtUtils-MakeMaker/t/xs.t .................... ok
All tests successful.
Files=63, Tests=1078, 100 wallclock secs ( 0.28 usr + 0.03 sys = 0.31 CPU)
Result​: PASS
  cd ..\win32

J​:\dev\perl\git\perl\win32>dumpbin /headers ..\t\perl.exe | find "machine"
  14C machine (x86)
  32 bit word machine
J​:\dev\perl\git\perl\win32>

Tony

@p5pRT
Copy link
Author

p5pRT commented Apr 10, 2015

The RT System itself - Status changed from 'new' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Apr 10, 2015

From @sisyphus

-----Original Message-----
From​: Tony Cook via RT
Sent​: Friday, April 10, 2015 11​:22 AM
To​: OtherRecipients of perl Ticket #123998​:
Cc​: perl5-porters@​perl.org
Subject​: [perl #123998] blead's EUMM always fails tests on Win32 Perl on
Win64

This was reported and fixed a while ago in
Perl-Toolchain-Gang/ExtUtils-MakeMaker#193 and
ultimately published in v7.05_06 but blead perl is still on 7.04.

The tests pass for me on x64 Win 7 with a 32-bit build​:

They pass for me on x64 Win 7 (both 32-bit and 64-bit builds) - but only if
chcp.com gets found.
(It's in \Windows\system32 for me.)

If I remove ".COM" from the PATHEXT env var, then the failures occur.

I don't know why chcp.com would not be locatable on some systems. (Does it
not exist ? Is PATHEXT set to exclude it ?)

Cheers,
Rob

@p5pRT
Copy link
Author

p5pRT commented Apr 10, 2015

From @tonycoz

On Thu Apr 09 18​:22​:38 2015, tonyc wrote​:

On Thu Mar 05 18​:51​:22 2015, natti2121@​outlook.com wrote​:

This is a 5.22 blocker so please link it to the 5.22 blocker ticket.

The ExtUtils​::MakeMaker that is included with Perl 5.21.9 fails tests
when a 32 bit Perl is tested on Win64 (Server 2003).

This was reported and fixed a while ago in
Perl-Toolchain-Gang/ExtUtils-MakeMaker#193
and
ultimately published in v7.05_06 but blead perl is still on 7.04.

The tests pass for me on x64 Win 7 with a 32-bit build​:

In any case, here's a backport patch of the change in EU​::MM.

Tony

@p5pRT
Copy link
Author

p5pRT commented Apr 10, 2015

From @tonycoz

0001-perl-123998-backport-cda0edd5-from-EU-MM-upstream.patch
From 992184367a28c2733d86166a2dfef4ac62d8760e Mon Sep 17 00:00:00 2001
From: Tony Cook <tony@develop-help.com>
Date: Fri, 10 Apr 2015 15:01:48 +1000
Subject: [PATCH] [perl #123998] backport cda0edd5 from EU::MM upstream

EU::MM upstream doesn't have a stable release with this fix, and
such a release would include many other unrelated changes, late in
the perl release process.

Instead, just backport the specific fix, along with all the version
bumps needed to make it obviously *not* EU:MM 7.04.
---
 Porting/Maintainers.pl                             | 26 ++++++++++++++++-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm    |  2 +-
 .../ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm         |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm     |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm     |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm    |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm  |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm     |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm  |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm   |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm     |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm     |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm     |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm    |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm    |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm     |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm     |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm   |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm   |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm         |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm  |  2 +-
 .../lib/ExtUtils/MakeMaker/Config.pm               |  2 +-
 .../lib/ExtUtils/MakeMaker/FAQ.pod                 |  2 +-
 .../lib/ExtUtils/MakeMaker/Locale.pm               |  2 +-
 .../lib/ExtUtils/MakeMaker/Tutorial.pod            |  2 +-
 .../lib/ExtUtils/MakeMaker/version.pm              |  2 +-
 .../lib/ExtUtils/MakeMaker/version/regex.pm        |  2 +-
 .../lib/ExtUtils/MakeMaker/version/vpp.pm          |  2 +-
 .../ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm |  2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm    |  2 +-
 cpan/ExtUtils-MakeMaker/t/min_perl_version.t       |  3 +-
 cpan/ExtUtils-MakeMaker/t/prereq_print.t           |  3 +-
 t/porting/customized.dat                           | 34 ++++++++++++++++++++++
 36 files changed, 95 insertions(+), 35 deletions(-)

diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl
index 39bbd61..8220ab6 100755
--- a/Porting/Maintainers.pl
+++ b/Porting/Maintainers.pl
@@ -476,7 +476,31 @@ use File::Glob qw(:case);
             'README.packaging',
         ],
         # Applied upstream remove customisation when updating EUMM
-        'CUSTOMIZED'   => [ qw[ t/pm_to_blib.t ] ],
+        'CUSTOMIZED'   => [
+            qw[ t/pm_to_blib.t ],
+            # chcp fixes
+            qw[ t/min_perl_version.t t/prereq_print.t ],
+            # version bumps
+            qw[ lib/ExtUtils/Command/MM.pm lib/ExtUtils/Liblist.pm
+                lib/ExtUtils/Liblist/Kid.pm lib/ExtUtils/MM.pm
+                lib/ExtUtils/MM_AIX.pm lib/ExtUtils/MM_Any.pm
+                lib/ExtUtils/MM_BeOS.pm lib/ExtUtils/MM_Cygwin.pm
+                lib/ExtUtils/MM_DOS.pm lib/ExtUtils/MM_Darwin.pm
+                lib/ExtUtils/MM_MacOS.pm lib/ExtUtils/MM_NW5.pm
+                lib/ExtUtils/MM_OS2.pm lib/ExtUtils/MM_QNX.pm
+                lib/ExtUtils/MM_UWIN.pm lib/ExtUtils/MM_Unix.pm
+                lib/ExtUtils/MM_VMS.pm lib/ExtUtils/MM_VOS.pm
+                lib/ExtUtils/MM_Win32.pm lib/ExtUtils/MM_Win95.pm
+                lib/ExtUtils/MY.pm lib/ExtUtils/MakeMaker.pm
+                lib/ExtUtils/MakeMaker/Config.pm lib/ExtUtils/MakeMaker/FAQ.pod
+                lib/ExtUtils/MakeMaker/Locale.pm
+                lib/ExtUtils/MakeMaker/Tutorial.pod
+                lib/ExtUtils/MakeMaker/version.pm
+                lib/ExtUtils/MakeMaker/version/regex.pm
+                lib/ExtUtils/MakeMaker/version/vpp.pm
+                lib/ExtUtils/Mkbootstrap.pm lib/ExtUtils/Mksymlists.pm
+                lib/ExtUtils/testlib.pm ],
+        ],
     },
 
     'ExtUtils::Manifest' => {
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm
index 41f5478..203b3aa 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm
@@ -10,7 +10,7 @@ our @ISA = qw(Exporter);
 
 our @EXPORT  = qw(test_harness pod2man perllocal_install uninstall
                   warn_if_old_packlist test_s cp_nonempty);
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 my $Is_VMS = $^O eq 'VMS';
 
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm
index 85ebbf5..3df1793 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm
@@ -2,7 +2,7 @@ package ExtUtils::Liblist;
 
 use strict;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 use File::Spec;
 require ExtUtils::Liblist::Kid;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
index 41f07c2..37bcfd4 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
@@ -11,7 +11,7 @@ use 5.006;
 
 use strict;
 use warnings;
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 use ExtUtils::MakeMaker::Config;
 use Cwd 'cwd';
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm
index 0e0770c..f2aa8b4 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm
@@ -3,7 +3,7 @@ package ExtUtils::MM;
 use strict;
 use ExtUtils::MakeMaker::Config;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require ExtUtils::Liblist;
 require ExtUtils::MakeMaker;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
index 211c5af..58ea5b9 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MM_AIX;
 
 use strict;
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
index af4c9ca..4c00129 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MM_Any;
 
 use strict;
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 use Carp;
 use File::Spec;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm
index f5c4e18..35b76c0 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm
@@ -26,7 +26,7 @@ require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
 
 our @ISA = qw( ExtUtils::MM_Any ExtUtils::MM_Unix );
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 
 =item os_flavor
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm
index de98b1b..b504c47 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm
@@ -9,7 +9,7 @@ require ExtUtils::MM_Unix;
 require ExtUtils::MM_Win32;
 our @ISA = qw( ExtUtils::MM_Unix );
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 
 =head1 NAME
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm
index b227e2d..353c54f 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm
@@ -2,7 +2,7 @@ package ExtUtils::MM_DOS;
 
 use strict;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm
index 247a836..315d1b4 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm
@@ -7,7 +7,7 @@ BEGIN {
     our @ISA = qw( ExtUtils::MM_Unix );
 }
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 
 =head1 NAME
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm
index 973e2e3..bef2c00 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm
@@ -2,7 +2,7 @@ package ExtUtils::MM_MacOS;
 
 use strict;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 sub new {
     die 'MacOS Classic (MacPerl) is no longer supported by MakeMaker';
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm
index 7d283d9..4e36796 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm
@@ -22,7 +22,7 @@ use strict;
 use ExtUtils::MakeMaker::Config;
 use File::Basename;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require ExtUtils::MM_Win32;
 our @ISA = qw(ExtUtils::MM_Win32);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm
index cd40832..c9ace00 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm
@@ -5,7 +5,7 @@ use strict;
 use ExtUtils::MakeMaker qw(neatvalue);
 use File::Spec;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm
index 374180e..13e12c4 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MM_QNX;
 
 use strict;
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm
index 569bdee..4af2909 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MM_UWIN;
 
 use strict;
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
index 4ec32a3..f63145c 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
@@ -15,7 +15,7 @@ use ExtUtils::MakeMaker qw($Verbose neatvalue);
 
 # If we make $VERSION an our variable parse_version() breaks
 use vars qw($VERSION);
-$VERSION = '7.04';
+$VERSION = '7.04_01';
 $VERSION = eval $VERSION;  ## no critic [BuiltinFunctions::ProhibitStringyEval]
 
 require ExtUtils::MM_Any;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm
index ed27ced..45d06b0 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm
@@ -15,7 +15,7 @@ BEGIN {
 
 use File::Basename;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm
index 634a966..dfec6d5 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MM_VOS;
 
 use strict;
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
index 8e7da6a..fbd3f49 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
@@ -27,7 +27,7 @@ use ExtUtils::MakeMaker qw( neatvalue );
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
 our @ISA = qw( ExtUtils::MM_Any ExtUtils::MM_Unix );
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 $ENV{EMXSHELL} = 'sh'; # to run `commands`
 
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm
index 20f1590..cc37c24 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm
@@ -2,7 +2,7 @@ package ExtUtils::MM_Win95;
 
 use strict;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require ExtUtils::MM_Win32;
 our @ISA = qw(ExtUtils::MM_Win32);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm
index 54c1129..f2114f9 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm
@@ -3,7 +3,7 @@ package ExtUtils::MY;
 use strict;
 require ExtUtils::MM;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 our @ISA = qw(ExtUtils::MM);
 
 {
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
index df5acdf..fe95b27 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
@@ -24,7 +24,7 @@ my %Recognized_Att_Keys;
 our %macro_fsentity; # whether a macro is a filesystem name
 our %macro_dep; # whether a macro is a dependency
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 $VERSION = eval $VERSION;  ## no critic [BuiltinFunctions::ProhibitStringyEval]
 
 # Emulate something resembling CVS $Revision$
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm
index 13d75ea..9001cc6 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm
@@ -2,7 +2,7 @@ package ExtUtils::MakeMaker::Config;
 
 use strict;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 use Config ();
 
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod
index 11b8883..d2b4ab3 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod
@@ -1,6 +1,6 @@
 package ExtUtils::MakeMaker::FAQ;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 1;
 __END__
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm
index f6edcf2..be78eb2 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MakeMaker::Locale;
 
 use strict;
-our $VERSION = "7.04";
+our $VERSION = "7.04_01";
 
 use base 'Exporter';
 our @EXPORT_OK = qw(
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod
index dd636bd..9cbdd9b 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod
@@ -1,6 +1,6 @@
 package ExtUtils::MakeMaker::Tutorial;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 
 =head1 NAME
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm
index 8b18042..3269f44 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm
@@ -15,7 +15,7 @@ use strict;
 
 use vars qw(@ISA $VERSION $CLASS $STRICT $LAX *declare *qv);
 
-$VERSION = '7.04';
+$VERSION = '7.04_01';
 $CLASS = 'version';
 
 {
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm
index e125d38..a134a00 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm
@@ -10,7 +10,7 @@ use strict;
 
 use vars qw($VERSION $CLASS $STRICT $LAX);
 
-$VERSION = '7.04';
+$VERSION = '7.04_01';
 
 #--------------------------------------------------------------------------#
 # Version regexp components
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/vpp.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/vpp.pm
index 68376ba..34bbd01 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/vpp.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/vpp.pm
@@ -128,7 +128,7 @@ use strict;
 
 use Config;
 use vars qw($VERSION $CLASS @ISA $LAX $STRICT);
-$VERSION = '7.04';
+$VERSION = '7.04_01';
 $CLASS = 'ExtUtils::MakeMaker::version::vpp';
 
 require ExtUtils::MakeMaker::version::regex;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm
index 4177723..97d4300 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm
@@ -3,7 +3,7 @@ package ExtUtils::Mkbootstrap;
 # There's just too much Dynaloader incest here to turn on strict vars.
 use strict 'refs';
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 require Exporter;
 our @ISA = ('Exporter');
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm
index 2eb8bf4..3a9fc71 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm
@@ -10,7 +10,7 @@ use Config;
 
 our @ISA = qw(Exporter);
 our @EXPORT = qw(&Mksymlists);
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 sub Mksymlists {
     my(%spec) = @_;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm
index f48dfa4..2a5323e 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm
@@ -3,7 +3,7 @@ package ExtUtils::testlib;
 use strict;
 use warnings;
 
-our $VERSION = '7.04';
+our $VERSION = '7.04_01';
 
 use Cwd;
 use File::Spec;
diff --git a/cpan/ExtUtils-MakeMaker/t/min_perl_version.t b/cpan/ExtUtils-MakeMaker/t/min_perl_version.t
index c5d78d6..6abd4f1 100644
--- a/cpan/ExtUtils-MakeMaker/t/min_perl_version.t
+++ b/cpan/ExtUtils-MakeMaker/t/min_perl_version.t
@@ -138,6 +138,7 @@ END
 note "PREREQ_PRINT output"; {
     my $prereq_out = run(qq{$perl Makefile.PL "PREREQ_PRINT=1"});
     is( $?, 0,            'PREREQ_PRINT exiting normally' );
+    $prereq_out =~ s/.*(\$PREREQ_PM\s*=)/$1/s; # strip off errors eg from chcp
     my $prereq_out_sane = $prereq_out =~ /^\s*\$PREREQ_PM\s*=/;
     ok( $prereq_out_sane, '  and talking like we expect' ) ||
         diag($prereq_out);
@@ -164,7 +165,7 @@ note "PRINT_PREREQ output"; {
     is( $?, 0,                      'PRINT_PREREQ exiting normally' );
     ok( $prereq_out !~ /^warning/i, '  and not complaining loudly' );
     like( $prereq_out,
-        qr/^perl\(perl\) \s* >= 5\.005 \s+ perl\(strict\) \s* >= \s* 0 \s*$/x,
+        qr/^perl\(perl\) \s* >= 5\.005 \s+ perl\(strict\) \s* >= \s* 0 \s*$/mx,
                                     'dump has prereqs and perl version' );
 }
 
diff --git a/cpan/ExtUtils-MakeMaker/t/prereq_print.t b/cpan/ExtUtils-MakeMaker/t/prereq_print.t
index b6e12ef..b70d735 100644
--- a/cpan/ExtUtils-MakeMaker/t/prereq_print.t
+++ b/cpan/ExtUtils-MakeMaker/t/prereq_print.t
@@ -48,6 +48,7 @@ unlink $Makefile;
 my $prereq_out = run(qq{$Perl Makefile.PL "PREREQ_PRINT=1"});
 ok( !-r $Makefile, "PREREQ_PRINT produces no $Makefile" );
 is( $?, 0,         '  exited normally' );
+$prereq_out =~ s/^'chcp' is not recognized.*batch file\.//s; # remove errors
 {
     package _Prereq::Print;
     no strict;
@@ -61,7 +62,7 @@ is( $?, 0,         '  exited normally' );
 $prereq_out = run(qq{$Perl Makefile.PL "PRINT_PREREQ=1"});
 ok( !-r $Makefile, "PRINT_PREREQ produces no $Makefile" );
 is( $?, 0,         '  exited normally' );
-::like( $prereq_out, qr/^perl\(strict\) \s* >= \s* 0 \s*$/x,
+::like( $prereq_out, qr/^perl\(strict\) \s* >= \s* 0 \s*$/mx,
                                                       'prereqs dumped' );
 
 
diff --git a/t/porting/customized.dat b/t/porting/customized.dat
index fa37838..d68cacd 100644
--- a/t/porting/customized.dat
+++ b/t/porting/customized.dat
@@ -1,4 +1,38 @@
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm 7f4dfd0fe884bd42412bcf04ca80ef97b39c1d54
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm bef099988b15fb0b2a1f5ac48c01af1f7f36d329
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm 8168e18f0e3ce3ece4bb7e7c72d57ec07c67c402
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm 7115e97a53559cb3ec061dd6f7f344e522724c4a
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm f8db8d4245bf0684b8210c811f50d7cfb1a27d78
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod 757bffb47857521311f8f3bde43ebe165f8d5191
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm eb7f7c39720aea85f6443109f8d356890247d108
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod b01a546e52a908ce4ccd0b1a36fe81de52ab0691
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm 91a7b2a36210cebd57ff89d202af3d2b7bce430c
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm d4e7d722b4544be28da838912a7cc714528bc05f
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/vpp.pm 7297903505ab551731692ec79cdc0f5396e12479
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm 58872d66a72515f7d5be02417dfd2b28005fd61a
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm ab80029ab16d38d4f2e41dc88d2ceb9f3790e477
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm 453e0abbc4bb38db4c0820ad5c4846f313b66291
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm c1b1babda8f43ae7a2caba1cb4f70f92af5a0e34
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm 6f90d94ad3e7aa0045a3b1a10a1bb18391f89f57
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm cab2b3ce08b71a4ce89aa630f236eb08b852439d
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm 61fced0faf518bf87c265fcb51ed330ba354623f
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm ae0ef51a7b6dd0b05aa61c779df7167dda5f5119
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm 9bff0fc8801d93578a5ac35d39f06cdc0e2af1ef
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm 0544301f7121ff02fd3a11b73ca2fab22e1176d4
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm 433135eecb85b4b1d90d3027432f329436c78447
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm 1fbb5605bfb47feee4083feba8aa85e659628f70
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm 5b66d1f485a6034d96fc24ba1665b1bad9e447f1
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm 8cef99a9bd370ecfd07ddb0efbdcbb4101255e45
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm 939572fde3d59ba77c2e677fe2df2bed4bed5898
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm 09c2049bfd25b735e2a5bcf56a6cff7b4827f9c8
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm d65d63f8217a55c36f62e249814988974f593c79
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm c0ae2a92a7a9f71fc5f608b4192c6255510b7ae4
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm 12df38eacceeed73cab94c423236bfaed0fbbfec
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm 22fe9596a0237252f45399a36abc83b7813bc328
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm 7fbc42ca2ebc6c677b79ae5fd5647243cf069463
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/t/min_perl_version.t c36ce0442830b5b07702a988d415e9cc67a4e973
 ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/t/pm_to_blib.t 71ebcee355691ce374fcad251b12d8b2412462b3
+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/t/prereq_print.t 73e12a094c286921e2abf688eb49d0f4aad3e963
 PerlIO::via::QuotedPrint cpan/PerlIO-via-QuotedPrint/t/QuotedPrint.t ca39f0146e89de02c746e199c45dcb3e5edad691
 Text::ParseWords cpan/Text-ParseWords/t/ParseWords.t 9bae51c9b944cd5c0bbabe9d397e573976a2be8e
 Win32API::File cpan/Win32API-File/buffers.h 02d230ac9ac7091365128161a0ed671898baefae
-- 
1.9.5.msysgit.0

@p5pRT
Copy link
Author

p5pRT commented Apr 10, 2015

From @bulk88

On Thu Apr 09 19​:08​:04 2015, sisyphus wrote​:

They pass for me on x64 Win 7 (both 32-bit and 64-bit builds) - but only if
chcp.com gets found.
(It's in \Windows\system32 for me.)

If I remove ".COM" from the PATHEXT env var, then the failures occur.

I don't know why chcp.com would not be locatable on some systems. (Does it
not exist ? Is PATHEXT set to exclude it ?)

Cheers,
Rob

Server 2003 x64 running/compiling 32 bit perl. If you read the GH ticket Perl-Toolchain-Gang/ExtUtils-MakeMaker#193 you will see many other software projects have this problem and document it.

--
bulk88 ~ bulk88 at hotmail.com

@p5pRT
Copy link
Author

p5pRT commented Apr 14, 2015

From @bulk88

On Thu Apr 09 22​:03​:03 2015, tonyc wrote​:

In any case, here's a backport patch of the change in EU​::MM.

Tony

The EUMM .t'es are passing with your patch but t/porting/utils.t is still failing. Maybe EUMM should be reverted to 7.02?


# Porting/bisect-example.sh isn't a Perl script
# Porting/config_H isn't a Perl script
# Porting/config.sh isn't a Perl script
# Porting/corelist-diff isn't a Perl script
# Porting/deparse-skips.txt isn't a Perl script
# Porting/epigraphs.pod isn't a Perl script
# Porting/exec-bit.txt isn't a Perl script
# Porting/git-make-p4-refs isn't a Perl script
# Porting/Glossary isn't a Perl script
# Porting/how_to_write_a_perldelta.pod isn't a Perl script
# Porting/perl5220delta.pod isn't a Perl script
# Porting/perldelta_template.pod isn't a Perl script
# Porting/pumpkin.pod isn't a Perl script
# Porting/README.pod isn't a Perl script
# Porting/README.y2038 isn't a Perl script
# Porting/release_announcement_template.txt isn't a Perl script
# Porting/release_managers_guide.pod isn't a Perl script
# Porting/release_schedule.pod isn't a Perl script
# Porting/rt_list_patches isn't a Perl script
# Porting/timecheck2.c isn't a Perl script
# Porting/timecheck.c isn't a Perl script
# Porting/todo.pod isn't a Perl script
1..81
ok 1 - installman compiles
ok 2 - installperl compiles
ok 3 - regen_perly.pl compiles
ok 4 - regen/uconfig_h.pl compiles
ok 5 - Porting/acknowledgements.pl compiles
ok 6 - Porting/add-package.pl compiles
ok 7 - Porting/bench.pl compiles
ok 8 - Porting/bisect.pl compiles
ok 9 - Porting/bisect-runner.pl compiles
ok 10 - Porting/bump-perl-version compiles
ok 11 - Porting/check83.pl compiles
ok 12 - Porting/checkansi.pl compiles
ok 13 - Porting/checkAUTHORS.pl compiles
ok 14 - Porting/checkcfgvar.pl compiles
ok 15 - Porting/check-cpan-pollution compiles
ok 16 - Porting/checkpodencoding.pl compiles
ok 17 - Porting/checkURL.pl compiles
ok 18 - Porting/checkVERSION.pl compiles
ok 19 - Porting/cherrymaint compiles
# Failed test 20 - Porting/cmpVERSION.pl compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noperable program or batch file.\nPorting/cmpVERSION.pl syntax OK\n"
# expected "Porting/cmpVERSION.pl syntax OK\n"
# when executing perl with '-c Porting/cmpVERSION.pl'
not ok 20 - Porting/cmpVERSION.pl compiles
ok 21 - Porting/config_h.pl compiles
# Failed test 22 - Porting/core-cpan-diff compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noperable program or batch file.\nPorting/core-cpan-diff syntax OK\n"
# expected "Porting/core-cpan-diff syntax OK\n"
# when executing perl with '-c Porting/core-cpan-diff'
not ok 22 - Porting/core-cpan-diff compiles
# Failed test 23 - Porting/corecpan.pl compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noperable program or batch file.\nPorting/corecpan.pl syntax OK\n"
# expected "Porting/corecpan.pl syntax OK\n"
# when executing perl with '-c Porting/corecpan.pl'
not ok 23 - Porting/corecpan.pl compiles
ok 24 - Porting/corelist-perldelta.pl compiles
# Failed test 25 - Porting/corelist.pl compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noperable program or batch file.\nPorting/corelist.pl syntax OK\n"
# expected "Porting/corelist.pl syntax OK\n"
# when executing perl with '-c Porting/corelist.pl'
not ok 25 - Porting/corelist.pl compiles
ok 26 - Porting/exercise_makedef.pl compiles
ok 27 - Porting/expand-macro.pl compiles
ok 28 - Porting/findrfuncs compiles
ok 29 # skip Porting/git-deltatool uses Git​::Wrapper, so can't test with just core modules
ok 30 - Porting/git-find-p4-change compiles
ok 31 - Porting/GitUtils.pm compiles
ok 32 # skip Porting/leakfinder.pl uses XS​::APItest, so can't test with just core modules
ok 33 - Porting/Maintainers compiles
ok 34 - Porting/Maintainers.pl compiles
ok 35 - Porting/Maintainers.pm compiles
ok 36 - Porting/make_dot_patch.pl compiles
ok 37 - Porting/makemeta compiles
ok 38 - Porting/make_modlib_cpan.pl compiles
ok 39 - Porting/makerel compiles
ok 40 - Porting/make-rmg-checklist compiles
ok 41 - Porting/make_snapshot.pl compiles
ok 42 - Porting/manicheck compiles
ok 43 - Porting/manisort compiles
ok 44 - Porting/new-perldelta.pl compiles
ok 45 - Porting/newtests-perldelta.pl compiles
ok 46 - Porting/perlhist_calculate.pl compiles
ok 47 - Porting/pod_lib.pl compiles
ok 48 - Porting/pod_rules.pl compiles
ok 49 # skip Porting/podtidy uses Pod​::Tidy, so can't test with just core modules
ok 50 - Porting/sort_perldiag.pl compiles
ok 51 - Porting/sync-with-cpan compiles
ok 52 - Porting/valgrindpp.pl compiles
ok 53 - cpan/podlators/blib/script/pod2man compiles
ok 54 - cpan/podlators/blib/script/pod2text compiles
ok 55 - cpan/Pod-Usage/blib/script/pod2usage compiles
ok 56 - cpan/Pod-Checker/blib/script/podchecker compiles
ok 57 - cpan/Pod-Parser/blib/script/podselect compiles
ok 58 - utils/c2ph compiles
ok 59 - utils/cpan compiles
ok 60 - utils/corelist compiles
ok 61 - utils/enc2xs compiles
ok 62 - utils/encguess compiles
ok 63 - utils/h2ph compiles
ok 64 - utils/h2xs compiles
# Failed test 65 - utils/instmodsh compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noperable program or batch file.\nutils/instmodsh syntax OK\n"
# expected "utils/instmodsh syntax OK\n"
# when executing perl with '-c utils/instmodsh'
not ok 65 - utils/instmodsh compiles
ok 66 - utils/json_pp compiles
# Failed test 67 - utils/libnetcfg compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noperable program or batch file.\nutils/libnetcfg syntax OK\n"
# expected "utils/libnetcfg syntax OK\n"
# when executing perl with '-c utils/libnetcfg'
not ok 67 - utils/libnetcfg compiles
ok 68 - utils/perlbug compiles
ok 69 - utils/perldoc compiles
# Failed test 70 - utils/perlivp compiles at t/porting/utils.t line 85
# got "\'chcp\' is not recognized as an internal or external command,\noperable program or batch file.\nutils/perlivp syntax OK\n"
# expected "utils/perlivp syntax OK\n"
# when executing perl with '-c utils/perlivp'
not ok 70 - utils/perlivp compiles
ok 71 - utils/piconv compiles
ok 72 - utils/pl2pm compiles
ok 73 - utils/pod2html compiles
ok 74 - utils/prove compiles
ok 75 - utils/ptar compiles
ok 76 - utils/ptardiff compiles
ok 77 - utils/ptargrep compiles
ok 78 - utils/shasum compiles
ok 79 - utils/splain compiles
ok 80 - utils/xsubpp compiles
ok 81 - utils/zipdetails compiles


The reason for that is


C​:\p521\srcpara>perl -Ilib -MExtUtils​::MakeMaker -e"0"
'chcp' is not recognized as an internal or external command,
operable program or batch file.

C​:\p521\srcpara>


So should a new ticket be filed on GH or should EUMM be reverted in core or what?

--
bulk88 ~ bulk88 at hotmail.com

@p5pRT
Copy link
Author

p5pRT commented Apr 27, 2015

From @rjbs

Karen points out Perl-Toolchain-Gang/ExtUtils-MakeMaker#193 which indicates that cda0edd in that repo should be a fix. Hopefully this means we have a way forward​: we apply that locally, or we get an EUMM release cut with that fix (and as little as possible else.)

@p5pRT
Copy link
Author

p5pRT commented Apr 27, 2015

From @bulk88

On Mon Apr 27 15​:30​:45 2015, rjbs wrote​:

Karen points out https://github.com/Perl-Toolchain-Gang/ExtUtils-
MakeMaker/issues/193 which indicates that cda0edd in that repo should
be a fix. Hopefully this means we have a way forward​: we apply that
locally, or we get an EUMM release cut with that fix (and as little as
possible else.)

commit https​://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/commit/cda0edd5067a2348f183d9100cc5b0fa92336937 became p5p patch https://rt-archive.perl.org/perl5/Ticket/Attachment/1339705/716378/0001-perl-123998-backport-cda0edd5-from-EU-MM-upstream.patch but that p5p patch is from a EUMM patch that stopped EUMM's tests from failing, it did not fix the underlying bug of that failure message from win32 shell being printed to STDERR every time you "require ExtUtils​::MakeMaker;". That underlying bug means p5p test t/porting/utils.t fails.

In any case,


C​:\p521\srcpara>perl -Ilib -MExtUtils​::MakeMaker -e"0"
'chcp' is not recognized as an internal or external command,
operable program or batch file.

C​:\p521\srcpara>


this is clearly a bug.

Here is some manual bisecting I did to narrow the problem.

###################################################################
C​:\sources\eumm>git log -n1
commit 75026401caf26d92966d0dc6175d047c15c35079
Author​: Chris 'BinGOs' Williams <chris@​bingosnet.co.uk>
Date​: Tue Jan 20 10​:01​:06 2015 +0000

  Release engineering for v7.05_08

C​:\sources\eumm>C​:\p521\srcpara\perl -Ilib -IC​:\p521\srcpara\lib -MExtUtils​::Ma
keMaker -e"0"

C​:\sources\eumm>C​:\p521\srcpara\miniperl -Ilib -IC​:\p521\srcpara\lib -MExtUtils
:​:MakeMaker -e"0"
###################################################################
C​:\sources\eumm>git log -n1
commit 1e2f087153c9b100492d2efd4d5e613e07ba0483
Author​: Ed J <mohawk2@​users.noreply.github.com>
Date​: Tue Jan 13 04​:52​:27 2015 +0000

  Update bundled Encode​::Locale to CPAN 1.04

C​:\sources\eumm>C​:\p521\srcpara\perl -Ilib -IC​:\p521\srcpara\lib -MExtUtils​::Ma
keMaker -e"0"

C​:\sources\eumm>C​:\p521\srcpara\miniperl -Ilib -IC​:\p521\srcpara\lib -MExtUtils
:​:MakeMaker -e"0"
###################################################################
C​:\sources\eumm>git log -n1
commit 5903f67eff5e2e937d33f194d883e80f0f980768
Author​: Ed J <mohawk2@​users.noreply.github.com>
Date​: Mon Jan 19 13​:10​:08 2015 +0000

  quote_literal PASTHRU_* as can have "" in

C​:\sources\eumm>C​:\p521\srcpara\perl -Ilib -IC​:\p521\srcpara\lib -MExtUtils​::Ma
keMaker -e"0"
'chcp' is not recognized as an internal or external command,
operable program or batch file.

C​:\sources\eumm>C​:\p521\srcpara\miniperl -Ilib -IC​:\p521\srcpara\lib -MExtUtils
:​:MakeMaker -e"0"
###################################################################
C​:\sources\eumm>git log -n1
commit 170beb607a6be7e09651f86e1e75eb05817f2ea5
Author​: Ed J <mohawk2@​users.noreply.github.com>
Date​: Sat Jan 17 23​:57​:04 2015 +0000

  Back-compat linkext -> subdirs_(perl-linktype) if LINKTYPE= and DIR

C​:\sources\eumm>C​:\p521\srcpara\perl -Ilib -IC​:\p521\srcpara\lib -MExtUtils​::Ma
keMaker -e"0"
'chcp' is not recognized as an internal or external command,
operable program or batch file.

C​:\sources\eumm>C​:\p521\srcpara\miniperl -Ilib -IC​:\p521\srcpara\lib -MExtUtils
:​:MakeMaker -e"0"
###################################################################
C​:\sources\eumm>git log -n1
commit c245720969788e69c1ae2db0fd1a27a548d0d535
Author​: Chris 'BinGOs' Williams <chris@​bingosnet.co.uk>
Date​: Tue Dec 2 12​:44​:48 2014 +0000

  Release engineering for v7.04

C​:\sources\eumm>C​:\p521\srcpara\perl -Ilib -IC​:\p521\srcpara\lib -MExtUtils​::Ma
keMaker -e"0"
'chcp' is not recognized as an internal or external command,
operable program or batch file.

C​:\sources\eumm>C​:\p521\srcpara\miniperl -Ilib -IC​:\p521\srcpara\lib -MExtUtils
:​:MakeMaker -e"0"
###################################################################
C​:\sources\eumm>git log -n1
commit 8008051193b5fec172f135ea196270511f3cf0b4
Author​: Chris 'BinGOs' Williams <chris@​bingosnet.co.uk>
Date​: Sat Nov 8 07​:15​:17 2014 +0000

  Release engineering for v7.02

C​:\sources\eumm>C​:\p521\srcpara\perl -Ilib -IC​:\p521\srcpara\lib -MExtUtils​::Ma
keMaker -e"0"
'chcp' is not recognized as an internal or external command,
operable program or batch file.

C​:\sources\eumm>C​:\p521\srcpara\miniperl -Ilib -IC​:\p521\srcpara\lib -MExtUtils
:​:MakeMaker -e"0"
###################################################################
C​:\sources\eumm>git log -n1
commit 09e9aeb953b621018b4793db74e30b120805fe99
Author​: Chris 'BinGOs' Williams <chris@​bingosnet.co.uk>
Date​: Wed Oct 22 20​:32​:27 2014 +0100

  Release engineering for v7.00

C​:\sources\eumm>C​:\p521\srcpara\perl -Ilib -IC​:\p521\srcpara\lib -MExtUtils​::Ma
keMaker -e"0"
'chcp' is not recognized as an internal or external command,
operable program or batch file.

C​:\sources\eumm>C​:\p521\srcpara\miniperl -Ilib -IC​:\p521\srcpara\lib -MExtUtils
:​:MakeMaker -e"0"
###################################################################
C​:\sources\eumm>git log -n1
commit 4920a97096ec78bad97588de345b433c73c7bcb6
Author​: Chris 'BinGOs' Williams <chris@​bingosnet.co.uk>
Date​: Thu Sep 11 20​:04​:29 2014 +0100

  Moved bundled Encode​::Locale to EUMM​::Locale instead

C​:\sources\eumm>C​:\p521\srcpara\perl -Ilib -IC​:\p521\srcpara\lib -MExtUtils​::Ma
keMaker -e"0"
'chcp' is not recognized as an internal or external command,
operable program or batch file.

C​:\sources\eumm>C​:\p521\srcpara\miniperl -Ilib -IC​:\p521\srcpara\lib -MExtUtils
:​:MakeMaker -e"0"
###################################################################
C​:\sources\eumm>git log -n1
commit 328fffdd7d62074aea41241a315b63cbf0c28196
Author​: Chris 'BinGOs' Williams <chris@​bingosnet.co.uk>
Date​: Thu Sep 11 15​:32​:28 2014 +0100

  Release engineering for v6.99_12

C​:\sources\eumm>C​:\p521\srcpara\perl -Ilib -IC​:\p521\srcpara\lib -MExtUtils​::Ma
keMaker -e"0"

C​:\sources\eumm>C​:\p521\srcpara\miniperl -Ilib -IC​:\p521\srcpara\lib -MExtUtils
:​:MakeMaker -e"0"

C​:\sources\eumm>
###################################################################
C​:\sources\eumm>git log -n1
commit c8c9b9d6588bf52b2db85879c6dcc420353cae4b
Author​: Chris 'BinGOs' Williams <chris@​bingosnet.co.uk>
Date​: Tue Apr 29 21​:37​:00 2014 +0100

  Release engineering for v6.98

C​:\sources\eumm>C​:\p521\srcpara\perl -Ilib -IC​:\p521\srcpara\lib -MExtUtils​::Ma
keMaker -e"0"

C​:\sources\eumm>C​:\p521\srcpara\miniperl -Ilib -IC​:\p521\srcpara\lib -MExtUtils
:​:MakeMaker -e"0"

C​:\sources\eumm>
###################################################################

Summary, last stable (I guess, if EUMM stables are even, odds are alpha) before the bug was 6.98. Last shipped release before the bug was 6.99_12. The commit directly after commit "Release engineering for v6.99_12" created the bug, name of the bug introducing commit is "Moved bundled Encode​::Locale to EUMM​::Locale instead". The bug lasts until commit "Update bundled Encode​::Locale to CPAN 1.04", first shipped release with the fix is 7.05_08.

--
bulk88 ~ bulk88 at hotmail.com

@p5pRT
Copy link
Author

p5pRT commented May 6, 2015

From @iabyn

On Mon, Apr 27, 2015 at 04​:39​:43PM -0700, bulk88 via RT wrote​:

On Mon Apr 27 15​:30​:45 2015, rjbs wrote​:

Karen points out https://github.com/Perl-Toolchain-Gang/ExtUtils-
MakeMaker/issues/193 which indicates that cda0edd in that repo should
be a fix. Hopefully this means we have a way forward​: we apply that
locally, or we get an EUMM release cut with that fix (and as little as
possible else.)

commit
Perl-Toolchain-Gang/ExtUtils-MakeMaker@cda0edd
became p5p patch
https://rt-archive.perl.org/perl5/Ticket/Attachment/1339705/716378/0001-perl-123998-backport-cda0edd5-from-EU-MM-upstream.patch
but that p5p patch is from a EUMM patch that stopped EUMM's tests from
failing, it did not fix the underlying bug of that failure message from
win32 shell being printed to STDERR every time you "require
ExtUtils​::MakeMaker;". That underlying bug means p5p test
t/porting/utils.t fails.
[snip]
Here is some manual bisecting I did to narrow the problem.
[snip]
Summary, last stable (I guess, if EUMM stables are even, odds are alpha)
before the bug was 6.98. Last shipped release before the bug was
6.99_12. The commit directly after commit "Release engineering for
v6.99_12" created the bug, name of the bug introducing commit is "Moved
bundled Encode​::Locale to EUMM​::Locale instead". The bug lasts until
commit "Update bundled Encode​::Locale to CPAN 1.04", first shipped
release with the fix is 7.05_08.

If I am reading the code correctly, the "fix" in 7.05_08 is that
code page determination using chcp is deferred until until it is needed
rather than unconditionally doing at startup time; so

  perl -MExtUtils​::MakeMaker -e "0"

no longer pollutes STDERR, but something that needs to know the code page
still will.

Anyway, as a quick fix for 5.22, could we simply stop MakeMaker polluting
STDERR; e.g. in Locale.pm change

  qx(chcp)

to
  qx("chcp 2<&1")

or whatever similar win32-specific thing works?

--
That he said that that that that is is is debatable, is debatable.

@p5pRT
Copy link
Author

p5pRT commented May 8, 2015

From @bulk88

On Wed May 06 06​:24​:44 2015, davem wrote​:

If I am reading the code correctly, the "fix" in 7.05_08 is that
code page determination using chcp is deferred until until it is
needed
rather than unconditionally doing at startup time; so

perl -MExtUtils​::MakeMaker -e "0"

no longer pollutes STDERR, but something that needs to know the code
page
still will.

Anyway, as a quick fix for 5.22, could we simply stop MakeMaker
polluting
STDERR; e.g. in Locale.pm change

qx(chcp)

to
qx("chcp 2<&1")

or whatever similar win32-specific thing works?

I did that in the attached patch. t/porting/utils.t also needs git in %PATH% to fail on win32, since if there is no working git, the whole file is skipped, and I dont always keep git in my %PATH% on win32.

I dont personally like the idea of sending the error to null and I dont like the patch I wrote, since whatever info ("active code page") is collected will be wrong with no warning for EUMM users. IDK enough to say if having the wrong infp makes a difference in the end or not.

--
bulk88 ~ bulk88 at hotmail.com

@p5pRT
Copy link
Author

p5pRT commented May 8, 2015

From @bulk88

0001-fix-123998-suppress-stderr-noise-in-EUMM-if-Win32-ch.patch
From 5d370191488b4e919956a033fa450813df23ee36 Mon Sep 17 00:00:00 2001
From: Daniel Dragan <bulk88@hotmail.com>
Date: Fri, 8 May 2015 19:51:47 -0400
Subject: [PATCH] fix #123998 suppress stderr noise in EUMM if Win32 chcp tool
 is not found

---
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm
index f6edcf2..794f39e 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm
@@ -47,7 +47,9 @@ sub _init {
 		$ENCODING_CONSOLE_OUT = "cp$cp" if $cp;
 	    };
 	    # Invoking the 'chcp' program might also work
-	    if (!$ENCODING_CONSOLE_IN && (qx(chcp) || '') =~ /^Active code page: (\d+)/) {
+	    # 32bit chcp (which is used by 32 bit perl) is not available on
+	    # Server 2003 x64, so suppress STDERR in case chcp isn't found
+	    if (!$ENCODING_CONSOLE_IN && (qx(chcp 2>NUL) || '') =~ /^Active code page: (\d+)/) {
 		$ENCODING_CONSOLE_IN = "cp$1";
 	    }
 	}
-- 
1.8.0.msysgit.0

@p5pRT
Copy link
Author

p5pRT commented May 11, 2015

From @tonycoz

On Fri May 08 16​:57​:16 2015, bulk88 wrote​:

I did that in the attached patch. t/porting/utils.t also needs git in
%PATH% to fail on win32, since if there is no working git, the whole
file is skipped, and I dont always keep git in my %PATH% on win32.

I dont personally like the idea of sending the error to null and I
dont like the patch I wrote, since whatever info ("active code page")
is collected will be wrong with no warning for EUMM users. IDK enough
to say if having the wrong infp makes a difference in the end or not.

With your patch it will fallback to the default, cp1252.

For blead's purposes, sufficiently recent releases of Win32.pm include
GetACP(), GetConsoleCP() and GetConsoleOutputCP() which means blead could
skip calling chcp completely.

Tony

@p5pRT
Copy link
Author

p5pRT commented May 12, 2015

From @iabyn

On Sun, May 10, 2015 at 05​:21​:09PM -0700, Tony Cook via RT wrote​:

On Fri May 08 16​:57​:16 2015, bulk88 wrote​:

I did that in the attached patch. t/porting/utils.t also needs git in
%PATH% to fail on win32, since if there is no working git, the whole
file is skipped, and I dont always keep git in my %PATH% on win32.

I dont personally like the idea of sending the error to null and I
dont like the patch I wrote, since whatever info ("active code page")
is collected will be wrong with no warning for EUMM users. IDK enough
to say if having the wrong infp makes a difference in the end or not.

With your patch it will fallback to the default, cp1252.

For blead's purposes, sufficiently recent releases of Win32.pm include
GetACP(), GetConsoleCP() and GetConsoleOutputCP() which means blead could
skip calling chcp completely.

I've pushed Daniel's patch for smoking as
  smoke-me/davem/EUMM_Locale.
(with a more detailed commit message) This seems about the least invasive
change at this late stage.
I've bumped ExtUtils​::MakeMaker​::Locale's version from 7.04 7.04_01.
Is that the right thing to do? Are there any other files that need
touching to indicate this customisation? I've rather lost touch with the
state of play on this sort of thing. I guess Porting/Maintainers.pl
CUSTOMIZED field?? And t/porting/customized.dat???

--
More than any other time in history, mankind faces a crossroads. One path
leads to despair and utter hopelessness. The other, to total extinction.
Let us pray we have the wisdom to choose correctly.
  -- Woody Allen

@p5pRT
Copy link
Author

p5pRT commented May 12, 2015

From @steve-m-hay

On 12 May 2015 at 17​:41, Dave Mitchell <davem@​iabyn.com> wrote​:

On Sun, May 10, 2015 at 05​:21​:09PM -0700, Tony Cook via RT wrote​:

On Fri May 08 16​:57​:16 2015, bulk88 wrote​:

I did that in the attached patch. t/porting/utils.t also needs git in
%PATH% to fail on win32, since if there is no working git, the whole
file is skipped, and I dont always keep git in my %PATH% on win32.

I dont personally like the idea of sending the error to null and I
dont like the patch I wrote, since whatever info ("active code page")
is collected will be wrong with no warning for EUMM users. IDK enough
to say if having the wrong infp makes a difference in the end or not.

With your patch it will fallback to the default, cp1252.

For blead's purposes, sufficiently recent releases of Win32.pm include
GetACP(), GetConsoleCP() and GetConsoleOutputCP() which means blead could
skip calling chcp completely.

I've pushed Daniel's patch for smoking as
smoke-me/davem/EUMM_Locale.
(with a more detailed commit message) This seems about the least invasive
change at this late stage.
I've bumped ExtUtils​::MakeMaker​::Locale's version from 7.04 7.04_01.
Is that the right thing to do? Are there any other files that need
touching to indicate this customisation? I've rather lost touch with the
state of play on this sort of thing. I guess Porting/Maintainers.pl
CUSTOMIZED field?? And t/porting/customized.dat???

Yes, update CUSTOMIZED and then run t/porting/customized.t --regen to
update the customized.dat file.

@p5pRT
Copy link
Author

p5pRT commented May 12, 2015

From @bulk88

On Tue May 12 09​:41​:58 2015, davem wrote​:

I've pushed Daniel's patch for smoking as
smoke-me/davem/EUMM_Locale.
(with a more detailed commit message) This seems about the least invasive
change at this late stage.
I've bumped ExtUtils​::MakeMaker​::Locale's version from 7.04 7.04_01.
Is that the right thing to do? Are there any other files that need
touching to indicate this customisation? I've rather lost touch with the
state of play on this sort of thing. I guess Porting/Maintainers.pl
CUSTOMIZED field?? And t/porting/customized.dat???

The branch passes a harness run but there is some more chcp mop up to do. A patch for EUMM_Locale branch is attached. It probably should be squashed.

On the EUMM_Locale branch this was happening.


C​:\p521\srcpara\t>perl harness ../cpan/ExtUtils-MakeMaker/t/basic.t
../cpan/ExtUtils-MakeMaker/t/basic.t .. 'chcp' is not recognized as an internal
or external command,
operable program or batch file.
../cpan/ExtUtils-MakeMaker/t/basic.t .. ok
All tests successful.
Files=1, Tests=171, 57 wallclock secs ( 0.03 usr + 0.02 sys = 0.05 CPU)
Result​: PASS

C​:\p521\srcpara\t>perl harness -v ../cpan/ExtUtils-MakeMaker/t/basic.t
../cpan/ExtUtils-MakeMaker/t/basic.t ..
1..171
'chcp' is not recognized as an internal or external command,
operable program or batch file.
ok 1 - setup
ok 2 - chdir'd to Big-Dummy
ok 3 - Makefile.PL exited with zero
ok 4 - Makefile.PL output looks right
ok 5 - Makefile.PL run in package main
ok 6 - Makefile exists
ok 7 - been touched
ok 8 - make manifest created a MANIFEST
ok 9 - not empty
ok 10 - exited normally
ok 11 - .ppd file generated
ok 12 - <SOFTPKG>
ok 13 - <ABSTRACT>
ok 14 - <AUTHOR>
ok 15 - <IMPLEMENTATION>
ok 16 - <REQUIRE>
ok 17 - no <REQUIRE> for build_require
ok 18 - <ARCHITECTURE>
ok 19 - <CODEBASE>
ok 20 - </IMPLEMENTATION>
ok 21 - </SOFTPKG>
ok 22 - make test
ok 23 - exited normally
ok 24 - TEST_VERBOSE
ok 25 - successful
ok 26 - exited normally
ok 27 - install
ok 28
ok 29 - install dir created
ok 30 - Dummy.pm installed
ok 31 - Liar.pm installed
ok 32 - program installed
ok 33 - packlist created
ok 34 - perllocal.pod created
ok 35 - install with PREFIX override
ok 36
ok 37 - install dir created
ok 38 - Dummy.pm installed
ok 39 - Liar.pm installed
ok 40 - program installed
ok 41 - packlist created
ok 42 - perllocal.pod created
ok 43 - install with DESTDIR
ok 44
ok 45 - destdir created
ok 46 - Dummy.pm installed
ok 47 - Liar.pm installed
ok 48 - program installed
ok 49 - packlist created
ok 50 - perllocal.pod created
ok 51
ok 52 - DESTDIR should not appear in perllocal
ok 53 - install with PREFIX override and DESTDIR
ok 54
ok 55 - install dir not created
ok 56 - destdir created
ok 57 - Dummy.pm installed
ok 58 - Liar.pm installed
ok 59 - program installed
ok 60 - packlist created
ok 61 - perllocal.pod created
ok 62 - disttest
# META file validity
ok 63 - META.yml not written to source dir
ok 64 - META.yml written to dist dir
ok 65 - temp META.yml file not left around
ok 66 - MYMETA.yml is written to source dir
ok 67 - MYMETA.yml is written to dist dir on disttest
ok 68 - META.json not written to source dir
ok 69 - META.json written to dist dir
ok 70 - temp META.json file not left around
ok 71 - MYMETA.json is written to source dir
ok 72 - MYMETA.json is written to dist dir on disttest
ok 73 - META.yml validates
ok 74 - META.yml -> name
ok 75 - META.yml -> version
ok 76 - META.yml -> abstract
ok 77 - META.yml -> licenses
ok 78 - META.yml -> authors
ok 79 - META.yml -> prereqs
ok 80 - META.yml -> no_index
ok 81 - META.yml -> dynamic_config
ok 82 - MYMETA.yml validates
ok 83 - MYMETA.yml -> name
ok 84 - MYMETA.yml -> version
ok 85 - MYMETA.yml -> abstract
ok 86 - MYMETA.yml -> licenses
ok 87 - MYMETA.yml -> authors
ok 88 - MYMETA.yml -> prereqs
ok 89 - MYMETA.yml -> no_index
ok 90 - MYMETA.yml -> dynamic_config
ok 91 - META.json validates
ok 92 - META.json -> name
ok 93 - META.json -> version
ok 94 - META.json -> abstract
ok 95 - META.json -> licenses
ok 96 - META.json -> authors
ok 97 - META.json -> prereqs
ok 98 - META.json -> no_index
ok 99 - META.json -> dynamic_config
ok 100 - MYMETA.json validates
ok 101 - MYMETA.json -> name
ok 102 - MYMETA.json -> version
ok 103 - MYMETA.json -> abstract
ok 104 - MYMETA.json -> licenses
ok 105 - MYMETA.json -> authors
ok 106 - MYMETA.json -> prereqs
ok 107 - MYMETA.json -> no_index
ok 108 - MYMETA.json -> dynamic_config
ok 109 - MYMETA.yml validates
ok 110 - MYMETA.yml -> name
ok 111 - MYMETA.yml -> version
ok 112 - MYMETA.yml -> abstract
ok 113 - MYMETA.yml -> licenses
ok 114 - MYMETA.yml -> authors
ok 115 - MYMETA.yml -> prereqs
ok 116 - MYMETA.yml -> no_index
ok 117 - MYMETA.yml -> dynamic_config
ok 118 - MYMETA.json validates
ok 119 - MYMETA.json -> name
ok 120 - MYMETA.json -> version
ok 121 - MYMETA.json -> abstract
ok 122 - MYMETA.json -> licenses
ok 123 - MYMETA.json -> authors
ok 124 - MYMETA.json -> prereqs
ok 125 - MYMETA.json -> no_index
ok 126 - MYMETA.json -> dynamic_config
ok 127 - MANIFEST has META.yml
ok 128 - MANFIEST has META.json
ok 129 - META.yml deleted
ok 130 - MYMETA.yml deleted
ok 131 - META.json deleted
ok 132 - MYMETA.json deleted
ok 133 - MYMETA.yml generation not suppressed by NO_META
ok 134 - MYMETA.json generation not suppressed by NO_META
ok 135 - Makefile.PL exited with zero
ok 136 - META.yml generation suppressed by NO_META
ok 137 - META.json generation suppressed by NO_META
ok 138 - distdir
ok 139 - META.yml generation suppressed by NO_META
ok 140 - META.json generation suppressed by NO_META
ok 141 - MYMETA.yml deleted
ok 142 - MYMETA.json deleted
ok 143 - Makefile.PL exited with zero
ok 144 - distdir
ok 145 - MYMETA.yml generation suppressed by NO_MYMETA
ok 146 - MYMETA.json generation suppressed by NO_MYMETA
ok 147 - META.yml generation not suppressed by NO_MYMETA
ok 148 - META.json generation not suppressed by NO_MYMETA
ok 149 - Makefile.PL exited with zero
ok 150 - distdir
ok 151 - META.yml generated in distdir
ok 152 - META.json generated in distdir
ok 153 - MYMETA.yml not yet generated in distdir
ok 154 - MYMETA.json generated in distdir
ok 155 - MYMETA abstract from META, not Makefile.PL
ok 156 - Saved edited META.json in distdir
ok 157 - Saved edited META.yml in distdir
ok 158
ok 159 - META.yml confirmed in distdir
ok 160 - META.json confirmed in distdir
ok 161 - Makefile.PL in distdir exited with zero
ok 162
ok 163 - MYMETA.yml generated in distdir
ok 164 - MYMETA.json generated in distdir
ok 165 - META abstract is same as was saved
ok 166 - MYMETA abstract from META, not Makefile.PL
ok 167 - Makefile.PL exited with zero
ok 168 - init_dirscan skipped distdir
ok 169 - realclean
ok 170
ok 171 - teardown
ok
All tests successful.
Files=1, Tests=171, 59 wallclock secs ( 0.06 usr + 0.00 sys = 0.06 CPU)
Result​: PASS

C​:\p521\srcpara\t>
C​:\p521\srcpara\t>perl -I../lib -I../cpan/ExtUtils-MakeMaker/t/lib ../cpan/ExtU
tils-MakeMaker/t/basic.t
1..171
'chcp' is not recognized as an internal or external command,
operable program or batch file.
Error in tempdir() using t\XXXXXXXXXX​: Parent directory (t) does not exist at ..
/cpan/ExtUtils-MakeMaker/t/basic.t line 42.
No root path(s) specified
at ../cpan/ExtUtils-MakeMaker/t/basic.t line 63.
ok 1
ok 2 - teardown
# Looks like you planned 171 tests but ran 2.
# Looks like your test exited with 2 just after 2.

C​:\p521\srcpara\t>

--
bulk88 ~ bulk88 at hotmail.com

@p5pRT
Copy link
Author

p5pRT commented May 12, 2015

From @bulk88

0001-123998-more-chcp-calls-to-send-to-dev-null.patch
From 2e70b04c73d37d7b71029a689de450e01621c505 Mon Sep 17 00:00:00 2001
From: Daniel Dragan <bulk88@hotmail.com>
Date: Tue, 12 May 2015 18:56:01 -0400
Subject: [PATCH] #123998 more chcp calls to send to dev null

---
 cpan/ExtUtils-MakeMaker/t/basic.t | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/cpan/ExtUtils-MakeMaker/t/basic.t b/cpan/ExtUtils-MakeMaker/t/basic.t
index a0a6f91..d592dd8 100644
--- a/cpan/ExtUtils-MakeMaker/t/basic.t
+++ b/cpan/ExtUtils-MakeMaker/t/basic.t
@@ -34,10 +34,10 @@ my $perl = which_perl();
 my $Is_VMS = $^O eq 'VMS';
 my $OLD_CP; # crude but...
 if ($^O eq "MSWin32") {
-    $OLD_CP = $1 if qx(chcp) =~ /(\d+)$/ and $? == 0;
-    qx(chcp 1252) if defined $OLD_CP;
+    $OLD_CP = $1 if qx(chcp 2>NUL) =~ /(\d+)$/ and $? == 0;
+    qx(chcp 1252 2>NUL) if defined $OLD_CP;
 }
-END { qx(chcp $OLD_CP) if $^O eq "MSWin32" and defined $OLD_CP }
+END { qx(chcp $OLD_CP 2>NUL) if $^O eq "MSWin32" and defined $OLD_CP }
 
 my $tmpdir = tempdir( DIR => 't', CLEANUP => 1 );
 chdir $tmpdir;
-- 
1.8.0.msysgit.0

@p5pRT
Copy link
Author

p5pRT commented May 13, 2015

From @tonycoz

On Sun May 10 17​:21​:09 2015, tonyc wrote​:

For blead's purposes, sufficiently recent releases of Win32.pm include
GetACP(), GetConsoleCP() and GetConsoleOutputCP() which means blead could
skip calling chcp completely.

It turns out the upstream of EUMM​::Locale already does this, and EUMM​::Locale
has been updated to include that change​:

Perl-Toolchain-Gang/ExtUtils-MakeMaker@1e2f087

I've pushed that change to smoke-me/tonyc/eumm-locale-update

Tony

@p5pRT
Copy link
Author

p5pRT commented May 13, 2015

From @bulk88

On Tue May 12 17​:32​:10 2015, tonyc wrote​:

On Sun May 10 17​:21​:09 2015, tonyc wrote​:

For blead's purposes, sufficiently recent releases of Win32.pm
include
GetACP(), GetConsoleCP() and GetConsoleOutputCP() which means blead
could
skip calling chcp completely.

It turns out the upstream of EUMM​::Locale already does this, and
EUMM​::Locale
has been updated to include that change​:

https://github.com/Perl-Toolchain-Gang/ExtUtils-
MakeMaker/commit/1e2f087153c9b100492d2efd4d5e613e07ba0483

I've pushed that change to smoke-me/tonyc/eumm-locale-update

Tony

Your branch passes. Same problem as in my last post about basic.t emitting warnings. I have no opinion whether davem's "2 > NUL" or your update EUMM Locale to dev version patch is the correct one.


../cpan/ExtUtils-Install/t/Installed.t ............................ ok
../cpan/ExtUtils-Install/t/InstallWithMM.t ........................ ok
../cpan/ExtUtils-Install/t/Packlist.t ............................. ok
../cpan/ExtUtils-MakeMaker/t/00compile.t .......................... skipped​: No MANIFEST
../cpan/ExtUtils-MakeMaker/t/01perl_bugs.t ........................ ok
../cpan/ExtUtils-MakeMaker/t/arch_check.t ......................... ok
../cpan/ExtUtils-MakeMaker/t/backwards.t .......................... ok
'chcp' is not recognized as an internal or external command,
operable program or batch file.
../cpan/ExtUtils-MakeMaker/t/basic.t .............................. ok
../cpan/ExtUtils-MakeMaker/t/build_man.t .......................... ok
../cpan/ExtUtils-MakeMaker/t/cd.t ................................. ok
../cpan/ExtUtils-MakeMaker/t/config.t ............................. ok
../cpan/ExtUtils-MakeMaker/t/dir_target.t ......................... ok
Use of uninitialized value in concatenation (.) or string at C​:\p521\srcpara\lib/ExtUtils/MM_Win32.pm line 158.
../cpan/ExtUtils-MakeMaker/t/echo.t ............................... ok
../cpan/ExtUtils-MakeMaker/t/FIRST_MAKEFILE.t ..................... ok
../cpan/ExtUtils-MakeMaker/t/fix_libs.t ........................... ok


--
bulk88 ~ bulk88 at hotmail.com

@p5pRT
Copy link
Author

p5pRT commented May 13, 2015

From @iabyn

On Tue, May 12, 2015 at 11​:35​:19PM -0700, bulk88 via RT wrote​:

I have no opinion whether davem's "2 > NUL" or your update EUMM Locale
to dev version patch is the correct one.

I know very little about either EU​::MM nor win32, so I'm happy to defer to
Tony on this.

--
A power surge on the Bridge is rapidly and correctly diagnosed as a faulty
capacitor by the highly-trained and competent engineering staff.
  -- Things That Never Happen in "Star Trek" #9

@p5pRT
Copy link
Author

p5pRT commented May 14, 2015

From @tonycoz

On Tue May 12 23​:35​:18 2015, bulk88 wrote​:

On Tue May 12 17​:32​:10 2015, tonyc wrote​:

On Sun May 10 17​:21​:09 2015, tonyc wrote​:

For blead's purposes, sufficiently recent releases of Win32.pm
include
GetACP(), GetConsoleCP() and GetConsoleOutputCP() which means blead
could
skip calling chcp completely.

It turns out the upstream of EUMM​::Locale already does this, and
EUMM​::Locale
has been updated to include that change​:

https://github.com/Perl-Toolchain-Gang/ExtUtils-
MakeMaker/commit/1e2f087153c9b100492d2efd4d5e613e07ba0483

I've pushed that change to smoke-me/tonyc/eumm-locale-update

Tony

Your branch passes. Same problem as in my last post about basic.t
emitting warnings. I have no opinion whether davem's "2 > NUL" or your
update EUMM Locale to dev version patch is the correct one.

---------------------------------------------------------------------
../cpan/ExtUtils-Install/t/Installed.t ............................ ok
../cpan/ExtUtils-Install/t/InstallWithMM.t ........................ ok
../cpan/ExtUtils-Install/t/Packlist.t ............................. ok
../cpan/ExtUtils-MakeMaker/t/00compile.t ..........................
skipped​: No MANIFEST
../cpan/ExtUtils-MakeMaker/t/01perl_bugs.t ........................ ok
../cpan/ExtUtils-MakeMaker/t/arch_check.t ......................... ok
../cpan/ExtUtils-MakeMaker/t/backwards.t .......................... ok
'chcp' is not recognized as an internal or external command,
operable program or batch file.
../cpan/ExtUtils-MakeMaker/t/basic.t .............................. ok

I've backported 37c498812ffa78926d4e4e3e5c5e219d4c405e36 which fixes this,
again in smoke-me/tonyc/eumm-locale-update.

../cpan/ExtUtils-MakeMaker/t/build_man.t .......................... ok
../cpan/ExtUtils-MakeMaker/t/cd.t ................................. ok
../cpan/ExtUtils-MakeMaker/t/config.t ............................. ok
../cpan/ExtUtils-MakeMaker/t/dir_target.t ......................... ok
Use of uninitialized value in concatenation (.) or string at
C​:\p521\srcpara\lib/ExtUtils/MM_Win32.pm line 158.
../cpan/ExtUtils-MakeMaker/t/echo.t ............................... ok

The warning from echo.t was in 5.20 and shouldn't be a blocker for 5.22.

Tony

@p5pRT
Copy link
Author

p5pRT commented May 14, 2015

From @bulk88

On Wed May 13 21​:18​:52 2015, tonyc wrote​:

I've backported 37c498812ffa78926d4e4e3e5c5e219d4c405e36 which fixes this,
again in smoke-me/tonyc/eumm-locale-update.

../cpan/ExtUtils-MakeMaker/t/build_man.t .......................... ok
../cpan/ExtUtils-MakeMaker/t/cd.t ................................. ok
../cpan/ExtUtils-MakeMaker/t/config.t ............................. ok
../cpan/ExtUtils-MakeMaker/t/dir_target.t ......................... ok
Use of uninitialized value in concatenation (.) or string at
C​:\p521\srcpara\lib/ExtUtils/MM_Win32.pm line 158.
../cpan/ExtUtils-MakeMaker/t/echo.t ............................... ok

The warning from echo.t was in 5.20 and shouldn't be a blocker for 5.22.

Tony

SHA-1​: 3c05f06
* backport 37c49881 from the EUMM repository

is okay to merge. No more "chcp" anywhere in a harness run.

--
bulk88 ~ bulk88 at hotmail.com

@p5pRT
Copy link
Author

p5pRT commented May 15, 2015

From @tonycoz

On Thu May 14 10​:01​:40 2015, bulk88 wrote​:

On Wed May 13 21​:18​:52 2015, tonyc wrote​:

I've backported 37c498812ffa78926d4e4e3e5c5e219d4c405e36 which fixes this,
again in smoke-me/tonyc/eumm-locale-update.

../cpan/ExtUtils-MakeMaker/t/build_man.t .......................... ok
../cpan/ExtUtils-MakeMaker/t/cd.t ................................. ok
../cpan/ExtUtils-MakeMaker/t/config.t ............................. ok
../cpan/ExtUtils-MakeMaker/t/dir_target.t ......................... ok
Use of uninitialized value in concatenation (.) or string at
C​:\p521\srcpara\lib/ExtUtils/MM_Win32.pm line 158.
../cpan/ExtUtils-MakeMaker/t/echo.t ............................... ok

The warning from echo.t was in 5.20 and shouldn't be a blocker for 5.22.

Tony

SHA-1​: 3c05f06
* backport 37c49881 from the EUMM repository

is okay to merge. No more "chcp" anywhere in a harness run.

Thanks, both changes have been applied to blead as 18fe626
and 23ff16d.

Tony

@p5pRT
Copy link
Author

p5pRT commented May 15, 2015

@tonycoz - Status changed from 'open' to 'pending release'

@p5pRT
Copy link
Author

p5pRT commented Jun 2, 2015

From @khwilliamson

Thank you for submitting this ticket.

The issue should now be resolved with the release today of Perl v5.22, which is available at http​://www.perl.org/get.html
--
Karl Williamson for the Perl 5 team

@p5pRT
Copy link
Author

p5pRT commented Jun 2, 2015

@khwilliamson - Status changed from 'pending release' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant