CINXE.COM
Maintaining Perl 5 Core (Dave Mitchell): January - February 2025
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags --> <meta name="description" content=""> <meta name="author" content=""> <link href="/rss.xml" rel="alternate" type="application/rss+xml" title="Maintaining Perl 5 Core (Dave Mitchell): January - February 2025" /> <link rel="icon" href="/img/tpf-favicon.ico"> <!-- below is to safely support the option of mounting the plack app at a sub-url, and is not strictly required/needed. We could have also defined a 'base' or just relied on relative paths. This scaffold is just for example purposes %] --> <title>Maintaining Perl 5 Core (Dave Mitchell): January - February 2025</title> <!-- Bootstrap core CSS --> <link href="/css/bootstrap.min.css" rel="stylesheet"> <!-- IE10 viewport hack for Surface/desktop Windows 8 bug --> <link href="/css/ie10-viewport-bug-workaround.css" rel="stylesheet"> <link href="/fonts/font-awesome.min.css" rel="stylesheet"> <!-- Custom styles for this template --> <link href="/css/blog.css" rel="stylesheet"> <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]--> <!-- <script src="js/google-code-prettify.js"></script> --> <script src="/js/picoModal.js"></script> <script src="/js/subcomment_popups.js"></script> </head> <body> <div class="blog-masthead"> <div class="cog-link"> <a href="/adm" title="Admin"> <img style="max-height:100%;max-width:100%;" src="img/Cog-64.png" /> </a> </div> <div class="container"> <nav class="blog-nav"> <a class="blog-nav-item" href="/">Home</a> <a class="blog-nav-item" href="/list">Posts</a> <a class="blog-nav-item" href="/tags">Tags</a> <a class="blog-nav-item" href="/categories">Categories</a> <a class="blog-nav-item" href="/authors">Authors</a> <form class="navbar-form navbar-right" action="/list"> <div class="form-group"> <input type="text" class="form-control" name="search"> </div> <button type="submit" class="btn btn-success">Search</button> <div style="padding-left:10px;display:inline-block;"> <a class="blog-nav-item" target="_top" href="/auth/to_referer"> <i class="fa fa-sign-in"></i> Sign in </a> </div> </form> </nav> </div> </div> <div class="container"> <div class="blog-header" style="padding-bottom:30px;"> <a href="/"> <img src="/img/TPF_news_header.png" style="height: 97px; width: 602px; max-width: 100%; height: auto;" /> </a> </div> <!-- <div class="blog-header"> <h1 class="blog-title" style="margin-top:5px;">The Perl Foundation News</h1> <p class="lead blog-description">Official Blog of The Perl Foundation (TPF)</p> </div> --> <div class="row"> <div class="col-sm-8 blog-main"> <div class="blog-post"> <h2 class="blog-post-title"> Maintaining Perl 5 Core (Dave Mitchell): January - February 2025 </h2> <p class="blog-post-meta"> <i style="padding-left:3px;"> Wed, 05-Mar-2025 <span style="font-size:.9em;">by <a href="/list?username=alh">alh</a></span> </i> <a class="public-edit-post-link" href="/rapidapp/module/direct/adm/main/db/db_post/item/1699"> <i class="fa fa-pencil-square-o"></i> edit post </a> </p> <xmp style="display:none;" id="markdown-el-2xff68"> Dave writes: This is my monthly report on work done during Jan and Feb 2025, covered by my TPF perl core maintenance grant. I spent some time continuing to do various bits of code refactoring and test-adding on Extutils::ParseXS, as a precursor to adding reference-counted stack (PERL_RC_STACK) abilities to XS. I also fixed a bug in regexes which have embedded code blocks (i.e. /(?{...})/) where, if the code-block code recurses and calls (again) the code which triggered the original pattern match, crashes could ensue. Summary: * 1:08 #22710: defined( \@foo = $obj->method) corrupts $obj * 16:04 #22869 Perl crash with recursive sub and regex with code eval * 10:37 process p5p mailbox * 18:43 refactor Extutils::ParseXS Total: * 46:32 (HH::MM) </xmp> <script src="_ra-rel-mnt_/assets/local/misc/static/js/marked-el.js"></script> <script> processMarkdownElementById("markdown-el-2xff68") </script> <div style="font-size:.8em;padding:10px;"> Category: <a href="/list?category=Grants">Grants</a> , <a href="/list?category=Perl 5 Development">Perl 5 Development</a> </div> <hr> <h4>Comments (0)</h4> <hr> <div id="add-comment"> <h3><a href="/auth/to_referer?_fragment=add-comment">Sign in</a> to add comment</h3> </div> <br><br> </div> </div><!-- /.blog-main --> <div class="col-sm-3 col-sm-offset-1 blog-sidebar"> <div class="sidebar-module sidebar-module-inset"> <h4>About TPF</h4> <p style="font-size:.9em;"> The Perl Foundation - supporting the Perl community since 2000. Find out more at <a href="http://www.perlfoundation.org">www.perlfoundation.org</a>. </p> </div> <div class="sidebar-module"> <h4>Categories</h4> <ol class="list-unstyled"> <li> <a href="/list?category=Grants">Grants</a> (984) </li> <li> <a href="/list?category=Conferences">Conferences</a> (154) </li> <li> <a href="/list?category=Perl 5 Development">Perl 5 Development</a> (122) </li> <li> <a href="/list?category=Perl Foundation">Perl Foundation</a> (101) </li> <li> <a href="/list?category=Perl 6 Development">Perl 6 Development</a> (60) </li> <li> <a href="/list?category=Raku Development">Raku Development</a> (33) </li> <li> <a href="/list?category=Marketing">Marketing</a> (30) </li> <li> <a href="/list?category=Parrot development">Parrot development</a> (20) </li> <li> <a href="/list?category=Projects">Projects</a> (19) </li> <li> <a href="/list?category=Outreachy">Outreachy</a> (16) </li> <li> <a href="/list?category=GSoC">GSoC</a> (15) </li> <li> <a href="/list?category=Hackathons">Hackathons</a> (14) </li> <li> <a href="/list?category=Meetings">Meetings</a> (14) </li> <li> <a href="/list?category=Awards">Awards</a> (12) </li> <li> <a href="/list?category=Raku Foundation">Raku Foundation</a> (11) </li> <b style="padding-left:10px;"> ... <a href="/categories">see all [19]</a></b> </ol> <br> <h4>Popular Tags</h4> <ol class="list-unstyled"> <li> <a href="/list?tag=p5p">p5p</a> (31) </li> <li> <a href="/list?tag=grants">grants</a> (17) </li> <li> <a href="/list?tag=perl">perl</a> (16) </li> <li> <a href="/list?tag=yapc">yapc</a> (13) </li> <li> <a href="/list?tag=perl6">perl6</a> (11) </li> <li> <a href="/list?tag=tpcislc">tpcislc</a> (9) </li> <li> <a href="/list?tag=tpcih">tpcih</a> (8) </li> <li> <a href="/list?tag=tprcic">tprcic</a> (7) </li> <b style="padding-left:10px;"> ... <a href="/tags">see all [143]</a></b> </ol> <br> <h4>Recent Tags</h4> <ol class="list-unstyled"> <li> <a href="/list?tag=community-roundtable">community-roundtable</a> (1) </li> <li> <a href="/list?tag=hackathons2023">hackathons2023</a> (1) </li> <li> <a href="/list?tag=yapcjapan">yapcjapan</a> (1) </li> <li> <a href="/list?tag=tprchouston">tprchouston</a> (1) </li> <li> <a href="/list?tag=tpf-cat">tpf-cat</a> (2) </li> <li> <a href="/list?tag=raku">raku</a> (1) </li> <b style="padding-left:10px;"> ... <a href="/tags?sort=recent"> see all [143] </a></b> </ol> <br> <h4>Get Perl</h4> <ol class="list-unstyled"> <li><a href="http://www.perl.org/get.html">Perl 5</a></li> <li><a href="https://raku.org/">Raku</a></li> </ol> <br> <h4>Links</h4> <ol class="list-unstyled"> <li><a href="http://www.perlfoundation.org/">The Perl Foundation</a></li> <li><a href="http://blogs.perl.org/">blogs.perl.org</a></li> <li><a href="http://www.perl.org/">perl.org</a></li> <li><a href="http://www.perl.com/">perl.com</a></li> <li><a href="http://www.metacpan.org/">MetaCPAN</a></li> </ol> </div> </div><!-- /.blog-sidebar --> </div><!-- /.row --> </div><!-- /.container --> <footer class="blog-footer"> <p>Powered by <a href="http://rapidapp.info">RapidApp</a> and <a href="https://metacpan.org/pod/Rapi::Blog">Rapi::Blog</a></p> <p> <a href="#">Back to top</a> </p> </footer> <!-- Bootstrap core JavaScript ================================================== --> <!-- Placed at the end of the document so the pages load faster --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script>window.jQuery || document.write('<script src="/js/jquery.min.js"><\/script>')</script> <script src="/js/bootstrap.min.js"></script> <!-- IE10 viewport hack for Surface/desktop Windows 8 bug --> <script src="/js/ie10-viewport-bug-workaround.js"></script> </body> </html>