Skip Menu |

This queue is for tickets about the Test-NoWarnings CPAN distribution.

Report information
The Basics
Id: 42027
Status: resolved
Priority: 0/
Queue: Test-NoWarnings

People
Owner: Nobody in particular
Requestors: FDALY [...] cpan.org
Cc: szabgab [...] gmail.com
AdminCc:

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



CC: szabgab [...] gmail.com
Subject: Module::Install and Test::NoWarnings- "require Test::NoWarnigs" should not hide warnings.
In the Padre project we encountered some strange behavior. We recently switched to use Module::Install and we also use Test:::NoWarnings in our tests. It seems Module::Install loads all the modules listed as "requires" or "test_requires" during the execution of Makefile.PL This brought up the question what happens when Test::NoWarnings is "require"-d and not "use"-d. As I can see from the code, the import() call is what generated the additional test in the END block. So that part behaves nicely. On the other hand Test:::NoWarnings still hides all the warnings in such case. Specifically it hides the warnings Makefile.PL generates when some of the modules are missing or are at a version lower than required. So I think - besides the fact that M::I probably should not load the required modules to memory - "require Test::NoWarnigs" should not hide warnings. As a workaround now, I added the following lines to the beginning of our Makefile.PL eval { require Test::NoWarnings; $SIG{__WARN__} = 'DEFAULT'; };
In modern Module::Install this no longer occurs