CINXE.COM

CPANTS

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewpoint" content="width=device-width, initial-scale=1"> <title>CPANTS</title> <!-- Google tag (gtag.js) --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-WPD8J9V077"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-WPD8J9V077'); </script> <link href="/bootstrap/css/bootstrap.min.css" rel="stylesheet"> <link href="/datatables/css/jquery.dataTables.min.css" rel="stylesheet"> <link href="/datatables-responsive/css/responsive.dataTables.css" rel="stylesheet"> <link href="/font-awesome/css/font-awesome.min.css" rel="stylesheet"> <link href="/cpants/css/cpants.css" rel="stylesheet"> <!--[if lt IE 9]> <script src="/html5shiv/html5shiv.min.js"></script> <script src="/respond-js/respond.min.js"></script> <![endif]--> </head> <body class=""> <div id="navbar" class="navbar navbar-default navbar-static-top" role="navigation"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <h1><a href="/" class="navbar-brand">CPANTS</a></h1> </div> <div class="navbar-collapse collapse"> <ul class="nav navbar-nav navbar-right"> <li><a href="/kwalitee">Kwalitee</a></li> <li><a href="/ranking">Ranking</a></li> <li><a href="/recent">Recent</a></li> </ul> </div> </div> </div> <div class="container"> <div class="row"> <div id="main" class="col-xs-12 col-sm-12 col-md-12 col-lg-12"> <div class="col-xs-12 col-sm-10 col-md-10 col-lg-10"> <section> <div class="col-xs-12 col-sm-12 col-md-10 col-lg-10"> <h2>Kwalitee Indicator: use_warnings <span class="small"><span class="small label label-info">extra</span></span></h2> <p>This distribution does not &#39;use warnings;&#39; (or its equivalents) in all of its modules. Note that this is not about that your modules actually warn when something bad happens. It&#39;s bad if nobody can tell if a module warns or not, without reading the source code of your favorite module that actually enforces warnings. In other words, it&#39;s bad if someone feels the need to add &#39;use warnings&#39; to your modules. <h3>How to fix</h3> <p>Add &#39;use warnings&#39; (or its equivalents) to all modules, or convince us that your favorite module is well-known enough and people can easily see the modules warn when something bad happens. <h3>Yearly Statistics</h3> <table id="stats" class="display compact small"> <thead> <tr> <th>Year</th> <th>Fails (Latest)</th> <th>Releases (Latest)</th> <th>Fails (CPAN)</th> <th>Releases (CPAN)</th> <th>Fails (BackPAN)</th> <th>Releases (BackPAN)</th> </tr> </thead> <tbody> <tr> <td>2025</td> <td>304</td> <td>1482</td> <td>508</td> <td>2748</td> <td>556</td> <td>3011</td> </tr> <tr> <td>2024</td> <td>557</td> <td>2231</td> <td>1442</td> <td>6439</td> <td>2293</td> <td>11123</td> </tr> <tr> <td>2023</td> <td>371</td> <td>1879</td> <td>1331</td> <td>5779</td> <td>2211</td> <td>10209</td> </tr> <tr> <td>2022</td> <td>310</td> <td>1532</td> <td>1175</td> <td>5384</td> <td>2093</td> <td>9539</td> </tr> <tr> <td>2021</td> <td>338</td> <td>1708</td> <td>1225</td> <td>5369</td> <td>2420</td> <td>10425</td> </tr> <tr> <td>2020</td> <td>429</td> <td>1821</td> <td>1427</td> <td>6364</td> <td>2946</td> <td>12522</td> </tr> <tr> <td>2019</td> <td>375</td> <td>1671</td> <td>1251</td> <td>5991</td> <td>3003</td> <td>12452</td> </tr> <tr> <td>2018</td> <td>364</td> <td>1629</td> <td>1428</td> <td>6491</td> <td>3452</td> <td>15488</td> </tr> <tr> <td>2017</td> <td>465</td> <td>2242</td> <td>1686</td> <td>7778</td> <td>3933</td> <td>16357</td> </tr> <tr> <td>2016</td> <td>415</td> <td>2132</td> <td>1656</td> <td>8037</td> <td>4876</td> <td>19948</td> </tr> </tbody> </table> <hr> <h3>Latest Fails</h3> <table id="fails" class="display compact small"> <thead> <tr> <th>Name</th> <th>Released by</th> <th>Released on</th> </tr> </thead> <tbody> <tr> <td>Music-Drummer-0.6005</td> <td>GENE</td> <td>2025-03-30</td> </tr> <tr> <td>WordList-ID-KBBI-FigureOfSpeech-0.001</td> <td>PERLANCAR</td> <td>2025-03-30</td> </tr> <tr> <td>autobox-Lookup-0.002</td> <td>SCESANO</td> <td>2025-03-30</td> </tr> <tr> <td>Test-Simple-1.302210</td> <td>EXODIST</td> <td>2025-03-30</td> </tr> <tr> <td>Pod-Usage-2.05</td> <td>MAREKR</td> <td>2025-03-29</td> </tr> <tr> <td>App-SpreadRevolutionaryDate-0.49</td> <td>GIBUS</td> <td>2025-03-29</td> </tr> <tr> <td>Package-Subroutine-v0.22.4</td> <td>SKNPP</td> <td>2025-03-29</td> </tr> <tr> <td>App-Dest-1.34</td> <td>GRYPHON</td> <td>2025-03-29</td> </tr> <tr> <td>Prima-OpenGL-1.04</td> <td>KARASIK</td> <td>2025-03-28</td> </tr> <tr> <td>Sys-Cmd-0.99.1</td> <td>MLAWREN</td> <td>2025-03-28</td> </tr> <tr> <td>ICANN-RST-0.03</td> <td>GBROWN</td> <td>2025-03-28</td> </tr> <tr> <td>all-mandatory-0.01</td> <td>DSTROMA</td> <td>2025-03-28</td> </tr> <tr> <td>DBD-Sybase-1.26</td> <td>MEWP</td> <td>2025-03-27</td> </tr> <tr> <td>Regexp-Pattern-Instagram-0.001</td> <td>PERLANCAR</td> <td>2025-03-27</td> </tr> <tr> <td>PDL-2.100</td> <td>ETJ</td> <td>2025-03-27</td> </tr> <tr> <td>String-CRC32C-0.02</td> <td>MLEHMANN</td> <td>2025-03-27</td> </tr> <tr> <td>TVision-0.21</td> <td>VKON</td> <td>2025-03-27</td> </tr> <tr> <td>Win32-ExeAsDll-0.01</td> <td>BULKDD</td> <td>2025-03-25</td> </tr> <tr> <td>Net-Z3950-FOLIO-v4.1.1</td> <td>MIRK</td> <td>2025-03-25</td> </tr> <tr> <td>Class-Accessor-Inherited-XS-0.39</td> <td>RANDIR</td> <td>2025-03-24</td> </tr> <tr> <td>JavonetPerlSdk-v2.5.14</td> <td>JAVONET</td> <td>2025-03-24</td> </tr> <tr> <td>Number-Phone-4.0006</td> <td>DCANTRELL</td> <td>2025-03-24</td> </tr> <tr> <td>Ascii-Text-0.21</td> <td>LNATION</td> <td>2025-03-23</td> </tr> <tr> <td>EMDIS-ECS-0.44</td> <td>KVMUSER</td> <td>2025-03-23</td> </tr> <tr> <td>Tree-RB-XS-0.18</td> <td>NERDVANA</td> <td>2025-03-23</td> </tr> <tr> <td>Business-ISBN-Data-20250322.001</td> <td>BRIANDFOY</td> <td>2025-03-22</td> </tr> <tr> <td>XS-libcatch-3.7.1.1</td> <td>SYBER</td> <td>2025-03-22</td> </tr> <tr> <td>Module-CoreList-5.20250321</td> <td>BINGOS</td> <td>2025-03-21</td> </tr> <tr> <td>SPVM-HTTP-Tiny-0.008</td> <td>KIMOTO</td> <td>2025-03-21</td> </tr> <tr> <td>SPVM-0.990049</td> <td>KIMOTO</td> <td>2025-03-21</td> </tr> <tr> <td>App-ipinfo-1.011_01</td> <td>BDFOY</td> <td>2025-03-20</td> </tr> <tr> <td>DBIx-Class-Schema-Loader-0.07053</td> <td>VEESH</td> <td>2025-03-20</td> </tr> <tr> <td>Net-RDAP-0.36</td> <td>GBROWN</td> <td>2025-03-19</td> </tr> <tr> <td>App-rdapper-1.10</td> <td>GBROWN</td> <td>2025-03-19</td> </tr> <tr> <td>FU-0.4</td> <td>YORHEL</td> <td>2025-03-19</td> </tr> <tr> <td>kw-gamekit-0.1.1</td> <td>KOBOLDWIZ</td> <td>2025-03-19</td> </tr> <tr> <td>XS-libpanda-backtrace-1.1.1</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>XS-libpanda-1.5.11</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>XS-libcares-1.34.3.0</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>XS-Framework-1.6.0</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>UniEvent-WebSocket-1.0.3</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>UniEvent-Socks-1.0.2</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>UniEvent-HTTP-Manager-1.1.3</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>UniEvent-HTTP-1.2.3</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>UniEvent-1.2.14</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>URI-XS-2.1.7</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>URI-Router-0.1.4</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>Test-Catch-2.0.2</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>Protocol-WebSocket-Fast-1.2.9</td> <td>SYBER</td> <td>2025-03-18</td> </tr> <tr> <td>Protocol-HTTP-1.1.6</td> <td>SYBER</td> <td>2025-03-18</td> </tr> </tbody> </table> </div> </section> </div> <div class="sidebar hidden-xs col-sm-2 col-md-2 col-lg-2"> <div class="dropdown"> <a href="#" class="dropdown-toggle" id="sidebar_core_metrics" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Core Metrics <span class="caret"></span> </a> <ul class="dropdown-menu small" aria-labelledby="sidebar_core_metrics"> <li class="small"><a href="/kwalitee/extractable">extractable</a></li> <li class="small"><a href="/kwalitee/extracts_nicely">extracts nicely</a></li> <li class="small"><a href="/kwalitee/no_pax_headers">no pax headers</a></li> <li class="small"><a href="/kwalitee/meta_yml_is_parsable">meta yml is parsable</a></li> <li class="small"><a href="/kwalitee/meta_json_is_parsable">meta json is parsable</a></li> <li class="small"><a href="/kwalitee/meta_yml_conforms_to_known_spec">meta yml conforms to known spec</a></li> <li class="small"><a href="/kwalitee/meta_json_conforms_to_known_spec">meta json conforms to known spec</a></li> <li class="small"><a href="/kwalitee/has_readme">has readme</a></li> <li class="small"><a href="/kwalitee/has_manifest">has manifest</a></li> <li class="small"><a href="/kwalitee/has_meta_yml">has meta yml</a></li> <li class="small"><a href="/kwalitee/has_buildtool">has buildtool</a></li> <li class="small"><a href="/kwalitee/has_changelog">has changelog</a></li> <li class="small"><a href="/kwalitee/no_files_to_be_skipped">no files to be skipped</a></li> <li class="small"><a href="/kwalitee/no_symlinks">no symlinks</a></li> <li class="small"><a href="/kwalitee/has_tests">has tests</a></li> <li class="small"><a href="/kwalitee/has_version">has version</a></li> <li class="small"><a href="/kwalitee/has_proper_version">has proper version</a></li> <li class="small"><a href="/kwalitee/distname_matches_name_in_meta">distname matches name in meta</a></li> <li class="small"><a href="/kwalitee/buildtool_not_executable">buildtool not executable</a></li> <li class="small"><a href="/kwalitee/no_generated_files">no generated files</a></li> <li class="small"><a href="/kwalitee/portable_filenames">portable filenames</a></li> <li class="small"><a href="/kwalitee/no_mymeta_files">no mymeta files</a></li> <li class="small"><a href="/kwalitee/no_broken_module_install">no broken module install</a></li> <li class="small"><a href="/kwalitee/no_broken_auto_install">no broken auto install</a></li> <li class="small"><a href="/kwalitee/has_human_readable_license">has human readable license</a></li> <li class="small"><a href="/kwalitee/has_license_in_source_file">has license in source file</a></li> <li class="small"><a href="/kwalitee/manifest_matches_dist">manifest matches dist</a></li> <li class="small"><a href="/kwalitee/has_abstract_in_pod">has abstract in pod</a></li> <li class="small"><a href="/kwalitee/use_strict">use strict</a></li> <li class="small"><a href="/kwalitee/prereq_matches_use">prereq matches use</a></li> <li class="small"><a href="/kwalitee/main_module_version_matches_dist_version">main module version matches dist version</a></li> <li class="small"><a href="/kwalitee/no_pod_errors">no pod errors</a></li> </ul> </div> <div class="dropdown"> <a href="#" class="dropdown-toggle" id="sidebar_extra_metrics" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Extra Metrics <span class="caret"></span> </a> <ul class="dropdown-menu small" aria-labelledby="sidebar_extra_metrics"> <li class="small"><a href="/kwalitee/valid_signature">valid signature</a></li> <li class="small"><a href="/kwalitee/meta_yml_declares_perl_version">meta yml declares perl version</a></li> <li class="small"><a href="/kwalitee/has_meta_json">has meta json</a></li> <li class="small"><a href="/kwalitee/has_tests_in_t_dir">has tests in t dir</a></li> <li class="small"><a href="/kwalitee/no_stdin_for_prompting">no stdin for prompting</a></li> <li class="small"><a href="/kwalitee/no_maniskip_error">no maniskip error</a></li> <li class="small"><a href="/kwalitee/no_dot_underscore_files">no dot underscore files</a></li> <li class="small"><a href="/kwalitee/no_dot_dirs">no dot dirs</a></li> <li class="small"><a href="/kwalitee/no_local_dirs">no local dirs</a></li> <li class="small"><a href="/kwalitee/proper_libs">proper libs</a></li> <li class="small"><a href="/kwalitee/no_missing_files_in_provides">no missing files in provides</a></li> <li class="small"><a href="/kwalitee/meta_yml_has_license">meta yml has license</a></li> <li class="small"><a href="/kwalitee/has_known_license_in_source_file">has known license in source file</a></li> <li class="small"><a href="/kwalitee/no_abstract_stub_in_pod">no abstract stub in pod</a></li> <li class="small"><a href="/kwalitee/use_warnings">use warnings</a></li> <li class="small"><a href="/kwalitee/no_unauthorized_packages">no unauthorized packages</a></li> <li class="small"><a href="/kwalitee/test_prereq_matches_use">test prereq matches use</a></li> <li class="small"><a href="/kwalitee/no_invalid_versions">no invalid versions</a></li> <li class="small"><a href="/kwalitee/consistent_version">consistent version</a></li> </ul> </div> <div class="dropdown"> <a href="#" class="dropdown-toggle" id="sidebar_experimental_metrics" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Experimental <span class="caret"></span> </a> <ul class="dropdown-menu small" aria-labelledby="sidebar_experimental_metrics"> <li class="small"><a href="/kwalitee/meta_yml_has_provides">meta yml has provides</a></li> <li class="small"><a href="/kwalitee/meta_yml_has_repository_resource">meta yml has repository resource</a></li> <li class="small"><a href="/kwalitee/has_separate_license_file">has separate license file</a></li> <li class="small"><a href="/kwalitee/configure_prereq_matches_use">configure prereq matches use</a></li> <li class="small"><a href="/kwalitee/has_security_doc">has security doc</a></li> <li class="small"><a href="/kwalitee/security_doc_contains_contact">security doc contains contact</a></li> <li class="small"><a href="/kwalitee/has_contributing_doc">has contributing doc</a></li> </ul> </div> </div> </div> </div> <div class="row"> <div id="footer" class="col-xs-12 col-sm-12 col-md-12 col-lg-12"> <address>Maintained by Kenichi Ishigaki &lt;ishigaki@cpan.org&gt;. If you find anything, submit it on <a href="https://github.com/cpants/www-cpants/issues">GitHub</a>.</address> <p>Last analyzed: 2025-03-30 20:09:53</p> </div> </div> </div> <script src="/jquery/jquery.min.js"></script> <script src="/bootstrap/js/bootstrap.min.js"></script> <script src="/datatables/js/jquery.dataTables.js"></script> <script src="/datatables-responsive/js/dataTables.responsive.js"></script> <script src="/sprintf-js/sprintf.min.js"></script> <script src="/strftime/strftime-min.js"></script> <script>//<![CDATA[ $(function() { $.extend($.fn.dataTable.defaults, { "processing": true, "info": false, "ordering": false, "paging": false, "pageLength": 25, "lengthChange": false, "searching": false, "deferRender": true }); }); //]]></script> <script>//<![CDATA[ $(function(){ $('#stats').dataTable({ }); }); //]]></script> <script>//<![CDATA[ $(function(){ $('#fails').dataTable({ "ajax": "https://api.cpanauthors.org/v5/kwalitee/use_warnings/fail", "serverSide": true, "deferLoading": 12140, "columns": [ {"data": "name_version", "render": function(data,type,row){ return type === 'display' ? '<a href="/release/'+row.author+'/'+data+'">'+data+'</a>' : data; }}, {"data": "author", "render": function(data,type,row){ return type === 'display' ? '<a href="/author/'+data+'">'+data+'</a>' : data; }}, {"data": "date", "render": function(data,type,row){ return type === 'display' ? strftime('%F', new Date(data)) : data; }} ], "info": true, "paging": true }); }); //]]></script> <hr> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10