CINXE.COM

perl5db.pl - the perl debugger - metacpan.org

<!DOCTYPE html> <html lang="en-US"> <head> <title>perl5db.pl - the perl debugger - metacpan.org</title> <link rel="preload" as="fetch" href="/account/login_status" crossorigin="anonymous" /> <link href="/assets/style-XFEQ536G.css" rel="stylesheet" type="text/css"> <script src="/assets/main-WXBSEDQJ.js" type="module"></script> <link rel="alternate" type="application/rss+xml" title="Recent CPAN Uploads of perl - MetaCPAN" href="/dist/perl/releases.rss" /> <link rel="canonical" href="https://metacpan.org/dist/perl/view/lib/perl5db.pl" /> <meta name="description" content="the perl debugger" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5"> <link rel="shortcut icon" href="/static/icons/favicon.ico"> <link rel="apple-touch-icon" sizes="152x152" href="/static/icons/apple-touch-icon.png"> <link rel="search" href="/static/opensearch.xml" type="application/opensearchdescription+xml" title="MetaCPAN"> <script async src="https://perl-ads.perlhacks.com/perl-ads.js"></script> <script async src="https://www.googletagmanager.com/gtag/js?id=G-E82Q2V8LVD"></script> <meta property="og:site_name" content="MetaCPAN" /> <meta name="twitter:site" content="@metacpan" /> <meta property="og:type" content="article" /> <meta name="twitter:card" content="summary" /> <meta property="og:url" content="https://metacpan.org/dist/perl/view/lib/perl5db.pl" /> <meta property="og:title" content="perl5db.pl" /> <meta property="og:description" content="the perl debugger" /> <meta property="og:image" content="https://metacpan.org/static/images/dots.png" /> </head> <body> <nav class="navbar navbar-default" role="navigation"> <div class="header-logo-large hidden-xs"> <a href="/" tabindex="0"> <svg class="logo" aria-label="MetaCPAN"> <use class="logo" href="/static/images/metacpan-logo.svg#logo" /> </svg> </a> </div> <div class="header-logo-icon visible-xs"> <a href="/"> <svg class="logo" aria-label="MetaCPAN"> <use class="logo" href="/static/images/metacpan-logo.svg#dots" /> </svg> </a> </div> <ul class="nav navbar-nav menu-items hidden-xs hidden-sm"> <li><a href="/about">About</a></li> <li><a href="/about/sponsors">Sponsor</a></li> <li><a href="https://grep.metacpan.org/">grep::cpan</a></li> <li><a href="/recent">Recent</a></li> <li><a href="/about/faq">FAQ</a></li> <li><a href="/tools">Tools</a></li> <li><a href="https://fastapi.metacpan.org/">API</a></li> </ul> <ul class="nav navbar-nav navbar-right"> <button type="button" class="searchbar-btn visible-xs visible-sm"> <i class="fa fa-search button-fa-icon"></i> </button> <form action="/search" class="searchbar-form visible-md visible-lg search-form form-horizontal"> <input type="hidden" name="size" id="metacpan_search-size" value="20"> <div class="form-group"> <div class="search-group"> <i class="fa fa-search"></i> <input type="text" name="q" placeholder="Search the CPAN" size="41" autocorrect="off" autocapitalize="off" spellcheck="false" id="metacpan_search-input" class="form-control" value=""> </div> </div> </form> <li class="icon-slidepanel visible-xs visible-sm"> <button data-toggle="slidepanel" data-target=".slidepanel"> <span class="button-fa-icon"> <i class="fa fa-bars slidepanel-open"></i> <i class="fa fa-times slidepanel-close"></i> </span> </button> </li> <li class="dropdown login-dropdown show-logged-in"> <button type="button" class="dropdown-toggle" data-toggle="dropdown"> <i class="fa fa-user button-fa-icon logged-in-icon" aria-hidden="true"></i> <i class="fas fa-chevron-down"></i> </button> <ul class="dropdown-menu"> <li><a href="/account/identities">Identities</a></li> <li><a href="/account/profile">Profile</a></li> <li><a href="/account/favorite/list">Favorites</a></li> <li> <a href="#" type="button" class="logout-button"> Logout </a> </li> </ul> </li> <li class="dropdown login-dropdown show-logged-out"> <button type="button" class="dropdown-toggle" data-toggle="dropdown"> <i class="fa fa-user button-fa-icon avatar-placeholder" aria-hidden="true"></i> <i class="fas fa-chevron-down"></i> </button> <ul class="dropdown-menu"> <li> <a href="/login/github"> <i class="fab fa-github fa-fw"></i> GitHub </a> </li> <li> <a href="/login/twitter"> <i class="fab fa-twitter fa-fw"></i> Twitter </a> </li> <li> <a href="/login/google"> <i class="fab fa-google fa-fw"></i> Google </a> </li> </ul> </li> <li class="dropdown login-dropdown hide-logged-in hide-logged-out"> <button> <i class="fa fa-user button-fa-icon" aria-hidden="true"></i> </button> </li> </ul> </nav> <div class="page-content "> <div id="perl-ad-target" class="top-notify-banner perl-ad-target"> </div> <nav class="sidebar"> <div class="slidepanel"> <ul class="nav-list "> <li class="nav-header no-margin-top"> <div class="ttip" data-toggle="tooltip" data-placement="bottom" title="The date that this version of perl was released."> <span class="relatize">18 Jan 2025 19:48:20 UTC</span> </div> </li> <li> Distribution: <a href="/dist/perl">perl</a> </li> <li> <a data-keyboard-shortcut="g s" href="/dist/perl/source/lib/perl5db.pl">Source</a> (<a href="/dist/perl/source/lib/perl5db.pl?raw=1">raw</a>) </li> <li> <a data-keyboard-shortcut="g b" href="/dist/perl/source/lib">Browse</a> (<a href="/dist/perl/source/lib?raw=1">raw</a>) </li> <li> <a data-keyboard-shortcut="g c" href="/dist/perl/changes">Changes</a> </li> <li> <a rel="noopener nofollow" class="nopopup" href="https://www.perl.org/">Homepage</a> </li> <li> <a class="nopopup" href="/dist/perl/contribute">How to Contribute</a> </li> <li> <a rel="noopener nofollow" data-keyboard-shortcut="g r" href="https://github.com/Perl/perl5">Repository</a> </li> <li> <a rel="noopener nofollow" data-keyboard-shortcut="g i" href="https://github.com/Perl/perl5/issues">Issues</a> (2326) </li> <li> <a rel="noopener nofollow" href="http://matrix.cpantesters.org/?dist=perl+5.40.1" title="Matrix">Testers</a> </li> <li> <a rel="noopener nofollow" href="http://cpants.cpanauthors.org/release/SHAY/perl-5.40.1">Kwalitee</a> </li> <li> <div class="ttip" data-toggle="tooltip" data-placement="bottom" title="The # people with an indexing permission on perl who have released something to CPAN in the last 2 years (i.e. the # people likely able to release critical fixes in a timely manner)"> Bus factor: 17 </div> </li> <li> License: perl_5 </li> <li class="nav-header">Activity</li> <li> <div class="activity-graph"> <img src="/dist/perl/activity.svg?res=month" /> <div class="comment">24 month</div> </div> </li> <li class="nav-header">Tools</li> <li> <a itemprop="downloadUrl" href="https://cpan.metacpan.org/authors/id/S/SH/SHAY/perl-5.40.1.tar.gz"> Download (<span itemprop="fileSize">18.87MB</span>)</a> </li> <li> <a href="https://explorer.metacpan.org/?url=%2Fmodule%2FSHAY%2Fperl-5.40.1%2Flib%2Fperl5db.pl"> MetaCPAN Explorer </a> </li> <li> <a href="/dist/perl/permissions"> Permissions </a> </li> <li> <a href="/dist/perl/releases.rss"> Subscribe to distribution </a> </li> <li> <button class="btn btn-link" data-toggle="modal" data-target="#metacpan_install-instructions-dialog"> Install Instructions </button> </li> <li> <form action="/search"> <input type="hidden" name="q" value="dist:perl"> <input type="search" name="q" placeholder="Search distribution" class="form-control tool-bar-form"> <input type="submit" style="display: none"> </form> </li> <li> <form action="https://grep.metacpan.org/search"> <input type="hidden" name="qd" value="perl"> <input type="hidden" name="source" value="metacpan"> <input type="search" name="q" placeholder="grep distribution" class="form-control tool-bar-form"> <input type="submit" style="display: none"> </form> </li> <li class="version-jump"> <select class="select-navigator form-control tool-bar-form"> <option disabled selected>Jump to version</option> <option value="/release/MAUKE/perl-5.41.10/view/lib/perl5db.pl" >5.41.10 DEV (MAUKE on 2025-03-21)</option> <option value="/release/HYDAHY/perl-5.41.9/view/lib/perl5db.pl" >5.41.9 DEV (HYDAHY on 2025-02-24)</option> <option value="/release/SHAY/perl-5.41.8/view/lib/perl5db.pl" >5.41.8 DEV (SHAY on 2025-01-20)</option> <option disabled value="/release/SHAY/perl-5.40.1/view/lib/perl5db.pl" >5.40.1 (SHAY on 2025-01-18)</option> <option value="/release/SHAY/perl-5.38.3/view/lib/perl5db.pl" >5.38.3 (SHAY on 2025-01-18)</option> <option value="/release/SHAY/perl-5.40.1-RC1/view/lib/perl5db.pl" >5.40.1-RC1 DEV (SHAY on 2025-01-05)</option> <option value="/release/SHAY/perl-5.38.3-RC1/view/lib/perl5db.pl" >5.38.3-RC1 DEV (SHAY on 2025-01-05)</option> <option value="/release/CORION/perl-5.41.7/view/lib/perl5db.pl" >5.41.7 DEV (CORION on 2024-12-20)</option> <option value="/release/CONTRA/perl-5.41.6/view/lib/perl5db.pl" >5.41.6 DEV (CONTRA on 2024-11-20)</option> <option value="/release/HYDAHY/perl-5.41.5/view/lib/perl5db.pl" >5.41.5 DEV (HYDAHY on 2024-10-20)</option> <option value="/release/CONTRA/perl-5.41.4/view/lib/perl5db.pl" >5.41.4 DEV (CONTRA on 2024-09-20)</option> <option value="/release/BOOK/perl-5.41.3/view/lib/perl5db.pl" >5.41.3 DEV (BOOK on 2024-08-29)</option> <option value="/release/ETHER/perl-5.41.2/view/lib/perl5db.pl" >5.41.2 DEV (ETHER on 2024-07-20)</option> <option value="/release/BOOK/perl-5.41.1/view/lib/perl5db.pl" >5.41.1 DEV (BOOK on 2024-07-02)</option> <option value="/release/HAARG/perl-5.40.0/view/lib/perl5db.pl" >5.40.0 (HAARG on 2024-06-09)</option> <option value="/release/HAARG/perl-5.40.0-RC2/view/lib/perl5db.pl" >5.40.0-RC2 DEV (HAARG on 2024-06-04)</option> <option value="/release/HAARG/perl-5.40.0-RC1/view/lib/perl5db.pl" >5.40.0-RC1 DEV (HAARG on 2024-05-24)</option> <option value="/release/PEVANS/perl-5.39.10/view/lib/perl5db.pl" >5.39.10 DEV (PEVANS on 2024-04-27)</option> <option value="/release/PEVANS/perl-5.39.9/view/lib/perl5db.pl" >5.39.9 DEV (PEVANS on 2024-03-20)</option> <option value="/release/RENEEB/perl-5.39.8/view/lib/perl5db.pl" >5.39.8 DEV (RENEEB on 2024-02-23)</option> <option value="/release/CORION/perl-5.39.7/view/lib/perl5db.pl" >5.39.7 DEV (CORION on 2024-01-20)</option> <option value="/release/BOOK/perl-5.39.6/view/lib/perl5db.pl" >5.39.6 DEV (BOOK on 2023-12-30)</option> <option value="/release/PEVANS/perl-5.38.2/view/lib/perl5db.pl" >5.38.2 (PEVANS on 2023-11-29)</option> <option value="/release/PEVANS/perl-5.36.3/view/lib/perl5db.pl" >5.36.3 (PEVANS on 2023-11-29)</option> <option value="/release/PEVANS/perl-5.34.3/view/lib/perl5db.pl" >5.34.3 (PEVANS on 2023-11-29)</option> <option value="/release/ETHER/perl-5.39.5/view/lib/perl5db.pl" >5.39.5 DEV (ETHER on 2023-11-20)</option> <option value="/release/HAARG/perl-5.39.4/view/lib/perl5db.pl" >5.39.4 DEV (HAARG on 2023-10-25)</option> <option value="/release/WOLFSAGE/perl-5.39.3/view/lib/perl5db.pl" >5.39.3 DEV (WOLFSAGE on 2023-09-20)</option> <option value="/release/PEVANS/perl-5.39.2/view/lib/perl5db.pl" >5.39.2 DEV (PEVANS on 2023-08-20)</option> <option value="/release/SHAY/perl-5.39.1/view/lib/perl5db.pl" >5.39.1 DEV (SHAY on 2023-07-20)</option> <option value="/release/RJBS/perl-5.38.0/view/lib/perl5db.pl" >5.38.0 (RJBS on 2023-07-02)</option> <option value="/release/RJBS/perl-5.38.0-RC2/view/lib/perl5db.pl" >5.38.0-RC2 DEV (RJBS on 2023-06-23)</option> <option value="/release/RJBS/perl-5.38.0-RC1/view/lib/perl5db.pl" >5.38.0-RC1 DEV (RJBS on 2023-06-16)</option> <option value="/release/SHAY/perl-5.36.1/view/lib/perl5db.pl" >5.36.1 (SHAY on 2023-04-23)</option> <option value="/release/SHAY/perl-5.37.11/view/lib/perl5db.pl" >5.37.11 DEV (SHAY on 2023-04-20)</option> <option value="/release/SHAY/perl-5.36.1-RC3/view/lib/perl5db.pl" >5.36.1-RC3 DEV (SHAY on 2023-04-16)</option> <option value="/release/SHAY/perl-5.36.1-RC2/view/lib/perl5db.pl" >5.36.1-RC2 DEV (SHAY on 2023-04-11)</option> <option value="/release/SHAY/perl-5.36.1-RC1/view/lib/perl5db.pl" >5.36.1-RC1 DEV (SHAY on 2023-04-10)</option> <option value="/release/YVES/perl-5.37.10/view/lib/perl5db.pl" >5.37.10 DEV (YVES on 2023-03-21)</option> <option value="/release/ETHER/perl-5.37.9/view/lib/perl5db.pl" >5.37.9 DEV (ETHER on 2023-02-20)</option> <option value="/release/RENEEB/perl-5.37.8/view/lib/perl5db.pl" >5.37.8 DEV (RENEEB on 2023-01-20)</option> <option value="/release/HYDAHY/perl-5.37.7/view/lib/perl5db.pl" >5.37.7 DEV (HYDAHY on 2022-12-20)</option> <option value="/release/CORION/perl-5.37.6/view/lib/perl5db.pl" >5.37.6 DEV (CORION on 2022-11-20)</option> <option value="/release/TODDR/perl-5.37.5/view/lib/perl5db.pl" >5.37.5 DEV (TODDR on 2022-10-20)</option> <option value="/release/ETHER/perl-5.37.4/view/lib/perl5db.pl" >5.37.4 DEV (ETHER on 2022-09-21)</option> <option value="/release/ATOOMIC/perl-5.37.2/view/lib/perl5db.pl" >5.37.2 DEV (ATOOMIC on 2022-07-21)</option> <option value="/release/WOLFSAGE/perl-5.37.1/view/lib/perl5db.pl" >5.37.1 DEV (WOLFSAGE on 2022-06-20)</option> <option value="/release/RJBS/perl-5.37.0/view/lib/perl5db.pl" >5.37.0 DEV (RJBS on 2022-05-28)</option> <option value="/release/RJBS/perl-5.36.0/view/lib/perl5db.pl" >5.36.0 (RJBS on 2022-05-28)</option> <option value="/release/RJBS/perl-5.36.0-RC3/view/lib/perl5db.pl" >5.36.0-RC3 DEV (RJBS on 2022-05-22)</option> <option value="/release/RJBS/perl-5.36.0-RC2/view/lib/perl5db.pl" >5.36.0-RC2 DEV (RJBS on 2022-05-21)</option> <option value="/release/SHAY/perl-5.35.11/view/lib/perl5db.pl" >5.35.11 DEV (SHAY on 2022-04-20)</option> <option value="/release/XSAWYERX/perl-5.35.10/view/lib/perl5db.pl" >5.35.10 DEV (XSAWYERX on 2022-03-20)</option> <option value="/release/SHAY/perl-5.34.1/view/lib/perl5db.pl" >5.34.1 (SHAY on 2022-03-13)</option> <option value="/release/SHAY/perl-5.34.1-RC2/view/lib/perl5db.pl" >5.34.1-RC2 DEV (SHAY on 2022-03-06)</option> <option value="/release/SHAY/perl-5.34.1-RC1/view/lib/perl5db.pl" >5.34.1-RC1 DEV (SHAY on 2022-02-27)</option> <option value="/release/RENEEB/perl-5.35.9/view/lib/perl5db.pl" >5.35.9 DEV (RENEEB on 2022-02-20)</option> <option value="/release/ATOOMIC/perl-5.35.8/view/lib/perl5db.pl" >5.35.8 DEV (ATOOMIC on 2022-01-20)</option> <option value="/release/HYDAHY/perl-5.35.6/view/lib/perl5db.pl" >5.35.6 DEV (HYDAHY on 2021-11-21)</option> <option value="/release/LEONT/perl-5.35.5/view/lib/perl5db.pl" >5.35.5 DEV (LEONT on 2021-10-21)</option> <option value="/release/WOLFSAGE/perl-5.35.4/view/lib/perl5db.pl" >5.35.4 DEV (WOLFSAGE on 2021-09-20)</option> <option value="/release/ETHER/perl-5.35.3/view/lib/perl5db.pl" >5.35.3 DEV (ETHER on 2021-08-21)</option> <option value="/release/CORION/perl-5.35.1/view/lib/perl5db.pl" >5.35.1 DEV (CORION on 2021-06-20)</option> <option value="/release/RJBS/perl-5.35.0/view/lib/perl5db.pl" >5.35.0 DEV (RJBS on 2021-05-21)</option> <option value="/release/XSAWYERX/perl-5.34.0/view/lib/perl5db.pl" >5.34.0 (XSAWYERX on 2021-05-20)</option> <option value="/release/XSAWYERX/perl-5.34.0-RC2/view/lib/perl5db.pl" >5.34.0-RC2 DEV (XSAWYERX on 2021-05-15)</option> <option value="/release/XSAWYERX/perl-5.34.0-RC1/view/lib/perl5db.pl" >5.34.0-RC1 DEV (XSAWYERX on 2021-05-04)</option> <option value="/release/TODDR/perl-5.33.9/view/lib/perl5db.pl" >5.33.9 DEV (TODDR on 2021-04-20)</option> <option value="/release/ATOOMIC/perl-5.33.8/view/lib/perl5db.pl" >5.33.8 DEV (ATOOMIC on 2021-03-21)</option> <option value="/release/RENEEB/perl-5.33.7/view/lib/perl5db.pl" >5.33.7 DEV (RENEEB on 2021-02-20)</option> <option value="/release/SHAY/perl-5.32.1/view/lib/perl5db.pl" >5.32.1 (SHAY on 2021-01-23)</option> <option value="/release/HYDAHY/perl-5.33.6/view/lib/perl5db.pl" >5.33.6 DEV (HYDAHY on 2021-01-21)</option> <option value="/release/SHAY/perl-5.32.1-RC1/view/lib/perl5db.pl" >5.32.1-RC1 DEV (SHAY on 2021-01-09)</option> <option value="/release/CORION/perl-5.33.5/view/lib/perl5db.pl" >5.33.5 DEV (CORION on 2020-12-20)</option> <option value="/release/SHAY/perl-5.33.3/view/lib/perl5db.pl" >5.33.3 DEV (SHAY on 2020-10-20)</option> <option value="/release/XSAWYERX/perl-5.33.2/view/lib/perl5db.pl" >5.33.2 DEV (XSAWYERX on 2020-09-20)</option> <option value="/release/ETHER/perl-5.33.1/view/lib/perl5db.pl" >5.33.1 DEV (ETHER on 2020-08-20)</option> <option value="/release/XSAWYERX/perl-5.33.0/view/lib/perl5db.pl" >5.33.0 DEV (XSAWYERX on 2020-07-17)</option> <option value="/release/XSAWYERX/perl-5.32.0/view/lib/perl5db.pl" >5.32.0 (XSAWYERX on 2020-06-20)</option> <option value="/release/XSAWYERX/perl-5.32.0-RC1/view/lib/perl5db.pl" >5.32.0-RC1 DEV (XSAWYERX on 2020-06-07)</option> <option value="/release/XSAWYERX/perl-5.30.3-RC1/view/lib/perl5db.pl" >5.30.3-RC1 DEV (XSAWYERX on 2020-06-01)</option> <option value="/release/XSAWYERX/perl-5.30.3/view/lib/perl5db.pl" >5.30.3 (XSAWYERX on 2020-06-01)</option> <option value="/release/XSAWYERX/perl-5.28.3-RC1/view/lib/perl5db.pl" >5.28.3-RC1 DEV (XSAWYERX on 2020-06-01)</option> <option value="/release/XSAWYERX/perl-5.28.3/view/lib/perl5db.pl" >5.28.3 (XSAWYERX on 2020-06-01)</option> <option value="/release/XSAWYERX/perl-5.32.0-RC0/view/lib/perl5db.pl" >5.32.0-RC0 DEV (XSAWYERX on 2020-05-30)</option> <option value="/release/XSAWYERX/perl-5.31.11/view/lib/perl5db.pl" >5.31.11 DEV (XSAWYERX on 2020-04-28)</option> <option value="/release/XSAWYERX/perl-5.31.10/view/lib/perl5db.pl" >5.31.10 DEV (XSAWYERX on 2020-03-20)</option> <option value="/release/SHAY/perl-5.30.2/view/lib/perl5db.pl" >5.30.2 (SHAY on 2020-03-14)</option> <option value="/release/SHAY/perl-5.30.2-RC1/view/lib/perl5db.pl" >5.30.2-RC1 DEV (SHAY on 2020-02-29)</option> <option value="/release/RENEEB/perl-5.31.9/view/lib/perl5db.pl" >5.31.9 DEV (RENEEB on 2020-02-20)</option> <option value="/release/WOLFSAGE/perl-5.31.8/view/lib/perl5db.pl" >5.31.8 DEV (WOLFSAGE on 2020-01-20)</option> <option value="/release/ATOOMIC/perl-5.31.7/view/lib/perl5db.pl" >5.31.7 DEV (ATOOMIC on 2019-12-21)</option> <option value="/release/BINGOS/perl-5.31.6/view/lib/perl5db.pl" >5.31.6 DEV (BINGOS on 2019-11-20)</option> <option value="/release/SHAY/perl-5.30.1/view/lib/perl5db.pl" >5.30.1 (SHAY on 2019-11-10)</option> <option value="/release/SHAY/perl-5.30.1-RC1/view/lib/perl5db.pl" >5.30.1-RC1 DEV (SHAY on 2019-10-27)</option> <option value="/release/SHAY/perl-5.31.5/view/lib/perl5db.pl" >5.31.5 DEV (SHAY on 2019-10-20)</option> <option value="/release/CORION/perl-5.31.4/view/lib/perl5db.pl" >5.31.4 DEV (CORION on 2019-09-20)</option> <option value="/release/SHAY/perl-5.31.2/view/lib/perl5db.pl" >5.31.2 DEV (SHAY on 2019-07-20)</option> <option value="/release/ETHER/perl-5.31.1/view/lib/perl5db.pl" >5.31.1 DEV (ETHER on 2019-06-20)</option> <option value="/release/XSAWYERX/perl-5.31.0/view/lib/perl5db.pl" >5.31.0 DEV (XSAWYERX on 2019-05-24)</option> <option value="/release/XSAWYERX/perl-5.30.0/view/lib/perl5db.pl" >5.30.0 (XSAWYERX on 2019-05-22)</option> <option value="/release/XSAWYERX/perl-5.30.0-RC2/view/lib/perl5db.pl" >5.30.0-RC2 DEV (XSAWYERX on 2019-05-17)</option> <option value="/release/XSAWYERX/perl-5.30.0-RC1/view/lib/perl5db.pl" >5.30.0-RC1 DEV (XSAWYERX on 2019-05-11)</option> <option value="/release/XSAWYERX/perl-5.29.10/view/lib/perl5db.pl" >5.29.10 DEV (XSAWYERX on 2019-04-20)</option> <option value="/release/SHAY/perl-5.28.2/view/lib/perl5db.pl" >5.28.2 (SHAY on 2019-04-19)</option> <option value="/release/SHAY/perl-5.28.2-RC1/view/lib/perl5db.pl" >5.28.2-RC1 DEV (SHAY on 2019-04-05)</option> <option value="/release/ZAKAME/perl-5.29.9/view/lib/perl5db.pl" >5.29.9 DEV (ZAKAME on 2019-03-21)</option> <option value="/release/ATOOMIC/perl-5.29.8/view/lib/perl5db.pl" >5.29.8 DEV (ATOOMIC on 2019-02-21)</option> <option value="/release/ABIGAIL/perl-5.29.7/view/lib/perl5db.pl" >5.29.7 DEV (ABIGAIL on 2019-01-20)</option> <option value="/release/ABIGAIL/perl-5.29.6/view/lib/perl5db.pl" >5.29.6 DEV (ABIGAIL on 2018-12-18)</option> <option value="/release/SHAY/perl-5.28.1-RC1/view/lib/perl5db.pl" >5.28.1-RC1 DEV (SHAY on 2018-11-30)</option> <option value="/release/SHAY/perl-5.26.3-RC1/view/lib/perl5db.pl" >5.26.3-RC1 DEV (SHAY on 2018-11-30)</option> <option value="/release/SHAY/perl-5.28.1/view/lib/perl5db.pl" >5.28.1 (SHAY on 2018-11-29)</option> <option value="/release/SHAY/perl-5.26.3/view/lib/perl5db.pl" >5.26.3 (SHAY on 2018-11-29)</option> <option value="/release/ETHER/perl-5.29.5/view/lib/perl5db.pl" >5.29.5 DEV (ETHER on 2018-11-20)</option> <option value="/release/ARC/perl-5.29.4/view/lib/perl5db.pl" >5.29.4 DEV (ARC on 2018-10-20)</option> <option value="/release/GENEHACK/perl-5.29.3/view/lib/perl5db.pl" >5.29.3 DEV (GENEHACK on 2018-09-21)</option> <option value="/release/BINGOS/perl-5.29.2/view/lib/perl5db.pl" >5.29.2 DEV (BINGOS on 2018-08-20)</option> <option value="/release/SHAY/perl-5.29.1/view/lib/perl5db.pl" >5.29.1 DEV (SHAY on 2018-07-20)</option> <option value="/release/XSAWYERX/perl-5.29.0/view/lib/perl5db.pl" >5.29.0 DEV (XSAWYERX on 2018-06-26)</option> <option value="/release/XSAWYERX/perl-5.28.0/view/lib/perl5db.pl" >5.28.0 (XSAWYERX on 2018-06-23)</option> <option value="/release/XSAWYERX/perl-5.28.0-RC4/view/lib/perl5db.pl" >5.28.0-RC4 DEV (XSAWYERX on 2018-06-19)</option> <option value="/release/XSAWYERX/perl-5.28.0-RC3/view/lib/perl5db.pl" >5.28.0-RC3 DEV (XSAWYERX on 2018-06-18)</option> <option value="/release/XSAWYERX/perl-5.28.0-RC2/view/lib/perl5db.pl" >5.28.0-RC2 DEV (XSAWYERX on 2018-06-06)</option> <option value="/release/XSAWYERX/perl-5.28.0-RC1/view/lib/perl5db.pl" >5.28.0-RC1 DEV (XSAWYERX on 2018-05-21)</option> <option value="/release/XSAWYERX/perl-5.27.11/view/lib/perl5db.pl" >5.27.11 DEV (XSAWYERX on 2018-04-20)</option> <option value="/release/SHAY/perl-5.26.2/view/lib/perl5db.pl" >5.26.2 (SHAY on 2018-04-14)</option> <option value="/release/SHAY/perl-5.24.4/view/lib/perl5db.pl" >5.24.4 (SHAY on 2018-04-14)</option> <option value="/release/SHAY/perl-5.26.2-RC1/view/lib/perl5db.pl" >5.26.2-RC1 DEV (SHAY on 2018-03-24)</option> <option value="/release/SHAY/perl-5.24.4-RC1/view/lib/perl5db.pl" >5.24.4-RC1 DEV (SHAY on 2018-03-24)</option> <option value="/release/TODDR/perl-5.27.10/view/lib/perl5db.pl" >5.27.10 DEV (TODDR on 2018-03-20)</option> <option value="/release/RENEEB/perl-5.27.9/view/lib/perl5db.pl" >5.27.9 DEV (RENEEB on 2018-02-20)</option> <option value="/release/ABIGAIL/perl-5.27.8/view/lib/perl5db.pl" >5.27.8 DEV (ABIGAIL on 2018-01-20)</option> <option value="/release/BINGOS/perl-5.27.7/view/lib/perl5db.pl" >5.27.7 DEV (BINGOS on 2017-12-20)</option> <option value="/release/ETHER/perl-5.27.6/view/lib/perl5db.pl" >5.27.6 DEV (ETHER on 2017-11-20)</option> <option value="/release/SHAY/perl-5.27.5/view/lib/perl5db.pl" >5.27.5 DEV (SHAY on 2017-10-20)</option> <option value="/release/SHAY/perl-5.26.1/view/lib/perl5db.pl" >5.26.1 (SHAY on 2017-09-22)</option> <option value="/release/SHAY/perl-5.24.3/view/lib/perl5db.pl" >5.24.3 (SHAY on 2017-09-22)</option> <option value="/release/GENEHACK/perl-5.27.4/view/lib/perl5db.pl" >5.27.4 DEV (GENEHACK on 2017-09-20)</option> <option value="/release/WOLFSAGE/perl-5.27.3/view/lib/perl5db.pl" >5.27.3 DEV (WOLFSAGE on 2017-08-21)</option> <option value="/release/ARC/perl-5.27.2/view/lib/perl5db.pl" >5.27.2 DEV (ARC on 2017-07-20)</option> <option value="/release/SHAY/perl-5.24.2/view/lib/perl5db.pl" >5.24.2 (SHAY on 2017-07-15)</option> <option value="/release/SHAY/perl-5.22.4-RC1/view/lib/perl5db.pl" >5.22.4-RC1 DEV (SHAY on 2017-07-01)</option> <option value="/release/EHERMAN/perl-5.27.1/view/lib/perl5db.pl" >5.27.1 DEV (EHERMAN on 2017-06-20)</option> <option value="/release/XSAWYERX/perl-5.26.0/view/lib/perl5db.pl" >5.26.0 (XSAWYERX on 2017-05-30)</option> <option value="/release/RENEEB/perl-5.25.10/view/lib/perl5db.pl" >5.25.10 DEV (RENEEB on 2017-02-20)</option> <option value="/release/ABIGAIL/perl-5.25.9/view/lib/perl5db.pl" >5.25.9 DEV (ABIGAIL on 2017-01-20)</option> <option value="/release/SHAY/perl-5.22.3/view/lib/perl5db.pl" >5.22.3 (SHAY on 2017-01-14)</option> <option value="/release/EXODIST/perl-5.25.7/view/lib/perl5db.pl" >5.25.7 DEV (EXODIST on 2016-11-20)</option> <option value="/release/ARC/perl-5.25.6/view/lib/perl5db.pl" >5.25.6 DEV (ARC on 2016-10-20)</option> <option value="/release/STEVAN/perl-5.25.5/view/lib/perl5db.pl" >5.25.5 DEV (STEVAN on 2016-09-20)</option> <option value="/release/BINGOS/perl-5.25.4/view/lib/perl5db.pl" >5.25.4 DEV (BINGOS on 2016-08-20)</option> <option value="/release/WOLFSAGE/perl-5.25.2/view/lib/perl5db.pl" >5.25.2 DEV (WOLFSAGE on 2016-06-20)</option> <option value="/release/RJBS/perl-5.24.0/view/lib/perl5db.pl" >5.24.0 (RJBS on 2016-05-09)</option> <option value="/release/ABIGAIL/perl-5.23.9/view/lib/perl5db.pl" >5.23.9 DEV (ABIGAIL on 2016-03-20)</option> <option value="/release/STEVAN/perl-5.23.7/view/lib/perl5db.pl" >5.23.7 DEV (STEVAN on 2016-01-20)</option> <option value="/release/DAGOLDEN/perl-5.23.6/view/lib/perl5db.pl" >5.23.6 DEV (DAGOLDEN on 2015-12-21)</option> <option value="/release/SHAY/perl-5.22.1/view/lib/perl5db.pl" >5.22.1 (SHAY on 2015-12-13)</option> <option value="/release/ABIGAIL/perl-5.23.5/view/lib/perl5db.pl" >5.23.5 DEV (ABIGAIL on 2015-11-20)</option> <option value="/release/PCM/perl-5.23.3/view/lib/perl5db.pl" >5.23.3 DEV (PCM on 2015-09-21)</option> <option value="/release/WOLFSAGE/perl-5.23.2/view/lib/perl5db.pl" >5.23.2 DEV (WOLFSAGE on 2015-08-20)</option> <option value="/release/WOLFSAGE/perl-5.23.1/view/lib/perl5db.pl" >5.23.1 DEV (WOLFSAGE on 2015-07-20)</option> <option value="/release/RJBS/perl-5.22.0/view/lib/perl5db.pl" >5.22.0 (RJBS on 2015-06-01)</option> <option value="/release/RJBS/perl-5.22.0-RC2/view/lib/perl5db.pl" >5.22.0-RC2 DEV (RJBS on 2015-05-21)</option> <option value="/release/RJBS/perl-5.22.0-RC1/view/lib/perl5db.pl" >5.22.0-RC1 DEV (RJBS on 2015-05-19)</option> <option value="/release/WOLFSAGE/perl-5.21.8/view/lib/perl5db.pl" >5.21.8 DEV (WOLFSAGE on 2015-01-20)</option> <option value="/release/BINGOS/perl-5.21.6/view/lib/perl5db.pl" >5.21.6 DEV (BINGOS on 2014-11-20)</option> <option value="/release/ABIGAIL/perl-5.21.5/view/lib/perl5db.pl" >5.21.5 DEV (ABIGAIL on 2014-10-20)</option> <option value="/release/RJBS/perl-5.18.4/view/lib/perl5db.pl" >5.18.4 (RJBS on 2014-10-02)</option> <option value="/release/RJBS/perl-5.18.3/view/lib/perl5db.pl" >5.18.3 (RJBS on 2014-10-01)</option> <option value="/release/RJBS/perl-5.18.3-RC2/view/lib/perl5db.pl" >5.18.3-RC2 DEV (RJBS on 2014-09-27)</option> <option value="/release/RJBS/perl-5.18.3-RC1/view/lib/perl5db.pl" >5.18.3-RC1 DEV (RJBS on 2014-09-17)</option> <option value="/release/PCM/perl-5.21.3/view/lib/perl5db.pl" >5.21.3 DEV (PCM on 2014-08-21)</option> <option value="/release/ABIGAIL/perl-5.21.2/view/lib/perl5db.pl" >5.21.2 DEV (ABIGAIL on 2014-07-20)</option> <option value="/release/WOLFSAGE/perl-5.21.1/view/lib/perl5db.pl" >5.21.1 DEV (WOLFSAGE on 2014-06-20)</option> <option value="/release/RJBS/perl-5.20.0/view/lib/perl5db.pl" >5.20.0 (RJBS on 2014-05-27)</option> <option value="/release/RJBS/perl-5.20.0-RC1/view/lib/perl5db.pl" >5.20.0-RC1 DEV (RJBS on 2014-05-17)</option> <option value="/release/ARC/perl-5.19.10/view/lib/perl5db.pl" >5.19.10 DEV (ARC on 2014-03-20)</option> <option value="/release/TONYC/perl-5.19.9/view/lib/perl5db.pl" >5.19.9 DEV (TONYC on 2014-02-20)</option> <option value="/release/RJBS/perl-5.18.2/view/lib/perl5db.pl" >5.18.2 (RJBS on 2014-01-07)</option> <option value="/release/RJBS/perl-5.18.2-RC4/view/lib/perl5db.pl" >5.18.2-RC4 DEV (RJBS on 2013-12-22)</option> <option value="/release/ABIGAIL/perl-5.19.7/view/lib/perl5db.pl" >5.19.7 DEV (ABIGAIL on 2013-12-20)</option> <option value="/release/RJBS/perl-5.18.2-RC3/view/lib/perl5db.pl" >5.18.2-RC3 DEV (RJBS on 2013-12-19)</option> <option value="/release/RJBS/perl-5.18.2-RC2/view/lib/perl5db.pl" >5.18.2-RC2 DEV (RJBS on 2013-12-07)</option> <option value="/release/RJBS/perl-5.18.2-RC1/view/lib/perl5db.pl" >5.18.2-RC1 DEV (RJBS on 2013-12-02)</option> <option value="/release/BINGOS/perl-5.19.6/view/lib/perl5db.pl" >5.19.6 DEV (BINGOS on 2013-11-20)</option> <option value="/release/RJBS/perl-5.18.1/view/lib/perl5db.pl" >5.18.1 (RJBS on 2013-08-12)</option> <option value="/release/RJBS/perl-5.18.1-RC3/view/lib/perl5db.pl" >5.18.1-RC3 DEV (RJBS on 2013-08-09)</option> <option value="/release/RJBS/perl-5.18.1-RC2/view/lib/perl5db.pl" >5.18.1-RC2 DEV (RJBS on 2013-08-04)</option> <option value="/release/RJBS/perl-5.18.1-RC1/view/lib/perl5db.pl" >5.18.1-RC1 DEV (RJBS on 2013-08-02)</option> <option value="/release/DAGOLDEN/perl-5.19.1/view/lib/perl5db.pl" >5.19.1 DEV (DAGOLDEN on 2013-06-21)</option> <option value="/release/RJBS/perl-5.18.0/view/lib/perl5db.pl" >5.18.0 (RJBS on 2013-05-18)</option> <option value="/release/RJBS/perl-5.18.0-RC4/view/lib/perl5db.pl" >5.18.0-RC4 DEV (RJBS on 2013-05-16)</option> <option value="/release/RJBS/perl-5.18.0-RC3/view/lib/perl5db.pl" >5.18.0-RC3 DEV (RJBS on 2013-05-14)</option> <option value="/release/RJBS/perl-5.18.0-RC2/view/lib/perl5db.pl" >5.18.0-RC2 DEV (RJBS on 2013-05-12)</option> <option value="/release/RJBS/perl-5.18.0-RC1/view/lib/perl5db.pl" >5.18.0-RC1 DEV (RJBS on 2013-05-11)</option> <option value="/release/RJBS/perl-5.16.3/view/lib/perl5db.pl" >5.16.3 (RJBS on 2013-03-11)</option> <option value="/release/DAPM/perl-5.14.4/view/lib/perl5db.pl" >5.14.4 (DAPM on 2013-03-10)</option> <option value="/release/DAPM/perl-5.14.4-RC2/view/lib/perl5db.pl" >5.14.4-RC2 DEV (DAPM on 2013-03-07)</option> <option value="/release/RJBS/perl-5.16.3-RC1/view/lib/perl5db.pl" >5.16.3-RC1 DEV (RJBS on 2013-03-07)</option> <option value="/release/DAPM/perl-5.14.4-RC1/view/lib/perl5db.pl" >5.14.4-RC1 DEV (DAPM on 2013-03-05)</option> <option value="/release/BINGOS/perl-5.17.9/view/lib/perl5db.pl" >5.17.9 DEV (BINGOS on 2013-02-20)</option> <option value="/release/ARC/perl-5.17.8/view/lib/perl5db.pl" >5.17.8 DEV (ARC on 2013-01-20)</option> <option value="/release/DROLSKY/perl-5.17.7/view/lib/perl5db.pl" >5.17.7 DEV (DROLSKY on 2012-12-18)</option> <option value="/release/DOM/perl-5.12.5/view/lib/perl5db.pl" >5.12.5 (DOM on 2012-11-10)</option> <option value="/release/DOM/perl-5.12.5-RC2/view/lib/perl5db.pl" >5.12.5-RC2 DEV (DOM on 2012-11-08)</option> <option value="/release/DOM/perl-5.12.5-RC1/view/lib/perl5db.pl" >5.12.5-RC1 DEV (DOM on 2012-11-03)</option> <option value="/release/RJBS/perl-5.16.2/view/lib/perl5db.pl" >5.16.2 (RJBS on 2012-11-01)</option> <option value="/release/RJBS/perl-5.16.2-RC1/view/lib/perl5db.pl" >5.16.2-RC1 DEV (RJBS on 2012-10-27)</option> <option value="/release/FLORA/perl-5.17.5/view/lib/perl5db.pl" >5.17.5 DEV (FLORA on 2012-10-20)</option> <option value="/release/DOM/perl-5.14.3/view/lib/perl5db.pl" >5.14.3 (DOM on 2012-10-12)</option> <option value="/release/DOM/perl-5.14.3-RC2/view/lib/perl5db.pl" >5.14.3-RC2 DEV (DOM on 2012-10-10)</option> <option value="/release/DOM/perl-5.14.3-RC1/view/lib/perl5db.pl" >5.14.3-RC1 DEV (DOM on 2012-09-26)</option> <option value="/release/FLORA/perl-5.17.4/view/lib/perl5db.pl" >5.17.4 DEV (FLORA on 2012-09-20)</option> <option value="/release/RJBS/perl-5.16.1/view/lib/perl5db.pl" >5.16.1 (RJBS on 2012-08-08)</option> <option value="/release/RJBS/perl-5.16.1-RC1/view/lib/perl5db.pl" >5.16.1-RC1 DEV (RJBS on 2012-08-03)</option> <option value="/release/TONYC/perl-5.17.2/view/lib/perl5db.pl" >5.17.2 DEV (TONYC on 2012-07-20)</option> <option value="/release/DOY/perl-5.17.1/view/lib/perl5db.pl" >5.17.1 DEV (DOY on 2012-06-20)</option> <option value="/release/ZEFRAM/perl-5.17.0/view/lib/perl5db.pl" >5.17.0 DEV (ZEFRAM on 2012-05-26)</option> <option value="/release/RJBS/perl-5.16.0/view/lib/perl5db.pl" >5.16.0 (RJBS on 2012-05-20)</option> <option value="/release/RJBS/perl-5.16.0-RC2/view/lib/perl5db.pl" >5.16.0-RC2 DEV (RJBS on 2012-05-16)</option> <option value="/release/RJBS/perl-5.16.0-RC1/view/lib/perl5db.pl" >5.16.0-RC1 DEV (RJBS on 2012-05-15)</option> <option value="/release/RJBS/perl-5.16.0-RC0/view/lib/perl5db.pl" >5.16.0-RC0 DEV (RJBS on 2012-05-11)</option> <option value="/release/ABIGAIL/perl-5.15.9/view/lib/perl5db.pl" >5.15.9 DEV (ABIGAIL on 2012-03-20)</option> <option value="/release/BINGOS/perl-5.15.7/view/lib/perl5db.pl" >5.15.7 DEV (BINGOS on 2012-01-20)</option> <option value="/release/DROLSKY/perl-5.15.6/view/lib/perl5db.pl" >5.15.6 DEV (DROLSKY on 2011-12-20)</option> <option value="/release/FLORA/perl-5.15.4/view/lib/perl5db.pl" >5.15.4 DEV (FLORA on 2011-10-20)</option> <option value="/release/FLORA/perl-5.14.2/view/lib/perl5db.pl" >5.14.2 (FLORA on 2011-09-26)</option> <option value="/release/STEVAN/perl-5.15.3/view/lib/perl5db.pl" >5.15.3 DEV (STEVAN on 2011-09-21)</option> <option value="/release/FLORA/perl-5.14.2-RC1/view/lib/perl5db.pl" >5.14.2-RC1 DEV (FLORA on 2011-09-19)</option> <option value="/release/ZEFRAM/perl-5.15.1/view/lib/perl5db.pl" >5.15.1 DEV (ZEFRAM on 2011-07-20)</option> <option value="/release/DAGOLDEN/perl-5.15.0/view/lib/perl5db.pl" >5.15.0 DEV (DAGOLDEN on 2011-06-20)</option> <option value="/release/LBROCARD/perl-5.12.4/view/lib/perl5db.pl" >5.12.4 (LBROCARD on 2011-06-20)</option> <option value="/release/JESSE/perl-5.14.1/view/lib/perl5db.pl" >5.14.1 (JESSE on 2011-06-17)</option> <option value="/release/LBROCARD/perl-5.12.4-RC2/view/lib/perl5db.pl" >5.12.4-RC2 DEV (LBROCARD on 2011-06-15)</option> <option value="/release/JESSE/perl-5.14.1-RC1/view/lib/perl5db.pl" >5.14.1-RC1 DEV (JESSE on 2011-06-09)</option> <option value="/release/LBROCARD/perl-5.12.4-RC1/view/lib/perl5db.pl" >5.12.4-RC1 DEV (LBROCARD on 2011-06-08)</option> <option value="/release/JESSE/perl-5.14.0/view/lib/perl5db.pl" >5.14.0 (JESSE on 2011-05-14)</option> <option value="/release/JESSE/perl-5.14.0-RC3/view/lib/perl5db.pl" >5.14.0-RC3 DEV (JESSE on 2011-05-11)</option> <option value="/release/JESSE/perl-5.14.0-RC2/view/lib/perl5db.pl" >5.14.0-RC2 DEV (JESSE on 2011-05-04)</option> <option value="/release/JESSE/perl-5.14.0-RC1/view/lib/perl5db.pl" >5.14.0-RC1 DEV (JESSE on 2011-04-20)</option> <option value="/release/FLORA/perl-5.13.11/view/lib/perl5db.pl" >5.13.11 DEV (FLORA on 2011-03-20)</option> <option value="/release/AVAR/perl-5.13.10/view/lib/perl5db.pl" >5.13.10 DEV (AVAR on 2011-02-20)</option> <option value="/release/RJBS/perl-5.12.3/view/lib/perl5db.pl" >5.12.3 (RJBS on 2011-01-22)</option> <option value="/release/JESSE/perl-5.13.9/view/lib/perl5db.pl" >5.13.9 DEV (JESSE on 2011-01-21)</option> <option value="/release/RJBS/perl-5.12.3-RC3/view/lib/perl5db.pl" >5.12.3-RC3 DEV (RJBS on 2011-01-18)</option> <option value="/release/RJBS/perl-5.12.3-RC2/view/lib/perl5db.pl" >5.12.3-RC2 DEV (RJBS on 2011-01-15)</option> <option value="/release/RJBS/perl-5.12.3-RC1/view/lib/perl5db.pl" >5.12.3-RC1 DEV (RJBS on 2011-01-10)</option> <option value="/release/ZEFRAM/perl-5.13.8/view/lib/perl5db.pl" >5.13.8 DEV (ZEFRAM on 2010-12-19)</option> <option value="/release/BINGOS/perl-5.13.7/view/lib/perl5db.pl" >5.13.7 DEV (BINGOS on 2010-11-21)</option> <option value="/release/MIYAGAWA/perl-5.13.6/view/lib/perl5db.pl" >5.13.6 DEV (MIYAGAWA on 2010-10-21)</option> <option value="/release/JESSE/perl-5.12.2/view/lib/perl5db.pl" >5.12.2 (JESSE on 2010-09-07)</option> <option value="/release/JESSE/perl-5.12.2-RC1/view/lib/perl5db.pl" >5.12.2-RC1 DEV (JESSE on 2010-08-31)</option> <option value="/release/FLORA/perl-5.13.4/view/lib/perl5db.pl" >5.13.4 DEV (FLORA on 2010-08-20)</option> <option value="/release/DAGOLDEN/perl-5.13.3/view/lib/perl5db.pl" >5.13.3 DEV (DAGOLDEN on 2010-07-20)</option> <option value="/release/MSTROUT/perl-5.13.2/view/lib/perl5db.pl" >5.13.2 DEV (MSTROUT on 2010-06-22)</option> <option value="/release/JESSE/perl-5.12.1/view/lib/perl5db.pl" >5.12.1 (JESSE on 2010-05-16)</option> <option value="/release/JESSE/perl-5.12.1-RC2/view/lib/perl5db.pl" >5.12.1-RC2 DEV (JESSE on 2010-05-13)</option> <option value="/release/JESSE/perl-5.12.1-RC1/view/lib/perl5db.pl" >5.12.1-RC1 DEV (JESSE on 2010-05-10)</option> <option value="/release/LBROCARD/perl-5.13.0/view/lib/perl5db.pl" >5.13.0 DEV (LBROCARD on 2010-04-20)</option> <option value="/release/JESSE/perl-5.12.0/view/lib/perl5db.pl" >5.12.0 (JESSE on 2010-04-12)</option> <option value="/release/JESSE/perl-5.12.0-RC5/view/lib/perl5db.pl" >5.12.0-RC5 DEV (JESSE on 2010-04-10)</option> <option value="/release/JESSE/perl-5.12.0-RC4/view/lib/perl5db.pl" >5.12.0-RC4 DEV (JESSE on 2010-04-07)</option> <option value="/release/JESSE/perl-5.12.0-RC3/view/lib/perl5db.pl" >5.12.0-RC3 DEV (JESSE on 2010-04-03)</option> <option value="/release/JESSE/perl-5.12.0-RC2/view/lib/perl5db.pl" >5.12.0-RC2 DEV (JESSE on 2010-04-01)</option> <option value="/release/JESSE/perl-5.12.0-RC1/view/lib/perl5db.pl" >5.12.0-RC1 DEV (JESSE on 2010-03-29)</option> <option value="/release/JESSE/perl-5.11.3/view/lib/perl5db.pl" >5.11.3 DEV (JESSE on 2009-12-21)</option> <option value="/release/LBROCARD/perl-5.11.2/view/lib/perl5db.pl" >5.11.2 DEV (LBROCARD on 2009-11-20)</option> <option value="/release/JESSE/perl-5.11.1/view/lib/perl5db.pl" >5.11.1 DEV (JESSE on 2009-10-20)</option> <option value="/release/JESSE/perl-5.11.0/view/lib/perl5db.pl" >5.11.0 DEV (JESSE on 2009-10-02)</option> <option value="/release/DAPM/perl-5.10.1/view/lib/perl5db.pl" >5.10.1 (DAPM on 2009-08-23)</option> <option value="/release/DAPM/perl-5.10.1-RC2/view/lib/perl5db.pl" >5.10.1-RC2 DEV (DAPM on 2009-08-18)</option> <option value="/release/DAPM/perl-5.10.1-RC1/view/lib/perl5db.pl" >5.10.1-RC1 DEV (DAPM on 2009-08-06)</option> <option value="/release/NWCLARK/perl-5.8.9/view/lib/perl5db.pl" >5.8.9 (NWCLARK on 2008-12-14)</option> <option value="/release/NWCLARK/perl-5.8.9-RC2/view/lib/perl5db.pl" >5.8.9-RC2 DEV (NWCLARK on 2008-12-06)</option> <option value="/release/NWCLARK/perl-5.8.9-RC1/view/lib/perl5db.pl" >5.8.9-RC1 DEV (NWCLARK on 2008-11-10)</option> <option value="/release/RGARCIA/perl-5.10.0/view/lib/perl5db.pl" >5.10.0 (RGARCIA on 2007-12-18)</option> <option value="/release/RGARCIA/perl-5.9.5/view/lib/perl5db.pl" >5.9.5 DEV (RGARCIA on 2007-07-07)</option> <option value="/release/RGARCIA/perl-5.9.4/view/lib/perl5db.pl" >5.9.4 DEV (RGARCIA on 2006-08-15)</option> <option value="/release/NWCLARK/perl-5.8.8/view/lib/perl5db.pl" >5.8.8 (NWCLARK on 2006-02-01)</option> <option value="/release/RGARCIA/perl-5.9.3/view/lib/perl5db.pl" >5.9.3 DEV (RGARCIA on 2006-01-28)</option> <option value="/release/NWCLARK/perl-5.8.8-RC1/view/lib/perl5db.pl" >5.8.8-RC1 DEV (NWCLARK on 2006-01-20)</option> <option value="/release/NWCLARK/perl-5.8.7/view/lib/perl5db.pl" >5.8.7 (NWCLARK on 2005-05-30)</option> <option value="/release/NWCLARK/perl-5.8.7-RC1/view/lib/perl5db.pl" >5.8.7-RC1 DEV (NWCLARK on 2005-05-18)</option> <option value="/release/RGARCIA/perl-5.9.2/view/lib/perl5db.pl" >5.9.2 DEV (RGARCIA on 2005-04-01)</option> <option value="/release/NWCLARK/perl-5.8.6/view/lib/perl5db.pl" >5.8.6 (NWCLARK on 2004-11-27)</option> <option value="/release/NWCLARK/perl-5.8.6-RC1/view/lib/perl5db.pl" >5.8.6-RC1 DEV (NWCLARK on 2004-11-11)</option> <option value="/release/NWCLARK/perl-5.8.5/view/lib/perl5db.pl" >5.8.5 (NWCLARK on 2004-07-19)</option> <option value="/release/NWCLARK/perl-5.8.5-RC2/view/lib/perl5db.pl" >5.8.5-RC2 DEV (NWCLARK on 2004-07-08)</option> <option value="/release/NWCLARK/perl-5.8.5-RC1/view/lib/perl5db.pl" >5.8.5-RC1 DEV (NWCLARK on 2004-07-06)</option> <option value="/release/NWCLARK/perl-5.8.4/view/lib/perl5db.pl" >5.8.4 (NWCLARK on 2004-04-21)</option> <option value="/release/NWCLARK/perl-5.8.4-RC2/view/lib/perl5db.pl" >5.8.4-RC2 DEV (NWCLARK on 2004-04-15)</option> <option value="/release/NWCLARK/perl-5.8.4-RC1/view/lib/perl5db.pl" >5.8.4-RC1 DEV (NWCLARK on 2004-04-05)</option> <option value="/release/RGARCIA/perl-5.9.1/view/lib/perl5db.pl" >5.9.1 DEV (RGARCIA on 2004-03-16)</option> <option value="/release/LBROCARD/perl5.005_04/view/lib/perl5db.pl" >5.005_04 (LBROCARD on 2004-02-23)</option> <option value="/release/NWCLARK/perl-5.8.3/view/lib/perl5db.pl" >5.8.3 (NWCLARK on 2004-01-14)</option> <option value="/release/NWCLARK/perl-5.8.3-RC1/view/lib/perl5db.pl" >5.8.3-RC1 DEV (NWCLARK on 2004-01-07)</option> <option value="/release/RGARCIA/perl-5.6.2/view/lib/perl5db.pl" >5.6.2 (RGARCIA on 2003-11-15)</option> <option value="/release/NWCLARK/perl-5.8.2/view/lib/perl5db.pl" >5.8.2 (NWCLARK on 2003-11-05)</option> <option value="/release/NWCLARK/perl-5.8.2-RC2/view/lib/perl5db.pl" >5.8.2-RC2 DEV (NWCLARK on 2003-11-03)</option> <option value="/release/NWCLARK/perl-5.8.2-RC1/view/lib/perl5db.pl" >5.8.2-RC1 DEV (NWCLARK on 2003-10-27)</option> <option value="/release/HVDS/perl-5.9.0/view/lib/perl5db.pl" >5.9.0 DEV (HVDS on 2003-10-27)</option> <option value="/release/JHI/perl-5.8.1/view/lib/perl5db.pl" >5.8.1 (JHI on 2003-09-25)</option> <option value="/release/JHI/perl-5.8.0/view/lib/perl5db.pl" >5.8.0 (JHI on 2002-07-18)</option> <option value="/release/JHI/perl-5.7.3/view/lib/perl5db.pl" >5.7.3 DEV (JHI on 2002-03-05)</option> <option value="/release/JHI/perl-5.7.2/view/lib/perl5db.pl" >5.7.2 DEV (JHI on 2001-07-13)</option> <option value="/release/GSAR/perl-5.6.1/view/lib/perl5db.pl" >5.6.1 (GSAR on 2001-04-09)</option> <option value="/release/GSAR/perl-5.6.1-TRIAL3/view/lib/perl5db.pl" >5.6.1-TRIAL3 DEV (GSAR on 2001-03-19)</option> <option value="/release/GSAR/perl-5.6.1-TRIAL2/view/lib/perl5db.pl" >5.6.1-TRIAL2 DEV (GSAR on 2001-01-31)</option> <option value="/release/GSAR/perl-5.6.1-TRIAL1/view/lib/perl5db.pl" >5.6.1-TRIAL1 DEV (GSAR on 2000-12-18)</option> <option value="/release/JHI/perl-5.7.0/view/lib/perl5db.pl" >5.7.0 DEV (JHI on 2000-09-02)</option> <option value="/release/GSAR/perl-5.6.0/view/lib/perl5db.pl" >5.6.0 (GSAR on 2000-03-23)</option> <option value="/release/CHIPS/perl5.004_05/view/lib/perl5db.pl" >5.004_05 (CHIPS on 1999-04-29)</option> <option value="/release/GBARR/perl5.005_03/view/lib/perl5db.pl" >5.005_03 (GBARR on 1999-03-29)</option> <option value="/release/GSAR/perl5.005_02/view/lib/perl5db.pl" >5.005_02 (GSAR on 1998-08-08)</option> <option value="/release/GSAR/perl5.005_01/view/lib/perl5db.pl" >5.005_01 (GSAR on 1998-07-27)</option> <option value="/release/GSAR/perl5.005/view/lib/perl5db.pl" >5.005 (GSAR on 1998-07-23)</option> <option value="/release/TIMB/perl5.004_04/view/lib/perl5db.pl" >5.004_04 (TIMB on 1997-10-15)</option> <option value="/release/TIMB/perl5.004_03/view/lib/perl5db.pl" >5.004_03 (TIMB on 1997-09-05)</option> <option value="/release/TIMB/perl5.004_02/view/lib/perl5db.pl" >5.004_02 (TIMB on 1997-08-07)</option> <option value="/release/TIMB/perl5.004_01/view/lib/perl5db.pl" >5.004_01 (TIMB on 1997-06-13)</option> <option value="/release/CHIPS/perl5.004/view/lib/perl5db.pl" >5.004 (CHIPS on 1997-05-15)</option> <optgroup label="BackPAN">' <option value="/release/PEVANS/perl-5.38.1a/view/lib/perl5db.pl" >5.38.1a (PEVANS on 2023-11-25)</option> <option value="/release/PEVANS/perl-5.36.2a/view/lib/perl5db.pl" >5.36.2a (PEVANS on 2023-11-25)</option> <option value="/release/PEVANS/perl-5.34.2a/view/lib/perl5db.pl" >5.34.2a (PEVANS on 2023-11-25)</option> <option value="/release/PEVANS/perl-5.38.1/view/lib/perl5db.pl" >5.38.1 (PEVANS on 2023-11-25)</option> <option value="/release/PEVANS/perl-5.36.2/view/lib/perl5db.pl" >5.36.2 (PEVANS on 2023-11-25)</option> <option value="/release/PEVANS/perl-5.34.2/view/lib/perl5db.pl" >5.34.2 (PEVANS on 2023-11-25)</option> <option value="/release/NEILB/perl-5.37.3/view/lib/perl5db.pl" >5.37.3 DEV (NEILB on 2022-08-20)</option> <option value="/release/NEILB/perl-5.35.7/view/lib/perl5db.pl" >5.35.7 DEV (NEILB on 2021-12-20)</option> <option value="/release/NEILB/perl-5.35.2/view/lib/perl5db.pl" >5.35.2 DEV (NEILB on 2021-07-23)</option> <option value="/release/TOMHUKINS/perl-5.33.4/view/lib/perl5db.pl" >5.33.4 DEV (TOMHUKINS on 2020-11-20)</option> <option value="/release/TOMHUKINS/perl-5.31.3/view/lib/perl5db.pl" >5.31.3 DEV (TOMHUKINS on 2019-08-20)</option> <option value="/release/SHAY/perl-5.26.1-RC1/view/lib/perl5db.pl" >5.26.1-RC1 DEV (SHAY on 2017-09-10)</option> <option value="/release/SHAY/perl-5.24.3-RC1/view/lib/perl5db.pl" >5.24.3-RC1 DEV (SHAY on 2017-09-10)</option> <option value="/release/SHAY/perl-5.22.4/view/lib/perl5db.pl" >5.22.4 (SHAY on 2017-07-15)</option> <option value="/release/SHAY/perl-5.24.2-RC1/view/lib/perl5db.pl" >5.24.2-RC1 DEV (SHAY on 2017-07-01)</option> <option value="/release/XSAWYERX/perl-5.27.0/view/lib/perl5db.pl" >5.27.0 DEV (XSAWYERX on 2017-05-31)</option> <option value="/release/XSAWYERX/perl-5.26.0-RC2/view/lib/perl5db.pl" >5.26.0-RC2 DEV (XSAWYERX on 2017-05-23)</option> <option value="/release/XSAWYERX/perl-5.26.0-RC1/view/lib/perl5db.pl" >5.26.0-RC1 DEV (XSAWYERX on 2017-05-11)</option> <option value="/release/XSAWYERX/perl-5.25.12/view/lib/perl5db.pl" >5.25.12 DEV (XSAWYERX on 2017-04-20)</option> <option value="/release/XSAWYERX/perl-5.25.11/view/lib/perl5db.pl" >5.25.11 DEV (XSAWYERX on 2017-03-20)</option> <option value="/release/SHAY/perl-5.24.1/view/lib/perl5db.pl" >5.24.1 (SHAY on 2017-01-14)</option> <option value="/release/SHAY/perl-5.24.1-RC5/view/lib/perl5db.pl" >5.24.1-RC5 DEV (SHAY on 2017-01-02)</option> <option value="/release/SHAY/perl-5.22.3-RC5/view/lib/perl5db.pl" >5.22.3-RC5 DEV (SHAY on 2017-01-02)</option> <option value="/release/XSAWYERX/perl-5.25.8/view/lib/perl5db.pl" >5.25.8 DEV (XSAWYERX on 2016-12-20)</option> <option value="/release/SHAY/perl-5.24.1-RC4/view/lib/perl5db.pl" >5.24.1-RC4 DEV (SHAY on 2016-10-12)</option> <option value="/release/SHAY/perl-5.22.3-RC4/view/lib/perl5db.pl" >5.22.3-RC4 DEV (SHAY on 2016-10-12)</option> <option value="/release/SHAY/perl-5.24.1-RC3/view/lib/perl5db.pl" >5.24.1-RC3 DEV (SHAY on 2016-08-11)</option> <option value="/release/SHAY/perl-5.22.3-RC3/view/lib/perl5db.pl" >5.22.3-RC3 DEV (SHAY on 2016-08-11)</option> <option value="/release/SHAY/perl-5.24.1-RC2/view/lib/perl5db.pl" >5.24.1-RC2 DEV (SHAY on 2016-07-25)</option> <option value="/release/SHAY/perl-5.22.3-RC2/view/lib/perl5db.pl" >5.22.3-RC2 DEV (SHAY on 2016-07-25)</option> <option value="/release/SHAY/perl-5.25.3/view/lib/perl5db.pl" >5.25.3 DEV (SHAY on 2016-07-20)</option> <option value="/release/SHAY/perl-5.24.1-RC1/view/lib/perl5db.pl" >5.24.1-RC1 DEV (SHAY on 2016-07-17)</option> <option value="/release/SHAY/perl-5.22.3-RC1/view/lib/perl5db.pl" >5.22.3-RC1 DEV (SHAY on 2016-07-17)</option> <option value="/release/XSAWYERX/perl-5.25.1/view/lib/perl5db.pl" >5.25.1 DEV (XSAWYERX on 2016-05-20)</option> <option value="/release/RJBS/perl-5.25.0/view/lib/perl5db.pl" >5.25.0 DEV (RJBS on 2016-05-09)</option> <option value="/release/RJBS/perl-5.24.0-RC5/view/lib/perl5db.pl" >5.24.0-RC5 DEV (RJBS on 2016-05-04)</option> <option value="/release/RJBS/perl-5.24.0-RC4/view/lib/perl5db.pl" >5.24.0-RC4 DEV (RJBS on 2016-05-02)</option> <option value="/release/SHAY/perl-5.22.2/view/lib/perl5db.pl" >5.22.2 (SHAY on 2016-04-29)</option> <option value="/release/RJBS/perl-5.24.0-RC3/view/lib/perl5db.pl" >5.24.0-RC3 DEV (RJBS on 2016-04-27)</option> <option value="/release/RJBS/perl-5.24.0-RC2/view/lib/perl5db.pl" >5.24.0-RC2 DEV (RJBS on 2016-04-23)</option> <option value="/release/RJBS/perl-5.24.0-RC1/view/lib/perl5db.pl" >5.24.0-RC1 DEV (RJBS on 2016-04-14)</option> <option value="/release/SHAY/perl-5.22.2-RC1/view/lib/perl5db.pl" >5.22.2-RC1 DEV (SHAY on 2016-04-10)</option> <option value="/release/XSAWYERX/perl-5.23.8/view/lib/perl5db.pl" >5.23.8 DEV (XSAWYERX on 2016-02-20)</option> <option value="/release/SHAY/perl-5.22.1-RC4/view/lib/perl5db.pl" >5.22.1-RC4 DEV (SHAY on 2015-12-08)</option> <option value="/release/SHAY/perl-5.22.1-RC3/view/lib/perl5db.pl" >5.22.1-RC3 DEV (SHAY on 2015-12-02)</option> <option value="/release/SHAY/perl-5.22.1-RC2/view/lib/perl5db.pl" >5.22.1-RC2 DEV (SHAY on 2015-11-15)</option> <option value="/release/SHAY/perl-5.22.1-RC1/view/lib/perl5db.pl" >5.22.1-RC1 DEV (SHAY on 2015-10-31)</option> <option value="/release/SHAY/perl-5.23.4/view/lib/perl5db.pl" >5.23.4 DEV (SHAY on 2015-10-20)</option> <option value="/release/SHAY/perl-5.20.3/view/lib/perl5db.pl" >5.20.3 (SHAY on 2015-09-12)</option> <option value="/release/SHAY/perl-5.20.3-RC2/view/lib/perl5db.pl" >5.20.3-RC2 DEV (SHAY on 2015-08-29)</option> <option value="/release/SHAY/perl-5.20.3-RC1/view/lib/perl5db.pl" >5.20.3-RC1 DEV (SHAY on 2015-08-22)</option> <option value="/release/RJBS/perl-5.23.0/view/lib/perl5db.pl" >5.23.0 DEV (RJBS on 2015-06-20)</option> <option value="/release/SHAY/perl-5.21.11/view/lib/perl5db.pl" >5.21.11 DEV (SHAY on 2015-04-20)</option> <option value="/release/SHAY/perl-5.21.10/view/lib/perl5db.pl" >5.21.10 DEV (SHAY on 2015-03-20)</option> <option value="/release/XSAWYERX/perl-5.21.9/view/lib/perl5db.pl" >5.21.9 DEV (XSAWYERX on 2015-02-21)</option> <option value="/release/SHAY/perl-5.20.2/view/lib/perl5db.pl" >5.20.2 (SHAY on 2015-02-14)</option> <option value="/release/SHAY/perl-5.20.2-RC1/view/lib/perl5db.pl" >5.20.2-RC1 DEV (SHAY on 2015-02-01)</option> <option value="/release/CORION/perl-5.21.7/view/lib/perl5db.pl" >5.21.7 DEV (CORION on 2014-12-20)</option> <option value="/release/SHAY/perl-5.21.4/view/lib/perl5db.pl" >5.21.4 DEV (SHAY on 2014-09-20)</option> <option value="/release/SHAY/perl-5.20.1/view/lib/perl5db.pl" >5.20.1 (SHAY on 2014-09-14)</option> <option value="/release/SHAY/perl-5.20.1-RC2/view/lib/perl5db.pl" >5.20.1-RC2 DEV (SHAY on 2014-09-07)</option> <option value="/release/SHAY/perl-5.20.1-RC1/view/lib/perl5db.pl" >5.20.1-RC1 DEV (SHAY on 2014-08-25)</option> <option value="/release/RJBS/perl-5.21.0/view/lib/perl5db.pl" >5.21.0 DEV (RJBS on 2014-05-27)</option> <option value="/release/SHAY/perl-5.19.11/view/lib/perl5db.pl" >5.19.11 DEV (SHAY on 2014-04-20)</option> <option value="/release/RJBS/perl-5.19.8/view/lib/perl5db.pl" >5.19.8 DEV (RJBS on 2014-01-20)</option> <option value="/release/SHAY/perl-5.19.5/view/lib/perl5db.pl" >5.19.5 DEV (SHAY on 2013-10-20)</option> <option value="/release/SHAY/perl-5.19.4/view/lib/perl5db.pl" >5.19.4 DEV (SHAY on 2013-09-20)</option> <option value="/release/SHAY/perl-5.19.3/view/lib/perl5db.pl" >5.19.3 DEV (SHAY on 2013-08-20)</option> <option value="/release/ARISTOTLE/perl-5.19.2/view/lib/perl5db.pl" >5.19.2 DEV (ARISTOTLE on 2013-07-22)</option> <option value="/release/RJBS/perl-5.19.0/view/lib/perl5db.pl" >5.19.0 DEV (RJBS on 2013-05-20)</option> <option value="/release/RJBS/perl-5.17.11/view/lib/perl5db.pl" >5.17.11 DEV (RJBS on 2013-04-21)</option> <option value="/release/CORION/perl-5.17.10/view/lib/perl5db.pl" >5.17.10 DEV (CORION on 2013-03-21)</option> <option value="/release/RJBS/perl-5.17.6/view/lib/perl5db.pl" >5.17.6 DEV (RJBS on 2012-11-21)</option> <option value="/release/SHAY/perl-5.17.3/view/lib/perl5db.pl" >5.17.3 DEV (SHAY on 2012-08-20)</option> <option value="/release/CORION/perl-5.15.8/view/lib/perl5db.pl" >5.15.8 DEV (CORION on 2012-02-20)</option> <option value="/release/SHAY/perl-5.15.5/view/lib/perl5db.pl" >5.15.5 DEV (SHAY on 2011-11-20)</option> <option value="/release/RJBS/perl-5.15.2/view/lib/perl5db.pl" >5.15.2 DEV (RJBS on 2011-08-21)</option> <option value="/release/SHAY/perl-5.13.5/view/lib/perl5db.pl" >5.13.5 DEV (SHAY on 2010-09-19)</option> <option value="/release/RJBS/perl-5.13.1/view/lib/perl5db.pl" >5.13.1 DEV (RJBS on 2010-05-20)</option> <option value="/release/JESSE/perl-5.12.0-RC0/view/lib/perl5db.pl" >5.12.0-RC0 DEV (JESSE on 2010-03-21)</option> <option value="/release/SHAY/perl-5.11.5/view/lib/perl5db.pl" >5.11.5 DEV (SHAY on 2010-02-21)</option> <option value="/release/RJBS/perl-5.11.4/view/lib/perl5db.pl" >5.11.4 DEV (RJBS on 2010-01-20)</option> <option value="/release/RGARCIA/perl-5.10.0-RC2/view/lib/perl5db.pl" >5.10.0-RC2 DEV (RGARCIA on 2007-11-25)</option> <option value="/release/RGARCIA/perl-5.10.0-RC1/view/lib/perl5db.pl" >5.10.0-RC1 DEV (RGARCIA on 2007-11-17)</option> <option value="/release/LBROCARD/perl5.005_04-RC2/view/lib/perl5db.pl" >5.005_04-RC2 DEV (LBROCARD on 2004-02-18)</option> <option value="/release/LBROCARD/perl5.005_04-RC1/view/lib/perl5db.pl" >5.005_04-RC1 DEV (LBROCARD on 2004-02-04)</option> <option value="/release/LBROCARD/perl5.005_03-MAINT22213/view/lib/perl5db.pl" >5.005_03-MAINT22213 DEV (LBROCARD on 2004-01-27)</option> <option value="/release/LBROCARD/perl5.005_03-MAINT22178/view/lib/perl5db.pl" >5.005_03-MAINT22178 DEV (LBROCARD on 2004-01-20)</option> <option value="/release/LBROCARD/perl5.005_03-MAINT21792/view/lib/perl5db.pl" >5.005_03-MAINT21792 DEV (LBROCARD on 2003-12-05)</option> <option value="/release/RGARCIA/perl-5.6.2-RC1/view/lib/perl5db.pl" >5.6.2-RC1 DEV (RGARCIA on 2003-11-08)</option> <option value="/release/JHI/perl-5.8.1-RC5/view/lib/perl5db.pl" >5.8.1-RC5 DEV (JHI on 2003-09-22)</option> <option value="/release/JHI/perl-5.8.1-RC4/view/lib/perl5db.pl" >5.8.1-RC4 DEV (JHI on 2003-08-01)</option> <option value="/release/JHI/perl-5.8.1-RC3/view/lib/perl5db.pl" >5.8.1-RC3 DEV (JHI on 2003-07-30)</option> <option value="/release/JHI/perl-5.8.1-RC2/view/lib/perl5db.pl" >5.8.1-RC2 DEV (JHI on 2003-07-11)</option> <option value="/release/JHI/perl-5.8.1-RC1/view/lib/perl5db.pl" >5.8.1-RC1 DEV (JHI on 2003-07-10)</option> <option value="/release/JHI/perl-5.8.0-RC3/view/lib/perl5db.pl" >5.8.0-RC3 DEV (JHI on 2002-07-14)</option> <option value="/release/JHI/perl-5.8.0-RC2/view/lib/perl5db.pl" >5.8.0-RC2 DEV (JHI on 2002-06-21)</option> <option value="/release/JHI/perl-5.8.0-RC1/view/lib/perl5db.pl" >5.8.0-RC1 DEV (JHI on 2002-06-01)</option> <option value="/release/JHI/perl-5.7.1/view/lib/perl5db.pl" >5.7.1 DEV (JHI on 2001-04-10)</option> <option value="/release/GSAR/perl-5.5.670/view/lib/perl5db.pl" >5.5.670 DEV (GSAR on 2000-03-01)</option> <option value="/release/GSAR/perl5.5.660/view/lib/perl5db.pl" >5.5.660 DEV (GSAR on 2000-02-22)</option> <option value="/release/GSAR/perl5.5.650/view/lib/perl5db.pl" >5.5.650 DEV (GSAR on 2000-02-08)</option> <option value="/release/GSAR/perl5.5.640/view/lib/perl5db.pl" >5.5.640 DEV (GSAR on 2000-02-02)</option> <option value="/release/GSAR/perl5.005_63/view/lib/perl5db.pl" >5.005_63 DEV (GSAR on 1999-12-09)</option> <option value="/release/GSAR/perl5.005_62/view/lib/perl5db.pl" >5.005_62 DEV (GSAR on 1999-10-15)</option> <option value="/release/GSAR/perl5.005_61/view/lib/perl5db.pl" >5.005_61 DEV (GSAR on 1999-08-22)</option> <option value="/release/GSAR/perl5.005_60/view/lib/perl5db.pl" >5.005_60 DEV (GSAR on 1999-08-02)</option> <option value="/release/GSAR/perl5.005_59/view/lib/perl5db.pl" >5.005_59 DEV (GSAR on 1999-08-02)</option> <option value="/release/GSAR/perl5.005_58/view/lib/perl5db.pl" >5.005_58 DEV (GSAR on 1999-07-27)</option> <option value="/release/GSAR/perl5.005_57/view/lib/perl5db.pl" >5.005_57 DEV (GSAR on 1999-05-25)</option> <option value="/release/CHIPS/perl5.004_05-MAINT_TRIAL_9/view/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_9 DEV (CHIPS on 1999-04-27)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_6/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_6 DEV (GBARR on 1999-03-05)</option> <option value="/release/GSAR/perl5.005_56/view/lib/perl5db.pl" >5.005_56 DEV (GSAR on 1999-03-01)</option> <option value="/release/GSAR/perl5.005_55/view/lib/perl5db.pl" >5.005_55 DEV (GSAR on 1999-02-16)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_5/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_5 DEV (GBARR on 1999-01-29)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_4/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_4 DEV (GBARR on 1999-01-26)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_3/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_3 DEV (GBARR on 1999-01-17)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_2/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_2 DEV (GBARR on 1999-01-03)</option> <option value="/release/TIMB/perl5.004_05-MAINT_TRIAL_8/view/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_8 DEV (TIMB on 1998-12-03)</option> <option value="/release/GSAR/perl5.005_54/view/lib/perl5db.pl" >5.005_54 DEV (GSAR on 1998-11-30)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_1/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_1 DEV (GBARR on 1998-11-30)</option> <option value="/release/TIMB/perl5.004_05-MAINT_TRIAL_7/view/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_7 DEV (TIMB on 1998-11-22)</option> <option value="/release/GSAR/perl5.005_53/view/lib/perl5db.pl" >5.005_53 DEV (GSAR on 1998-10-31)</option> <option value="/release/TIMB/perl5.004_05-MAINT_TRIAL_6/view/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_6 DEV (TIMB on 1998-10-09)</option> <option value="/release/GSAR/perl5.005_52/view/lib/perl5db.pl" >5.005_52 DEV (GSAR on 1998-09-25)</option> <option value="/release/GSAR/perl5.005_51/view/lib/perl5db.pl" >5.005_51 DEV (GSAR on 1998-08-10)</option> <option value="/release/GSAR/perl5.005_02-TRIAL2/view/lib/perl5db.pl" >5.005_02-TRIAL2 DEV (GSAR on 1998-08-05)</option> <option value="/release/GSAR/perl5.005_02-TRIAL1/view/lib/perl5db.pl" >5.005_02-TRIAL1 DEV (GSAR on 1998-08-02)</option> <option value="/release/GSAR/perl5.005_50/view/lib/perl5db.pl" >5.005_50 DEV (GSAR on 1998-07-26)</option> <option value="/release/GSAR/perl5.005-beta2/view/lib/perl5db.pl" >5.005-beta2 (GSAR on 1998-07-21)</option> <option value="/release/TIMB/perl5.004_05-MAINT_TRIAL_5/view/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_5 DEV (TIMB on 1998-07-21)</option> <option value="/release/GSAR/perl5.005-beta1/view/lib/perl5db.pl" >5.005-beta1 (GSAR on 1998-07-15)</option> <option value="/release/GSAR/perl5.004_74/view/lib/perl5db.pl" >5.004_74 DEV (GSAR on 1998-07-14)</option> <option value="/release/GSAR/perl5.004_73/view/lib/perl5db.pl" >5.004_73 DEV (GSAR on 1998-07-13)</option> <option value="/release/GSAR/perl5.004_72/view/lib/perl5db.pl" >5.004_72 DEV (GSAR on 1998-07-12)</option> <option value="/release/GSAR/perl5.004_71/view/lib/perl5db.pl" >5.004_71 DEV (GSAR on 1998-07-09)</option> <option value="/release/GSAR/perl5.004_70/view/lib/perl5db.pl" >5.004_70 DEV (GSAR on 1998-07-06)</option> <option value="/release/GSAR/perl5.004_69/view/lib/perl5db.pl" >5.004_69 DEV (GSAR on 1998-06-29)</option> <option value="/release/GSAR/perl5.004_68/view/lib/perl5db.pl" >5.004_68 DEV (GSAR on 1998-06-23)</option> <option value="/release/GSAR/perl5.004_67/view/lib/perl5db.pl" >5.004_67 DEV (GSAR on 1998-06-15)</option> <option value="/release/MICB/perl5.004_66/view/lib/perl5db.pl" >5.004_66 DEV (MICB on 1998-05-29)</option> <option value="/release/TIMB/perl5.004_04-m4/view/lib/perl5db.pl" >5.004_04-m4 DEV (TIMB on 1998-05-19)</option> <option value="/release/TIMB/perl5.004_04-m3/view/lib/perl5db.pl" >5.004_04-m3 DEV (TIMB on 1998-05-15)</option> <option value="/release/MICB/perl5.004_65/view/lib/perl5db.pl" >5.004_65 DEV (MICB on 1998-05-15)</option> <option value="/release/TIMB/perl5.004_04-m2/view/lib/perl5db.pl" >5.004_04-m2 DEV (TIMB on 1998-05-01)</option> <option value="/release/MICB/perl5.004_64/view/lib/perl5db.pl" >5.004_64 DEV (MICB on 1998-04-03)</option> <option value="/release/MICB/perl5.004_63/view/lib/perl5db.pl" >5.004_63 DEV (MICB on 1998-03-17)</option> <option value="/release/MICB/perl5.004_62/view/lib/perl5db.pl" >5.004_62 DEV (MICB on 1998-03-06)</option> <option value="/release/TIMB/perl5.004m5t1/view/lib/perl5db.pl" >5.004m5t1 (TIMB on 1998-03-04)</option> <option value="/release/MICB/perl5.004_61/view/lib/perl5db.pl" >5.004_61 DEV (MICB on 1998-02-27)</option> <option value="/release/MICB/perl5.004_60/view/lib/perl5db.pl" >5.004_60 DEV (MICB on 1998-02-20)</option> <option value="/release/MICB/perl5.004_59/view/lib/perl5db.pl" >5.004_59 DEV (MICB on 1998-02-13)</option> <option value="/release/MICB/perl5.004_58/view/lib/perl5db.pl" >5.004_58 DEV (MICB on 1998-02-06)</option> <option value="/release/MICB/perl5.004_57/view/lib/perl5db.pl" >5.004_57 DEV (MICB on 1998-02-03)</option> <option value="/release/MICB/perl5.004_56/view/lib/perl5db.pl" >5.004_56 DEV (MICB on 1997-12-18)</option> <option value="/release/MICB/perl5.004_55/view/lib/perl5db.pl" >5.004_55 DEV (MICB on 1997-11-25)</option> <option value="/release/MICB/perl5.004_54/view/lib/perl5db.pl" >5.004_54 DEV (MICB on 1997-11-14)</option> <option value="/release/MICB/perl5.004_53/view/lib/perl5db.pl" >5.004_53 DEV (MICB on 1997-10-16)</option> <option value="/release/MICB/perl5.004_52/view/lib/perl5db.pl" >5.004_52 DEV (MICB on 1997-10-15)</option> <option value="/release/TIMB/perl5.004m4t4/view/lib/perl5db.pl" >5.004m4t4 (TIMB on 1997-10-14)</option> <option value="/release/TIMB/perl5.004m4t3/view/lib/perl5db.pl" >5.004m4t3 (TIMB on 1997-10-09)</option> <option value="/release/MICB/perl5.004_51/view/lib/perl5db.pl" >5.004_51 DEV (MICB on 1997-10-02)</option> <option value="/release/TIMB/perl5.004m4t2/view/lib/perl5db.pl" >5.004m4t2 (TIMB on 1997-09-23)</option> <option value="/release/TIMB/perl5.004m4t1/view/lib/perl5db.pl" >5.004m4t1 (TIMB on 1997-09-19)</option> <option value="/release/TIMB/perl5.004m3t2/view/lib/perl5db.pl" >5.004m3t2 (TIMB on 1997-09-05)</option> <option value="/release/CHIPS/perl5.003_99a/view/lib/perl5db.pl" >5.003_99a DEV (CHIPS on 1997-05-09)</option> <option value="/release/CHIPS/perl5.003_99/view/lib/perl5db.pl" >5.003_99 DEV (CHIPS on 1997-05-01)</option> <option value="/release/CHIPS/perl5.003_98/view/lib/perl5db.pl" >5.003_98 DEV (CHIPS on 1997-04-30)</option> <option value="/release/CHIPS/perl5.003_97j/view/lib/perl5db.pl" >5.003_97j DEV (CHIPS on 1997-04-28)</option> <option value="/release/CHIPS/perl5.003_97i/view/lib/perl5db.pl" >5.003_97i DEV (CHIPS on 1997-04-25)</option> <option value="/release/CHIPS/perl5.003_97h/view/lib/perl5db.pl" >5.003_97h DEV (CHIPS on 1997-04-24)</option> <option value="/release/CHIPS/perl5.003_97/view/lib/perl5db.pl" >5.003_97 DEV (CHIPS on 1997-04-03)</option> <option value="/release/CHIPS/perl5.003_96/view/lib/perl5db.pl" >5.003_96 DEV (CHIPS on 1997-04-01)</option> <option value="/release/CHIPS/perl5.003_95/view/lib/perl5db.pl" >5.003_95 DEV (CHIPS on 1997-03-25)</option> <option value="/release/CHIPS/perl5.003_94/view/lib/perl5db.pl" >5.003_94 DEV (CHIPS on 1997-03-22)</option> <option value="/release/CHIPS/perl5.003_93/view/lib/perl5db.pl" >5.003_93 DEV (CHIPS on 1997-03-10)</option> <option value="/release/CHIPS/perl5.003_92/view/lib/perl5db.pl" >5.003_92 DEV (CHIPS on 1997-03-06)</option> <option value="/release/CHIPS/perl5.003_91/view/lib/perl5db.pl" >5.003_91 DEV (CHIPS on 1997-03-01)</option> <option value="/release/CHIPS/perl5.003_90/view/lib/perl5db.pl" >5.003_90 DEV (CHIPS on 1997-02-25)</option> <option value="/release/CHIPS/perl5.003_28/view/lib/perl5db.pl" >5.003_28 (CHIPS on 1997-02-21)</option> <option value="/release/CHIPS/perl5.003_27/view/lib/perl5db.pl" >5.003_27 (CHIPS on 1997-02-18)</option> <option value="/release/CHIPS/perl5.003_26/view/lib/perl5db.pl" >5.003_26 (CHIPS on 1997-02-10)</option> <option value="/release/CHIPS/perl5.003_25/view/lib/perl5db.pl" >5.003_25 (CHIPS on 1997-02-04)</option> <option value="/release/CHIPS/perl5.003_24/view/lib/perl5db.pl" >5.003_24 (CHIPS on 1997-01-29)</option> <option value="/release/CHIPS/perl5.003_23/view/lib/perl5db.pl" >5.003_23 (CHIPS on 1997-01-25)</option> <option value="/release/CHIPS/perl5.003_22/view/lib/perl5db.pl" >5.003_22 (CHIPS on 1997-01-16)</option> <option value="/release/CHIPS/perl5.003_21/view/lib/perl5db.pl" >5.003_21 (CHIPS on 1997-01-15)</option> <option value="/release/CHIPS/perl5.003_20/view/lib/perl5db.pl" >5.003_20 (CHIPS on 1997-01-08)</option> <option value="/release/CHIPS/perl5.003_19/view/lib/perl5db.pl" >5.003_19 (CHIPS on 1997-01-04)</option> <option value="/release/CHIPS/perl5.003_18/view/lib/perl5db.pl" >5.003_18 (CHIPS on 1996-12-31)</option> <option value="/release/CHIPS/perl5.003_17/view/lib/perl5db.pl" >5.003_17 (CHIPS on 1996-12-27)</option> <option value="/release/CHIPS/perl5.003_16/view/lib/perl5db.pl" >5.003_16 (CHIPS on 1996-12-24)</option> <option value="/release/CHIPS/perl5.003_15/view/lib/perl5db.pl" >5.003_15 (CHIPS on 1996-12-23)</option> <option value="/release/CHIPS/perl-5.003_13/view/lib/perl5db.pl" >5.003_13 (CHIPS on 1996-12-20)</option> <option value="/release/CHIPS/perl5.003_12/view/lib/perl5db.pl" >5.003_12 (CHIPS on 1996-12-19)</option> <option value="/release/CHIPS/perl5.003_11/view/lib/perl5db.pl" >5.003_11 (CHIPS on 1996-12-06)</option> <option value="/release/CHIPS/perl5.003_10/view/lib/perl5db.pl" >5.003_10 (CHIPS on 1996-11-30)</option> <option value="/release/CHIPS/perl5.003_09/view/lib/perl5db.pl" >5.003_09 (CHIPS on 1996-11-26)</option> <option value="/release/CHIPS/perl5.003_08/view/lib/perl5db.pl" >5.003_08 (CHIPS on 1996-11-19)</option> <option value="/release/ANDYD/perl5.003_07/view/lib/perl5db.pl" >5.003_07 (ANDYD on 1996-10-11)</option> <option value="/release/ANDYD/perl5.003_06/view/lib/perl5db.pl" >5.003_06 (ANDYD on 1996-10-08)</option> <option value="/release/ANDYD/perl5.003_05/view/lib/perl5db.pl" >5.003_05 (ANDYD on 1996-09-12)</option> <option value="/release/ANDYD/perl5.003_04/view/lib/perl5db.pl" >5.003_04 (ANDYD on 1996-09-02)</option> <option value="/release/ANDYD/perl5.003_03/view/lib/perl5db.pl" >5.003_03 (ANDYD on 1996-08-28)</option> <option value="/release/NI-S/perl5.003_02/view/lib/perl5db.pl" >5.003_02 (NI-S on 1996-08-10)</option> <option value="/release/NI-S/perl5.003_02a/view/lib/perl5db.pl" >5.003_02a DEV (NI-S on 1996-08-08)</option> <option value="/release/LWALL/perl5.002b3/view/lib/perl5db.pl" >5.002b3 (LWALL on 1996-02-03)</option> </optgroup> </select> </li> <li class="version-diff"> <select class="select-navigator form-control tool-bar-form"> <option disabled selected>Diff with version</option> <option value="/release/SHAY/perl-5.40.1/diff/MAUKE/perl-5.41.10/lib/perl5db.pl" >5.41.10 DEV (MAUKE on 2025-03-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/HYDAHY/perl-5.41.9/lib/perl5db.pl" >5.41.9 DEV (HYDAHY on 2025-02-24)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.41.8/lib/perl5db.pl" >5.41.8 DEV (SHAY on 2025-01-20)</option> <option disabled value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.40.1/lib/perl5db.pl" >5.40.1 (SHAY on 2025-01-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.38.3/lib/perl5db.pl" >5.38.3 (SHAY on 2025-01-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.40.1-RC1/lib/perl5db.pl" >5.40.1-RC1 DEV (SHAY on 2025-01-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.38.3-RC1/lib/perl5db.pl" >5.38.3-RC1 DEV (SHAY on 2025-01-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/CORION/perl-5.41.7/lib/perl5db.pl" >5.41.7 DEV (CORION on 2024-12-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/CONTRA/perl-5.41.6/lib/perl5db.pl" >5.41.6 DEV (CONTRA on 2024-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/HYDAHY/perl-5.41.5/lib/perl5db.pl" >5.41.5 DEV (HYDAHY on 2024-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/CONTRA/perl-5.41.4/lib/perl5db.pl" >5.41.4 DEV (CONTRA on 2024-09-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/BOOK/perl-5.41.3/lib/perl5db.pl" >5.41.3 DEV (BOOK on 2024-08-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/ETHER/perl-5.41.2/lib/perl5db.pl" >5.41.2 DEV (ETHER on 2024-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/BOOK/perl-5.41.1/lib/perl5db.pl" >5.41.1 DEV (BOOK on 2024-07-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/HAARG/perl-5.40.0/lib/perl5db.pl" >5.40.0 (HAARG on 2024-06-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/HAARG/perl-5.40.0-RC2/lib/perl5db.pl" >5.40.0-RC2 DEV (HAARG on 2024-06-04)</option> <option value="/release/SHAY/perl-5.40.1/diff/HAARG/perl-5.40.0-RC1/lib/perl5db.pl" >5.40.0-RC1 DEV (HAARG on 2024-05-24)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.39.10/lib/perl5db.pl" >5.39.10 DEV (PEVANS on 2024-04-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.39.9/lib/perl5db.pl" >5.39.9 DEV (PEVANS on 2024-03-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RENEEB/perl-5.39.8/lib/perl5db.pl" >5.39.8 DEV (RENEEB on 2024-02-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/CORION/perl-5.39.7/lib/perl5db.pl" >5.39.7 DEV (CORION on 2024-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/BOOK/perl-5.39.6/lib/perl5db.pl" >5.39.6 DEV (BOOK on 2023-12-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.38.2/lib/perl5db.pl" >5.38.2 (PEVANS on 2023-11-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.36.3/lib/perl5db.pl" >5.36.3 (PEVANS on 2023-11-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.34.3/lib/perl5db.pl" >5.34.3 (PEVANS on 2023-11-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/ETHER/perl-5.39.5/lib/perl5db.pl" >5.39.5 DEV (ETHER on 2023-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/HAARG/perl-5.39.4/lib/perl5db.pl" >5.39.4 DEV (HAARG on 2023-10-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/WOLFSAGE/perl-5.39.3/lib/perl5db.pl" >5.39.3 DEV (WOLFSAGE on 2023-09-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.39.2/lib/perl5db.pl" >5.39.2 DEV (PEVANS on 2023-08-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.39.1/lib/perl5db.pl" >5.39.1 DEV (SHAY on 2023-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.38.0/lib/perl5db.pl" >5.38.0 (RJBS on 2023-07-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.38.0-RC2/lib/perl5db.pl" >5.38.0-RC2 DEV (RJBS on 2023-06-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.38.0-RC1/lib/perl5db.pl" >5.38.0-RC1 DEV (RJBS on 2023-06-16)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.36.1/lib/perl5db.pl" >5.36.1 (SHAY on 2023-04-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.37.11/lib/perl5db.pl" >5.37.11 DEV (SHAY on 2023-04-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.36.1-RC3/lib/perl5db.pl" >5.36.1-RC3 DEV (SHAY on 2023-04-16)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.36.1-RC2/lib/perl5db.pl" >5.36.1-RC2 DEV (SHAY on 2023-04-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.36.1-RC1/lib/perl5db.pl" >5.36.1-RC1 DEV (SHAY on 2023-04-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/YVES/perl-5.37.10/lib/perl5db.pl" >5.37.10 DEV (YVES on 2023-03-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/ETHER/perl-5.37.9/lib/perl5db.pl" >5.37.9 DEV (ETHER on 2023-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RENEEB/perl-5.37.8/lib/perl5db.pl" >5.37.8 DEV (RENEEB on 2023-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/HYDAHY/perl-5.37.7/lib/perl5db.pl" >5.37.7 DEV (HYDAHY on 2022-12-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/CORION/perl-5.37.6/lib/perl5db.pl" >5.37.6 DEV (CORION on 2022-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/TODDR/perl-5.37.5/lib/perl5db.pl" >5.37.5 DEV (TODDR on 2022-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ETHER/perl-5.37.4/lib/perl5db.pl" >5.37.4 DEV (ETHER on 2022-09-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/ATOOMIC/perl-5.37.2/lib/perl5db.pl" >5.37.2 DEV (ATOOMIC on 2022-07-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/WOLFSAGE/perl-5.37.1/lib/perl5db.pl" >5.37.1 DEV (WOLFSAGE on 2022-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.37.0/lib/perl5db.pl" >5.37.0 DEV (RJBS on 2022-05-28)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.36.0/lib/perl5db.pl" >5.36.0 (RJBS on 2022-05-28)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.36.0-RC3/lib/perl5db.pl" >5.36.0-RC3 DEV (RJBS on 2022-05-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.36.0-RC2/lib/perl5db.pl" >5.36.0-RC2 DEV (RJBS on 2022-05-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.35.11/lib/perl5db.pl" >5.35.11 DEV (SHAY on 2022-04-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.35.10/lib/perl5db.pl" >5.35.10 DEV (XSAWYERX on 2022-03-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.34.1/lib/perl5db.pl" >5.34.1 (SHAY on 2022-03-13)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.34.1-RC2/lib/perl5db.pl" >5.34.1-RC2 DEV (SHAY on 2022-03-06)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.34.1-RC1/lib/perl5db.pl" >5.34.1-RC1 DEV (SHAY on 2022-02-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/RENEEB/perl-5.35.9/lib/perl5db.pl" >5.35.9 DEV (RENEEB on 2022-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ATOOMIC/perl-5.35.8/lib/perl5db.pl" >5.35.8 DEV (ATOOMIC on 2022-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/HYDAHY/perl-5.35.6/lib/perl5db.pl" >5.35.6 DEV (HYDAHY on 2021-11-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/LEONT/perl-5.35.5/lib/perl5db.pl" >5.35.5 DEV (LEONT on 2021-10-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/WOLFSAGE/perl-5.35.4/lib/perl5db.pl" >5.35.4 DEV (WOLFSAGE on 2021-09-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ETHER/perl-5.35.3/lib/perl5db.pl" >5.35.3 DEV (ETHER on 2021-08-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/CORION/perl-5.35.1/lib/perl5db.pl" >5.35.1 DEV (CORION on 2021-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.35.0/lib/perl5db.pl" >5.35.0 DEV (RJBS on 2021-05-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.34.0/lib/perl5db.pl" >5.34.0 (XSAWYERX on 2021-05-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.34.0-RC2/lib/perl5db.pl" >5.34.0-RC2 DEV (XSAWYERX on 2021-05-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.34.0-RC1/lib/perl5db.pl" >5.34.0-RC1 DEV (XSAWYERX on 2021-05-04)</option> <option value="/release/SHAY/perl-5.40.1/diff/TODDR/perl-5.33.9/lib/perl5db.pl" >5.33.9 DEV (TODDR on 2021-04-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ATOOMIC/perl-5.33.8/lib/perl5db.pl" >5.33.8 DEV (ATOOMIC on 2021-03-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/RENEEB/perl-5.33.7/lib/perl5db.pl" >5.33.7 DEV (RENEEB on 2021-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.32.1/lib/perl5db.pl" >5.32.1 (SHAY on 2021-01-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/HYDAHY/perl-5.33.6/lib/perl5db.pl" >5.33.6 DEV (HYDAHY on 2021-01-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.32.1-RC1/lib/perl5db.pl" >5.32.1-RC1 DEV (SHAY on 2021-01-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/CORION/perl-5.33.5/lib/perl5db.pl" >5.33.5 DEV (CORION on 2020-12-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.33.3/lib/perl5db.pl" >5.33.3 DEV (SHAY on 2020-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.33.2/lib/perl5db.pl" >5.33.2 DEV (XSAWYERX on 2020-09-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ETHER/perl-5.33.1/lib/perl5db.pl" >5.33.1 DEV (ETHER on 2020-08-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.33.0/lib/perl5db.pl" >5.33.0 DEV (XSAWYERX on 2020-07-17)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.32.0/lib/perl5db.pl" >5.32.0 (XSAWYERX on 2020-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.32.0-RC1/lib/perl5db.pl" >5.32.0-RC1 DEV (XSAWYERX on 2020-06-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.30.3-RC1/lib/perl5db.pl" >5.30.3-RC1 DEV (XSAWYERX on 2020-06-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.30.3/lib/perl5db.pl" >5.30.3 (XSAWYERX on 2020-06-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.28.3-RC1/lib/perl5db.pl" >5.28.3-RC1 DEV (XSAWYERX on 2020-06-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.28.3/lib/perl5db.pl" >5.28.3 (XSAWYERX on 2020-06-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.32.0-RC0/lib/perl5db.pl" >5.32.0-RC0 DEV (XSAWYERX on 2020-05-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.31.11/lib/perl5db.pl" >5.31.11 DEV (XSAWYERX on 2020-04-28)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.31.10/lib/perl5db.pl" >5.31.10 DEV (XSAWYERX on 2020-03-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.30.2/lib/perl5db.pl" >5.30.2 (SHAY on 2020-03-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.30.2-RC1/lib/perl5db.pl" >5.30.2-RC1 DEV (SHAY on 2020-02-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/RENEEB/perl-5.31.9/lib/perl5db.pl" >5.31.9 DEV (RENEEB on 2020-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/WOLFSAGE/perl-5.31.8/lib/perl5db.pl" >5.31.8 DEV (WOLFSAGE on 2020-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ATOOMIC/perl-5.31.7/lib/perl5db.pl" >5.31.7 DEV (ATOOMIC on 2019-12-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/BINGOS/perl-5.31.6/lib/perl5db.pl" >5.31.6 DEV (BINGOS on 2019-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.30.1/lib/perl5db.pl" >5.30.1 (SHAY on 2019-11-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.30.1-RC1/lib/perl5db.pl" >5.30.1-RC1 DEV (SHAY on 2019-10-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.31.5/lib/perl5db.pl" >5.31.5 DEV (SHAY on 2019-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/CORION/perl-5.31.4/lib/perl5db.pl" >5.31.4 DEV (CORION on 2019-09-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.31.2/lib/perl5db.pl" >5.31.2 DEV (SHAY on 2019-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ETHER/perl-5.31.1/lib/perl5db.pl" >5.31.1 DEV (ETHER on 2019-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.31.0/lib/perl5db.pl" >5.31.0 DEV (XSAWYERX on 2019-05-24)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.30.0/lib/perl5db.pl" >5.30.0 (XSAWYERX on 2019-05-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.30.0-RC2/lib/perl5db.pl" >5.30.0-RC2 DEV (XSAWYERX on 2019-05-17)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.30.0-RC1/lib/perl5db.pl" >5.30.0-RC1 DEV (XSAWYERX on 2019-05-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.29.10/lib/perl5db.pl" >5.29.10 DEV (XSAWYERX on 2019-04-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.28.2/lib/perl5db.pl" >5.28.2 (SHAY on 2019-04-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.28.2-RC1/lib/perl5db.pl" >5.28.2-RC1 DEV (SHAY on 2019-04-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/ZAKAME/perl-5.29.9/lib/perl5db.pl" >5.29.9 DEV (ZAKAME on 2019-03-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/ATOOMIC/perl-5.29.8/lib/perl5db.pl" >5.29.8 DEV (ATOOMIC on 2019-02-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/ABIGAIL/perl-5.29.7/lib/perl5db.pl" >5.29.7 DEV (ABIGAIL on 2019-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ABIGAIL/perl-5.29.6/lib/perl5db.pl" >5.29.6 DEV (ABIGAIL on 2018-12-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.28.1-RC1/lib/perl5db.pl" >5.28.1-RC1 DEV (SHAY on 2018-11-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.26.3-RC1/lib/perl5db.pl" >5.26.3-RC1 DEV (SHAY on 2018-11-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.28.1/lib/perl5db.pl" >5.28.1 (SHAY on 2018-11-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.26.3/lib/perl5db.pl" >5.26.3 (SHAY on 2018-11-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/ETHER/perl-5.29.5/lib/perl5db.pl" >5.29.5 DEV (ETHER on 2018-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ARC/perl-5.29.4/lib/perl5db.pl" >5.29.4 DEV (ARC on 2018-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/GENEHACK/perl-5.29.3/lib/perl5db.pl" >5.29.3 DEV (GENEHACK on 2018-09-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/BINGOS/perl-5.29.2/lib/perl5db.pl" >5.29.2 DEV (BINGOS on 2018-08-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.29.1/lib/perl5db.pl" >5.29.1 DEV (SHAY on 2018-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.29.0/lib/perl5db.pl" >5.29.0 DEV (XSAWYERX on 2018-06-26)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.28.0/lib/perl5db.pl" >5.28.0 (XSAWYERX on 2018-06-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.28.0-RC4/lib/perl5db.pl" >5.28.0-RC4 DEV (XSAWYERX on 2018-06-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.28.0-RC3/lib/perl5db.pl" >5.28.0-RC3 DEV (XSAWYERX on 2018-06-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.28.0-RC2/lib/perl5db.pl" >5.28.0-RC2 DEV (XSAWYERX on 2018-06-06)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.28.0-RC1/lib/perl5db.pl" >5.28.0-RC1 DEV (XSAWYERX on 2018-05-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.27.11/lib/perl5db.pl" >5.27.11 DEV (XSAWYERX on 2018-04-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.26.2/lib/perl5db.pl" >5.26.2 (SHAY on 2018-04-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.4/lib/perl5db.pl" >5.24.4 (SHAY on 2018-04-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.26.2-RC1/lib/perl5db.pl" >5.26.2-RC1 DEV (SHAY on 2018-03-24)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.4-RC1/lib/perl5db.pl" >5.24.4-RC1 DEV (SHAY on 2018-03-24)</option> <option value="/release/SHAY/perl-5.40.1/diff/TODDR/perl-5.27.10/lib/perl5db.pl" >5.27.10 DEV (TODDR on 2018-03-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RENEEB/perl-5.27.9/lib/perl5db.pl" >5.27.9 DEV (RENEEB on 2018-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ABIGAIL/perl-5.27.8/lib/perl5db.pl" >5.27.8 DEV (ABIGAIL on 2018-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/BINGOS/perl-5.27.7/lib/perl5db.pl" >5.27.7 DEV (BINGOS on 2017-12-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ETHER/perl-5.27.6/lib/perl5db.pl" >5.27.6 DEV (ETHER on 2017-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.27.5/lib/perl5db.pl" >5.27.5 DEV (SHAY on 2017-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.26.1/lib/perl5db.pl" >5.26.1 (SHAY on 2017-09-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.3/lib/perl5db.pl" >5.24.3 (SHAY on 2017-09-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/GENEHACK/perl-5.27.4/lib/perl5db.pl" >5.27.4 DEV (GENEHACK on 2017-09-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/WOLFSAGE/perl-5.27.3/lib/perl5db.pl" >5.27.3 DEV (WOLFSAGE on 2017-08-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/ARC/perl-5.27.2/lib/perl5db.pl" >5.27.2 DEV (ARC on 2017-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.2/lib/perl5db.pl" >5.24.2 (SHAY on 2017-07-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.4-RC1/lib/perl5db.pl" >5.22.4-RC1 DEV (SHAY on 2017-07-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/EHERMAN/perl-5.27.1/lib/perl5db.pl" >5.27.1 DEV (EHERMAN on 2017-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.26.0/lib/perl5db.pl" >5.26.0 (XSAWYERX on 2017-05-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/RENEEB/perl-5.25.10/lib/perl5db.pl" >5.25.10 DEV (RENEEB on 2017-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ABIGAIL/perl-5.25.9/lib/perl5db.pl" >5.25.9 DEV (ABIGAIL on 2017-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.3/lib/perl5db.pl" >5.22.3 (SHAY on 2017-01-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/EXODIST/perl-5.25.7/lib/perl5db.pl" >5.25.7 DEV (EXODIST on 2016-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ARC/perl-5.25.6/lib/perl5db.pl" >5.25.6 DEV (ARC on 2016-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/STEVAN/perl-5.25.5/lib/perl5db.pl" >5.25.5 DEV (STEVAN on 2016-09-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/BINGOS/perl-5.25.4/lib/perl5db.pl" >5.25.4 DEV (BINGOS on 2016-08-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/WOLFSAGE/perl-5.25.2/lib/perl5db.pl" >5.25.2 DEV (WOLFSAGE on 2016-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.24.0/lib/perl5db.pl" >5.24.0 (RJBS on 2016-05-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/ABIGAIL/perl-5.23.9/lib/perl5db.pl" >5.23.9 DEV (ABIGAIL on 2016-03-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/STEVAN/perl-5.23.7/lib/perl5db.pl" >5.23.7 DEV (STEVAN on 2016-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/DAGOLDEN/perl-5.23.6/lib/perl5db.pl" >5.23.6 DEV (DAGOLDEN on 2015-12-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.1/lib/perl5db.pl" >5.22.1 (SHAY on 2015-12-13)</option> <option value="/release/SHAY/perl-5.40.1/diff/ABIGAIL/perl-5.23.5/lib/perl5db.pl" >5.23.5 DEV (ABIGAIL on 2015-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/PCM/perl-5.23.3/lib/perl5db.pl" >5.23.3 DEV (PCM on 2015-09-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/WOLFSAGE/perl-5.23.2/lib/perl5db.pl" >5.23.2 DEV (WOLFSAGE on 2015-08-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/WOLFSAGE/perl-5.23.1/lib/perl5db.pl" >5.23.1 DEV (WOLFSAGE on 2015-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.22.0/lib/perl5db.pl" >5.22.0 (RJBS on 2015-06-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.22.0-RC2/lib/perl5db.pl" >5.22.0-RC2 DEV (RJBS on 2015-05-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.22.0-RC1/lib/perl5db.pl" >5.22.0-RC1 DEV (RJBS on 2015-05-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/WOLFSAGE/perl-5.21.8/lib/perl5db.pl" >5.21.8 DEV (WOLFSAGE on 2015-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/BINGOS/perl-5.21.6/lib/perl5db.pl" >5.21.6 DEV (BINGOS on 2014-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ABIGAIL/perl-5.21.5/lib/perl5db.pl" >5.21.5 DEV (ABIGAIL on 2014-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.4/lib/perl5db.pl" >5.18.4 (RJBS on 2014-10-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.3/lib/perl5db.pl" >5.18.3 (RJBS on 2014-10-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.3-RC2/lib/perl5db.pl" >5.18.3-RC2 DEV (RJBS on 2014-09-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.3-RC1/lib/perl5db.pl" >5.18.3-RC1 DEV (RJBS on 2014-09-17)</option> <option value="/release/SHAY/perl-5.40.1/diff/PCM/perl-5.21.3/lib/perl5db.pl" >5.21.3 DEV (PCM on 2014-08-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/ABIGAIL/perl-5.21.2/lib/perl5db.pl" >5.21.2 DEV (ABIGAIL on 2014-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/WOLFSAGE/perl-5.21.1/lib/perl5db.pl" >5.21.1 DEV (WOLFSAGE on 2014-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.20.0/lib/perl5db.pl" >5.20.0 (RJBS on 2014-05-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.20.0-RC1/lib/perl5db.pl" >5.20.0-RC1 DEV (RJBS on 2014-05-17)</option> <option value="/release/SHAY/perl-5.40.1/diff/ARC/perl-5.19.10/lib/perl5db.pl" >5.19.10 DEV (ARC on 2014-03-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/TONYC/perl-5.19.9/lib/perl5db.pl" >5.19.9 DEV (TONYC on 2014-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.2/lib/perl5db.pl" >5.18.2 (RJBS on 2014-01-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.2-RC4/lib/perl5db.pl" >5.18.2-RC4 DEV (RJBS on 2013-12-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/ABIGAIL/perl-5.19.7/lib/perl5db.pl" >5.19.7 DEV (ABIGAIL on 2013-12-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.2-RC3/lib/perl5db.pl" >5.18.2-RC3 DEV (RJBS on 2013-12-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.2-RC2/lib/perl5db.pl" >5.18.2-RC2 DEV (RJBS on 2013-12-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.2-RC1/lib/perl5db.pl" >5.18.2-RC1 DEV (RJBS on 2013-12-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/BINGOS/perl-5.19.6/lib/perl5db.pl" >5.19.6 DEV (BINGOS on 2013-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.1/lib/perl5db.pl" >5.18.1 (RJBS on 2013-08-12)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.1-RC3/lib/perl5db.pl" >5.18.1-RC3 DEV (RJBS on 2013-08-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.1-RC2/lib/perl5db.pl" >5.18.1-RC2 DEV (RJBS on 2013-08-04)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.1-RC1/lib/perl5db.pl" >5.18.1-RC1 DEV (RJBS on 2013-08-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/DAGOLDEN/perl-5.19.1/lib/perl5db.pl" >5.19.1 DEV (DAGOLDEN on 2013-06-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.0/lib/perl5db.pl" >5.18.0 (RJBS on 2013-05-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.0-RC4/lib/perl5db.pl" >5.18.0-RC4 DEV (RJBS on 2013-05-16)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.0-RC3/lib/perl5db.pl" >5.18.0-RC3 DEV (RJBS on 2013-05-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.0-RC2/lib/perl5db.pl" >5.18.0-RC2 DEV (RJBS on 2013-05-12)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.18.0-RC1/lib/perl5db.pl" >5.18.0-RC1 DEV (RJBS on 2013-05-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.16.3/lib/perl5db.pl" >5.16.3 (RJBS on 2013-03-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/DAPM/perl-5.14.4/lib/perl5db.pl" >5.14.4 (DAPM on 2013-03-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/DAPM/perl-5.14.4-RC2/lib/perl5db.pl" >5.14.4-RC2 DEV (DAPM on 2013-03-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.16.3-RC1/lib/perl5db.pl" >5.16.3-RC1 DEV (RJBS on 2013-03-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/DAPM/perl-5.14.4-RC1/lib/perl5db.pl" >5.14.4-RC1 DEV (DAPM on 2013-03-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/BINGOS/perl-5.17.9/lib/perl5db.pl" >5.17.9 DEV (BINGOS on 2013-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ARC/perl-5.17.8/lib/perl5db.pl" >5.17.8 DEV (ARC on 2013-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/DROLSKY/perl-5.17.7/lib/perl5db.pl" >5.17.7 DEV (DROLSKY on 2012-12-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/DOM/perl-5.12.5/lib/perl5db.pl" >5.12.5 (DOM on 2012-11-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/DOM/perl-5.12.5-RC2/lib/perl5db.pl" >5.12.5-RC2 DEV (DOM on 2012-11-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/DOM/perl-5.12.5-RC1/lib/perl5db.pl" >5.12.5-RC1 DEV (DOM on 2012-11-03)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.16.2/lib/perl5db.pl" >5.16.2 (RJBS on 2012-11-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.16.2-RC1/lib/perl5db.pl" >5.16.2-RC1 DEV (RJBS on 2012-10-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/FLORA/perl-5.17.5/lib/perl5db.pl" >5.17.5 DEV (FLORA on 2012-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/DOM/perl-5.14.3/lib/perl5db.pl" >5.14.3 (DOM on 2012-10-12)</option> <option value="/release/SHAY/perl-5.40.1/diff/DOM/perl-5.14.3-RC2/lib/perl5db.pl" >5.14.3-RC2 DEV (DOM on 2012-10-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/DOM/perl-5.14.3-RC1/lib/perl5db.pl" >5.14.3-RC1 DEV (DOM on 2012-09-26)</option> <option value="/release/SHAY/perl-5.40.1/diff/FLORA/perl-5.17.4/lib/perl5db.pl" >5.17.4 DEV (FLORA on 2012-09-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.16.1/lib/perl5db.pl" >5.16.1 (RJBS on 2012-08-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.16.1-RC1/lib/perl5db.pl" >5.16.1-RC1 DEV (RJBS on 2012-08-03)</option> <option value="/release/SHAY/perl-5.40.1/diff/TONYC/perl-5.17.2/lib/perl5db.pl" >5.17.2 DEV (TONYC on 2012-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/DOY/perl-5.17.1/lib/perl5db.pl" >5.17.1 DEV (DOY on 2012-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ZEFRAM/perl-5.17.0/lib/perl5db.pl" >5.17.0 DEV (ZEFRAM on 2012-05-26)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.16.0/lib/perl5db.pl" >5.16.0 (RJBS on 2012-05-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.16.0-RC2/lib/perl5db.pl" >5.16.0-RC2 DEV (RJBS on 2012-05-16)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.16.0-RC1/lib/perl5db.pl" >5.16.0-RC1 DEV (RJBS on 2012-05-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.16.0-RC0/lib/perl5db.pl" >5.16.0-RC0 DEV (RJBS on 2012-05-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/ABIGAIL/perl-5.15.9/lib/perl5db.pl" >5.15.9 DEV (ABIGAIL on 2012-03-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/BINGOS/perl-5.15.7/lib/perl5db.pl" >5.15.7 DEV (BINGOS on 2012-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/DROLSKY/perl-5.15.6/lib/perl5db.pl" >5.15.6 DEV (DROLSKY on 2011-12-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/FLORA/perl-5.15.4/lib/perl5db.pl" >5.15.4 DEV (FLORA on 2011-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/FLORA/perl-5.14.2/lib/perl5db.pl" >5.14.2 (FLORA on 2011-09-26)</option> <option value="/release/SHAY/perl-5.40.1/diff/STEVAN/perl-5.15.3/lib/perl5db.pl" >5.15.3 DEV (STEVAN on 2011-09-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/FLORA/perl-5.14.2-RC1/lib/perl5db.pl" >5.14.2-RC1 DEV (FLORA on 2011-09-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/ZEFRAM/perl-5.15.1/lib/perl5db.pl" >5.15.1 DEV (ZEFRAM on 2011-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/DAGOLDEN/perl-5.15.0/lib/perl5db.pl" >5.15.0 DEV (DAGOLDEN on 2011-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl-5.12.4/lib/perl5db.pl" >5.12.4 (LBROCARD on 2011-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.14.1/lib/perl5db.pl" >5.14.1 (JESSE on 2011-06-17)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl-5.12.4-RC2/lib/perl5db.pl" >5.12.4-RC2 DEV (LBROCARD on 2011-06-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.14.1-RC1/lib/perl5db.pl" >5.14.1-RC1 DEV (JESSE on 2011-06-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl-5.12.4-RC1/lib/perl5db.pl" >5.12.4-RC1 DEV (LBROCARD on 2011-06-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.14.0/lib/perl5db.pl" >5.14.0 (JESSE on 2011-05-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.14.0-RC3/lib/perl5db.pl" >5.14.0-RC3 DEV (JESSE on 2011-05-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.14.0-RC2/lib/perl5db.pl" >5.14.0-RC2 DEV (JESSE on 2011-05-04)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.14.0-RC1/lib/perl5db.pl" >5.14.0-RC1 DEV (JESSE on 2011-04-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/FLORA/perl-5.13.11/lib/perl5db.pl" >5.13.11 DEV (FLORA on 2011-03-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/AVAR/perl-5.13.10/lib/perl5db.pl" >5.13.10 DEV (AVAR on 2011-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.12.3/lib/perl5db.pl" >5.12.3 (RJBS on 2011-01-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.13.9/lib/perl5db.pl" >5.13.9 DEV (JESSE on 2011-01-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.12.3-RC3/lib/perl5db.pl" >5.12.3-RC3 DEV (RJBS on 2011-01-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.12.3-RC2/lib/perl5db.pl" >5.12.3-RC2 DEV (RJBS on 2011-01-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.12.3-RC1/lib/perl5db.pl" >5.12.3-RC1 DEV (RJBS on 2011-01-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/ZEFRAM/perl-5.13.8/lib/perl5db.pl" >5.13.8 DEV (ZEFRAM on 2010-12-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/BINGOS/perl-5.13.7/lib/perl5db.pl" >5.13.7 DEV (BINGOS on 2010-11-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/MIYAGAWA/perl-5.13.6/lib/perl5db.pl" >5.13.6 DEV (MIYAGAWA on 2010-10-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.2/lib/perl5db.pl" >5.12.2 (JESSE on 2010-09-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.2-RC1/lib/perl5db.pl" >5.12.2-RC1 DEV (JESSE on 2010-08-31)</option> <option value="/release/SHAY/perl-5.40.1/diff/FLORA/perl-5.13.4/lib/perl5db.pl" >5.13.4 DEV (FLORA on 2010-08-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/DAGOLDEN/perl-5.13.3/lib/perl5db.pl" >5.13.3 DEV (DAGOLDEN on 2010-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/MSTROUT/perl-5.13.2/lib/perl5db.pl" >5.13.2 DEV (MSTROUT on 2010-06-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.1/lib/perl5db.pl" >5.12.1 (JESSE on 2010-05-16)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.1-RC2/lib/perl5db.pl" >5.12.1-RC2 DEV (JESSE on 2010-05-13)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.1-RC1/lib/perl5db.pl" >5.12.1-RC1 DEV (JESSE on 2010-05-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl-5.13.0/lib/perl5db.pl" >5.13.0 DEV (LBROCARD on 2010-04-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.0/lib/perl5db.pl" >5.12.0 (JESSE on 2010-04-12)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.0-RC5/lib/perl5db.pl" >5.12.0-RC5 DEV (JESSE on 2010-04-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.0-RC4/lib/perl5db.pl" >5.12.0-RC4 DEV (JESSE on 2010-04-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.0-RC3/lib/perl5db.pl" >5.12.0-RC3 DEV (JESSE on 2010-04-03)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.0-RC2/lib/perl5db.pl" >5.12.0-RC2 DEV (JESSE on 2010-04-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.0-RC1/lib/perl5db.pl" >5.12.0-RC1 DEV (JESSE on 2010-03-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.11.3/lib/perl5db.pl" >5.11.3 DEV (JESSE on 2009-12-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl-5.11.2/lib/perl5db.pl" >5.11.2 DEV (LBROCARD on 2009-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.11.1/lib/perl5db.pl" >5.11.1 DEV (JESSE on 2009-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.11.0/lib/perl5db.pl" >5.11.0 DEV (JESSE on 2009-10-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/DAPM/perl-5.10.1/lib/perl5db.pl" >5.10.1 (DAPM on 2009-08-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/DAPM/perl-5.10.1-RC2/lib/perl5db.pl" >5.10.1-RC2 DEV (DAPM on 2009-08-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/DAPM/perl-5.10.1-RC1/lib/perl5db.pl" >5.10.1-RC1 DEV (DAPM on 2009-08-06)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.9/lib/perl5db.pl" >5.8.9 (NWCLARK on 2008-12-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.9-RC2/lib/perl5db.pl" >5.8.9-RC2 DEV (NWCLARK on 2008-12-06)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.9-RC1/lib/perl5db.pl" >5.8.9-RC1 DEV (NWCLARK on 2008-11-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/RGARCIA/perl-5.10.0/lib/perl5db.pl" >5.10.0 (RGARCIA on 2007-12-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/RGARCIA/perl-5.9.5/lib/perl5db.pl" >5.9.5 DEV (RGARCIA on 2007-07-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/RGARCIA/perl-5.9.4/lib/perl5db.pl" >5.9.4 DEV (RGARCIA on 2006-08-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.8/lib/perl5db.pl" >5.8.8 (NWCLARK on 2006-02-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/RGARCIA/perl-5.9.3/lib/perl5db.pl" >5.9.3 DEV (RGARCIA on 2006-01-28)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.8-RC1/lib/perl5db.pl" >5.8.8-RC1 DEV (NWCLARK on 2006-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.7/lib/perl5db.pl" >5.8.7 (NWCLARK on 2005-05-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.7-RC1/lib/perl5db.pl" >5.8.7-RC1 DEV (NWCLARK on 2005-05-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/RGARCIA/perl-5.9.2/lib/perl5db.pl" >5.9.2 DEV (RGARCIA on 2005-04-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.6/lib/perl5db.pl" >5.8.6 (NWCLARK on 2004-11-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.6-RC1/lib/perl5db.pl" >5.8.6-RC1 DEV (NWCLARK on 2004-11-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.5/lib/perl5db.pl" >5.8.5 (NWCLARK on 2004-07-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.5-RC2/lib/perl5db.pl" >5.8.5-RC2 DEV (NWCLARK on 2004-07-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.5-RC1/lib/perl5db.pl" >5.8.5-RC1 DEV (NWCLARK on 2004-07-06)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.4/lib/perl5db.pl" >5.8.4 (NWCLARK on 2004-04-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.4-RC2/lib/perl5db.pl" >5.8.4-RC2 DEV (NWCLARK on 2004-04-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.4-RC1/lib/perl5db.pl" >5.8.4-RC1 DEV (NWCLARK on 2004-04-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/RGARCIA/perl-5.9.1/lib/perl5db.pl" >5.9.1 DEV (RGARCIA on 2004-03-16)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl5.005_04/lib/perl5db.pl" >5.005_04 (LBROCARD on 2004-02-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.3/lib/perl5db.pl" >5.8.3 (NWCLARK on 2004-01-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.3-RC1/lib/perl5db.pl" >5.8.3-RC1 DEV (NWCLARK on 2004-01-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/RGARCIA/perl-5.6.2/lib/perl5db.pl" >5.6.2 (RGARCIA on 2003-11-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.2/lib/perl5db.pl" >5.8.2 (NWCLARK on 2003-11-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.2-RC2/lib/perl5db.pl" >5.8.2-RC2 DEV (NWCLARK on 2003-11-03)</option> <option value="/release/SHAY/perl-5.40.1/diff/NWCLARK/perl-5.8.2-RC1/lib/perl5db.pl" >5.8.2-RC1 DEV (NWCLARK on 2003-10-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/HVDS/perl-5.9.0/lib/perl5db.pl" >5.9.0 DEV (HVDS on 2003-10-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.8.1/lib/perl5db.pl" >5.8.1 (JHI on 2003-09-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.8.0/lib/perl5db.pl" >5.8.0 (JHI on 2002-07-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.7.3/lib/perl5db.pl" >5.7.3 DEV (JHI on 2002-03-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.7.2/lib/perl5db.pl" >5.7.2 DEV (JHI on 2001-07-13)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl-5.6.1/lib/perl5db.pl" >5.6.1 (GSAR on 2001-04-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl-5.6.1-TRIAL3/lib/perl5db.pl" >5.6.1-TRIAL3 DEV (GSAR on 2001-03-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl-5.6.1-TRIAL2/lib/perl5db.pl" >5.6.1-TRIAL2 DEV (GSAR on 2001-01-31)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl-5.6.1-TRIAL1/lib/perl5db.pl" >5.6.1-TRIAL1 DEV (GSAR on 2000-12-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.7.0/lib/perl5db.pl" >5.7.0 DEV (JHI on 2000-09-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl-5.6.0/lib/perl5db.pl" >5.6.0 (GSAR on 2000-03-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.004_05/lib/perl5db.pl" >5.004_05 (CHIPS on 1999-04-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/GBARR/perl5.005_03/lib/perl5db.pl" >5.005_03 (GBARR on 1999-03-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_02/lib/perl5db.pl" >5.005_02 (GSAR on 1998-08-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_01/lib/perl5db.pl" >5.005_01 (GSAR on 1998-07-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005/lib/perl5db.pl" >5.005 (GSAR on 1998-07-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_04/lib/perl5db.pl" >5.004_04 (TIMB on 1997-10-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_03/lib/perl5db.pl" >5.004_03 (TIMB on 1997-09-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_02/lib/perl5db.pl" >5.004_02 (TIMB on 1997-08-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_01/lib/perl5db.pl" >5.004_01 (TIMB on 1997-06-13)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.004/lib/perl5db.pl" >5.004 (CHIPS on 1997-05-15)</option> <optgroup label="BackPAN">' <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.38.1a/lib/perl5db.pl" >5.38.1a (PEVANS on 2023-11-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.36.2a/lib/perl5db.pl" >5.36.2a (PEVANS on 2023-11-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.34.2a/lib/perl5db.pl" >5.34.2a (PEVANS on 2023-11-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.38.1/lib/perl5db.pl" >5.38.1 (PEVANS on 2023-11-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.36.2/lib/perl5db.pl" >5.36.2 (PEVANS on 2023-11-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/PEVANS/perl-5.34.2/lib/perl5db.pl" >5.34.2 (PEVANS on 2023-11-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/NEILB/perl-5.37.3/lib/perl5db.pl" >5.37.3 DEV (NEILB on 2022-08-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/NEILB/perl-5.35.7/lib/perl5db.pl" >5.35.7 DEV (NEILB on 2021-12-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/NEILB/perl-5.35.2/lib/perl5db.pl" >5.35.2 DEV (NEILB on 2021-07-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/TOMHUKINS/perl-5.33.4/lib/perl5db.pl" >5.33.4 DEV (TOMHUKINS on 2020-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/TOMHUKINS/perl-5.31.3/lib/perl5db.pl" >5.31.3 DEV (TOMHUKINS on 2019-08-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.26.1-RC1/lib/perl5db.pl" >5.26.1-RC1 DEV (SHAY on 2017-09-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.3-RC1/lib/perl5db.pl" >5.24.3-RC1 DEV (SHAY on 2017-09-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.4/lib/perl5db.pl" >5.22.4 (SHAY on 2017-07-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.2-RC1/lib/perl5db.pl" >5.24.2-RC1 DEV (SHAY on 2017-07-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.27.0/lib/perl5db.pl" >5.27.0 DEV (XSAWYERX on 2017-05-31)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.26.0-RC2/lib/perl5db.pl" >5.26.0-RC2 DEV (XSAWYERX on 2017-05-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.26.0-RC1/lib/perl5db.pl" >5.26.0-RC1 DEV (XSAWYERX on 2017-05-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.25.12/lib/perl5db.pl" >5.25.12 DEV (XSAWYERX on 2017-04-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.25.11/lib/perl5db.pl" >5.25.11 DEV (XSAWYERX on 2017-03-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.1/lib/perl5db.pl" >5.24.1 (SHAY on 2017-01-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.1-RC5/lib/perl5db.pl" >5.24.1-RC5 DEV (SHAY on 2017-01-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.3-RC5/lib/perl5db.pl" >5.22.3-RC5 DEV (SHAY on 2017-01-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.25.8/lib/perl5db.pl" >5.25.8 DEV (XSAWYERX on 2016-12-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.1-RC4/lib/perl5db.pl" >5.24.1-RC4 DEV (SHAY on 2016-10-12)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.3-RC4/lib/perl5db.pl" >5.22.3-RC4 DEV (SHAY on 2016-10-12)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.1-RC3/lib/perl5db.pl" >5.24.1-RC3 DEV (SHAY on 2016-08-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.3-RC3/lib/perl5db.pl" >5.22.3-RC3 DEV (SHAY on 2016-08-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.1-RC2/lib/perl5db.pl" >5.24.1-RC2 DEV (SHAY on 2016-07-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.3-RC2/lib/perl5db.pl" >5.22.3-RC2 DEV (SHAY on 2016-07-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.25.3/lib/perl5db.pl" >5.25.3 DEV (SHAY on 2016-07-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.24.1-RC1/lib/perl5db.pl" >5.24.1-RC1 DEV (SHAY on 2016-07-17)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.3-RC1/lib/perl5db.pl" >5.22.3-RC1 DEV (SHAY on 2016-07-17)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.25.1/lib/perl5db.pl" >5.25.1 DEV (XSAWYERX on 2016-05-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.25.0/lib/perl5db.pl" >5.25.0 DEV (RJBS on 2016-05-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.24.0-RC5/lib/perl5db.pl" >5.24.0-RC5 DEV (RJBS on 2016-05-04)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.24.0-RC4/lib/perl5db.pl" >5.24.0-RC4 DEV (RJBS on 2016-05-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.2/lib/perl5db.pl" >5.22.2 (SHAY on 2016-04-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.24.0-RC3/lib/perl5db.pl" >5.24.0-RC3 DEV (RJBS on 2016-04-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.24.0-RC2/lib/perl5db.pl" >5.24.0-RC2 DEV (RJBS on 2016-04-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.24.0-RC1/lib/perl5db.pl" >5.24.0-RC1 DEV (RJBS on 2016-04-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.2-RC1/lib/perl5db.pl" >5.22.2-RC1 DEV (SHAY on 2016-04-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.23.8/lib/perl5db.pl" >5.23.8 DEV (XSAWYERX on 2016-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.1-RC4/lib/perl5db.pl" >5.22.1-RC4 DEV (SHAY on 2015-12-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.1-RC3/lib/perl5db.pl" >5.22.1-RC3 DEV (SHAY on 2015-12-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.1-RC2/lib/perl5db.pl" >5.22.1-RC2 DEV (SHAY on 2015-11-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.22.1-RC1/lib/perl5db.pl" >5.22.1-RC1 DEV (SHAY on 2015-10-31)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.23.4/lib/perl5db.pl" >5.23.4 DEV (SHAY on 2015-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.20.3/lib/perl5db.pl" >5.20.3 (SHAY on 2015-09-12)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.20.3-RC2/lib/perl5db.pl" >5.20.3-RC2 DEV (SHAY on 2015-08-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.20.3-RC1/lib/perl5db.pl" >5.20.3-RC1 DEV (SHAY on 2015-08-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.23.0/lib/perl5db.pl" >5.23.0 DEV (RJBS on 2015-06-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.21.11/lib/perl5db.pl" >5.21.11 DEV (SHAY on 2015-04-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.21.10/lib/perl5db.pl" >5.21.10 DEV (SHAY on 2015-03-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/XSAWYERX/perl-5.21.9/lib/perl5db.pl" >5.21.9 DEV (XSAWYERX on 2015-02-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.20.2/lib/perl5db.pl" >5.20.2 (SHAY on 2015-02-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.20.2-RC1/lib/perl5db.pl" >5.20.2-RC1 DEV (SHAY on 2015-02-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/CORION/perl-5.21.7/lib/perl5db.pl" >5.21.7 DEV (CORION on 2014-12-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.21.4/lib/perl5db.pl" >5.21.4 DEV (SHAY on 2014-09-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.20.1/lib/perl5db.pl" >5.20.1 (SHAY on 2014-09-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.20.1-RC2/lib/perl5db.pl" >5.20.1-RC2 DEV (SHAY on 2014-09-07)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.20.1-RC1/lib/perl5db.pl" >5.20.1-RC1 DEV (SHAY on 2014-08-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.21.0/lib/perl5db.pl" >5.21.0 DEV (RJBS on 2014-05-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.19.11/lib/perl5db.pl" >5.19.11 DEV (SHAY on 2014-04-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.19.8/lib/perl5db.pl" >5.19.8 DEV (RJBS on 2014-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.19.5/lib/perl5db.pl" >5.19.5 DEV (SHAY on 2013-10-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.19.4/lib/perl5db.pl" >5.19.4 DEV (SHAY on 2013-09-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.19.3/lib/perl5db.pl" >5.19.3 DEV (SHAY on 2013-08-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/ARISTOTLE/perl-5.19.2/lib/perl5db.pl" >5.19.2 DEV (ARISTOTLE on 2013-07-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.19.0/lib/perl5db.pl" >5.19.0 DEV (RJBS on 2013-05-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.17.11/lib/perl5db.pl" >5.17.11 DEV (RJBS on 2013-04-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/CORION/perl-5.17.10/lib/perl5db.pl" >5.17.10 DEV (CORION on 2013-03-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.17.6/lib/perl5db.pl" >5.17.6 DEV (RJBS on 2012-11-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.17.3/lib/perl5db.pl" >5.17.3 DEV (SHAY on 2012-08-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/CORION/perl-5.15.8/lib/perl5db.pl" >5.15.8 DEV (CORION on 2012-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.15.5/lib/perl5db.pl" >5.15.5 DEV (SHAY on 2011-11-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.15.2/lib/perl5db.pl" >5.15.2 DEV (RJBS on 2011-08-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.13.5/lib/perl5db.pl" >5.13.5 DEV (SHAY on 2010-09-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.13.1/lib/perl5db.pl" >5.13.1 DEV (RJBS on 2010-05-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/JESSE/perl-5.12.0-RC0/lib/perl5db.pl" >5.12.0-RC0 DEV (JESSE on 2010-03-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/SHAY/perl-5.11.5/lib/perl5db.pl" >5.11.5 DEV (SHAY on 2010-02-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/RJBS/perl-5.11.4/lib/perl5db.pl" >5.11.4 DEV (RJBS on 2010-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/RGARCIA/perl-5.10.0-RC2/lib/perl5db.pl" >5.10.0-RC2 DEV (RGARCIA on 2007-11-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/RGARCIA/perl-5.10.0-RC1/lib/perl5db.pl" >5.10.0-RC1 DEV (RGARCIA on 2007-11-17)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl5.005_04-RC2/lib/perl5db.pl" >5.005_04-RC2 DEV (LBROCARD on 2004-02-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl5.005_04-RC1/lib/perl5db.pl" >5.005_04-RC1 DEV (LBROCARD on 2004-02-04)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl5.005_03-MAINT22213/lib/perl5db.pl" >5.005_03-MAINT22213 DEV (LBROCARD on 2004-01-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl5.005_03-MAINT22178/lib/perl5db.pl" >5.005_03-MAINT22178 DEV (LBROCARD on 2004-01-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/LBROCARD/perl5.005_03-MAINT21792/lib/perl5db.pl" >5.005_03-MAINT21792 DEV (LBROCARD on 2003-12-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/RGARCIA/perl-5.6.2-RC1/lib/perl5db.pl" >5.6.2-RC1 DEV (RGARCIA on 2003-11-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.8.1-RC5/lib/perl5db.pl" >5.8.1-RC5 DEV (JHI on 2003-09-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.8.1-RC4/lib/perl5db.pl" >5.8.1-RC4 DEV (JHI on 2003-08-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.8.1-RC3/lib/perl5db.pl" >5.8.1-RC3 DEV (JHI on 2003-07-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.8.1-RC2/lib/perl5db.pl" >5.8.1-RC2 DEV (JHI on 2003-07-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.8.1-RC1/lib/perl5db.pl" >5.8.1-RC1 DEV (JHI on 2003-07-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.8.0-RC3/lib/perl5db.pl" >5.8.0-RC3 DEV (JHI on 2002-07-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.8.0-RC2/lib/perl5db.pl" >5.8.0-RC2 DEV (JHI on 2002-06-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.8.0-RC1/lib/perl5db.pl" >5.8.0-RC1 DEV (JHI on 2002-06-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/JHI/perl-5.7.1/lib/perl5db.pl" >5.7.1 DEV (JHI on 2001-04-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl-5.5.670/lib/perl5db.pl" >5.5.670 DEV (GSAR on 2000-03-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.5.660/lib/perl5db.pl" >5.5.660 DEV (GSAR on 2000-02-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.5.650/lib/perl5db.pl" >5.5.650 DEV (GSAR on 2000-02-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.5.640/lib/perl5db.pl" >5.5.640 DEV (GSAR on 2000-02-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_63/lib/perl5db.pl" >5.005_63 DEV (GSAR on 1999-12-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_62/lib/perl5db.pl" >5.005_62 DEV (GSAR on 1999-10-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_61/lib/perl5db.pl" >5.005_61 DEV (GSAR on 1999-08-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_60/lib/perl5db.pl" >5.005_60 DEV (GSAR on 1999-08-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_59/lib/perl5db.pl" >5.005_59 DEV (GSAR on 1999-08-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_58/lib/perl5db.pl" >5.005_58 DEV (GSAR on 1999-07-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_57/lib/perl5db.pl" >5.005_57 DEV (GSAR on 1999-05-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.004_05-MAINT_TRIAL_9/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_9 DEV (CHIPS on 1999-04-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/GBARR/perl5.005_03-MAINT_TRIAL_6/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_6 DEV (GBARR on 1999-03-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_56/lib/perl5db.pl" >5.005_56 DEV (GSAR on 1999-03-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_55/lib/perl5db.pl" >5.005_55 DEV (GSAR on 1999-02-16)</option> <option value="/release/SHAY/perl-5.40.1/diff/GBARR/perl5.005_03-MAINT_TRIAL_5/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_5 DEV (GBARR on 1999-01-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/GBARR/perl5.005_03-MAINT_TRIAL_4/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_4 DEV (GBARR on 1999-01-26)</option> <option value="/release/SHAY/perl-5.40.1/diff/GBARR/perl5.005_03-MAINT_TRIAL_3/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_3 DEV (GBARR on 1999-01-17)</option> <option value="/release/SHAY/perl-5.40.1/diff/GBARR/perl5.005_03-MAINT_TRIAL_2/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_2 DEV (GBARR on 1999-01-03)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_05-MAINT_TRIAL_8/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_8 DEV (TIMB on 1998-12-03)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_54/lib/perl5db.pl" >5.005_54 DEV (GSAR on 1998-11-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/GBARR/perl5.005_03-MAINT_TRIAL_1/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_1 DEV (GBARR on 1998-11-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_05-MAINT_TRIAL_7/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_7 DEV (TIMB on 1998-11-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_53/lib/perl5db.pl" >5.005_53 DEV (GSAR on 1998-10-31)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_05-MAINT_TRIAL_6/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_6 DEV (TIMB on 1998-10-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_52/lib/perl5db.pl" >5.005_52 DEV (GSAR on 1998-09-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_51/lib/perl5db.pl" >5.005_51 DEV (GSAR on 1998-08-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_02-TRIAL2/lib/perl5db.pl" >5.005_02-TRIAL2 DEV (GSAR on 1998-08-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_02-TRIAL1/lib/perl5db.pl" >5.005_02-TRIAL1 DEV (GSAR on 1998-08-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005_50/lib/perl5db.pl" >5.005_50 DEV (GSAR on 1998-07-26)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005-beta2/lib/perl5db.pl" >5.005-beta2 (GSAR on 1998-07-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_05-MAINT_TRIAL_5/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_5 DEV (TIMB on 1998-07-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.005-beta1/lib/perl5db.pl" >5.005-beta1 (GSAR on 1998-07-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.004_74/lib/perl5db.pl" >5.004_74 DEV (GSAR on 1998-07-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.004_73/lib/perl5db.pl" >5.004_73 DEV (GSAR on 1998-07-13)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.004_72/lib/perl5db.pl" >5.004_72 DEV (GSAR on 1998-07-12)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.004_71/lib/perl5db.pl" >5.004_71 DEV (GSAR on 1998-07-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.004_70/lib/perl5db.pl" >5.004_70 DEV (GSAR on 1998-07-06)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.004_69/lib/perl5db.pl" >5.004_69 DEV (GSAR on 1998-06-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.004_68/lib/perl5db.pl" >5.004_68 DEV (GSAR on 1998-06-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/GSAR/perl5.004_67/lib/perl5db.pl" >5.004_67 DEV (GSAR on 1998-06-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_66/lib/perl5db.pl" >5.004_66 DEV (MICB on 1998-05-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_04-m4/lib/perl5db.pl" >5.004_04-m4 DEV (TIMB on 1998-05-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_04-m3/lib/perl5db.pl" >5.004_04-m3 DEV (TIMB on 1998-05-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_65/lib/perl5db.pl" >5.004_65 DEV (MICB on 1998-05-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004_04-m2/lib/perl5db.pl" >5.004_04-m2 DEV (TIMB on 1998-05-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_64/lib/perl5db.pl" >5.004_64 DEV (MICB on 1998-04-03)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_63/lib/perl5db.pl" >5.004_63 DEV (MICB on 1998-03-17)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_62/lib/perl5db.pl" >5.004_62 DEV (MICB on 1998-03-06)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004m5t1/lib/perl5db.pl" >5.004m5t1 (TIMB on 1998-03-04)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_61/lib/perl5db.pl" >5.004_61 DEV (MICB on 1998-02-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_60/lib/perl5db.pl" >5.004_60 DEV (MICB on 1998-02-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_59/lib/perl5db.pl" >5.004_59 DEV (MICB on 1998-02-13)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_58/lib/perl5db.pl" >5.004_58 DEV (MICB on 1998-02-06)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_57/lib/perl5db.pl" >5.004_57 DEV (MICB on 1998-02-03)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_56/lib/perl5db.pl" >5.004_56 DEV (MICB on 1997-12-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_55/lib/perl5db.pl" >5.004_55 DEV (MICB on 1997-11-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_54/lib/perl5db.pl" >5.004_54 DEV (MICB on 1997-11-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_53/lib/perl5db.pl" >5.004_53 DEV (MICB on 1997-10-16)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_52/lib/perl5db.pl" >5.004_52 DEV (MICB on 1997-10-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004m4t4/lib/perl5db.pl" >5.004m4t4 (TIMB on 1997-10-14)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004m4t3/lib/perl5db.pl" >5.004m4t3 (TIMB on 1997-10-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/MICB/perl5.004_51/lib/perl5db.pl" >5.004_51 DEV (MICB on 1997-10-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004m4t2/lib/perl5db.pl" >5.004m4t2 (TIMB on 1997-09-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004m4t1/lib/perl5db.pl" >5.004m4t1 (TIMB on 1997-09-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/TIMB/perl5.004m3t2/lib/perl5db.pl" >5.004m3t2 (TIMB on 1997-09-05)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_99a/lib/perl5db.pl" >5.003_99a DEV (CHIPS on 1997-05-09)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_99/lib/perl5db.pl" >5.003_99 DEV (CHIPS on 1997-05-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_98/lib/perl5db.pl" >5.003_98 DEV (CHIPS on 1997-04-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_97j/lib/perl5db.pl" >5.003_97j DEV (CHIPS on 1997-04-28)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_97i/lib/perl5db.pl" >5.003_97i DEV (CHIPS on 1997-04-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_97h/lib/perl5db.pl" >5.003_97h DEV (CHIPS on 1997-04-24)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_97/lib/perl5db.pl" >5.003_97 DEV (CHIPS on 1997-04-03)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_96/lib/perl5db.pl" >5.003_96 DEV (CHIPS on 1997-04-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_95/lib/perl5db.pl" >5.003_95 DEV (CHIPS on 1997-03-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_94/lib/perl5db.pl" >5.003_94 DEV (CHIPS on 1997-03-22)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_93/lib/perl5db.pl" >5.003_93 DEV (CHIPS on 1997-03-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_92/lib/perl5db.pl" >5.003_92 DEV (CHIPS on 1997-03-06)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_91/lib/perl5db.pl" >5.003_91 DEV (CHIPS on 1997-03-01)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_90/lib/perl5db.pl" >5.003_90 DEV (CHIPS on 1997-02-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_28/lib/perl5db.pl" >5.003_28 (CHIPS on 1997-02-21)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_27/lib/perl5db.pl" >5.003_27 (CHIPS on 1997-02-18)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_26/lib/perl5db.pl" >5.003_26 (CHIPS on 1997-02-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_25/lib/perl5db.pl" >5.003_25 (CHIPS on 1997-02-04)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_24/lib/perl5db.pl" >5.003_24 (CHIPS on 1997-01-29)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_23/lib/perl5db.pl" >5.003_23 (CHIPS on 1997-01-25)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_22/lib/perl5db.pl" >5.003_22 (CHIPS on 1997-01-16)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_21/lib/perl5db.pl" >5.003_21 (CHIPS on 1997-01-15)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_20/lib/perl5db.pl" >5.003_20 (CHIPS on 1997-01-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_19/lib/perl5db.pl" >5.003_19 (CHIPS on 1997-01-04)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_18/lib/perl5db.pl" >5.003_18 (CHIPS on 1996-12-31)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_17/lib/perl5db.pl" >5.003_17 (CHIPS on 1996-12-27)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_16/lib/perl5db.pl" >5.003_16 (CHIPS on 1996-12-24)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_15/lib/perl5db.pl" >5.003_15 (CHIPS on 1996-12-23)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl-5.003_13/lib/perl5db.pl" >5.003_13 (CHIPS on 1996-12-20)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_12/lib/perl5db.pl" >5.003_12 (CHIPS on 1996-12-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_11/lib/perl5db.pl" >5.003_11 (CHIPS on 1996-12-06)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_10/lib/perl5db.pl" >5.003_10 (CHIPS on 1996-11-30)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_09/lib/perl5db.pl" >5.003_09 (CHIPS on 1996-11-26)</option> <option value="/release/SHAY/perl-5.40.1/diff/CHIPS/perl5.003_08/lib/perl5db.pl" >5.003_08 (CHIPS on 1996-11-19)</option> <option value="/release/SHAY/perl-5.40.1/diff/ANDYD/perl5.003_07/lib/perl5db.pl" >5.003_07 (ANDYD on 1996-10-11)</option> <option value="/release/SHAY/perl-5.40.1/diff/ANDYD/perl5.003_06/lib/perl5db.pl" >5.003_06 (ANDYD on 1996-10-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/ANDYD/perl5.003_05/lib/perl5db.pl" >5.003_05 (ANDYD on 1996-09-12)</option> <option value="/release/SHAY/perl-5.40.1/diff/ANDYD/perl5.003_04/lib/perl5db.pl" >5.003_04 (ANDYD on 1996-09-02)</option> <option value="/release/SHAY/perl-5.40.1/diff/ANDYD/perl5.003_03/lib/perl5db.pl" >5.003_03 (ANDYD on 1996-08-28)</option> <option value="/release/SHAY/perl-5.40.1/diff/NI-S/perl5.003_02/lib/perl5db.pl" >5.003_02 (NI-S on 1996-08-10)</option> <option value="/release/SHAY/perl-5.40.1/diff/NI-S/perl5.003_02a/lib/perl5db.pl" >5.003_02a DEV (NI-S on 1996-08-08)</option> <option value="/release/SHAY/perl-5.40.1/diff/LWALL/perl5.002b3/lib/perl5db.pl" >5.002b3 (LWALL on 1996-02-03)</option> </optgroup> </select> </li> <li> <ul class="dependencies"> <li class="nav-header">Dependencies</li> <li><i class="ttip" title="dynamic_config enabled">unknown</i></li> <li> <hr> </li> <li> <a href="/module/perl5db.pl/requires">Reverse dependencies</a> </li> <li> <a href="http://deps.cpantesters.org/?module=perl5db.pl">CPAN Testers List</a> </li> <li> <a href="https://cpandeps.grinnz.com/?dist=perl">Dependency graph</a> </li> </ul> </li> <li class="nav-header">Permalinks</li> <li> <a href="/release/SHAY/perl-5.40.1/view/lib/perl5db.pl">This version</a> </li> <li> <a href="/dist/perl/view/lib/perl5db.pl">Latest version</a> </li> <li> <div class="plussers"> <div class="nav-header">++ed by:</div> <div> <a class="display-all" href="/author/FIBO"><img src="https://www.gravatar.com/avatar/84833ca8026b345b452986b3bf24158e?d=identicon&amp;s=20" title="FIBO" alt="FIBO"></a> <a class="display-all" href="/author/JWANG"><img src="https://www.gravatar.com/avatar/61d1e2eb0f8968080067151a9a9b5fe0?d=identicon&amp;s=20" title="JWANG" alt="JWANG"></a> <a class="display-all" href="/author/TIMKA"><img src="https://www.gravatar.com/avatar/a350a413a98ecb2c89ed8f25241edddc?d=identicon&amp;s=20" title="TIMKA" alt="TIMKA"></a> <a class="display-all" href="/author/ZENBAE"><img src="https://www.gravatar.com/avatar/b6acd5cf3bbc8173bf72aa45f525e932?d=identicon&amp;s=20" title="ZENBAE" alt="ZENBAE"></a> <a class="display-all" href="/author/JONBEEBE"><img src="https://www.gravatar.com/avatar/df2f2aa83ea4940779b1221214a09a5b?d=identicon&amp;s=20" title="JONBEEBE" alt="JONBEEBE"></a> </div> <!-- Display counts of plussers--> <div> <a href="/dist/perl/plussers">195 PAUSE users</a> </div> <div> 234 non-PAUSE users </div> </div> </li> <li> <div> <button class="contributors-show-button btn-link">and 1 contributors</button> <div id="metacpan_contributors" class="slide-out slide-out-hidden"> <div> <ul> <li class="contributor" > perl5-porters@perl.org </li> </ul> </div> </div> </div> </li> </ul> </div> </nav> <div class="content-navigation"> <div class="breadcrumbs"> <span> <a data-keyboard-shortcut="g a" rel="author" href="/author/SHAY" class="author-name">Steve Hay</a> </span> <span>&nbsp;/&nbsp;</span> <div class="release dist-release status-latest maturity-released"> <span class="dropdown"><b class="caret"></b></span> <select class="select-navigator "> <option value="/release/MAUKE/perl-5.41.10/view/lib/perl5db.pl" >5.41.10 DEV (MAUKE on 2025-03-21)</option> <option value="/release/HYDAHY/perl-5.41.9/view/lib/perl5db.pl" >5.41.9 DEV (HYDAHY on 2025-02-24)</option> <option value="/release/SHAY/perl-5.41.8/view/lib/perl5db.pl" >5.41.8 DEV (SHAY on 2025-01-20)</option> <option selected value="/release/SHAY/perl-5.40.1/view/lib/perl5db.pl" >5.40.1 (SHAY on 2025-01-18)</option> <option value="/release/SHAY/perl-5.38.3/view/lib/perl5db.pl" >5.38.3 (SHAY on 2025-01-18)</option> <option value="/release/SHAY/perl-5.40.1-RC1/view/lib/perl5db.pl" >5.40.1-RC1 DEV (SHAY on 2025-01-05)</option> <option value="/release/SHAY/perl-5.38.3-RC1/view/lib/perl5db.pl" >5.38.3-RC1 DEV (SHAY on 2025-01-05)</option> <option value="/release/CORION/perl-5.41.7/view/lib/perl5db.pl" >5.41.7 DEV (CORION on 2024-12-20)</option> <option value="/release/CONTRA/perl-5.41.6/view/lib/perl5db.pl" >5.41.6 DEV (CONTRA on 2024-11-20)</option> <option value="/release/HYDAHY/perl-5.41.5/view/lib/perl5db.pl" >5.41.5 DEV (HYDAHY on 2024-10-20)</option> <option value="/release/CONTRA/perl-5.41.4/view/lib/perl5db.pl" >5.41.4 DEV (CONTRA on 2024-09-20)</option> <option value="/release/BOOK/perl-5.41.3/view/lib/perl5db.pl" >5.41.3 DEV (BOOK on 2024-08-29)</option> <option value="/release/ETHER/perl-5.41.2/view/lib/perl5db.pl" >5.41.2 DEV (ETHER on 2024-07-20)</option> <option value="/release/BOOK/perl-5.41.1/view/lib/perl5db.pl" >5.41.1 DEV (BOOK on 2024-07-02)</option> <option value="/release/HAARG/perl-5.40.0/view/lib/perl5db.pl" >5.40.0 (HAARG on 2024-06-09)</option> <option value="/release/HAARG/perl-5.40.0-RC2/view/lib/perl5db.pl" >5.40.0-RC2 DEV (HAARG on 2024-06-04)</option> <option value="/release/HAARG/perl-5.40.0-RC1/view/lib/perl5db.pl" >5.40.0-RC1 DEV (HAARG on 2024-05-24)</option> <option value="/release/PEVANS/perl-5.39.10/view/lib/perl5db.pl" >5.39.10 DEV (PEVANS on 2024-04-27)</option> <option value="/release/PEVANS/perl-5.39.9/view/lib/perl5db.pl" >5.39.9 DEV (PEVANS on 2024-03-20)</option> <option value="/release/RENEEB/perl-5.39.8/view/lib/perl5db.pl" >5.39.8 DEV (RENEEB on 2024-02-23)</option> <option value="/release/CORION/perl-5.39.7/view/lib/perl5db.pl" >5.39.7 DEV (CORION on 2024-01-20)</option> <option value="/release/BOOK/perl-5.39.6/view/lib/perl5db.pl" >5.39.6 DEV (BOOK on 2023-12-30)</option> <option value="/release/PEVANS/perl-5.38.2/view/lib/perl5db.pl" >5.38.2 (PEVANS on 2023-11-29)</option> <option value="/release/PEVANS/perl-5.36.3/view/lib/perl5db.pl" >5.36.3 (PEVANS on 2023-11-29)</option> <option value="/release/PEVANS/perl-5.34.3/view/lib/perl5db.pl" >5.34.3 (PEVANS on 2023-11-29)</option> <option value="/release/ETHER/perl-5.39.5/view/lib/perl5db.pl" >5.39.5 DEV (ETHER on 2023-11-20)</option> <option value="/release/HAARG/perl-5.39.4/view/lib/perl5db.pl" >5.39.4 DEV (HAARG on 2023-10-25)</option> <option value="/release/WOLFSAGE/perl-5.39.3/view/lib/perl5db.pl" >5.39.3 DEV (WOLFSAGE on 2023-09-20)</option> <option value="/release/PEVANS/perl-5.39.2/view/lib/perl5db.pl" >5.39.2 DEV (PEVANS on 2023-08-20)</option> <option value="/release/SHAY/perl-5.39.1/view/lib/perl5db.pl" >5.39.1 DEV (SHAY on 2023-07-20)</option> <option value="/release/RJBS/perl-5.38.0/view/lib/perl5db.pl" >5.38.0 (RJBS on 2023-07-02)</option> <option value="/release/RJBS/perl-5.38.0-RC2/view/lib/perl5db.pl" >5.38.0-RC2 DEV (RJBS on 2023-06-23)</option> <option value="/release/RJBS/perl-5.38.0-RC1/view/lib/perl5db.pl" >5.38.0-RC1 DEV (RJBS on 2023-06-16)</option> <option value="/release/SHAY/perl-5.36.1/view/lib/perl5db.pl" >5.36.1 (SHAY on 2023-04-23)</option> <option value="/release/SHAY/perl-5.37.11/view/lib/perl5db.pl" >5.37.11 DEV (SHAY on 2023-04-20)</option> <option value="/release/SHAY/perl-5.36.1-RC3/view/lib/perl5db.pl" >5.36.1-RC3 DEV (SHAY on 2023-04-16)</option> <option value="/release/SHAY/perl-5.36.1-RC2/view/lib/perl5db.pl" >5.36.1-RC2 DEV (SHAY on 2023-04-11)</option> <option value="/release/SHAY/perl-5.36.1-RC1/view/lib/perl5db.pl" >5.36.1-RC1 DEV (SHAY on 2023-04-10)</option> <option value="/release/YVES/perl-5.37.10/view/lib/perl5db.pl" >5.37.10 DEV (YVES on 2023-03-21)</option> <option value="/release/ETHER/perl-5.37.9/view/lib/perl5db.pl" >5.37.9 DEV (ETHER on 2023-02-20)</option> <option value="/release/RENEEB/perl-5.37.8/view/lib/perl5db.pl" >5.37.8 DEV (RENEEB on 2023-01-20)</option> <option value="/release/HYDAHY/perl-5.37.7/view/lib/perl5db.pl" >5.37.7 DEV (HYDAHY on 2022-12-20)</option> <option value="/release/CORION/perl-5.37.6/view/lib/perl5db.pl" >5.37.6 DEV (CORION on 2022-11-20)</option> <option value="/release/TODDR/perl-5.37.5/view/lib/perl5db.pl" >5.37.5 DEV (TODDR on 2022-10-20)</option> <option value="/release/ETHER/perl-5.37.4/view/lib/perl5db.pl" >5.37.4 DEV (ETHER on 2022-09-21)</option> <option value="/release/ATOOMIC/perl-5.37.2/view/lib/perl5db.pl" >5.37.2 DEV (ATOOMIC on 2022-07-21)</option> <option value="/release/WOLFSAGE/perl-5.37.1/view/lib/perl5db.pl" >5.37.1 DEV (WOLFSAGE on 2022-06-20)</option> <option value="/release/RJBS/perl-5.37.0/view/lib/perl5db.pl" >5.37.0 DEV (RJBS on 2022-05-28)</option> <option value="/release/RJBS/perl-5.36.0/view/lib/perl5db.pl" >5.36.0 (RJBS on 2022-05-28)</option> <option value="/release/RJBS/perl-5.36.0-RC3/view/lib/perl5db.pl" >5.36.0-RC3 DEV (RJBS on 2022-05-22)</option> <option value="/release/RJBS/perl-5.36.0-RC2/view/lib/perl5db.pl" >5.36.0-RC2 DEV (RJBS on 2022-05-21)</option> <option value="/release/SHAY/perl-5.35.11/view/lib/perl5db.pl" >5.35.11 DEV (SHAY on 2022-04-20)</option> <option value="/release/XSAWYERX/perl-5.35.10/view/lib/perl5db.pl" >5.35.10 DEV (XSAWYERX on 2022-03-20)</option> <option value="/release/SHAY/perl-5.34.1/view/lib/perl5db.pl" >5.34.1 (SHAY on 2022-03-13)</option> <option value="/release/SHAY/perl-5.34.1-RC2/view/lib/perl5db.pl" >5.34.1-RC2 DEV (SHAY on 2022-03-06)</option> <option value="/release/SHAY/perl-5.34.1-RC1/view/lib/perl5db.pl" >5.34.1-RC1 DEV (SHAY on 2022-02-27)</option> <option value="/release/RENEEB/perl-5.35.9/view/lib/perl5db.pl" >5.35.9 DEV (RENEEB on 2022-02-20)</option> <option value="/release/ATOOMIC/perl-5.35.8/view/lib/perl5db.pl" >5.35.8 DEV (ATOOMIC on 2022-01-20)</option> <option value="/release/HYDAHY/perl-5.35.6/view/lib/perl5db.pl" >5.35.6 DEV (HYDAHY on 2021-11-21)</option> <option value="/release/LEONT/perl-5.35.5/view/lib/perl5db.pl" >5.35.5 DEV (LEONT on 2021-10-21)</option> <option value="/release/WOLFSAGE/perl-5.35.4/view/lib/perl5db.pl" >5.35.4 DEV (WOLFSAGE on 2021-09-20)</option> <option value="/release/ETHER/perl-5.35.3/view/lib/perl5db.pl" >5.35.3 DEV (ETHER on 2021-08-21)</option> <option value="/release/CORION/perl-5.35.1/view/lib/perl5db.pl" >5.35.1 DEV (CORION on 2021-06-20)</option> <option value="/release/RJBS/perl-5.35.0/view/lib/perl5db.pl" >5.35.0 DEV (RJBS on 2021-05-21)</option> <option value="/release/XSAWYERX/perl-5.34.0/view/lib/perl5db.pl" >5.34.0 (XSAWYERX on 2021-05-20)</option> <option value="/release/XSAWYERX/perl-5.34.0-RC2/view/lib/perl5db.pl" >5.34.0-RC2 DEV (XSAWYERX on 2021-05-15)</option> <option value="/release/XSAWYERX/perl-5.34.0-RC1/view/lib/perl5db.pl" >5.34.0-RC1 DEV (XSAWYERX on 2021-05-04)</option> <option value="/release/TODDR/perl-5.33.9/view/lib/perl5db.pl" >5.33.9 DEV (TODDR on 2021-04-20)</option> <option value="/release/ATOOMIC/perl-5.33.8/view/lib/perl5db.pl" >5.33.8 DEV (ATOOMIC on 2021-03-21)</option> <option value="/release/RENEEB/perl-5.33.7/view/lib/perl5db.pl" >5.33.7 DEV (RENEEB on 2021-02-20)</option> <option value="/release/SHAY/perl-5.32.1/view/lib/perl5db.pl" >5.32.1 (SHAY on 2021-01-23)</option> <option value="/release/HYDAHY/perl-5.33.6/view/lib/perl5db.pl" >5.33.6 DEV (HYDAHY on 2021-01-21)</option> <option value="/release/SHAY/perl-5.32.1-RC1/view/lib/perl5db.pl" >5.32.1-RC1 DEV (SHAY on 2021-01-09)</option> <option value="/release/CORION/perl-5.33.5/view/lib/perl5db.pl" >5.33.5 DEV (CORION on 2020-12-20)</option> <option value="/release/SHAY/perl-5.33.3/view/lib/perl5db.pl" >5.33.3 DEV (SHAY on 2020-10-20)</option> <option value="/release/XSAWYERX/perl-5.33.2/view/lib/perl5db.pl" >5.33.2 DEV (XSAWYERX on 2020-09-20)</option> <option value="/release/ETHER/perl-5.33.1/view/lib/perl5db.pl" >5.33.1 DEV (ETHER on 2020-08-20)</option> <option value="/release/XSAWYERX/perl-5.33.0/view/lib/perl5db.pl" >5.33.0 DEV (XSAWYERX on 2020-07-17)</option> <option value="/release/XSAWYERX/perl-5.32.0/view/lib/perl5db.pl" >5.32.0 (XSAWYERX on 2020-06-20)</option> <option value="/release/XSAWYERX/perl-5.32.0-RC1/view/lib/perl5db.pl" >5.32.0-RC1 DEV (XSAWYERX on 2020-06-07)</option> <option value="/release/XSAWYERX/perl-5.30.3-RC1/view/lib/perl5db.pl" >5.30.3-RC1 DEV (XSAWYERX on 2020-06-01)</option> <option value="/release/XSAWYERX/perl-5.30.3/view/lib/perl5db.pl" >5.30.3 (XSAWYERX on 2020-06-01)</option> <option value="/release/XSAWYERX/perl-5.28.3-RC1/view/lib/perl5db.pl" >5.28.3-RC1 DEV (XSAWYERX on 2020-06-01)</option> <option value="/release/XSAWYERX/perl-5.28.3/view/lib/perl5db.pl" >5.28.3 (XSAWYERX on 2020-06-01)</option> <option value="/release/XSAWYERX/perl-5.32.0-RC0/view/lib/perl5db.pl" >5.32.0-RC0 DEV (XSAWYERX on 2020-05-30)</option> <option value="/release/XSAWYERX/perl-5.31.11/view/lib/perl5db.pl" >5.31.11 DEV (XSAWYERX on 2020-04-28)</option> <option value="/release/XSAWYERX/perl-5.31.10/view/lib/perl5db.pl" >5.31.10 DEV (XSAWYERX on 2020-03-20)</option> <option value="/release/SHAY/perl-5.30.2/view/lib/perl5db.pl" >5.30.2 (SHAY on 2020-03-14)</option> <option value="/release/SHAY/perl-5.30.2-RC1/view/lib/perl5db.pl" >5.30.2-RC1 DEV (SHAY on 2020-02-29)</option> <option value="/release/RENEEB/perl-5.31.9/view/lib/perl5db.pl" >5.31.9 DEV (RENEEB on 2020-02-20)</option> <option value="/release/WOLFSAGE/perl-5.31.8/view/lib/perl5db.pl" >5.31.8 DEV (WOLFSAGE on 2020-01-20)</option> <option value="/release/ATOOMIC/perl-5.31.7/view/lib/perl5db.pl" >5.31.7 DEV (ATOOMIC on 2019-12-21)</option> <option value="/release/BINGOS/perl-5.31.6/view/lib/perl5db.pl" >5.31.6 DEV (BINGOS on 2019-11-20)</option> <option value="/release/SHAY/perl-5.30.1/view/lib/perl5db.pl" >5.30.1 (SHAY on 2019-11-10)</option> <option value="/release/SHAY/perl-5.30.1-RC1/view/lib/perl5db.pl" >5.30.1-RC1 DEV (SHAY on 2019-10-27)</option> <option value="/release/SHAY/perl-5.31.5/view/lib/perl5db.pl" >5.31.5 DEV (SHAY on 2019-10-20)</option> <option value="/release/CORION/perl-5.31.4/view/lib/perl5db.pl" >5.31.4 DEV (CORION on 2019-09-20)</option> <option value="/release/SHAY/perl-5.31.2/view/lib/perl5db.pl" >5.31.2 DEV (SHAY on 2019-07-20)</option> <option value="/release/ETHER/perl-5.31.1/view/lib/perl5db.pl" >5.31.1 DEV (ETHER on 2019-06-20)</option> <option value="/release/XSAWYERX/perl-5.31.0/view/lib/perl5db.pl" >5.31.0 DEV (XSAWYERX on 2019-05-24)</option> <option value="/release/XSAWYERX/perl-5.30.0/view/lib/perl5db.pl" >5.30.0 (XSAWYERX on 2019-05-22)</option> <option value="/release/XSAWYERX/perl-5.30.0-RC2/view/lib/perl5db.pl" >5.30.0-RC2 DEV (XSAWYERX on 2019-05-17)</option> <option value="/release/XSAWYERX/perl-5.30.0-RC1/view/lib/perl5db.pl" >5.30.0-RC1 DEV (XSAWYERX on 2019-05-11)</option> <option value="/release/XSAWYERX/perl-5.29.10/view/lib/perl5db.pl" >5.29.10 DEV (XSAWYERX on 2019-04-20)</option> <option value="/release/SHAY/perl-5.28.2/view/lib/perl5db.pl" >5.28.2 (SHAY on 2019-04-19)</option> <option value="/release/SHAY/perl-5.28.2-RC1/view/lib/perl5db.pl" >5.28.2-RC1 DEV (SHAY on 2019-04-05)</option> <option value="/release/ZAKAME/perl-5.29.9/view/lib/perl5db.pl" >5.29.9 DEV (ZAKAME on 2019-03-21)</option> <option value="/release/ATOOMIC/perl-5.29.8/view/lib/perl5db.pl" >5.29.8 DEV (ATOOMIC on 2019-02-21)</option> <option value="/release/ABIGAIL/perl-5.29.7/view/lib/perl5db.pl" >5.29.7 DEV (ABIGAIL on 2019-01-20)</option> <option value="/release/ABIGAIL/perl-5.29.6/view/lib/perl5db.pl" >5.29.6 DEV (ABIGAIL on 2018-12-18)</option> <option value="/release/SHAY/perl-5.28.1-RC1/view/lib/perl5db.pl" >5.28.1-RC1 DEV (SHAY on 2018-11-30)</option> <option value="/release/SHAY/perl-5.26.3-RC1/view/lib/perl5db.pl" >5.26.3-RC1 DEV (SHAY on 2018-11-30)</option> <option value="/release/SHAY/perl-5.28.1/view/lib/perl5db.pl" >5.28.1 (SHAY on 2018-11-29)</option> <option value="/release/SHAY/perl-5.26.3/view/lib/perl5db.pl" >5.26.3 (SHAY on 2018-11-29)</option> <option value="/release/ETHER/perl-5.29.5/view/lib/perl5db.pl" >5.29.5 DEV (ETHER on 2018-11-20)</option> <option value="/release/ARC/perl-5.29.4/view/lib/perl5db.pl" >5.29.4 DEV (ARC on 2018-10-20)</option> <option value="/release/GENEHACK/perl-5.29.3/view/lib/perl5db.pl" >5.29.3 DEV (GENEHACK on 2018-09-21)</option> <option value="/release/BINGOS/perl-5.29.2/view/lib/perl5db.pl" >5.29.2 DEV (BINGOS on 2018-08-20)</option> <option value="/release/SHAY/perl-5.29.1/view/lib/perl5db.pl" >5.29.1 DEV (SHAY on 2018-07-20)</option> <option value="/release/XSAWYERX/perl-5.29.0/view/lib/perl5db.pl" >5.29.0 DEV (XSAWYERX on 2018-06-26)</option> <option value="/release/XSAWYERX/perl-5.28.0/view/lib/perl5db.pl" >5.28.0 (XSAWYERX on 2018-06-23)</option> <option value="/release/XSAWYERX/perl-5.28.0-RC4/view/lib/perl5db.pl" >5.28.0-RC4 DEV (XSAWYERX on 2018-06-19)</option> <option value="/release/XSAWYERX/perl-5.28.0-RC3/view/lib/perl5db.pl" >5.28.0-RC3 DEV (XSAWYERX on 2018-06-18)</option> <option value="/release/XSAWYERX/perl-5.28.0-RC2/view/lib/perl5db.pl" >5.28.0-RC2 DEV (XSAWYERX on 2018-06-06)</option> <option value="/release/XSAWYERX/perl-5.28.0-RC1/view/lib/perl5db.pl" >5.28.0-RC1 DEV (XSAWYERX on 2018-05-21)</option> <option value="/release/XSAWYERX/perl-5.27.11/view/lib/perl5db.pl" >5.27.11 DEV (XSAWYERX on 2018-04-20)</option> <option value="/release/SHAY/perl-5.26.2/view/lib/perl5db.pl" >5.26.2 (SHAY on 2018-04-14)</option> <option value="/release/SHAY/perl-5.24.4/view/lib/perl5db.pl" >5.24.4 (SHAY on 2018-04-14)</option> <option value="/release/SHAY/perl-5.26.2-RC1/view/lib/perl5db.pl" >5.26.2-RC1 DEV (SHAY on 2018-03-24)</option> <option value="/release/SHAY/perl-5.24.4-RC1/view/lib/perl5db.pl" >5.24.4-RC1 DEV (SHAY on 2018-03-24)</option> <option value="/release/TODDR/perl-5.27.10/view/lib/perl5db.pl" >5.27.10 DEV (TODDR on 2018-03-20)</option> <option value="/release/RENEEB/perl-5.27.9/view/lib/perl5db.pl" >5.27.9 DEV (RENEEB on 2018-02-20)</option> <option value="/release/ABIGAIL/perl-5.27.8/view/lib/perl5db.pl" >5.27.8 DEV (ABIGAIL on 2018-01-20)</option> <option value="/release/BINGOS/perl-5.27.7/view/lib/perl5db.pl" >5.27.7 DEV (BINGOS on 2017-12-20)</option> <option value="/release/ETHER/perl-5.27.6/view/lib/perl5db.pl" >5.27.6 DEV (ETHER on 2017-11-20)</option> <option value="/release/SHAY/perl-5.27.5/view/lib/perl5db.pl" >5.27.5 DEV (SHAY on 2017-10-20)</option> <option value="/release/SHAY/perl-5.26.1/view/lib/perl5db.pl" >5.26.1 (SHAY on 2017-09-22)</option> <option value="/release/SHAY/perl-5.24.3/view/lib/perl5db.pl" >5.24.3 (SHAY on 2017-09-22)</option> <option value="/release/GENEHACK/perl-5.27.4/view/lib/perl5db.pl" >5.27.4 DEV (GENEHACK on 2017-09-20)</option> <option value="/release/WOLFSAGE/perl-5.27.3/view/lib/perl5db.pl" >5.27.3 DEV (WOLFSAGE on 2017-08-21)</option> <option value="/release/ARC/perl-5.27.2/view/lib/perl5db.pl" >5.27.2 DEV (ARC on 2017-07-20)</option> <option value="/release/SHAY/perl-5.24.2/view/lib/perl5db.pl" >5.24.2 (SHAY on 2017-07-15)</option> <option value="/release/SHAY/perl-5.22.4-RC1/view/lib/perl5db.pl" >5.22.4-RC1 DEV (SHAY on 2017-07-01)</option> <option value="/release/EHERMAN/perl-5.27.1/view/lib/perl5db.pl" >5.27.1 DEV (EHERMAN on 2017-06-20)</option> <option value="/release/XSAWYERX/perl-5.26.0/view/lib/perl5db.pl" >5.26.0 (XSAWYERX on 2017-05-30)</option> <option value="/release/RENEEB/perl-5.25.10/view/lib/perl5db.pl" >5.25.10 DEV (RENEEB on 2017-02-20)</option> <option value="/release/ABIGAIL/perl-5.25.9/view/lib/perl5db.pl" >5.25.9 DEV (ABIGAIL on 2017-01-20)</option> <option value="/release/SHAY/perl-5.22.3/view/lib/perl5db.pl" >5.22.3 (SHAY on 2017-01-14)</option> <option value="/release/EXODIST/perl-5.25.7/view/lib/perl5db.pl" >5.25.7 DEV (EXODIST on 2016-11-20)</option> <option value="/release/ARC/perl-5.25.6/view/lib/perl5db.pl" >5.25.6 DEV (ARC on 2016-10-20)</option> <option value="/release/STEVAN/perl-5.25.5/view/lib/perl5db.pl" >5.25.5 DEV (STEVAN on 2016-09-20)</option> <option value="/release/BINGOS/perl-5.25.4/view/lib/perl5db.pl" >5.25.4 DEV (BINGOS on 2016-08-20)</option> <option value="/release/WOLFSAGE/perl-5.25.2/view/lib/perl5db.pl" >5.25.2 DEV (WOLFSAGE on 2016-06-20)</option> <option value="/release/RJBS/perl-5.24.0/view/lib/perl5db.pl" >5.24.0 (RJBS on 2016-05-09)</option> <option value="/release/ABIGAIL/perl-5.23.9/view/lib/perl5db.pl" >5.23.9 DEV (ABIGAIL on 2016-03-20)</option> <option value="/release/STEVAN/perl-5.23.7/view/lib/perl5db.pl" >5.23.7 DEV (STEVAN on 2016-01-20)</option> <option value="/release/DAGOLDEN/perl-5.23.6/view/lib/perl5db.pl" >5.23.6 DEV (DAGOLDEN on 2015-12-21)</option> <option value="/release/SHAY/perl-5.22.1/view/lib/perl5db.pl" >5.22.1 (SHAY on 2015-12-13)</option> <option value="/release/ABIGAIL/perl-5.23.5/view/lib/perl5db.pl" >5.23.5 DEV (ABIGAIL on 2015-11-20)</option> <option value="/release/PCM/perl-5.23.3/view/lib/perl5db.pl" >5.23.3 DEV (PCM on 2015-09-21)</option> <option value="/release/WOLFSAGE/perl-5.23.2/view/lib/perl5db.pl" >5.23.2 DEV (WOLFSAGE on 2015-08-20)</option> <option value="/release/WOLFSAGE/perl-5.23.1/view/lib/perl5db.pl" >5.23.1 DEV (WOLFSAGE on 2015-07-20)</option> <option value="/release/RJBS/perl-5.22.0/view/lib/perl5db.pl" >5.22.0 (RJBS on 2015-06-01)</option> <option value="/release/RJBS/perl-5.22.0-RC2/view/lib/perl5db.pl" >5.22.0-RC2 DEV (RJBS on 2015-05-21)</option> <option value="/release/RJBS/perl-5.22.0-RC1/view/lib/perl5db.pl" >5.22.0-RC1 DEV (RJBS on 2015-05-19)</option> <option value="/release/WOLFSAGE/perl-5.21.8/view/lib/perl5db.pl" >5.21.8 DEV (WOLFSAGE on 2015-01-20)</option> <option value="/release/BINGOS/perl-5.21.6/view/lib/perl5db.pl" >5.21.6 DEV (BINGOS on 2014-11-20)</option> <option value="/release/ABIGAIL/perl-5.21.5/view/lib/perl5db.pl" >5.21.5 DEV (ABIGAIL on 2014-10-20)</option> <option value="/release/RJBS/perl-5.18.4/view/lib/perl5db.pl" >5.18.4 (RJBS on 2014-10-02)</option> <option value="/release/RJBS/perl-5.18.3/view/lib/perl5db.pl" >5.18.3 (RJBS on 2014-10-01)</option> <option value="/release/RJBS/perl-5.18.3-RC2/view/lib/perl5db.pl" >5.18.3-RC2 DEV (RJBS on 2014-09-27)</option> <option value="/release/RJBS/perl-5.18.3-RC1/view/lib/perl5db.pl" >5.18.3-RC1 DEV (RJBS on 2014-09-17)</option> <option value="/release/PCM/perl-5.21.3/view/lib/perl5db.pl" >5.21.3 DEV (PCM on 2014-08-21)</option> <option value="/release/ABIGAIL/perl-5.21.2/view/lib/perl5db.pl" >5.21.2 DEV (ABIGAIL on 2014-07-20)</option> <option value="/release/WOLFSAGE/perl-5.21.1/view/lib/perl5db.pl" >5.21.1 DEV (WOLFSAGE on 2014-06-20)</option> <option value="/release/RJBS/perl-5.20.0/view/lib/perl5db.pl" >5.20.0 (RJBS on 2014-05-27)</option> <option value="/release/RJBS/perl-5.20.0-RC1/view/lib/perl5db.pl" >5.20.0-RC1 DEV (RJBS on 2014-05-17)</option> <option value="/release/ARC/perl-5.19.10/view/lib/perl5db.pl" >5.19.10 DEV (ARC on 2014-03-20)</option> <option value="/release/TONYC/perl-5.19.9/view/lib/perl5db.pl" >5.19.9 DEV (TONYC on 2014-02-20)</option> <option value="/release/RJBS/perl-5.18.2/view/lib/perl5db.pl" >5.18.2 (RJBS on 2014-01-07)</option> <option value="/release/RJBS/perl-5.18.2-RC4/view/lib/perl5db.pl" >5.18.2-RC4 DEV (RJBS on 2013-12-22)</option> <option value="/release/ABIGAIL/perl-5.19.7/view/lib/perl5db.pl" >5.19.7 DEV (ABIGAIL on 2013-12-20)</option> <option value="/release/RJBS/perl-5.18.2-RC3/view/lib/perl5db.pl" >5.18.2-RC3 DEV (RJBS on 2013-12-19)</option> <option value="/release/RJBS/perl-5.18.2-RC2/view/lib/perl5db.pl" >5.18.2-RC2 DEV (RJBS on 2013-12-07)</option> <option value="/release/RJBS/perl-5.18.2-RC1/view/lib/perl5db.pl" >5.18.2-RC1 DEV (RJBS on 2013-12-02)</option> <option value="/release/BINGOS/perl-5.19.6/view/lib/perl5db.pl" >5.19.6 DEV (BINGOS on 2013-11-20)</option> <option value="/release/RJBS/perl-5.18.1/view/lib/perl5db.pl" >5.18.1 (RJBS on 2013-08-12)</option> <option value="/release/RJBS/perl-5.18.1-RC3/view/lib/perl5db.pl" >5.18.1-RC3 DEV (RJBS on 2013-08-09)</option> <option value="/release/RJBS/perl-5.18.1-RC2/view/lib/perl5db.pl" >5.18.1-RC2 DEV (RJBS on 2013-08-04)</option> <option value="/release/RJBS/perl-5.18.1-RC1/view/lib/perl5db.pl" >5.18.1-RC1 DEV (RJBS on 2013-08-02)</option> <option value="/release/DAGOLDEN/perl-5.19.1/view/lib/perl5db.pl" >5.19.1 DEV (DAGOLDEN on 2013-06-21)</option> <option value="/release/RJBS/perl-5.18.0/view/lib/perl5db.pl" >5.18.0 (RJBS on 2013-05-18)</option> <option value="/release/RJBS/perl-5.18.0-RC4/view/lib/perl5db.pl" >5.18.0-RC4 DEV (RJBS on 2013-05-16)</option> <option value="/release/RJBS/perl-5.18.0-RC3/view/lib/perl5db.pl" >5.18.0-RC3 DEV (RJBS on 2013-05-14)</option> <option value="/release/RJBS/perl-5.18.0-RC2/view/lib/perl5db.pl" >5.18.0-RC2 DEV (RJBS on 2013-05-12)</option> <option value="/release/RJBS/perl-5.18.0-RC1/view/lib/perl5db.pl" >5.18.0-RC1 DEV (RJBS on 2013-05-11)</option> <option value="/release/RJBS/perl-5.16.3/view/lib/perl5db.pl" >5.16.3 (RJBS on 2013-03-11)</option> <option value="/release/DAPM/perl-5.14.4/view/lib/perl5db.pl" >5.14.4 (DAPM on 2013-03-10)</option> <option value="/release/DAPM/perl-5.14.4-RC2/view/lib/perl5db.pl" >5.14.4-RC2 DEV (DAPM on 2013-03-07)</option> <option value="/release/RJBS/perl-5.16.3-RC1/view/lib/perl5db.pl" >5.16.3-RC1 DEV (RJBS on 2013-03-07)</option> <option value="/release/DAPM/perl-5.14.4-RC1/view/lib/perl5db.pl" >5.14.4-RC1 DEV (DAPM on 2013-03-05)</option> <option value="/release/BINGOS/perl-5.17.9/view/lib/perl5db.pl" >5.17.9 DEV (BINGOS on 2013-02-20)</option> <option value="/release/ARC/perl-5.17.8/view/lib/perl5db.pl" >5.17.8 DEV (ARC on 2013-01-20)</option> <option value="/release/DROLSKY/perl-5.17.7/view/lib/perl5db.pl" >5.17.7 DEV (DROLSKY on 2012-12-18)</option> <option value="/release/DOM/perl-5.12.5/view/lib/perl5db.pl" >5.12.5 (DOM on 2012-11-10)</option> <option value="/release/DOM/perl-5.12.5-RC2/view/lib/perl5db.pl" >5.12.5-RC2 DEV (DOM on 2012-11-08)</option> <option value="/release/DOM/perl-5.12.5-RC1/view/lib/perl5db.pl" >5.12.5-RC1 DEV (DOM on 2012-11-03)</option> <option value="/release/RJBS/perl-5.16.2/view/lib/perl5db.pl" >5.16.2 (RJBS on 2012-11-01)</option> <option value="/release/RJBS/perl-5.16.2-RC1/view/lib/perl5db.pl" >5.16.2-RC1 DEV (RJBS on 2012-10-27)</option> <option value="/release/FLORA/perl-5.17.5/view/lib/perl5db.pl" >5.17.5 DEV (FLORA on 2012-10-20)</option> <option value="/release/DOM/perl-5.14.3/view/lib/perl5db.pl" >5.14.3 (DOM on 2012-10-12)</option> <option value="/release/DOM/perl-5.14.3-RC2/view/lib/perl5db.pl" >5.14.3-RC2 DEV (DOM on 2012-10-10)</option> <option value="/release/DOM/perl-5.14.3-RC1/view/lib/perl5db.pl" >5.14.3-RC1 DEV (DOM on 2012-09-26)</option> <option value="/release/FLORA/perl-5.17.4/view/lib/perl5db.pl" >5.17.4 DEV (FLORA on 2012-09-20)</option> <option value="/release/RJBS/perl-5.16.1/view/lib/perl5db.pl" >5.16.1 (RJBS on 2012-08-08)</option> <option value="/release/RJBS/perl-5.16.1-RC1/view/lib/perl5db.pl" >5.16.1-RC1 DEV (RJBS on 2012-08-03)</option> <option value="/release/TONYC/perl-5.17.2/view/lib/perl5db.pl" >5.17.2 DEV (TONYC on 2012-07-20)</option> <option value="/release/DOY/perl-5.17.1/view/lib/perl5db.pl" >5.17.1 DEV (DOY on 2012-06-20)</option> <option value="/release/ZEFRAM/perl-5.17.0/view/lib/perl5db.pl" >5.17.0 DEV (ZEFRAM on 2012-05-26)</option> <option value="/release/RJBS/perl-5.16.0/view/lib/perl5db.pl" >5.16.0 (RJBS on 2012-05-20)</option> <option value="/release/RJBS/perl-5.16.0-RC2/view/lib/perl5db.pl" >5.16.0-RC2 DEV (RJBS on 2012-05-16)</option> <option value="/release/RJBS/perl-5.16.0-RC1/view/lib/perl5db.pl" >5.16.0-RC1 DEV (RJBS on 2012-05-15)</option> <option value="/release/RJBS/perl-5.16.0-RC0/view/lib/perl5db.pl" >5.16.0-RC0 DEV (RJBS on 2012-05-11)</option> <option value="/release/ABIGAIL/perl-5.15.9/view/lib/perl5db.pl" >5.15.9 DEV (ABIGAIL on 2012-03-20)</option> <option value="/release/BINGOS/perl-5.15.7/view/lib/perl5db.pl" >5.15.7 DEV (BINGOS on 2012-01-20)</option> <option value="/release/DROLSKY/perl-5.15.6/view/lib/perl5db.pl" >5.15.6 DEV (DROLSKY on 2011-12-20)</option> <option value="/release/FLORA/perl-5.15.4/view/lib/perl5db.pl" >5.15.4 DEV (FLORA on 2011-10-20)</option> <option value="/release/FLORA/perl-5.14.2/view/lib/perl5db.pl" >5.14.2 (FLORA on 2011-09-26)</option> <option value="/release/STEVAN/perl-5.15.3/view/lib/perl5db.pl" >5.15.3 DEV (STEVAN on 2011-09-21)</option> <option value="/release/FLORA/perl-5.14.2-RC1/view/lib/perl5db.pl" >5.14.2-RC1 DEV (FLORA on 2011-09-19)</option> <option value="/release/ZEFRAM/perl-5.15.1/view/lib/perl5db.pl" >5.15.1 DEV (ZEFRAM on 2011-07-20)</option> <option value="/release/DAGOLDEN/perl-5.15.0/view/lib/perl5db.pl" >5.15.0 DEV (DAGOLDEN on 2011-06-20)</option> <option value="/release/LBROCARD/perl-5.12.4/view/lib/perl5db.pl" >5.12.4 (LBROCARD on 2011-06-20)</option> <option value="/release/JESSE/perl-5.14.1/view/lib/perl5db.pl" >5.14.1 (JESSE on 2011-06-17)</option> <option value="/release/LBROCARD/perl-5.12.4-RC2/view/lib/perl5db.pl" >5.12.4-RC2 DEV (LBROCARD on 2011-06-15)</option> <option value="/release/JESSE/perl-5.14.1-RC1/view/lib/perl5db.pl" >5.14.1-RC1 DEV (JESSE on 2011-06-09)</option> <option value="/release/LBROCARD/perl-5.12.4-RC1/view/lib/perl5db.pl" >5.12.4-RC1 DEV (LBROCARD on 2011-06-08)</option> <option value="/release/JESSE/perl-5.14.0/view/lib/perl5db.pl" >5.14.0 (JESSE on 2011-05-14)</option> <option value="/release/JESSE/perl-5.14.0-RC3/view/lib/perl5db.pl" >5.14.0-RC3 DEV (JESSE on 2011-05-11)</option> <option value="/release/JESSE/perl-5.14.0-RC2/view/lib/perl5db.pl" >5.14.0-RC2 DEV (JESSE on 2011-05-04)</option> <option value="/release/JESSE/perl-5.14.0-RC1/view/lib/perl5db.pl" >5.14.0-RC1 DEV (JESSE on 2011-04-20)</option> <option value="/release/FLORA/perl-5.13.11/view/lib/perl5db.pl" >5.13.11 DEV (FLORA on 2011-03-20)</option> <option value="/release/AVAR/perl-5.13.10/view/lib/perl5db.pl" >5.13.10 DEV (AVAR on 2011-02-20)</option> <option value="/release/RJBS/perl-5.12.3/view/lib/perl5db.pl" >5.12.3 (RJBS on 2011-01-22)</option> <option value="/release/JESSE/perl-5.13.9/view/lib/perl5db.pl" >5.13.9 DEV (JESSE on 2011-01-21)</option> <option value="/release/RJBS/perl-5.12.3-RC3/view/lib/perl5db.pl" >5.12.3-RC3 DEV (RJBS on 2011-01-18)</option> <option value="/release/RJBS/perl-5.12.3-RC2/view/lib/perl5db.pl" >5.12.3-RC2 DEV (RJBS on 2011-01-15)</option> <option value="/release/RJBS/perl-5.12.3-RC1/view/lib/perl5db.pl" >5.12.3-RC1 DEV (RJBS on 2011-01-10)</option> <option value="/release/ZEFRAM/perl-5.13.8/view/lib/perl5db.pl" >5.13.8 DEV (ZEFRAM on 2010-12-19)</option> <option value="/release/BINGOS/perl-5.13.7/view/lib/perl5db.pl" >5.13.7 DEV (BINGOS on 2010-11-21)</option> <option value="/release/MIYAGAWA/perl-5.13.6/view/lib/perl5db.pl" >5.13.6 DEV (MIYAGAWA on 2010-10-21)</option> <option value="/release/JESSE/perl-5.12.2/view/lib/perl5db.pl" >5.12.2 (JESSE on 2010-09-07)</option> <option value="/release/JESSE/perl-5.12.2-RC1/view/lib/perl5db.pl" >5.12.2-RC1 DEV (JESSE on 2010-08-31)</option> <option value="/release/FLORA/perl-5.13.4/view/lib/perl5db.pl" >5.13.4 DEV (FLORA on 2010-08-20)</option> <option value="/release/DAGOLDEN/perl-5.13.3/view/lib/perl5db.pl" >5.13.3 DEV (DAGOLDEN on 2010-07-20)</option> <option value="/release/MSTROUT/perl-5.13.2/view/lib/perl5db.pl" >5.13.2 DEV (MSTROUT on 2010-06-22)</option> <option value="/release/JESSE/perl-5.12.1/view/lib/perl5db.pl" >5.12.1 (JESSE on 2010-05-16)</option> <option value="/release/JESSE/perl-5.12.1-RC2/view/lib/perl5db.pl" >5.12.1-RC2 DEV (JESSE on 2010-05-13)</option> <option value="/release/JESSE/perl-5.12.1-RC1/view/lib/perl5db.pl" >5.12.1-RC1 DEV (JESSE on 2010-05-10)</option> <option value="/release/LBROCARD/perl-5.13.0/view/lib/perl5db.pl" >5.13.0 DEV (LBROCARD on 2010-04-20)</option> <option value="/release/JESSE/perl-5.12.0/view/lib/perl5db.pl" >5.12.0 (JESSE on 2010-04-12)</option> <option value="/release/JESSE/perl-5.12.0-RC5/view/lib/perl5db.pl" >5.12.0-RC5 DEV (JESSE on 2010-04-10)</option> <option value="/release/JESSE/perl-5.12.0-RC4/view/lib/perl5db.pl" >5.12.0-RC4 DEV (JESSE on 2010-04-07)</option> <option value="/release/JESSE/perl-5.12.0-RC3/view/lib/perl5db.pl" >5.12.0-RC3 DEV (JESSE on 2010-04-03)</option> <option value="/release/JESSE/perl-5.12.0-RC2/view/lib/perl5db.pl" >5.12.0-RC2 DEV (JESSE on 2010-04-01)</option> <option value="/release/JESSE/perl-5.12.0-RC1/view/lib/perl5db.pl" >5.12.0-RC1 DEV (JESSE on 2010-03-29)</option> <option value="/release/JESSE/perl-5.11.3/view/lib/perl5db.pl" >5.11.3 DEV (JESSE on 2009-12-21)</option> <option value="/release/LBROCARD/perl-5.11.2/view/lib/perl5db.pl" >5.11.2 DEV (LBROCARD on 2009-11-20)</option> <option value="/release/JESSE/perl-5.11.1/view/lib/perl5db.pl" >5.11.1 DEV (JESSE on 2009-10-20)</option> <option value="/release/JESSE/perl-5.11.0/view/lib/perl5db.pl" >5.11.0 DEV (JESSE on 2009-10-02)</option> <option value="/release/DAPM/perl-5.10.1/view/lib/perl5db.pl" >5.10.1 (DAPM on 2009-08-23)</option> <option value="/release/DAPM/perl-5.10.1-RC2/view/lib/perl5db.pl" >5.10.1-RC2 DEV (DAPM on 2009-08-18)</option> <option value="/release/DAPM/perl-5.10.1-RC1/view/lib/perl5db.pl" >5.10.1-RC1 DEV (DAPM on 2009-08-06)</option> <option value="/release/NWCLARK/perl-5.8.9/view/lib/perl5db.pl" >5.8.9 (NWCLARK on 2008-12-14)</option> <option value="/release/NWCLARK/perl-5.8.9-RC2/view/lib/perl5db.pl" >5.8.9-RC2 DEV (NWCLARK on 2008-12-06)</option> <option value="/release/NWCLARK/perl-5.8.9-RC1/view/lib/perl5db.pl" >5.8.9-RC1 DEV (NWCLARK on 2008-11-10)</option> <option value="/release/RGARCIA/perl-5.10.0/view/lib/perl5db.pl" >5.10.0 (RGARCIA on 2007-12-18)</option> <option value="/release/RGARCIA/perl-5.9.5/view/lib/perl5db.pl" >5.9.5 DEV (RGARCIA on 2007-07-07)</option> <option value="/release/RGARCIA/perl-5.9.4/view/lib/perl5db.pl" >5.9.4 DEV (RGARCIA on 2006-08-15)</option> <option value="/release/NWCLARK/perl-5.8.8/view/lib/perl5db.pl" >5.8.8 (NWCLARK on 2006-02-01)</option> <option value="/release/RGARCIA/perl-5.9.3/view/lib/perl5db.pl" >5.9.3 DEV (RGARCIA on 2006-01-28)</option> <option value="/release/NWCLARK/perl-5.8.8-RC1/view/lib/perl5db.pl" >5.8.8-RC1 DEV (NWCLARK on 2006-01-20)</option> <option value="/release/NWCLARK/perl-5.8.7/view/lib/perl5db.pl" >5.8.7 (NWCLARK on 2005-05-30)</option> <option value="/release/NWCLARK/perl-5.8.7-RC1/view/lib/perl5db.pl" >5.8.7-RC1 DEV (NWCLARK on 2005-05-18)</option> <option value="/release/RGARCIA/perl-5.9.2/view/lib/perl5db.pl" >5.9.2 DEV (RGARCIA on 2005-04-01)</option> <option value="/release/NWCLARK/perl-5.8.6/view/lib/perl5db.pl" >5.8.6 (NWCLARK on 2004-11-27)</option> <option value="/release/NWCLARK/perl-5.8.6-RC1/view/lib/perl5db.pl" >5.8.6-RC1 DEV (NWCLARK on 2004-11-11)</option> <option value="/release/NWCLARK/perl-5.8.5/view/lib/perl5db.pl" >5.8.5 (NWCLARK on 2004-07-19)</option> <option value="/release/NWCLARK/perl-5.8.5-RC2/view/lib/perl5db.pl" >5.8.5-RC2 DEV (NWCLARK on 2004-07-08)</option> <option value="/release/NWCLARK/perl-5.8.5-RC1/view/lib/perl5db.pl" >5.8.5-RC1 DEV (NWCLARK on 2004-07-06)</option> <option value="/release/NWCLARK/perl-5.8.4/view/lib/perl5db.pl" >5.8.4 (NWCLARK on 2004-04-21)</option> <option value="/release/NWCLARK/perl-5.8.4-RC2/view/lib/perl5db.pl" >5.8.4-RC2 DEV (NWCLARK on 2004-04-15)</option> <option value="/release/NWCLARK/perl-5.8.4-RC1/view/lib/perl5db.pl" >5.8.4-RC1 DEV (NWCLARK on 2004-04-05)</option> <option value="/release/RGARCIA/perl-5.9.1/view/lib/perl5db.pl" >5.9.1 DEV (RGARCIA on 2004-03-16)</option> <option value="/release/LBROCARD/perl5.005_04/view/lib/perl5db.pl" >5.005_04 (LBROCARD on 2004-02-23)</option> <option value="/release/NWCLARK/perl-5.8.3/view/lib/perl5db.pl" >5.8.3 (NWCLARK on 2004-01-14)</option> <option value="/release/NWCLARK/perl-5.8.3-RC1/view/lib/perl5db.pl" >5.8.3-RC1 DEV (NWCLARK on 2004-01-07)</option> <option value="/release/RGARCIA/perl-5.6.2/view/lib/perl5db.pl" >5.6.2 (RGARCIA on 2003-11-15)</option> <option value="/release/NWCLARK/perl-5.8.2/view/lib/perl5db.pl" >5.8.2 (NWCLARK on 2003-11-05)</option> <option value="/release/NWCLARK/perl-5.8.2-RC2/view/lib/perl5db.pl" >5.8.2-RC2 DEV (NWCLARK on 2003-11-03)</option> <option value="/release/NWCLARK/perl-5.8.2-RC1/view/lib/perl5db.pl" >5.8.2-RC1 DEV (NWCLARK on 2003-10-27)</option> <option value="/release/HVDS/perl-5.9.0/view/lib/perl5db.pl" >5.9.0 DEV (HVDS on 2003-10-27)</option> <option value="/release/JHI/perl-5.8.1/view/lib/perl5db.pl" >5.8.1 (JHI on 2003-09-25)</option> <option value="/release/JHI/perl-5.8.0/view/lib/perl5db.pl" >5.8.0 (JHI on 2002-07-18)</option> <option value="/release/JHI/perl-5.7.3/view/lib/perl5db.pl" >5.7.3 DEV (JHI on 2002-03-05)</option> <option value="/release/JHI/perl-5.7.2/view/lib/perl5db.pl" >5.7.2 DEV (JHI on 2001-07-13)</option> <option value="/release/GSAR/perl-5.6.1/view/lib/perl5db.pl" >5.6.1 (GSAR on 2001-04-09)</option> <option value="/release/GSAR/perl-5.6.1-TRIAL3/view/lib/perl5db.pl" >5.6.1-TRIAL3 DEV (GSAR on 2001-03-19)</option> <option value="/release/GSAR/perl-5.6.1-TRIAL2/view/lib/perl5db.pl" >5.6.1-TRIAL2 DEV (GSAR on 2001-01-31)</option> <option value="/release/GSAR/perl-5.6.1-TRIAL1/view/lib/perl5db.pl" >5.6.1-TRIAL1 DEV (GSAR on 2000-12-18)</option> <option value="/release/JHI/perl-5.7.0/view/lib/perl5db.pl" >5.7.0 DEV (JHI on 2000-09-02)</option> <option value="/release/GSAR/perl-5.6.0/view/lib/perl5db.pl" >5.6.0 (GSAR on 2000-03-23)</option> <option value="/release/CHIPS/perl5.004_05/view/lib/perl5db.pl" >5.004_05 (CHIPS on 1999-04-29)</option> <option value="/release/GBARR/perl5.005_03/view/lib/perl5db.pl" >5.005_03 (GBARR on 1999-03-29)</option> <option value="/release/GSAR/perl5.005_02/view/lib/perl5db.pl" >5.005_02 (GSAR on 1998-08-08)</option> <option value="/release/GSAR/perl5.005_01/view/lib/perl5db.pl" >5.005_01 (GSAR on 1998-07-27)</option> <option value="/release/GSAR/perl5.005/view/lib/perl5db.pl" >5.005 (GSAR on 1998-07-23)</option> <option value="/release/TIMB/perl5.004_04/view/lib/perl5db.pl" >5.004_04 (TIMB on 1997-10-15)</option> <option value="/release/TIMB/perl5.004_03/view/lib/perl5db.pl" >5.004_03 (TIMB on 1997-09-05)</option> <option value="/release/TIMB/perl5.004_02/view/lib/perl5db.pl" >5.004_02 (TIMB on 1997-08-07)</option> <option value="/release/TIMB/perl5.004_01/view/lib/perl5db.pl" >5.004_01 (TIMB on 1997-06-13)</option> <option value="/release/CHIPS/perl5.004/view/lib/perl5db.pl" >5.004 (CHIPS on 1997-05-15)</option> <optgroup label="BackPAN">' <option value="/release/PEVANS/perl-5.38.1a/view/lib/perl5db.pl" >5.38.1a (PEVANS on 2023-11-25)</option> <option value="/release/PEVANS/perl-5.36.2a/view/lib/perl5db.pl" >5.36.2a (PEVANS on 2023-11-25)</option> <option value="/release/PEVANS/perl-5.34.2a/view/lib/perl5db.pl" >5.34.2a (PEVANS on 2023-11-25)</option> <option value="/release/PEVANS/perl-5.38.1/view/lib/perl5db.pl" >5.38.1 (PEVANS on 2023-11-25)</option> <option value="/release/PEVANS/perl-5.36.2/view/lib/perl5db.pl" >5.36.2 (PEVANS on 2023-11-25)</option> <option value="/release/PEVANS/perl-5.34.2/view/lib/perl5db.pl" >5.34.2 (PEVANS on 2023-11-25)</option> <option value="/release/NEILB/perl-5.37.3/view/lib/perl5db.pl" >5.37.3 DEV (NEILB on 2022-08-20)</option> <option value="/release/NEILB/perl-5.35.7/view/lib/perl5db.pl" >5.35.7 DEV (NEILB on 2021-12-20)</option> <option value="/release/NEILB/perl-5.35.2/view/lib/perl5db.pl" >5.35.2 DEV (NEILB on 2021-07-23)</option> <option value="/release/TOMHUKINS/perl-5.33.4/view/lib/perl5db.pl" >5.33.4 DEV (TOMHUKINS on 2020-11-20)</option> <option value="/release/TOMHUKINS/perl-5.31.3/view/lib/perl5db.pl" >5.31.3 DEV (TOMHUKINS on 2019-08-20)</option> <option value="/release/SHAY/perl-5.26.1-RC1/view/lib/perl5db.pl" >5.26.1-RC1 DEV (SHAY on 2017-09-10)</option> <option value="/release/SHAY/perl-5.24.3-RC1/view/lib/perl5db.pl" >5.24.3-RC1 DEV (SHAY on 2017-09-10)</option> <option value="/release/SHAY/perl-5.22.4/view/lib/perl5db.pl" >5.22.4 (SHAY on 2017-07-15)</option> <option value="/release/SHAY/perl-5.24.2-RC1/view/lib/perl5db.pl" >5.24.2-RC1 DEV (SHAY on 2017-07-01)</option> <option value="/release/XSAWYERX/perl-5.27.0/view/lib/perl5db.pl" >5.27.0 DEV (XSAWYERX on 2017-05-31)</option> <option value="/release/XSAWYERX/perl-5.26.0-RC2/view/lib/perl5db.pl" >5.26.0-RC2 DEV (XSAWYERX on 2017-05-23)</option> <option value="/release/XSAWYERX/perl-5.26.0-RC1/view/lib/perl5db.pl" >5.26.0-RC1 DEV (XSAWYERX on 2017-05-11)</option> <option value="/release/XSAWYERX/perl-5.25.12/view/lib/perl5db.pl" >5.25.12 DEV (XSAWYERX on 2017-04-20)</option> <option value="/release/XSAWYERX/perl-5.25.11/view/lib/perl5db.pl" >5.25.11 DEV (XSAWYERX on 2017-03-20)</option> <option value="/release/SHAY/perl-5.24.1/view/lib/perl5db.pl" >5.24.1 (SHAY on 2017-01-14)</option> <option value="/release/SHAY/perl-5.24.1-RC5/view/lib/perl5db.pl" >5.24.1-RC5 DEV (SHAY on 2017-01-02)</option> <option value="/release/SHAY/perl-5.22.3-RC5/view/lib/perl5db.pl" >5.22.3-RC5 DEV (SHAY on 2017-01-02)</option> <option value="/release/XSAWYERX/perl-5.25.8/view/lib/perl5db.pl" >5.25.8 DEV (XSAWYERX on 2016-12-20)</option> <option value="/release/SHAY/perl-5.24.1-RC4/view/lib/perl5db.pl" >5.24.1-RC4 DEV (SHAY on 2016-10-12)</option> <option value="/release/SHAY/perl-5.22.3-RC4/view/lib/perl5db.pl" >5.22.3-RC4 DEV (SHAY on 2016-10-12)</option> <option value="/release/SHAY/perl-5.24.1-RC3/view/lib/perl5db.pl" >5.24.1-RC3 DEV (SHAY on 2016-08-11)</option> <option value="/release/SHAY/perl-5.22.3-RC3/view/lib/perl5db.pl" >5.22.3-RC3 DEV (SHAY on 2016-08-11)</option> <option value="/release/SHAY/perl-5.24.1-RC2/view/lib/perl5db.pl" >5.24.1-RC2 DEV (SHAY on 2016-07-25)</option> <option value="/release/SHAY/perl-5.22.3-RC2/view/lib/perl5db.pl" >5.22.3-RC2 DEV (SHAY on 2016-07-25)</option> <option value="/release/SHAY/perl-5.25.3/view/lib/perl5db.pl" >5.25.3 DEV (SHAY on 2016-07-20)</option> <option value="/release/SHAY/perl-5.24.1-RC1/view/lib/perl5db.pl" >5.24.1-RC1 DEV (SHAY on 2016-07-17)</option> <option value="/release/SHAY/perl-5.22.3-RC1/view/lib/perl5db.pl" >5.22.3-RC1 DEV (SHAY on 2016-07-17)</option> <option value="/release/XSAWYERX/perl-5.25.1/view/lib/perl5db.pl" >5.25.1 DEV (XSAWYERX on 2016-05-20)</option> <option value="/release/RJBS/perl-5.25.0/view/lib/perl5db.pl" >5.25.0 DEV (RJBS on 2016-05-09)</option> <option value="/release/RJBS/perl-5.24.0-RC5/view/lib/perl5db.pl" >5.24.0-RC5 DEV (RJBS on 2016-05-04)</option> <option value="/release/RJBS/perl-5.24.0-RC4/view/lib/perl5db.pl" >5.24.0-RC4 DEV (RJBS on 2016-05-02)</option> <option value="/release/SHAY/perl-5.22.2/view/lib/perl5db.pl" >5.22.2 (SHAY on 2016-04-29)</option> <option value="/release/RJBS/perl-5.24.0-RC3/view/lib/perl5db.pl" >5.24.0-RC3 DEV (RJBS on 2016-04-27)</option> <option value="/release/RJBS/perl-5.24.0-RC2/view/lib/perl5db.pl" >5.24.0-RC2 DEV (RJBS on 2016-04-23)</option> <option value="/release/RJBS/perl-5.24.0-RC1/view/lib/perl5db.pl" >5.24.0-RC1 DEV (RJBS on 2016-04-14)</option> <option value="/release/SHAY/perl-5.22.2-RC1/view/lib/perl5db.pl" >5.22.2-RC1 DEV (SHAY on 2016-04-10)</option> <option value="/release/XSAWYERX/perl-5.23.8/view/lib/perl5db.pl" >5.23.8 DEV (XSAWYERX on 2016-02-20)</option> <option value="/release/SHAY/perl-5.22.1-RC4/view/lib/perl5db.pl" >5.22.1-RC4 DEV (SHAY on 2015-12-08)</option> <option value="/release/SHAY/perl-5.22.1-RC3/view/lib/perl5db.pl" >5.22.1-RC3 DEV (SHAY on 2015-12-02)</option> <option value="/release/SHAY/perl-5.22.1-RC2/view/lib/perl5db.pl" >5.22.1-RC2 DEV (SHAY on 2015-11-15)</option> <option value="/release/SHAY/perl-5.22.1-RC1/view/lib/perl5db.pl" >5.22.1-RC1 DEV (SHAY on 2015-10-31)</option> <option value="/release/SHAY/perl-5.23.4/view/lib/perl5db.pl" >5.23.4 DEV (SHAY on 2015-10-20)</option> <option value="/release/SHAY/perl-5.20.3/view/lib/perl5db.pl" >5.20.3 (SHAY on 2015-09-12)</option> <option value="/release/SHAY/perl-5.20.3-RC2/view/lib/perl5db.pl" >5.20.3-RC2 DEV (SHAY on 2015-08-29)</option> <option value="/release/SHAY/perl-5.20.3-RC1/view/lib/perl5db.pl" >5.20.3-RC1 DEV (SHAY on 2015-08-22)</option> <option value="/release/RJBS/perl-5.23.0/view/lib/perl5db.pl" >5.23.0 DEV (RJBS on 2015-06-20)</option> <option value="/release/SHAY/perl-5.21.11/view/lib/perl5db.pl" >5.21.11 DEV (SHAY on 2015-04-20)</option> <option value="/release/SHAY/perl-5.21.10/view/lib/perl5db.pl" >5.21.10 DEV (SHAY on 2015-03-20)</option> <option value="/release/XSAWYERX/perl-5.21.9/view/lib/perl5db.pl" >5.21.9 DEV (XSAWYERX on 2015-02-21)</option> <option value="/release/SHAY/perl-5.20.2/view/lib/perl5db.pl" >5.20.2 (SHAY on 2015-02-14)</option> <option value="/release/SHAY/perl-5.20.2-RC1/view/lib/perl5db.pl" >5.20.2-RC1 DEV (SHAY on 2015-02-01)</option> <option value="/release/CORION/perl-5.21.7/view/lib/perl5db.pl" >5.21.7 DEV (CORION on 2014-12-20)</option> <option value="/release/SHAY/perl-5.21.4/view/lib/perl5db.pl" >5.21.4 DEV (SHAY on 2014-09-20)</option> <option value="/release/SHAY/perl-5.20.1/view/lib/perl5db.pl" >5.20.1 (SHAY on 2014-09-14)</option> <option value="/release/SHAY/perl-5.20.1-RC2/view/lib/perl5db.pl" >5.20.1-RC2 DEV (SHAY on 2014-09-07)</option> <option value="/release/SHAY/perl-5.20.1-RC1/view/lib/perl5db.pl" >5.20.1-RC1 DEV (SHAY on 2014-08-25)</option> <option value="/release/RJBS/perl-5.21.0/view/lib/perl5db.pl" >5.21.0 DEV (RJBS on 2014-05-27)</option> <option value="/release/SHAY/perl-5.19.11/view/lib/perl5db.pl" >5.19.11 DEV (SHAY on 2014-04-20)</option> <option value="/release/RJBS/perl-5.19.8/view/lib/perl5db.pl" >5.19.8 DEV (RJBS on 2014-01-20)</option> <option value="/release/SHAY/perl-5.19.5/view/lib/perl5db.pl" >5.19.5 DEV (SHAY on 2013-10-20)</option> <option value="/release/SHAY/perl-5.19.4/view/lib/perl5db.pl" >5.19.4 DEV (SHAY on 2013-09-20)</option> <option value="/release/SHAY/perl-5.19.3/view/lib/perl5db.pl" >5.19.3 DEV (SHAY on 2013-08-20)</option> <option value="/release/ARISTOTLE/perl-5.19.2/view/lib/perl5db.pl" >5.19.2 DEV (ARISTOTLE on 2013-07-22)</option> <option value="/release/RJBS/perl-5.19.0/view/lib/perl5db.pl" >5.19.0 DEV (RJBS on 2013-05-20)</option> <option value="/release/RJBS/perl-5.17.11/view/lib/perl5db.pl" >5.17.11 DEV (RJBS on 2013-04-21)</option> <option value="/release/CORION/perl-5.17.10/view/lib/perl5db.pl" >5.17.10 DEV (CORION on 2013-03-21)</option> <option value="/release/RJBS/perl-5.17.6/view/lib/perl5db.pl" >5.17.6 DEV (RJBS on 2012-11-21)</option> <option value="/release/SHAY/perl-5.17.3/view/lib/perl5db.pl" >5.17.3 DEV (SHAY on 2012-08-20)</option> <option value="/release/CORION/perl-5.15.8/view/lib/perl5db.pl" >5.15.8 DEV (CORION on 2012-02-20)</option> <option value="/release/SHAY/perl-5.15.5/view/lib/perl5db.pl" >5.15.5 DEV (SHAY on 2011-11-20)</option> <option value="/release/RJBS/perl-5.15.2/view/lib/perl5db.pl" >5.15.2 DEV (RJBS on 2011-08-21)</option> <option value="/release/SHAY/perl-5.13.5/view/lib/perl5db.pl" >5.13.5 DEV (SHAY on 2010-09-19)</option> <option value="/release/RJBS/perl-5.13.1/view/lib/perl5db.pl" >5.13.1 DEV (RJBS on 2010-05-20)</option> <option value="/release/JESSE/perl-5.12.0-RC0/view/lib/perl5db.pl" >5.12.0-RC0 DEV (JESSE on 2010-03-21)</option> <option value="/release/SHAY/perl-5.11.5/view/lib/perl5db.pl" >5.11.5 DEV (SHAY on 2010-02-21)</option> <option value="/release/RJBS/perl-5.11.4/view/lib/perl5db.pl" >5.11.4 DEV (RJBS on 2010-01-20)</option> <option value="/release/RGARCIA/perl-5.10.0-RC2/view/lib/perl5db.pl" >5.10.0-RC2 DEV (RGARCIA on 2007-11-25)</option> <option value="/release/RGARCIA/perl-5.10.0-RC1/view/lib/perl5db.pl" >5.10.0-RC1 DEV (RGARCIA on 2007-11-17)</option> <option value="/release/LBROCARD/perl5.005_04-RC2/view/lib/perl5db.pl" >5.005_04-RC2 DEV (LBROCARD on 2004-02-18)</option> <option value="/release/LBROCARD/perl5.005_04-RC1/view/lib/perl5db.pl" >5.005_04-RC1 DEV (LBROCARD on 2004-02-04)</option> <option value="/release/LBROCARD/perl5.005_03-MAINT22213/view/lib/perl5db.pl" >5.005_03-MAINT22213 DEV (LBROCARD on 2004-01-27)</option> <option value="/release/LBROCARD/perl5.005_03-MAINT22178/view/lib/perl5db.pl" >5.005_03-MAINT22178 DEV (LBROCARD on 2004-01-20)</option> <option value="/release/LBROCARD/perl5.005_03-MAINT21792/view/lib/perl5db.pl" >5.005_03-MAINT21792 DEV (LBROCARD on 2003-12-05)</option> <option value="/release/RGARCIA/perl-5.6.2-RC1/view/lib/perl5db.pl" >5.6.2-RC1 DEV (RGARCIA on 2003-11-08)</option> <option value="/release/JHI/perl-5.8.1-RC5/view/lib/perl5db.pl" >5.8.1-RC5 DEV (JHI on 2003-09-22)</option> <option value="/release/JHI/perl-5.8.1-RC4/view/lib/perl5db.pl" >5.8.1-RC4 DEV (JHI on 2003-08-01)</option> <option value="/release/JHI/perl-5.8.1-RC3/view/lib/perl5db.pl" >5.8.1-RC3 DEV (JHI on 2003-07-30)</option> <option value="/release/JHI/perl-5.8.1-RC2/view/lib/perl5db.pl" >5.8.1-RC2 DEV (JHI on 2003-07-11)</option> <option value="/release/JHI/perl-5.8.1-RC1/view/lib/perl5db.pl" >5.8.1-RC1 DEV (JHI on 2003-07-10)</option> <option value="/release/JHI/perl-5.8.0-RC3/view/lib/perl5db.pl" >5.8.0-RC3 DEV (JHI on 2002-07-14)</option> <option value="/release/JHI/perl-5.8.0-RC2/view/lib/perl5db.pl" >5.8.0-RC2 DEV (JHI on 2002-06-21)</option> <option value="/release/JHI/perl-5.8.0-RC1/view/lib/perl5db.pl" >5.8.0-RC1 DEV (JHI on 2002-06-01)</option> <option value="/release/JHI/perl-5.7.1/view/lib/perl5db.pl" >5.7.1 DEV (JHI on 2001-04-10)</option> <option value="/release/GSAR/perl-5.5.670/view/lib/perl5db.pl" >5.5.670 DEV (GSAR on 2000-03-01)</option> <option value="/release/GSAR/perl5.5.660/view/lib/perl5db.pl" >5.5.660 DEV (GSAR on 2000-02-22)</option> <option value="/release/GSAR/perl5.5.650/view/lib/perl5db.pl" >5.5.650 DEV (GSAR on 2000-02-08)</option> <option value="/release/GSAR/perl5.5.640/view/lib/perl5db.pl" >5.5.640 DEV (GSAR on 2000-02-02)</option> <option value="/release/GSAR/perl5.005_63/view/lib/perl5db.pl" >5.005_63 DEV (GSAR on 1999-12-09)</option> <option value="/release/GSAR/perl5.005_62/view/lib/perl5db.pl" >5.005_62 DEV (GSAR on 1999-10-15)</option> <option value="/release/GSAR/perl5.005_61/view/lib/perl5db.pl" >5.005_61 DEV (GSAR on 1999-08-22)</option> <option value="/release/GSAR/perl5.005_60/view/lib/perl5db.pl" >5.005_60 DEV (GSAR on 1999-08-02)</option> <option value="/release/GSAR/perl5.005_59/view/lib/perl5db.pl" >5.005_59 DEV (GSAR on 1999-08-02)</option> <option value="/release/GSAR/perl5.005_58/view/lib/perl5db.pl" >5.005_58 DEV (GSAR on 1999-07-27)</option> <option value="/release/GSAR/perl5.005_57/view/lib/perl5db.pl" >5.005_57 DEV (GSAR on 1999-05-25)</option> <option value="/release/CHIPS/perl5.004_05-MAINT_TRIAL_9/view/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_9 DEV (CHIPS on 1999-04-27)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_6/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_6 DEV (GBARR on 1999-03-05)</option> <option value="/release/GSAR/perl5.005_56/view/lib/perl5db.pl" >5.005_56 DEV (GSAR on 1999-03-01)</option> <option value="/release/GSAR/perl5.005_55/view/lib/perl5db.pl" >5.005_55 DEV (GSAR on 1999-02-16)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_5/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_5 DEV (GBARR on 1999-01-29)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_4/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_4 DEV (GBARR on 1999-01-26)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_3/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_3 DEV (GBARR on 1999-01-17)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_2/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_2 DEV (GBARR on 1999-01-03)</option> <option value="/release/TIMB/perl5.004_05-MAINT_TRIAL_8/view/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_8 DEV (TIMB on 1998-12-03)</option> <option value="/release/GSAR/perl5.005_54/view/lib/perl5db.pl" >5.005_54 DEV (GSAR on 1998-11-30)</option> <option value="/release/GBARR/perl5.005_03-MAINT_TRIAL_1/view/lib/perl5db.pl" >5.005_03-MAINT_TRIAL_1 DEV (GBARR on 1998-11-30)</option> <option value="/release/TIMB/perl5.004_05-MAINT_TRIAL_7/view/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_7 DEV (TIMB on 1998-11-22)</option> <option value="/release/GSAR/perl5.005_53/view/lib/perl5db.pl" >5.005_53 DEV (GSAR on 1998-10-31)</option> <option value="/release/TIMB/perl5.004_05-MAINT_TRIAL_6/view/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_6 DEV (TIMB on 1998-10-09)</option> <option value="/release/GSAR/perl5.005_52/view/lib/perl5db.pl" >5.005_52 DEV (GSAR on 1998-09-25)</option> <option value="/release/GSAR/perl5.005_51/view/lib/perl5db.pl" >5.005_51 DEV (GSAR on 1998-08-10)</option> <option value="/release/GSAR/perl5.005_02-TRIAL2/view/lib/perl5db.pl" >5.005_02-TRIAL2 DEV (GSAR on 1998-08-05)</option> <option value="/release/GSAR/perl5.005_02-TRIAL1/view/lib/perl5db.pl" >5.005_02-TRIAL1 DEV (GSAR on 1998-08-02)</option> <option value="/release/GSAR/perl5.005_50/view/lib/perl5db.pl" >5.005_50 DEV (GSAR on 1998-07-26)</option> <option value="/release/GSAR/perl5.005-beta2/view/lib/perl5db.pl" >5.005-beta2 (GSAR on 1998-07-21)</option> <option value="/release/TIMB/perl5.004_05-MAINT_TRIAL_5/view/lib/perl5db.pl" >5.004_05-MAINT_TRIAL_5 DEV (TIMB on 1998-07-21)</option> <option value="/release/GSAR/perl5.005-beta1/view/lib/perl5db.pl" >5.005-beta1 (GSAR on 1998-07-15)</option> <option value="/release/GSAR/perl5.004_74/view/lib/perl5db.pl" >5.004_74 DEV (GSAR on 1998-07-14)</option> <option value="/release/GSAR/perl5.004_73/view/lib/perl5db.pl" >5.004_73 DEV (GSAR on 1998-07-13)</option> <option value="/release/GSAR/perl5.004_72/view/lib/perl5db.pl" >5.004_72 DEV (GSAR on 1998-07-12)</option> <option value="/release/GSAR/perl5.004_71/view/lib/perl5db.pl" >5.004_71 DEV (GSAR on 1998-07-09)</option> <option value="/release/GSAR/perl5.004_70/view/lib/perl5db.pl" >5.004_70 DEV (GSAR on 1998-07-06)</option> <option value="/release/GSAR/perl5.004_69/view/lib/perl5db.pl" >5.004_69 DEV (GSAR on 1998-06-29)</option> <option value="/release/GSAR/perl5.004_68/view/lib/perl5db.pl" >5.004_68 DEV (GSAR on 1998-06-23)</option> <option value="/release/GSAR/perl5.004_67/view/lib/perl5db.pl" >5.004_67 DEV (GSAR on 1998-06-15)</option> <option value="/release/MICB/perl5.004_66/view/lib/perl5db.pl" >5.004_66 DEV (MICB on 1998-05-29)</option> <option value="/release/TIMB/perl5.004_04-m4/view/lib/perl5db.pl" >5.004_04-m4 DEV (TIMB on 1998-05-19)</option> <option value="/release/TIMB/perl5.004_04-m3/view/lib/perl5db.pl" >5.004_04-m3 DEV (TIMB on 1998-05-15)</option> <option value="/release/MICB/perl5.004_65/view/lib/perl5db.pl" >5.004_65 DEV (MICB on 1998-05-15)</option> <option value="/release/TIMB/perl5.004_04-m2/view/lib/perl5db.pl" >5.004_04-m2 DEV (TIMB on 1998-05-01)</option> <option value="/release/MICB/perl5.004_64/view/lib/perl5db.pl" >5.004_64 DEV (MICB on 1998-04-03)</option> <option value="/release/MICB/perl5.004_63/view/lib/perl5db.pl" >5.004_63 DEV (MICB on 1998-03-17)</option> <option value="/release/MICB/perl5.004_62/view/lib/perl5db.pl" >5.004_62 DEV (MICB on 1998-03-06)</option> <option value="/release/TIMB/perl5.004m5t1/view/lib/perl5db.pl" >5.004m5t1 (TIMB on 1998-03-04)</option> <option value="/release/MICB/perl5.004_61/view/lib/perl5db.pl" >5.004_61 DEV (MICB on 1998-02-27)</option> <option value="/release/MICB/perl5.004_60/view/lib/perl5db.pl" >5.004_60 DEV (MICB on 1998-02-20)</option> <option value="/release/MICB/perl5.004_59/view/lib/perl5db.pl" >5.004_59 DEV (MICB on 1998-02-13)</option> <option value="/release/MICB/perl5.004_58/view/lib/perl5db.pl" >5.004_58 DEV (MICB on 1998-02-06)</option> <option value="/release/MICB/perl5.004_57/view/lib/perl5db.pl" >5.004_57 DEV (MICB on 1998-02-03)</option> <option value="/release/MICB/perl5.004_56/view/lib/perl5db.pl" >5.004_56 DEV (MICB on 1997-12-18)</option> <option value="/release/MICB/perl5.004_55/view/lib/perl5db.pl" >5.004_55 DEV (MICB on 1997-11-25)</option> <option value="/release/MICB/perl5.004_54/view/lib/perl5db.pl" >5.004_54 DEV (MICB on 1997-11-14)</option> <option value="/release/MICB/perl5.004_53/view/lib/perl5db.pl" >5.004_53 DEV (MICB on 1997-10-16)</option> <option value="/release/MICB/perl5.004_52/view/lib/perl5db.pl" >5.004_52 DEV (MICB on 1997-10-15)</option> <option value="/release/TIMB/perl5.004m4t4/view/lib/perl5db.pl" >5.004m4t4 (TIMB on 1997-10-14)</option> <option value="/release/TIMB/perl5.004m4t3/view/lib/perl5db.pl" >5.004m4t3 (TIMB on 1997-10-09)</option> <option value="/release/MICB/perl5.004_51/view/lib/perl5db.pl" >5.004_51 DEV (MICB on 1997-10-02)</option> <option value="/release/TIMB/perl5.004m4t2/view/lib/perl5db.pl" >5.004m4t2 (TIMB on 1997-09-23)</option> <option value="/release/TIMB/perl5.004m4t1/view/lib/perl5db.pl" >5.004m4t1 (TIMB on 1997-09-19)</option> <option value="/release/TIMB/perl5.004m3t2/view/lib/perl5db.pl" >5.004m3t2 (TIMB on 1997-09-05)</option> <option value="/release/CHIPS/perl5.003_99a/view/lib/perl5db.pl" >5.003_99a DEV (CHIPS on 1997-05-09)</option> <option value="/release/CHIPS/perl5.003_99/view/lib/perl5db.pl" >5.003_99 DEV (CHIPS on 1997-05-01)</option> <option value="/release/CHIPS/perl5.003_98/view/lib/perl5db.pl" >5.003_98 DEV (CHIPS on 1997-04-30)</option> <option value="/release/CHIPS/perl5.003_97j/view/lib/perl5db.pl" >5.003_97j DEV (CHIPS on 1997-04-28)</option> <option value="/release/CHIPS/perl5.003_97i/view/lib/perl5db.pl" >5.003_97i DEV (CHIPS on 1997-04-25)</option> <option value="/release/CHIPS/perl5.003_97h/view/lib/perl5db.pl" >5.003_97h DEV (CHIPS on 1997-04-24)</option> <option value="/release/CHIPS/perl5.003_97/view/lib/perl5db.pl" >5.003_97 DEV (CHIPS on 1997-04-03)</option> <option value="/release/CHIPS/perl5.003_96/view/lib/perl5db.pl" >5.003_96 DEV (CHIPS on 1997-04-01)</option> <option value="/release/CHIPS/perl5.003_95/view/lib/perl5db.pl" >5.003_95 DEV (CHIPS on 1997-03-25)</option> <option value="/release/CHIPS/perl5.003_94/view/lib/perl5db.pl" >5.003_94 DEV (CHIPS on 1997-03-22)</option> <option value="/release/CHIPS/perl5.003_93/view/lib/perl5db.pl" >5.003_93 DEV (CHIPS on 1997-03-10)</option> <option value="/release/CHIPS/perl5.003_92/view/lib/perl5db.pl" >5.003_92 DEV (CHIPS on 1997-03-06)</option> <option value="/release/CHIPS/perl5.003_91/view/lib/perl5db.pl" >5.003_91 DEV (CHIPS on 1997-03-01)</option> <option value="/release/CHIPS/perl5.003_90/view/lib/perl5db.pl" >5.003_90 DEV (CHIPS on 1997-02-25)</option> <option value="/release/CHIPS/perl5.003_28/view/lib/perl5db.pl" >5.003_28 (CHIPS on 1997-02-21)</option> <option value="/release/CHIPS/perl5.003_27/view/lib/perl5db.pl" >5.003_27 (CHIPS on 1997-02-18)</option> <option value="/release/CHIPS/perl5.003_26/view/lib/perl5db.pl" >5.003_26 (CHIPS on 1997-02-10)</option> <option value="/release/CHIPS/perl5.003_25/view/lib/perl5db.pl" >5.003_25 (CHIPS on 1997-02-04)</option> <option value="/release/CHIPS/perl5.003_24/view/lib/perl5db.pl" >5.003_24 (CHIPS on 1997-01-29)</option> <option value="/release/CHIPS/perl5.003_23/view/lib/perl5db.pl" >5.003_23 (CHIPS on 1997-01-25)</option> <option value="/release/CHIPS/perl5.003_22/view/lib/perl5db.pl" >5.003_22 (CHIPS on 1997-01-16)</option> <option value="/release/CHIPS/perl5.003_21/view/lib/perl5db.pl" >5.003_21 (CHIPS on 1997-01-15)</option> <option value="/release/CHIPS/perl5.003_20/view/lib/perl5db.pl" >5.003_20 (CHIPS on 1997-01-08)</option> <option value="/release/CHIPS/perl5.003_19/view/lib/perl5db.pl" >5.003_19 (CHIPS on 1997-01-04)</option> <option value="/release/CHIPS/perl5.003_18/view/lib/perl5db.pl" >5.003_18 (CHIPS on 1996-12-31)</option> <option value="/release/CHIPS/perl5.003_17/view/lib/perl5db.pl" >5.003_17 (CHIPS on 1996-12-27)</option> <option value="/release/CHIPS/perl5.003_16/view/lib/perl5db.pl" >5.003_16 (CHIPS on 1996-12-24)</option> <option value="/release/CHIPS/perl5.003_15/view/lib/perl5db.pl" >5.003_15 (CHIPS on 1996-12-23)</option> <option value="/release/CHIPS/perl-5.003_13/view/lib/perl5db.pl" >5.003_13 (CHIPS on 1996-12-20)</option> <option value="/release/CHIPS/perl5.003_12/view/lib/perl5db.pl" >5.003_12 (CHIPS on 1996-12-19)</option> <option value="/release/CHIPS/perl5.003_11/view/lib/perl5db.pl" >5.003_11 (CHIPS on 1996-12-06)</option> <option value="/release/CHIPS/perl5.003_10/view/lib/perl5db.pl" >5.003_10 (CHIPS on 1996-11-30)</option> <option value="/release/CHIPS/perl5.003_09/view/lib/perl5db.pl" >5.003_09 (CHIPS on 1996-11-26)</option> <option value="/release/CHIPS/perl5.003_08/view/lib/perl5db.pl" >5.003_08 (CHIPS on 1996-11-19)</option> <option value="/release/ANDYD/perl5.003_07/view/lib/perl5db.pl" >5.003_07 (ANDYD on 1996-10-11)</option> <option value="/release/ANDYD/perl5.003_06/view/lib/perl5db.pl" >5.003_06 (ANDYD on 1996-10-08)</option> <option value="/release/ANDYD/perl5.003_05/view/lib/perl5db.pl" >5.003_05 (ANDYD on 1996-09-12)</option> <option value="/release/ANDYD/perl5.003_04/view/lib/perl5db.pl" >5.003_04 (ANDYD on 1996-09-02)</option> <option value="/release/ANDYD/perl5.003_03/view/lib/perl5db.pl" >5.003_03 (ANDYD on 1996-08-28)</option> <option value="/release/NI-S/perl5.003_02/view/lib/perl5db.pl" >5.003_02 (NI-S on 1996-08-10)</option> <option value="/release/NI-S/perl5.003_02a/view/lib/perl5db.pl" >5.003_02a DEV (NI-S on 1996-08-08)</option> <option value="/release/LWALL/perl5.002b3/view/lib/perl5db.pl" >5.002b3 (LWALL on 1996-02-03)</option> </optgroup> </select> <a data-keyboard-shortcut="g d" class="release-name" href="/dist/perl">perl-5.40.1</a> </div> <span class="river-gauge-gauge"> <svg width="24px" height="15px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <g> <title> River stage five &#10; • 11893 direct dependents &#10; • 33358 total dependents </title> <rect x="0" y="0" width="4" height="15" fill="#7ea3f2" /> <rect x="5" y="0" width="4" height="15" fill="#7ea3f2" /> <rect x="10" y="0" width="4" height="15" fill="#7ea3f2" /> <rect x="15" y="0" width="4" height="15" fill="#7ea3f2" /> <rect x="20" y="0" width="4" height="15" fill="#7ea3f2" /> </g> </svg> </span> <div id="perl-fav" class="show-logged-in"> <form action="/account/favorite/add" style="display: inline" method="POST"> <input type="hidden" name="remove" value="0"> <input type="hidden" name="release" value="perl-5.40.1"> <input type="hidden" name="author" value="SHAY"> <input type="hidden" name="distribution" value="perl"> <button type="submit" class="favorite highlight"><span>429</span> ++</button> </form> </div> <div class="show-logged-out"> <button class="fav-not-logged-in favorite highlight"><span>429</span> ++</button> </div> / <span>perl5db.pl</span> </div> </div> <main class="content"> <nav class="toc"> <div class="toc-header"><strong>Contents</strong></div> <ul> <li><a href="#NAME">NAME</a></li> <li><a href="#SYNOPSIS">SYNOPSIS</a></li> <li><a href="#DESCRIPTION">DESCRIPTION</a></li> <li><a href="#GENERAL-NOTES">GENERAL NOTES</a> <ul> <li><a href="#Why-not-use-more-lexicals%3F">Why not use more lexicals?</a></li> <li><a href="#Automated-variable-stacking-via-local()">Automated variable stacking via local()</a></li> <li><a href="#The-%5E-trick">The ^ trick</a></li> <li><a href="#FLAGS%2C-FLAGS%2C-FLAGS">FLAGS, FLAGS, FLAGS</a></li> <li><a href="#What-are-those-XXX-comments-for%3F">What are those XXX comments for?</a></li> </ul> </li> <li><a href="#DATA-STRUCTURES-MAINTAINED-BY-CORE">DATA STRUCTURES MAINTAINED BY CORE</a></li> <li><a href="#DEBUGGER-STARTUP">DEBUGGER STARTUP</a> <ul> <li><a href="#STARTUP-ONLY-OPTIONS">STARTUP-ONLY OPTIONS</a> <ul> <li><a href="#SAMPLE-RCFILE">SAMPLE RCFILE</a></li> </ul> </li> </ul> </li> <li><a href="#INTERNALS-DESCRIPTION">INTERNALS DESCRIPTION</a> <ul> <li><a href="#DEBUGGER-INTERFACE-VARIABLES">DEBUGGER INTERFACE VARIABLES</a> <ul> <li><a href="#IMPORTANT-INTERNAL-VARIABLES">IMPORTANT INTERNAL VARIABLES</a> <ul> <li><a href="#%24CreateTTY">$CreateTTY</a></li> <li><a href="#%24doret">$doret</a></li> <li><a href="#%24evalarg">$evalarg</a></li> <li><a href="#%24frame">$frame</a></li> <li><a href="#%24level">$level</a></li> <li><a href="#%24onetimeDump">$onetimeDump</a></li> <li><a href="#%24onetimeDumpDepth">$onetimeDumpDepth</a></li> <li><a href="#%24signal">$signal</a></li> <li><a href="#%24single">$single</a></li> <li><a href="#%24trace">$trace</a></li> <li><a href="#%24client_editor">$client_editor</a></li> <li><a href="#%40cmdfhs">@cmdfhs</a></li> <li><a href="#%40dbline">@dbline</a></li> <li><a href="#%40old_watch">@old_watch</a></li> <li><a href="#%40saved">@saved</a></li> <li><a href="#%40stack">@stack</a></li> <li><a href="#%40to_watch">@to_watch</a></li> <li><a href="#%40typeahead">@typeahead</a></li> <li><a href="#%25alias">%alias</a></li> <li><a href="#%25break_on_load">%break_on_load</a></li> <li><a href="#%25dbline">%dbline</a></li> <li><a href="#%25had_breakpoints">%had_breakpoints</a></li> <li><a href="#%25option">%option</a></li> <li><a href="#%25postponed">%postponed</a></li> <li><a href="#%25postponed_file">%postponed_file</a></li> </ul> </li> </ul> </li> </ul> </li> <li><a href="#DEBUGGER-INITIALIZATION">DEBUGGER INITIALIZATION</a></li> <li><a href="#DEBUGGER-ROUTINES">DEBUGGER ROUTINES</a> <ul> <li><a href="#DB%3A%3Aeval()">DB::eval()</a> <ul> <li><a href="#Parameters-and-variables-influencing-execution-of-DB%3A%3Aeval()">Parameters and variables influencing execution of DB::eval()</a></li> <li><a href="#The-problem-of-lexicals">The problem of lexicals</a></li> </ul> </li> </ul> </li> <li><a href="#DEBUGGER-INITIALIZATION1">DEBUGGER INITIALIZATION</a> <ul> <li><a href="#BASIC-SETUP">BASIC SETUP</a></li> <li><a href="#THREADS-SUPPORT">THREADS SUPPORT</a></li> </ul> </li> <li><a href="#OPTION-PROCESSING">OPTION PROCESSING</a> <ul> <li><a href="#SETTING-UP-THE-DEBUGGER-GREETING">SETTING UP THE DEBUGGER GREETING</a></li> <li><a href="#READING-THE-RC-FILE">READING THE RC FILE</a></li> <li><a href="#RESTART-PROCESSING">RESTART PROCESSING</a></li> <li><a href="#SETTING-UP-THE-TERMINAL">SETTING UP THE TERMINAL</a></li> <li><a href="#SOCKET-HANDLING">SOCKET HANDLING</a></li> </ul> </li> <li><a href="#SUBROUTINES">SUBROUTINES</a> <ul> <li><a href="#DB">DB</a> <ul> <li><a href="#_DB__handle_i_command-inheritance-display">_DB__handle_i_command - inheritance display</a></li> <li><a href="#_cmd_l_main-list-lines-(command)">_cmd_l_main - list lines (command)</a></li> </ul> </li> <li><a href="#watchfunction()">watchfunction()</a></li> <li><a href="#GETTING-READY-TO-EXECUTE-COMMANDS">GETTING READY TO EXECUTE COMMANDS</a></li> <li><a href="#WHERE-ARE-WE%3F">WHERE ARE WE?</a></li> <li><a href="#THE-COMMAND-LOOP">THE COMMAND LOOP</a> <ul> <li> <ul> <li><a href="#The-null-command">The null command</a></li> </ul> </li> <li><a href="#COMMAND-ALIASES">COMMAND ALIASES</a></li> <li><a href="#MAIN-LINE-COMMANDS">MAIN-LINE COMMANDS</a> <ul> <li><a href="#q-quit">q - quit</a></li> <li><a href="#t-trace-%5Bn%5D">t - trace [n]</a></li> <li><a href="#S-list-subroutines-matching%2Fnot-matching-a-pattern">S - list subroutines matching/not matching a pattern</a></li> <li><a href="#X-list-variables-in-current-package">X - list variables in current package</a></li> <li><a href="#V-list-variables">V - list variables</a></li> <li><a href="#x-evaluate-and-print-an-expression">x - evaluate and print an expression</a></li> <li><a href="#m-print-methods">m - print methods</a></li> <li><a href="#f-switch-files">f - switch files</a></li> <li><a href="#.-return-to-last-executed-line">. - return to last-executed line</a></li> <li><a href="#-back-one-window">- - back one window</a></li> </ul> </li> <li><a href="#PRE-580-COMMANDS-VS.-NEW-COMMANDS%3A-a%2C-A%2C-b%2C-B%2C-h%2C-l%2C-L%2C-M%2C-o%2C-O%2C-P%2C-v%2C-w%2C-W%2C-%3C%2C-%3C%3C%2C-%7B%2C-%7B%7B">PRE-580 COMMANDS VS. NEW COMMANDS: a, A, b, B, h, l, L, M, o, O, P, v, w, W, &lt;, &lt;&lt;, {, {{</a> <ul> <li><a href="#y-List-lexicals-in-higher-scope">y - List lexicals in higher scope</a></li> </ul> </li> <li><a href="#COMMANDS-NOT-WORKING-AFTER-PROGRAM-ENDS">COMMANDS NOT WORKING AFTER PROGRAM ENDS</a> <ul> <li><a href="#n-single-step%2C-but-don%27t-trace-down-into-subs">n - single step, but don&#39;t trace down into subs</a></li> <li><a href="#s-single-step%2C-entering-subs">s - single-step, entering subs</a></li> <li><a href="#c-run-continuously%2C-setting-an-optional-breakpoint">c - run continuously, setting an optional breakpoint</a></li> <li><a href="#r-return-from-a-subroutine">r - return from a subroutine</a></li> <li><a href="#T-stack-trace">T - stack trace</a></li> <li><a href="#w-List-window-around-current-line">w - List window around current line</a></li> <li><a href="#W-watch-expression-processing">W - watch-expression processing</a></li> <li><a href="#%2F-search-forward-for-a-string-in-the-source">/ - search forward for a string in the source</a></li> <li><a href="#%3F-search-backward-for-a-string-in-the-source">? - search backward for a string in the source</a></li> <li><a href="#%24rc-Recall-command">$rc - Recall command</a></li> <li><a href="#%24sh%24sh-system()-command">$sh$sh - system() command</a></li> <li><a href="#%24rc-pattern-%24rc-Search-command-history">$rc pattern $rc - Search command history</a></li> <li><a href="#%24sh-Invoke-a-shell">$sh - Invoke a shell</a></li> <li><a href="#%24sh-command-Force-execution-of-a-command-in-a-shell">$sh command - Force execution of a command in a shell</a></li> <li><a href="#H-display-commands-in-history">H - display commands in history</a></li> <li><a href="#man%2C-doc%2C-perldoc-look-up-documentation">man, doc, perldoc - look up documentation</a></li> <li><a href="#p-print">p - print</a></li> <li><a href="#%3D-define-command-alias">= - define command alias</a></li> <li><a href="#source-read-commands-from-a-file">source - read commands from a file</a></li> <li><a href="#enable-disable-enable-or-disable-breakpoints">enable disable - enable or disable breakpoints</a></li> <li><a href="#save-send-current-history-to-a-file">save - send current history to a file</a></li> <li><a href="#R-restart">R - restart</a></li> <li><a href="#rerun-rerun-the-current-session">rerun - rerun the current session</a></li> <li><a href="#%7C%2C-%7C%7C-pipe-output-through-the-pager">|, || - pipe output through the pager</a></li> </ul> </li> <li><a href="#END-OF-COMMAND-PARSING">END OF COMMAND PARSING</a></li> <li><a href="#POST-COMMAND-PROCESSING">POST-COMMAND PROCESSING</a></li> <li><a href="#COMMAND-LOOP-TERMINATION">COMMAND LOOP TERMINATION</a></li> </ul> </li> <li><a href="#sub">sub</a> <ul> <li><a href="#caller()-support">caller() support</a></li> </ul> </li> </ul> </li> <li><a href="#EXTENDED-COMMAND-HANDLING-AND-THE-COMMAND-API">EXTENDED COMMAND HANDLING AND THE COMMAND API</a> <ul> <li><a href="#%25set">%set</a></li> <li><a href="#cmd_wrapper()-(API)">cmd_wrapper() (API)</a> <ul> <li><a href="#cmd_a-(command)">cmd_a (command)</a></li> <li><a href="#cmd_A-(command)">cmd_A (command)</a></li> <li><a href="#delete_action-(API)">delete_action (API)</a></li> <li><a href="#cmd_b-(command)">cmd_b (command)</a></li> <li><a href="#break_on_load-(API)">break_on_load (API)</a></li> <li><a href="#report_break_on_load-(API)">report_break_on_load (API)</a></li> <li><a href="#cmd_b_load-(command)">cmd_b_load (command)</a></li> <li><a href="#%24filename_error-(API-package-global)">$filename_error (API package global)</a></li> <li><a href="#breakable_line(from%2C-to)-(API)">breakable_line(from, to) (API)</a></li> <li><a href="#breakable_line_in_filename(file%2C-from%2C-to)-(API)">breakable_line_in_filename(file, from, to) (API)</a></li> <li><a href="#break_on_line(lineno%2C-%5Bcondition%5D)-(API)">break_on_line(lineno, [condition]) (API)</a></li> <li><a href="#cmd_b_line(line%2C-%5Bcondition%5D)-(command)">cmd_b_line(line, [condition]) (command)</a></li> <li><a href="#cmd_b_filename_line(line%2C-%5Bcondition%5D)-(command)">cmd_b_filename_line(line, [condition]) (command)</a></li> <li><a href="#break_on_filename_line(file%2C-line%2C-%5Bcondition%5D)-(API)">break_on_filename_line(file, line, [condition]) (API)</a></li> <li><a href="#break_on_filename_line_range(file%2C-from%2C-to%2C-%5Bcondition%5D)-(API)">break_on_filename_line_range(file, from, to, [condition]) (API)</a></li> <li><a href="#subroutine_filename_lines(subname%2C-%5Bcondition%5D)-(API)">subroutine_filename_lines(subname, [condition]) (API)</a></li> <li><a href="#break_subroutine(subname)-(API)">break_subroutine(subname) (API)</a></li> <li><a href="#cmd_b_sub(subname%2C-%5Bcondition%5D)-(command)">cmd_b_sub(subname, [condition]) (command)</a></li> <li><a href="#cmd_B-delete-breakpoint(s)-(command)">cmd_B - delete breakpoint(s) (command)</a></li> <li><a href="#delete_breakpoint(%5Bline%5D)-(API)">delete_breakpoint([line]) (API)</a></li> <li><a href="#cmd_stop-(command)">cmd_stop (command)</a></li> <li><a href="#cmd_e-threads">cmd_e - threads</a></li> <li><a href="#cmd_E-list-of-thread-ids">cmd_E - list of thread ids</a></li> <li><a href="#cmd_h-help-command-(command)">cmd_h - help command (command)</a></li> <li><a href="#cmd_L-list-breakpoints%2C-actions%2C-and-watch-expressions-(command)">cmd_L - list breakpoints, actions, and watch expressions (command)</a></li> <li><a href="#cmd_M-list-modules-(command)">cmd_M - list modules (command)</a></li> <li><a href="#cmd_o-options-(command)">cmd_o - options (command)</a></li> <li><a href="#cmd_O-nonexistent-in-5.8.x-(command)">cmd_O - nonexistent in 5.8.x (command)</a></li> <li><a href="#cmd_v-view-window-(command)">cmd_v - view window (command)</a></li> <li><a href="#cmd_w-add-a-watch-expression-(command)">cmd_w - add a watch expression (command)</a></li> <li><a href="#cmd_W-delete-watch-expressions-(command)">cmd_W - delete watch expressions (command)</a></li> </ul> </li> </ul> </li> <li><a href="#SUPPORT-ROUTINES">SUPPORT ROUTINES</a> <ul> <li><a href="#save">save</a></li> <li><a href="#print_lineinfo-show-where-we-are-now">print_lineinfo - show where we are now</a></li> <li><a href="#postponed_sub">postponed_sub</a></li> <li><a href="#postponed">postponed</a></li> <li><a href="#dumpit">dumpit</a></li> <li><a href="#print_trace">print_trace</a></li> <li><a href="#dump_trace(skip%5B%2Ccount%5D)">dump_trace(skip[,count])</a></li> <li><a href="#action()">action()</a></li> <li><a href="#unbalanced">unbalanced</a></li> <li><a href="#gets()">gets()</a></li> <li><a href="#_db_system()-handle-calls-to%3Csystem()%3E-without-messing-up-the-debugger">_db_system() - handle calls to&lt;system()&gt; without messing up the debugger</a></li> </ul> </li> <li><a href="#TTY-MANAGEMENT">TTY MANAGEMENT</a> <ul> <li><a href="#setterm">setterm</a></li> </ul> </li> <li><a href="#GET_FORK_TTY-EXAMPLE-FUNCTIONS">GET_FORK_TTY EXAMPLE FUNCTIONS</a> <ul> <li> <ul> <li><a href="#socket_get_fork_TTY">socket_get_fork_TTY</a></li> <li><a href="#xterm_get_fork_TTY">xterm_get_fork_TTY</a></li> <li><a href="#os2_get_fork_TTY">os2_get_fork_TTY</a></li> <li><a href="#macosx_get_fork_TTY">macosx_get_fork_TTY</a></li> <li><a href="#tmux_get_fork_TTY">tmux_get_fork_TTY</a></li> </ul> </li> <li><a href="#create_IN_OUT(%24flags)">create_IN_OUT($flags)</a></li> <li><a href="#resetterm">resetterm</a></li> <li><a href="#readline">readline</a></li> </ul> </li> <li><a href="#OPTIONS-SUPPORT-ROUTINES">OPTIONS SUPPORT ROUTINES</a> <ul> <li><a href="#dump_option-list-the-current-value-of-an-option-setting">dump_option - list the current value of an option setting</a></li> <li><a href="#option_val-find-the-current-value-of-an-option">option_val - find the current value of an option</a></li> <li><a href="#parse_options">parse_options</a></li> </ul> </li> <li><a href="#RESTART-SUPPORT">RESTART SUPPORT</a> <ul> <li><a href="#set_list">set_list</a></li> <li><a href="#get_list">get_list</a></li> </ul> </li> <li><a href="#MISCELLANEOUS-SIGNAL-AND-I%2FO-MANAGEMENT">MISCELLANEOUS SIGNAL AND I/O MANAGEMENT</a> <ul> <li><a href="#catch()">catch()</a></li> <li><a href="#warn()">warn()</a></li> </ul> </li> <li><a href="#INITIALIZATION-TTY-SUPPORT">INITIALIZATION TTY SUPPORT</a> <ul> <li><a href="#reset_IN_OUT">reset_IN_OUT</a></li> </ul> </li> <li><a href="#OPTION-SUPPORT-ROUTINES">OPTION SUPPORT ROUTINES</a> <ul> <li><a href="#TTY">TTY</a></li> <li><a href="#noTTY">noTTY</a></li> <li><a href="#ReadLine">ReadLine</a></li> <li><a href="#RemotePort">RemotePort</a></li> <li><a href="#tkRunning">tkRunning</a></li> <li><a href="#NonStop">NonStop</a></li> <li><a href="#pager">pager</a></li> <li><a href="#shellBang">shellBang</a></li> <li><a href="#ornaments">ornaments</a></li> <li><a href="#recallCommand">recallCommand</a></li> <li><a href="#LineInfo-where-the-line-number-information-goes">LineInfo - where the line number information goes</a></li> </ul> </li> <li><a href="#COMMAND-SUPPORT-ROUTINES">COMMAND SUPPORT ROUTINES</a> <ul> <li><a href="#list_modules">list_modules</a></li> <li><a href="#sethelp()">sethelp()</a> <ul> <li><a href="#HELP-MESSAGE-FORMAT">HELP MESSAGE FORMAT</a></li> </ul> </li> <li><a href="#print_help()">print_help()</a></li> <li><a href="#fix_less">fix_less</a></li> </ul> </li> <li><a href="#DIE-AND-WARN-MANAGEMENT">DIE AND WARN MANAGEMENT</a> <ul> <li><a href="#diesignal">diesignal</a></li> <li><a href="#dbwarn">dbwarn</a></li> <li><a href="#dbdie">dbdie</a></li> <li><a href="#warnlevel()">warnlevel()</a></li> <li><a href="#dielevel">dielevel</a></li> <li><a href="#signalLevel">signalLevel</a></li> </ul> </li> <li><a href="#SUBROUTINE-DECODING-SUPPORT">SUBROUTINE DECODING SUPPORT</a> <ul> <li><a href="#CvGV_name()">CvGV_name()</a></li> <li><a href="#CvGV_name_or_bust-coderef">CvGV_name_or_bust coderef</a></li> <li><a href="#find_sub">find_sub</a></li> <li><a href="#methods">methods</a></li> <li><a href="#methods_via(%24class%2C-%24prefix%2C-%24crawl_upward)">methods_via($class, $prefix, $crawl_upward)</a></li> <li><a href="#setman-figure-out-which-command-to-use-to-show-documentation">setman - figure out which command to use to show documentation</a></li> <li><a href="#runman-run-the-appropriate-command-to-show-documentation">runman - run the appropriate command to show documentation</a></li> </ul> </li> <li><a href="#DEBUGGER-INITIALIZATION-THE-SECOND-BEGIN-BLOCK">DEBUGGER INITIALIZATION - THE SECOND BEGIN BLOCK</a></li> <li><a href="#READLINE-SUPPORT-COMPLETION-FUNCTION">READLINE SUPPORT - COMPLETION FUNCTION</a> <ul> <li><a href="#db_complete">db_complete</a> <ul> <li><a href="#b-postpone%7Ccompile">b postpone|compile</a></li> <li><a href="#b-load">b load</a></li> <li><a href="#V-(list-variable)-and-m-(list-modules)">V (list variable) and m (list modules)</a> <ul> <li><a href="#Unqualified-package-names">Unqualified package names</a></li> <li><a href="#Qualified-package-names">Qualified package names</a></li> </ul> </li> <li><a href="#f-switch-files1">f - switch files</a></li> <li><a href="#Subroutine-name-completion">Subroutine name completion</a></li> <li><a href="#Scalar%2C-array%2C-and-hash-completion%3A-partially-qualified-package">Scalar, array, and hash completion: partially qualified package</a></li> <li><a href="#Symbol-completion%3A-current-package-or-package-main">Symbol completion: current package or package main</a></li> <li><a href="#Options">Options</a></li> <li><a href="#Filename-completion">Filename completion</a></li> </ul> </li> </ul> </li> <li><a href="#MISCELLANEOUS-SUPPORT-FUNCTIONS">MISCELLANEOUS SUPPORT FUNCTIONS</a> <ul> <li><a href="#end_report">end_report</a></li> <li><a href="#clean_ENV">clean_ENV</a></li> </ul> </li> <li><a href="#END-PROCESSING-THE-END-BLOCK">END PROCESSING - THE END BLOCK</a></li> <li><a href="#PRE-5.8-COMMANDS">PRE-5.8 COMMANDS</a> <ul> <li><a href="#Null-command">Null command</a></li> <li><a href="#Old-a-command">Old a command</a></li> <li><a href="#Old-b-command">Old b command</a></li> <li><a href="#Old-D-command">Old D command</a></li> <li><a href="#Old-h-command">Old h command</a></li> <li><a href="#Old-W-command">Old W command</a></li> </ul> </li> <li><a href="#PRE-AND-POST-PROMPT-COMMANDS-AND-ACTIONS">PRE-AND-POST-PROMPT COMMANDS AND ACTIONS</a> <ul> <li><a href="#cmd_pre590_prepost">cmd_pre590_prepost</a></li> <li><a href="#cmd_prepost">cmd_prepost</a></li> </ul> </li> <li><a href="#DB%3A%3Afake">DB::fake</a></li> </ul></nav> <div class="pod anchors"> <h1 id="NAME">NAME</h1> <p>perl5db.pl - the perl debugger</p> <h1 id="SYNOPSIS">SYNOPSIS</h1> <pre><code>perl -d your_Perl_script</code></pre> <h1 id="DESCRIPTION">DESCRIPTION</h1> <p><code>perl5db.pl</code> is the perl debugger. It is loaded automatically by Perl when you invoke a script with <span style="white-space: nowrap;"><code>perl -d</code></span>. This documentation tries to outline the structure and services provided by <code>perl5db.pl</code>, and to describe how you can use them.</p> <p>See <a href="/pod/distribution/perl/pod/perldebug.pod">perldebug</a> for an overview of how to use the debugger.</p> <h1 id="GENERAL-NOTES"><a id="GENERAL"></a>GENERAL NOTES</h1> <p>The debugger can look pretty forbidding to many Perl programmers. There are a number of reasons for this, many stemming out of the debugger&#39;s history.</p> <p>When the debugger was first written, Perl didn&#39;t have a lot of its nicer features - no references, no lexical variables, no closures, no object-oriented programming. So a lot of the things one would normally have done using such features was done using global variables, globs and the <code>local()</code> operator in creative ways.</p> <p>Some of these have survived into the current debugger; a few of the more interesting and still-useful idioms are noted in this section, along with notes on the comments themselves.</p> <h2 id="Why-not-use-more-lexicals?"><a id="Why"></a><a id="Why-not-use-more-lexicals"></a>Why not use more lexicals?</h2> <p>Experienced Perl programmers will note that the debugger code tends to use mostly package globals rather than lexically-scoped variables. This is done to allow a significant amount of control of the debugger from outside the debugger itself.</p> <p>Unfortunately, though the variables are accessible, they&#39;re not well documented, so it&#39;s generally been a decision that hasn&#39;t made a lot of difference to most users. Where appropriate, comments have been added to make variables more accessible and usable, with the understanding that these <i>are</i> debugger internals, and are therefore subject to change. Future development should probably attempt to replace the globals with a well-defined API, but for now, the variables are what we&#39;ve got.</p> <h2 id="Automated-variable-stacking-via-local()"><a id="Automated"></a><a id="Automated-variable-stacking-via-local"></a>Automated variable stacking via <code>local()</code></h2> <p>As you may recall from reading <code>perlfunc</code>, the <code>local()</code> operator makes a temporary copy of a variable in the current scope. When the scope ends, the old copy is restored. This is often used in the debugger to handle the automatic stacking of variables during recursive calls:</p> <pre><code>sub foo { local $some_global++; # Do some stuff, then ... return; }</code></pre> <p>What happens is that on entry to the subroutine, <code>$some_global</code> is localized, then altered. When the subroutine returns, Perl automatically undoes the localization, restoring the previous value. Voila, automatic stack management.</p> <p>The debugger uses this trick a <i>lot</i>. Of particular note is <code>DB::eval</code>, which lets the debugger get control inside of <code>eval</code>&#39;ed code. The debugger localizes a saved copy of <code>$@</code> inside the subroutine, which allows it to keep <code>$@</code> safe until it <code>DB::eval</code> returns, at which point the previous value of <code>$@</code> is restored. This makes it simple (well, <i>simpler</i>) to keep track of <code>$@</code> inside <code>eval</code>s which <code>eval</code> other <code>eval&#39;s</code>.</p> <p>In any case, watch for this pattern. It occurs fairly often.</p> <h2 id="The-^-trick"><a id="The"></a><a id="The-trick"></a>The <code>^</code> trick</h2> <p>This is used to cleverly reverse the sense of a logical test depending on the value of an auxiliary variable. For instance, the debugger&#39;s <code>S</code> (search for subroutines by pattern) allows you to negate the pattern like this:</p> <pre><code># Find all non-&#39;foo&#39; subs: S !/foo/</code></pre> <p>Boolean algebra states that the truth table for XOR looks like this:</p> <ul> <li><p>0 ^ 0 = 0</p> <p>(! not present and no match) --&gt; false, don&#39;t print</p> </li> <li><p>0 ^ 1 = 1</p> <p>(! not present and matches) --&gt; true, print</p> </li> <li><p>1 ^ 0 = 1</p> <p>(! present and no match) --&gt; true, print</p> </li> <li><p>1 ^ 1 = 0</p> <p>(! present and matches) --&gt; false, don&#39;t print</p> </li> </ul> <p>As you can see, the first pair applies when <code>!</code> isn&#39;t supplied, and the second pair applies when it is. The XOR simply allows us to compact a more complicated if-then-elseif-else into a more elegant (but perhaps overly clever) single test. After all, it needed this explanation...</p> <h2 id="FLAGS,-FLAGS,-FLAGS"><a id="FLAGS"></a><a id="FLAGS-FLAGS-FLAGS"></a>FLAGS, FLAGS, FLAGS</h2> <p>There is a certain C programming legacy in the debugger. Some variables, such as <code>$single</code>, <code>$trace</code>, and <code>$frame</code>, have <i>magical</i> values composed of 1, 2, 4, etc. (powers of 2) OR&#39;ed together. This allows several pieces of state to be stored independently in a single scalar.</p> <p>A test like</p> <pre><code>if ($scalar &amp; 4) ...</code></pre> <p>is checking to see if the appropriate bit is on. Since each bit can be &quot;addressed&quot; independently in this way, <code>$scalar</code> is acting sort of like an array of bits. Obviously, since the contents of <code>$scalar</code> are just a bit-pattern, we can save and restore it easily (it will just look like a number).</p> <p>The problem, is of course, that this tends to leave magic numbers scattered all over your program whenever a bit is set, cleared, or checked. So why do it?</p> <ul> <li><p>First, doing an arithmetical or bitwise operation on a scalar is just about the fastest thing you can do in Perl: <span style="white-space: nowrap;"><code>use constant</code></span> actually creates a subroutine call, and array and hash lookups are much slower. Is this over-optimization at the expense of readability? Possibly, but the debugger accesses these variables a <i>lot</i>. Any rewrite of the code will probably have to benchmark alternate implementations and see which is the best balance of readability and speed, and then document how it actually works.</p> </li> <li><p>Second, it&#39;s very easy to serialize a scalar number. This is done in the restart code; the debugger state variables are saved in <code>%ENV</code> and then restored when the debugger is restarted. Having them be just numbers makes this trivial.</p> </li> <li><p>Third, some of these variables are being shared with the Perl core smack in the middle of the interpreter&#39;s execution loop. It&#39;s much faster for a C program (like the interpreter) to check a bit in a scalar than to access several different variables (or a Perl array).</p> </li> </ul> <h2 id="What-are-those-XXX-comments-for?"><a id="What"></a><a id="What-are-those-XXX-comments-for"></a>What are those <code>XXX</code> comments for?</h2> <p>Any comment containing <code>XXX</code> means that the comment is either somewhat speculative - it&#39;s not exactly clear what a given variable or chunk of code is doing, or that it is incomplete - the basics may be clear, but the subtleties are not completely documented.</p> <p>Send in a patch if you can clear up, fill out, or clarify an <code>XXX</code>.</p> <h1 id="DATA-STRUCTURES-MAINTAINED-BY-CORE"><a id="DATA"></a>DATA STRUCTURES MAINTAINED BY CORE</h1> <p>There are a number of special data structures provided to the debugger by the Perl interpreter.</p> <p>The array <code>@{$main::{&#39;_&lt;&#39;.$filename}}</code> (aliased locally to <code>@dbline</code> via glob assignment) contains the text from <code>$filename</code>, with each element corresponding to a single line of <code>$filename</code>. Additionally, breakable lines will be dualvars with the numeric component being the memory address of a COP node. Non-breakable lines are dualvar to 0.</p> <p>The hash <code>%{&#39;_&lt;&#39;.$filename}</code> (aliased locally to <code>%dbline</code> via glob assignment) contains breakpoints and actions. The keys are line numbers; you can set individual values, but not the whole hash. The Perl interpreter uses this hash to determine where breakpoints have been set. Any true value is considered to be a breakpoint; <code>perl5db.pl</code> uses <code>$break_condition\0$action</code>. Values are magical in numeric context: 1 if the line is breakable, 0 if not.</p> <p>The scalar <code>${&quot;_&lt;$filename&quot;}</code> simply contains the string <code>$filename</code>. This is also the case for evaluated strings that contain subroutines, or which are currently being executed. The $filename for <code>eval</code>ed strings looks like <span style="white-space: nowrap;"><code>(eval 34)</code></span>.</p> <h1 id="DEBUGGER-STARTUP"><a id="DEBUGGER"></a>DEBUGGER STARTUP</h1> <p>When <code>perl5db.pl</code> starts, it reads an rcfile (<code>perl5db.ini</code> for non-interactive sessions, <code>.perldb</code> for interactive ones) that can set a number of options. In addition, this file may define a subroutine <code>&amp;afterinit</code> that will be executed (in the debugger&#39;s context) after the debugger has initialized itself.</p> <p>Next, it checks the <code>PERLDB_OPTS</code> environment variable and treats its contents as the argument of a <code>o</code> command in the debugger.</p> <h2 id="STARTUP-ONLY-OPTIONS"><a id="STARTUP"></a>STARTUP-ONLY OPTIONS</h2> <p>The following options can only be specified at startup. To set them in your rcfile, add a call to <code>&amp;parse_options(&quot;optionName=new_value&quot;)</code>.</p> <ul> <li><p>TTY</p> <p>the TTY to use for debugging i/o.</p> </li> <li><p>noTTY</p> <p>if set, goes in NonStop mode. On interrupt, if TTY is not set, uses the value of noTTY or <i>$HOME/.perldbtty$$</i> to find TTY using Term::Rendezvous. Current variant is to have the name of TTY in this file.</p> </li> <li><p>ReadLine</p> <p>if false, a dummy ReadLine is used, so you can debug ReadLine applications.</p> </li> <li><p>NonStop</p> <p>if true, no i/o is performed until interrupt.</p> </li> <li><p>LineInfo</p> <p>file or pipe to print line number info to. If it is a pipe, a short &quot;emacs like&quot; message is used.</p> </li> <li><p>RemotePort</p> <p>host:port to connect to on remote host for remote debugging.</p> </li> <li><p>HistFile</p> <p>file to store session history to. There is no default and so no history file is written unless this variable is explicitly set.</p> </li> <li><p>HistSize</p> <p>number of commands to store to the file specified in <code>HistFile</code>. Default is 100.</p> </li> </ul> <h3 id="SAMPLE-RCFILE"><a id="SAMPLE"></a>SAMPLE RCFILE</h3> <pre><code>&amp;parse_options(&quot;NonStop=1 LineInfo=db.out&quot;); sub afterinit { $trace = 1; }</code></pre> <p>The script will run without human intervention, putting trace information into <code>db.out</code>. (If you interrupt it, you had better reset <code>LineInfo</code> to something <i>interactive</i>!)</p> <h1 id="INTERNALS-DESCRIPTION"><a id="INTERNALS"></a>INTERNALS DESCRIPTION</h1> <h2 id="DEBUGGER-INTERFACE-VARIABLES"><a id="DEBUGGER1"></a>DEBUGGER INTERFACE VARIABLES</h2> <p>Perl supplies the values for <code>%sub</code>. It effectively inserts a <code>&amp;DB::DB();</code> in front of each place that can have a breakpoint. At each subroutine call, it calls <code>&amp;DB::sub</code> with <code>$DB::sub</code> set to the called subroutine. It also inserts a <code>BEGIN {require &#39;perl5db.pl&#39;}</code> before the first line.</p> <p>After each <code>require</code>d file is compiled, but before it is executed, a call to <code>&amp;DB::postponed($main::{&#39;_&lt;&#39;.$filename})</code> is done. <code>$filename</code> is the expanded name of the <code>require</code>d file (as found via <code>%INC</code>).</p> <h3 id="IMPORTANT-INTERNAL-VARIABLES"><a id="IMPORTANT"></a>IMPORTANT INTERNAL VARIABLES</h3> <h4 id="$CreateTTY"><a id="CreateTTY"></a><code>$CreateTTY</code></h4> <p>Used to control when the debugger will attempt to acquire another TTY to be used for input.</p> <ul> <li><p>1 - on <code>fork()</code></p> </li> <li><p>2 - debugger is started inside debugger</p> </li> <li><p>4 - on startup</p> </li> </ul> <h4 id="$doret"><a id="doret"></a><code>$doret</code></h4> <p>The value -2 indicates that no return value should be printed. Any other positive value causes <code>DB::sub</code> to print return values.</p> <h4 id="$evalarg"><a id="evalarg"></a><code>$evalarg</code></h4> <p>The item to be eval&#39;ed by <code>DB::eval</code>. Used to prevent messing with the current contents of <code>@_</code> when <code>DB::eval</code> is called.</p> <h4 id="$frame"><a id="frame"></a><code>$frame</code></h4> <p>Determines what messages (if any) will get printed when a subroutine (or eval) is entered or exited.</p> <ul> <li><p>0 - No enter/exit messages</p> </li> <li><p>1 - Print <i>entering</i> messages on subroutine entry</p> </li> <li><p>2 - Adds exit messages on subroutine exit. If no other flag is on, acts like 1+2.</p> </li> <li><p>4 - Extended messages: <code>&lt;in|out&gt; <i>context</i>=<i>fully-qualified sub name</i> from <i>file</i>:<i>line</i></code>. If no other flag is on, acts like 1+4.</p> </li> <li><p>8 - Adds parameter information to messages, and overloaded stringify and tied FETCH is enabled on the printed arguments. Ignored if <code>4</code> is not on.</p> </li> <li><p>16 - Adds <code><i>context</i> return from <i>subname</i>: <i>value</i></code> messages on subroutine/eval exit. Ignored if <code>4</code> is not on.</p> </li> </ul> <p>To get everything, use <code>$frame=30</code> (or <span style="white-space: nowrap;"><code>o f=30</code></span> as a debugger command). The debugger internally juggles the value of <code>$frame</code> during execution to protect external modules that the debugger uses from getting traced.</p> <h4 id="$level"><a id="level"></a><code>$level</code></h4> <p>Tracks current debugger nesting level. Used to figure out how many <code>&lt;&gt;</code> pairs to surround the line number with when the debugger outputs a prompt. Also used to help determine if the program has finished during command parsing.</p> <h4 id="$onetimeDump"><a id="onetimeDump"></a><code>$onetimeDump</code></h4> <p>Controls what (if anything) <code>DB::eval()</code> will print after evaluating an expression.</p> <ul> <li><p><code>undef</code> - don&#39;t print anything</p> </li> <li><p><code>dump</code> - use <code>dumpvar.pl</code> to display the value returned</p> </li> <li><p><code>methods</code> - print the methods callable on the first item returned</p> </li> </ul> <h4 id="$onetimeDumpDepth"><a id="onetimeDumpDepth"></a><code>$onetimeDumpDepth</code></h4> <p>Controls how far down <code>dumpvar.pl</code> will go before printing <code>...</code> while dumping a structure. Numeric. If <code>undef</code>, print all levels.</p> <h4 id="$signal"><a id="signal"></a><code>$signal</code></h4> <p>Used to track whether or not an <code>INT</code> signal has been detected. <code>DB::DB()</code>, which is called before every statement, checks this and puts the user into command mode if it finds <code>$signal</code> set to a true value.</p> <h4 id="$single"><a id="single"></a><code>$single</code></h4> <p>Controls behavior during single-stepping. Stacked in <code>@stack</code> on entry to each subroutine; popped again at the end of each subroutine.</p> <ul> <li><p>0 - run continuously.</p> </li> <li><p>1 - single-step, go into subs. The <code>s</code> command.</p> </li> <li><p>2 - single-step, don&#39;t go into subs. The <code>n</code> command.</p> </li> <li><p>4 - print current sub depth (turned on to force this when <code>too much recursion</code> occurs.</p> </li> </ul> <h4 id="$trace"><a id="trace"></a><code>$trace</code></h4> <p>Controls the output of trace information.</p> <ul> <li><p>1 - The <code>t</code> command was entered to turn on tracing (every line executed is printed)</p> </li> <li><p>2 - watch expressions are active</p> </li> <li><p>4 - user defined a <code>watchfunction()</code> in <code>afterinit()</code></p> </li> </ul> <h4 id="$client_editor"><a id="client_editor"></a><code>$client_editor</code></h4> <p>1 if <code>LINEINFO</code> was directed to a pipe; 0 otherwise. (The term <code>$slave_editor</code> was formerly used here.)</p> <h4 id="@cmdfhs"><a id="cmdfhs"></a><code>@cmdfhs</code></h4> <p>Stack of filehandles that <code>DB::readline()</code> will read commands from. Manipulated by the debugger&#39;s <code>source</code> command and <code>DB::readline()</code> itself.</p> <h4 id="@dbline"><a id="dbline"></a><code>@dbline</code></h4> <p>Local alias to the magical line array, <code>@{$main::{&#39;_&lt;&#39;.$filename}}</code> , supplied by the Perl interpreter to the debugger. Contains the source.</p> <h4 id="@old_watch"><a id="old_watch"></a><code>@old_watch</code></h4> <p>Previous values of watch expressions. First set when the expression is entered; reset whenever the watch expression changes.</p> <h4 id="@saved"><a id="saved"></a><code>@saved</code></h4> <p>Saves important globals (<code>$@</code>, <code>$!</code>, <code>$^E</code>, <code>$,</code>, <code>$/</code>, <code>$\</code>, <code>$^W</code>) so that the debugger can substitute safe values while it&#39;s running, and restore them when it returns control.</p> <h4 id="@stack"><a id="stack"></a><code>@stack</code></h4> <p>Saves the current value of <code>$single</code> on entry to a subroutine. Manipulated by the <code>c</code> command to turn off tracing in all subs above the current one.</p> <h4 id="@to_watch"><a id="to_watch"></a><code>@to_watch</code></h4> <p>The &#39;watch&#39; expressions: to be evaluated before each line is executed.</p> <h4 id="@typeahead"><a id="typeahead"></a><code>@typeahead</code></h4> <p>The typeahead buffer, used by <code>DB::readline</code>.</p> <h4 id="%alias"><a id="alias"></a><code>%alias</code></h4> <p>Command aliases. Stored as character strings to be substituted for a command entered.</p> <h4 id="%break_on_load"><a id="break_on_load"></a><code>%break_on_load</code></h4> <p>Keys are file names, values are 1 (break when this file is loaded) or undef (don&#39;t break when it is loaded).</p> <h4 id="%dbline"><a id="dbline1"></a><code>%dbline</code></h4> <p>Keys are line numbers, values are <code>condition\0action</code>. If used in numeric context, values are 0 if not breakable, 1 if breakable, no matter what is in the actual hash entry.</p> <h4 id="%had_breakpoints"><a id="had_breakpoints"></a><code>%had_breakpoints</code></h4> <p>Keys are file names; values are bitfields:</p> <ul> <li><p>1 - file has a breakpoint in it.</p> </li> <li><p>2 - file has an action in it.</p> </li> </ul> <p>A zero or undefined value means this file has neither.</p> <h4 id="%option"><a id="option"></a><code>%option</code></h4> <p>Stores the debugger options. These are character string values.</p> <h4 id="%postponed"><a id="postponed1"></a><code>%postponed</code></h4> <p>Saves breakpoints for code that hasn&#39;t been compiled yet. Keys are subroutine names, values are:</p> <ul> <li><p><code>compile</code> - break when this sub is compiled</p> </li> <li><p><code>break +0 if &lt;condition&gt;</code> - break (conditionally) at the start of this routine. The condition will be &#39;1&#39; if no condition was specified.</p> </li> </ul> <h4 id="%postponed_file"><a id="postponed_file"></a><code>%postponed_file</code></h4> <p>This hash keeps track of breakpoints that need to be set for files that have not yet been compiled. Keys are filenames; values are references to hashes. Each of these hashes is keyed by line number, and its values are breakpoint definitions (<code>condition\0action</code>).</p> <h1 id="DEBUGGER-INITIALIZATION"><a id="DEBUGGER2"></a>DEBUGGER INITIALIZATION</h1> <p>The debugger&#39;s initialization actually jumps all over the place inside this package. This is because there are several BEGIN blocks (which of course execute immediately) spread through the code. Why is that?</p> <p>The debugger needs to be able to change some things and set some things up before the debugger code is compiled; most notably, the <code>$deep</code> variable that <code>DB::sub</code> uses to tell when a program has recursed deeply. In addition, the debugger has to turn off warnings while the debugger code is compiled, but then restore them to their original setting before the program being debugged begins executing.</p> <p>The first <code>BEGIN</code> block simply turns off warnings by saving the current setting of <code>$^W</code> and then setting it to zero. The second one initializes the debugger variables that are needed before the debugger begins executing. The third one puts <code>$^X</code> back to its former value.</p> <p>We&#39;ll detail the second <code>BEGIN</code> block later; just remember that if you need to initialize something before the debugger starts really executing, that&#39;s where it has to go.</p> <h1 id="DEBUGGER-ROUTINES"><a id="DEBUGGER3"></a>DEBUGGER ROUTINES</h1> <h2 id="DB::eval()"><a id="DB1"></a><a id="DB::eval"></a><code>DB::eval()</code></h2> <p>This function replaces straight <code>eval()</code> inside the debugger; it simplifies the process of evaluating code in the user&#39;s context.</p> <p>The code to be evaluated is passed via the package global variable <code>$DB::evalarg</code>; this is done to avoid fiddling with the contents of <code>@_</code>.</p> <p>Before we do the <code>eval()</code>, we preserve the current settings of <code>$trace</code>, <code>$single</code>, <code>$^D</code> and <code>$usercontext</code>. The latter contains the preserved values of <code>$@</code>, <code>$!</code>, <code>$^E</code>, <code>$,</code>, <code>$/</code>, <code>$\</code>, <code>$^W</code> and the user&#39;s current package, grabbed when <code>DB::DB</code> got control. This causes the proper context to be used when the eval is actually done. Afterward, we restore <code>$trace</code>, <code>$single</code>, and <code>$^D</code>.</p> <p>Next we need to handle <code>$@</code> without getting confused. We save <code>$@</code> in a local lexical, localize <code>$saved[0]</code> (which is where <code>save()</code> will put <code>$@</code>), and then call <code>save()</code> to capture <code>$@</code>, <code>$!</code>, <code>$^E</code>, <code>$,</code>, <code>$/</code>, <code>$\</code>, and <code>$^W</code>) and set <code>$,</code>, <code>$/</code>, <code>$\</code>, and <code>$^W</code> to values considered sane by the debugger. If there was an <code>eval()</code> error, we print it on the debugger&#39;s output. If <code>$onetimedump</code> is defined, we call <code>dumpit</code> if it&#39;s set to &#39;dump&#39;, or <code>methods</code> if it&#39;s set to &#39;methods&#39;. Setting it to something else causes the debugger to do the eval but not print the result - handy if you want to do something else with it (the &quot;watch expressions&quot; code does this to get the value of the watch expression but not show it unless it matters).</p> <p>In any case, we then return the list of output from <code>eval</code> to the caller, and unwinding restores the former version of <code>$@</code> in <code>@saved</code> as well (the localization of <code>$saved[0]</code> goes away at the end of this scope).</p> <h3 id="Parameters-and-variables-influencing-execution-of-DB::eval()"><a id="Parameters"></a><a id="Parameters-and-variables-influencing-execution-of-DB::eval"></a>Parameters and variables influencing execution of DB::eval()</h3> <p><code>DB::eval</code> isn&#39;t parameterized in the standard way; this is to keep the debugger&#39;s calls to <code>DB::eval()</code> from mucking with <code>@_</code>, among other things. The variables listed below influence <code>DB::eval()</code>&#39;s execution directly.</p> <dl> <dt id="$evalarg-the-thing-to-actually-be-eval&#39;ed"><a id="evalarg---the-thing-to-actually-be-evaled"></a><code>$evalarg</code> - the thing to actually be eval&#39;ed</dt> <dd> </dd> <dt id="$trace-Current-state-of-execution-tracing"><a id="trace---Current-state-of-execution-tracing"></a><code>$trace</code> - Current state of execution tracing</dt> <dd> </dd> <dt id="$single-Current-state-of-single-stepping"><a id="single---Current-state-of-single-stepping"></a><code>$single</code> - Current state of single-stepping</dt> <dd> </dd> <dt id="$onetimeDump-what-is-to-be-displayed-after-the-evaluation"><a id="onetimeDump---what-is-to-be-displayed-after-the-evaluation"></a><code>$onetimeDump</code> - what is to be displayed after the evaluation</dt> <dd> </dd> <dt id="$onetimeDumpDepth-how-deep-dumpit()-should-go-when-dumping-results"><a id="onetimeDumpDepth---how-deep-dumpit-should-go-when-dumping-results"></a><code>$onetimeDumpDepth</code> - how deep <code>dumpit()</code> should go when dumping results</dt> <dd> </dd> </dl> <p>The following variables are altered by <code>DB::eval()</code> during its execution. They are &quot;stacked&quot; via <code>local()</code>, enabling recursive calls to <code>DB::eval()</code>.</p> <dl> <dt id="@res-used-to-capture-output-from-actual-eval."><a id="res---used-to-capture-output-from-actual-eval"></a><code>@res</code> - used to capture output from actual <code>eval</code>.</dt> <dd> </dd> <dt id="$otrace-saved-value-of-$trace."><a id="otrace---saved-value-of-trace"></a><code>$otrace</code> - saved value of <code>$trace</code>.</dt> <dd> </dd> <dt id="$osingle-saved-value-of-$single."><a id="osingle---saved-value-of-single"></a><code>$osingle</code> - saved value of <code>$single</code>.</dt> <dd> </dd> <dt id="$od-saved-value-of-$^D."><a id="od---saved-value-of-D"></a><code>$od</code> - saved value of <code>$^D</code>.</dt> <dd> </dd> <dt id="$saved[0]-saved-value-of-$@."><a id="saved-0---saved-value-of"></a><code>$saved[0]</code> - saved value of <code>$@</code>.</dt> <dd> </dd> <dt id="$\-for-output-of-$@-if-there-is-an-evaluation-error."><a id="for-output-of-if-there-is-an-evaluation-error"></a>$\ - for output of <code>$@</code> if there is an evaluation error.</dt> <dd> </dd> </dl> <h3 id="The-problem-of-lexicals"><a id="The1"></a>The problem of lexicals</h3> <p>The context of <code>DB::eval()</code> presents us with some problems. Obviously, we want to be &#39;sandboxed&#39; away from the debugger&#39;s internals when we do the eval, but we need some way to control how punctuation variables and debugger globals are used.</p> <p>We can&#39;t use local, because the code inside <code>DB::eval</code> can see localized variables; and we can&#39;t use <code>my</code> either for the same reason. The code in this routine compromises and uses <code>my</code>.</p> <p>After this routine is over, we don&#39;t have user code executing in the debugger&#39;s context, so we can use <code>my</code> freely.</p> <h1 id="DEBUGGER-INITIALIZATION1"><a id="DEBUGGER4"></a>DEBUGGER INITIALIZATION</h1> <p>The debugger starts up in phases.</p> <h2 id="BASIC-SETUP"><a id="BASIC"></a>BASIC SETUP</h2> <p>First, it initializes the environment it wants to run in: turning off warnings during its own compilation, defining variables which it will need to avoid warnings later, setting itself up to not exit when the program terminates, and defaulting to printing return values for the <code>r</code> command.</p> <h2 id="THREADS-SUPPORT"><a id="THREADS"></a>THREADS SUPPORT</h2> <p>If we are running under a threaded Perl, we require threads and threads::shared if the environment variable <code>PERL5DB_THREADED</code> is set, to enable proper threaded debugger control. <code>-dt</code> can also be used to set this.</p> <p>Each new thread will be announced and the debugger prompt will always inform you of each new thread created. It will also indicate the thread id in which we are currently running within the prompt like this:</p> <pre><code>[tid] DB&lt;$i&gt;</code></pre> <p>Where <code>[tid]</code> is an integer thread id and <code>$i</code> is the familiar debugger command prompt. The prompt will show: <code>[0]</code> when running under threads, but not actually in a thread. <code>[tid]</code> is consistent with <code>gdb</code> usage.</p> <p>While running under threads, when you set or delete a breakpoint (etc.), this will apply to all threads, not just the currently running one. When you are in a currently executing thread, you will stay there until it completes. With the current implementation it is not currently possible to hop from one thread to another.</p> <p>The <code>e</code> and <code>E</code> commands are currently fairly minimal - see <span style="white-space: nowrap;"><code>h e</code></span> and <span style="white-space: nowrap;"><code>h E</code></span>.</p> <p>Note that threading support was built into the debugger as of Perl version <code>5.8.6</code> and debugger version <code>1.2.8</code>.</p> <h1 id="OPTION-PROCESSING"><a id="OPTION"></a>OPTION PROCESSING</h1> <p>The debugger&#39;s options are actually spread out over the debugger itself and <code>dumpvar.pl</code>; some of these are variables to be set, while others are subs to be called with a value. To try to make this a little easier to manage, the debugger uses a few data structures to define what options are legal and how they are to be processed.</p> <p>First, the <code>@options</code> array defines the <i>names</i> of all the options that are to be accepted.</p> <p>Second, <code>optionVars</code> lists the variables that each option uses to save its state.</p> <p>Third, <code>%optionAction</code> defines the subroutine to be called to process each option.</p> <p>Last, the <code>%optionRequire</code> notes modules that must be <code>require</code>d if an option is used.</p> <p>There are a number of initialization-related variables which can be set by putting code to set them in a BEGIN block in the <code>PERL5DB</code> environment variable. These are:</p> <dl> <dt id="$rl-readline-control-XXX-needs-more-explanation"><a id="rl---readline-control-XXX-needs-more-explanation"></a><code>$rl</code> - readline control XXX needs more explanation</dt> <dd> </dd> <dt id="$warnLevel-whether-or-not-debugger-takes-over-warning-handling"><a id="warnLevel---whether-or-not-debugger-takes-over-warning-handling"></a><code>$warnLevel</code> - whether or not debugger takes over warning handling</dt> <dd> </dd> <dt id="$dieLevel-whether-or-not-debugger-takes-over-die-handling"><a id="dieLevel---whether-or-not-debugger-takes-over-die-handling"></a><code>$dieLevel</code> - whether or not debugger takes over die handling</dt> <dd> </dd> <dt id="$signalLevel-whether-or-not-debugger-takes-over-signal-handling"><a id="signalLevel---whether-or-not-debugger-takes-over-signal-handling"></a><code>$signalLevel</code> - whether or not debugger takes over signal handling</dt> <dd> </dd> <dt id="$pre-preprompt-actions-(array-reference)"><a id="pre---preprompt-actions-array-reference"></a><code>$pre</code> - preprompt actions (array reference)</dt> <dd> </dd> <dt id="$post-postprompt-actions-(array-reference)"><a id="post---postprompt-actions-array-reference"></a><code>$post</code> - postprompt actions (array reference)</dt> <dd> </dd> <dt id="$pretype"><a id="pretype"></a><code>$pretype</code></dt> <dd> </dd> <dt id="$CreateTTY-whether-or-not-to-create-a-new-TTY-for-this-debugger"><a id="CreateTTY---whether-or-not-to-create-a-new-TTY-for-this-debugger"></a><code>$CreateTTY</code> - whether or not to create a new TTY for this debugger</dt> <dd> </dd> <dt id="$CommandSet-which-command-set-to-use-(defaults-to-new,-documented-set)"><a id="CommandSet---which-command-set-to-use-defaults-to-new-documented-set"></a><code>$CommandSet</code> - which command set to use (defaults to new, documented set)</dt> <dd> </dd> </dl> <p>The default <code>die</code>, <code>warn</code>, and <code>signal</code> handlers are set up.</p> <p>The pager to be used is needed next. We try to get it from the environment first. If it&#39;s not defined there, we try to find it in the Perl <code>Config.pm</code>. If it&#39;s not there, we default to <code>more</code>. We then call the <code>pager()</code> function to save the pager name.</p> <p>We set up the command to be used to access the man pages, the command recall character (<code>!</code> unless otherwise defined) and the shell escape character (<code>!</code> unless otherwise defined). Yes, these do conflict, and neither works in the debugger at the moment.</p> <p>We then set up the gigantic string containing the debugger help. We also set the limit on the number of arguments we&#39;ll display during a trace.</p> <h2 id="SETTING-UP-THE-DEBUGGER-GREETING"><a id="SETTING"></a>SETTING UP THE DEBUGGER GREETING</h2> <p>The debugger <i>greeting</i> helps to inform the user how many debuggers are running, and whether the current debugger is the primary or a child.</p> <p>If we are the primary, we just hang onto our pid so we&#39;ll have it when or if we start a child debugger. If we are a child, we&#39;ll set things up so we&#39;ll have a unique greeting and so the parent will give us our own TTY later.</p> <p>We save the current contents of the <code>PERLDB_PIDS</code> environment variable because we mess around with it. We&#39;ll also need to hang onto it because we&#39;ll need it if we restart.</p> <p>Child debuggers make a label out of the current PID structure recorded in PERLDB_PIDS plus the new PID. They also mark themselves as not having a TTY yet so the parent will give them one later via <code>resetterm()</code>.</p> <h2 id="READING-THE-RC-FILE"><a id="READING"></a>READING THE RC FILE</h2> <p>The debugger will read a file of initialization options if supplied. If running interactively, this is <code>.perldb</code>; if not, it&#39;s <code>perldb.ini</code>.</p> <p>The debugger does a safety test of the file to be read. It must be owned either by the current user or root, and must only be writable by the owner.</p> <p>The last thing we do during initialization is determine which subroutine is to be used to obtain a new terminal when a new debugger is started. Right now, the debugger only handles TCP sockets, X11, OS/2, amd Mac OS X (darwin).</p> <h2 id="RESTART-PROCESSING"><a id="RESTART"></a>RESTART PROCESSING</h2> <p>This section handles the restart command. When the <code>R</code> command is invoked, it tries to capture all of the state it can into environment variables, and then sets <code>PERLDB_RESTART</code>. When we start executing again, we check to see if <code>PERLDB_RESTART</code> is there; if so, we reload all the information that the R command stuffed into the environment variables.</p> <pre><code>PERLDB_RESTART - flag only, contains no restart data itself. PERLDB_HIST - command history, if it&#39;s available PERLDB_ON_LOAD - breakpoints set by the rc file PERLDB_POSTPONE - subs that have been loaded/not executed, and have actions PERLDB_VISITED - files that had breakpoints PERLDB_FILE_... - breakpoints for a file PERLDB_OPT - active options PERLDB_INC - the original @INC PERLDB_PRETYPE - preprompt debugger actions PERLDB_PRE - preprompt Perl code PERLDB_POST - post-prompt Perl code PERLDB_TYPEAHEAD - typeahead captured by readline()</code></pre> <p>We chug through all these variables and plug the values saved in them back into the appropriate spots in the debugger.</p> <h2 id="SETTING-UP-THE-TERMINAL"><a id="SETTING1"></a>SETTING UP THE TERMINAL</h2> <p>Now, we&#39;ll decide how the debugger is going to interact with the user. If there&#39;s no TTY, we set the debugger to run non-stop; there&#39;s not going to be anyone there to enter commands.</p> <p>If there is a TTY, we have to determine who it belongs to before we can proceed. If this is a client editor or graphical debugger (denoted by the first command-line switch being &#39;-emacs&#39;), we shift this off and set <code>$rl</code> to 0 (XXX ostensibly to do straight reads).</p> <p>We then determine what the console should be on various systems:</p> <ul> <li><p>Cygwin - We use <code>stdin</code> instead of a separate device.</p> </li> <li><p>Windows - use <code>con</code>.</p> </li> <li><p>AmigaOS - use <code>CONSOLE:</code>.</p> </li> <li><p>VMS - use <code>sys$command</code>.</p> </li> <li><p>Unix - use <i>/dev/tty</i>.</p> </li> </ul> <p>Several other systems don&#39;t use a specific console. We <span style="white-space: nowrap;"><code>undef $console</code></span> for those (Windows using a client editor/graphical debugger, OS/2 with a client editor).</p> <p>If there is a TTY hanging around from a parent, we use that as the console.</p> <h2 id="SOCKET-HANDLING"><a id="SOCKET"></a>SOCKET HANDLING</h2> <p>The debugger is capable of opening a socket and carrying out a debugging session over the socket.</p> <p>If <code>RemotePort</code> was defined in the options, the debugger assumes that it should try to start a debugging session on that port. It builds the socket and then tries to connect the input and output filehandles to it.</p> <p>If no <code>RemotePort</code> was defined, and we want to create a TTY on startup, this is probably a situation where multiple debuggers are running (for example, a backticked command that starts up another debugger). We create a new IN and OUT filehandle, and do the necessary mojo to create a new TTY if we know how and if we can.</p> <p>To finish initialization, we show the debugger greeting, and then call the <code>afterinit()</code> subroutine if there is one.</p> <h1 id="SUBROUTINES">SUBROUTINES</h1> <h2 id="DB">DB</h2> <p>This gigantic subroutine is the heart of the debugger. Called before every statement, its job is to determine if a breakpoint has been reached, and stop if so; read commands from the user, parse them, and execute them, and then send execution off to the next statement.</p> <p>Note that the order in which the commands are processed is very important; some commands earlier in the loop will actually alter the <code>$cmd</code> variable to create other commands to be executed later. This is all highly <i>optimized</i> but can be confusing. Check the comments for each <code>$cmd ... &amp;&amp; do {}</code> to see what&#39;s happening in any given command.</p> <h3 id="_DB__handle_i_command-inheritance-display"><a id="_DB__handle_i_command"></a><a id="DB__handle_i_command---inheritance-display"></a><code>_DB__handle_i_command</code> - inheritance display</h3> <p>Display the (nested) parentage of the module or object given.</p> <h3 id="_cmd_l_main-list-lines-(command)"><a id="_cmd_l_main"></a><a id="cmd_l_main---list-lines-command"></a><code>_cmd_l_main</code> - list lines (command)</h3> <p>Most of the command is taken up with transforming all the different line specification syntaxes into &#39;start-stop&#39;. After that is done, the command runs a loop over <code>@dbline</code> for the specified range of lines. It handles the printing of each line and any markers (<code>==&gt;</code> for current line, <code>b</code> for break on this line, <code>a</code> for action on this line, <code>:</code> for this line breakable).</p> <p>We save the last line listed in the <code>$start</code> global for further listing later.</p> <h2 id="watchfunction()"><a id="watchfunction"></a><code>watchfunction()</code></h2> <p><code>watchfunction()</code> is a function that can be defined by the user; it is a function which will be run on each entry to <code>DB::DB</code>; it gets the current package, filename, and line as its parameters.</p> <p>The watchfunction can do anything it likes; it is executing in the debugger&#39;s context, so it has access to all of the debugger&#39;s internal data structures and functions.</p> <p><code>watchfunction()</code> can control the debugger&#39;s actions. Any of the following will cause the debugger to return control to the user&#39;s program after <code>watchfunction()</code> executes:</p> <ul> <li><p>Returning a false value from the <code>watchfunction()</code> itself.</p> </li> <li><p>Altering <code>$single</code> to a false value.</p> </li> <li><p>Altering <code>$signal</code> to a false value.</p> </li> <li><p>Turning off the <code>4</code> bit in <code>$trace</code> (this also disables the check for <code>watchfunction()</code>. This can be done with</p> <pre><code>$trace &amp;= ~4;</code></pre> </li> </ul> <h2 id="GETTING-READY-TO-EXECUTE-COMMANDS"><a id="GETTING"></a>GETTING READY TO EXECUTE COMMANDS</h2> <p>The debugger decides to take control if single-step mode is on, the <code>t</code> command was entered, or the user generated a signal. If the program has fallen off the end, we set things up so that entering further commands won&#39;t cause trouble, and we say that the program is over.</p> <p>If there&#39;s an action to be executed for the line we stopped at, execute it. If there are any preprompt actions, execute those as well.</p> <h2 id="WHERE-ARE-WE?"><a id="WHERE"></a><a id="WHERE-ARE-WE"></a>WHERE ARE WE?</h2> <p>XXX Relocate this section?</p> <p>The debugger normally shows the line corresponding to the current line of execution. Sometimes, though, we want to see the next line, or to move elsewhere in the file. This is done via the <code>$incr</code>, <code>$start</code>, and <code>$max</code> variables.</p> <p><code>$incr</code> controls by how many lines the <i>current</i> line should move forward after a command is executed. If set to -1, this indicates that the <i>current</i> line shouldn&#39;t change.</p> <p><code>$start</code> is the <i>current</i> line. It is used for things like knowing where to move forwards or backwards from when doing an <code>L</code> or <code>-</code> command.</p> <p><code>$max</code> tells the debugger where the last line of the current file is. It&#39;s used to terminate loops most often.</p> <h2 id="THE-COMMAND-LOOP"><a id="THE"></a>THE COMMAND LOOP</h2> <p>Most of <code>DB::DB</code> is actually a command parsing and dispatch loop. It comes in two parts:</p> <ul> <li><p>The outer part of the loop, starting at the <code>CMD</code> label. This loop reads a command and then executes it.</p> </li> <li><p>The inner part of the loop, starting at the <code>PIPE</code> label. This part is wholly contained inside the <code>CMD</code> block and only executes a command. Used to handle commands running inside a pager.</p> </li> </ul> <p>So why have two labels to restart the loop? Because sometimes, it&#39;s easier to have a command <i>generate</i> another command and then re-execute the loop to do the new command. This is faster, but perhaps a bit more convoluted.</p> <h4 id="The-null-command"><a id="The2"></a>The null command</h4> <p>A newline entered by itself means <i>re-execute the last command</i>. We grab the command out of <code>$laststep</code> (where it was recorded previously), and copy it back into <code>$cmd</code> to be executed below. If there wasn&#39;t any previous command, we&#39;ll do nothing below (no command will match). If there was, we also save it in the command history and fall through to allow the command parsing to pick it up.</p> <h3 id="COMMAND-ALIASES"><a id="COMMAND"></a>COMMAND ALIASES</h3> <p>The debugger can create aliases for commands (these are stored in the <code>%alias</code> hash). Before a command is executed, the command loop looks it up in the alias hash and substitutes the contents of the alias for the command, completely replacing it.</p> <h3 id="MAIN-LINE-COMMANDS"><a id="MAIN"></a>MAIN-LINE COMMANDS</h3> <p>All of these commands work up to and after the program being debugged has terminated.</p> <h4 id="q-quit"><a id="q"></a><a id="q---quit"></a><code>q</code> - quit</h4> <p>Quit the debugger. This entails setting the <code>$fall_off_end</code> flag, so we don&#39;t try to execute further, cleaning any restart-related stuff out of the environment, and executing with the last value of <code>$?</code>.</p> <h4 id="t-trace-[n]"><a id="t"></a><a id="t---trace-n"></a><code>t</code> - trace [n]</h4> <p>Turn tracing on or off. Inverts the appropriate bit in <code>$trace</code> (q.v.). If level is specified, set <code>$trace_to_depth</code>.</p> <h4 id="S-list-subroutines-matching/not-matching-a-pattern"><a id="S"></a><a id="S---list-subroutines-matching-not-matching-a-pattern"></a><code>S</code> - list subroutines matching/not matching a pattern</h4> <p>Walks through <code>%sub</code>, checking to see whether or not to print the name.</p> <h4 id="X-list-variables-in-current-package"><a id="X"></a><a id="X---list-variables-in-current-package"></a><code>X</code> - list variables in current package</h4> <p>Since the <code>V</code> command actually processes this, just change this to the appropriate <code>V</code> command and fall through.</p> <h4 id="V-list-variables"><a id="V"></a><a id="V---list-variables"></a><code>V</code> - list variables</h4> <p>Uses <code>dumpvar.pl</code> to dump out the current values for selected variables.</p> <h4 id="x-evaluate-and-print-an-expression"><a id="x"></a><a id="x---evaluate-and-print-an-expression"></a><code>x</code> - evaluate and print an expression</h4> <p>Hands the expression off to <code>DB::eval</code>, setting it up to print the value via <code>dumpvar.pl</code> instead of just printing it directly.</p> <h4 id="m-print-methods"><a id="m"></a><a id="m---print-methods"></a><code>m</code> - print methods</h4> <p>Just uses <code>DB::methods</code> to determine what methods are available.</p> <h4 id="f-switch-files"><a id="f"></a><a id="f---switch-files"></a><code>f</code> - switch files</h4> <p>Switch to a different filename.</p> <h4 id=".-return-to-last-executed-line"><a id="return-to-last-executed-line"></a><code>.</code> - return to last-executed line</h4> <p>We set <code>$incr</code> to -1 to indicate that the debugger shouldn&#39;t move ahead, and then we look up the line in the magical <code>%dbline</code> hash.</p> <h4 id="-back-one-window"><a id="back-one-window"></a><code>-</code> - back one window</h4> <p>We change <code>$start</code> to be one window back; if we go back past the first line, we set it to be the first line. We set <code>$incr</code> to put us back at the currently-executing line, and then put a <span style="white-space: nowrap;"><code>l $start +</code></span> (list one window from <code>$start</code>) in <code>$cmd</code> to be executed later.</p> <h3 id="PRE-580-COMMANDS-VS.-NEW-COMMANDS:-a,-A,-b,-B,-h,-l,-L,-M,-o,-O,-P,-v,-w,-W,-&lt;,-&lt;&lt;,-{,-{{"><a id="PRE"></a><a id="PRE-580-COMMANDS-VS.-NEW-COMMANDS:-a-A-b-B-h-l-L-M-o-O-P-v-w-W"></a>PRE-580 COMMANDS VS. NEW COMMANDS: <code>a, A, b, B, h, l, L, M, o, O, P, v, w, W, &lt;, &lt;&lt;, {, {{</code></h3> <p>In Perl 5.8.0, a realignment of the commands was done to fix up a number of problems, most notably that the default case of several commands destroying the user&#39;s work in setting watchpoints, actions, etc. We wanted, however, to retain the old commands for those who were used to using them or who preferred them. At this point, we check for the new commands and call <code>cmd_wrapper</code> to deal with them instead of processing them in-line.</p> <h4 id="y-List-lexicals-in-higher-scope"><a id="y"></a><a id="y---List-lexicals-in-higher-scope"></a><code>y</code> - List lexicals in higher scope</h4> <p>Uses <code>PadWalker</code> to find the lexicals supplied as arguments in a scope above the current one and then displays them using <i>dumpvar.pl</i>.</p> <h3 id="COMMANDS-NOT-WORKING-AFTER-PROGRAM-ENDS"><a id="COMMANDS"></a>COMMANDS NOT WORKING AFTER PROGRAM ENDS</h3> <p>All of the commands below this point don&#39;t work after the program being debugged has ended. All of them check to see if the program has ended; this allows the commands to be relocated without worrying about a &#39;line of demarcation&#39; above which commands can be entered anytime, and below which they can&#39;t.</p> <h4 id="n-single-step,-but-don&#39;t-trace-down-into-subs"><a id="n"></a><a id="n---single-step-but-dont-trace-down-into-subs"></a><code>n</code> - single step, but don&#39;t trace down into subs</h4> <p>Done by setting <code>$single</code> to 2, which forces subs to execute straight through when entered (see <code>DB::sub</code> in <a href="#DEBUGGER-INTERFACE-VARIABLES">&quot;DEBUGGER INTERFACE VARIABLES&quot;</a>). We also save the <code>n</code> command in <code>$laststep</code>,</p> <p>so a null command knows what to re-execute.</p> <h4 id="s-single-step,-entering-subs"><a id="s"></a><a id="s---single-step-entering-subs"></a><code>s</code> - single-step, entering subs</h4> <p>Sets <code>$single</code> to 1, which causes <code>DB::sub</code> to continue tracing inside subs. Also saves <code>s</code> as <code>$lastcmd</code>.</p> <h4 id="c-run-continuously,-setting-an-optional-breakpoint"><a id="c"></a><a id="c---run-continuously-setting-an-optional-breakpoint"></a><code>c</code> - run continuously, setting an optional breakpoint</h4> <p>Most of the code for this command is taken up with locating the optional breakpoint, which is either a subroutine name or a line number. We set the appropriate one-time-break in <code>@dbline</code> and then turn off single-stepping in this and all call levels above this one.</p> <h4 id="r-return-from-a-subroutine"><a id="r"></a><a id="r---return-from-a-subroutine"></a><code>r</code> - return from a subroutine</h4> <p>For <code>r</code> to work properly, the debugger has to stop execution again immediately after the return is executed. This is done by forcing single-stepping to be on in the call level above the current one. If we are printing return values when a <code>r</code> is executed, set <code>$doret</code> appropriately, and force us out of the command loop.</p> <h4 id="T-stack-trace"><a id="T"></a><a id="T---stack-trace"></a><code>T</code> - stack trace</h4> <p>Just calls <code>DB::print_trace</code>.</p> <h4 id="w-List-window-around-current-line"><a id="w"></a><a id="w---List-window-around-current-line"></a><code>w</code> - List window around current line</h4> <p>Just calls <code>DB::cmd_w</code>.</p> <h4 id="W-watch-expression-processing"><a id="W"></a><a id="W---watch-expression-processing"></a><code>W</code> - watch-expression processing</h4> <p>Just calls <code>DB::cmd_W</code>.</p> <h4 id="/-search-forward-for-a-string-in-the-source"><a id="search-forward-for-a-string-in-the-source"></a><code>/</code> - search forward for a string in the source</h4> <p>We take the argument and treat it as a pattern. If it turns out to be a bad one, we return the error we got from trying to <code>eval</code> it and exit. If not, we create some code to do the search and <code>eval</code> it so it can&#39;t mess us up.</p> <h4 id="?-search-backward-for-a-string-in-the-source"><a id="search-backward-for-a-string-in-the-source"></a><code>?</code> - search backward for a string in the source</h4> <p>Same as for <code>/</code>, except the loop runs backwards.</p> <h4 id="$rc-Recall-command"><a id="rc---Recall-command"></a><code>$rc</code> - Recall command</h4> <p>Manages the commands in <code>@hist</code> (which is created if <code>Term::ReadLine</code> reports that the terminal supports history). It finds the command required, puts it into <code>$cmd</code>, and redoes the loop to execute it.</p> <h4 id="$sh$sh-system()-command"><a id="sh-sh---system-command"></a><code>$sh$sh</code> - <code>system()</code> command</h4> <p>Calls the <code>_db_system()</code> to handle the command. This keeps the <code>STDIN</code> and <code>STDOUT</code> from getting messed up.</p> <h4 id="$rc-pattern-$rc-Search-command-history"><a id="rc-pattern-rc---Search-command-history"></a><code>$rc <i>pattern</i> $rc</code> - Search command history</h4> <p>Another command to manipulate <code>@hist</code>: this one searches it with a pattern. If a command is found, it is placed in <code>$cmd</code> and executed via <code>redo</code>.</p> <h4 id="$sh-Invoke-a-shell"><a id="sh---Invoke-a-shell"></a><code>$sh</code> - Invoke a shell</h4> <p>Uses <code>_db_system()</code> to invoke a shell.</p> <h4 id="$sh-command-Force-execution-of-a-command-in-a-shell"><a id="sh-command---Force-execution-of-a-command-in-a-shell"></a><code>$sh <i>command</i></code> - Force execution of a command in a shell</h4> <p>Like the above, but the command is passed to the shell. Again, we use <code>_db_system()</code> to avoid problems with <code>STDIN</code> and <code>STDOUT</code>.</p> <h4 id="H-display-commands-in-history"><a id="H"></a><a id="H---display-commands-in-history"></a><code>H</code> - display commands in history</h4> <p>Prints the contents of <code>@hist</code> (if any).</p> <h4 id="man,-doc,-perldoc-look-up-documentation"><a id="man"></a><a id="man-doc-perldoc---look-up-documentation"></a><code>man, doc, perldoc</code> - look up documentation</h4> <p>Just calls <code>runman()</code> to print the appropriate document.</p> <h4 id="p-print"><a id="p"></a><a id="p---print"></a><code>p</code> - print</h4> <p>Builds a <code>print EXPR</code> expression in the <code>$cmd</code>; this will get executed at the bottom of the loop.</p> <h4 id="=-define-command-alias"><a id="define-command-alias"></a><code>=</code> - define command alias</h4> <p>Manipulates <code>%alias</code> to add or list command aliases.</p> <h4 id="source-read-commands-from-a-file"><a id="source"></a><a id="source---read-commands-from-a-file"></a><code>source</code> - read commands from a file</h4> <p>Opens a lexical filehandle and stacks it on <code>@cmdfhs</code>; <code>DB::readline</code> will pick it up.</p> <h4 id="enable-disable-enable-or-disable-breakpoints"><a id="enable"></a><a id="enable-disable---enable-or-disable-breakpoints"></a><code>enable</code> <code>disable</code> - enable or disable breakpoints</h4> <p>This enables or disables breakpoints.</p> <h4 id="save-send-current-history-to-a-file"><a id="save1"></a><a id="save---send-current-history-to-a-file"></a><code>save</code> - send current history to a file</h4> <p>Takes the complete history, (not the shrunken version you see with <code>H</code>), and saves it to the given filename, so it can be replayed using <code>source</code>.</p> <p>Note that all <code>^(save|source)</code>&#39;s are commented out with a view to minimise recursion.</p> <h4 id="R-restart"><a id="R"></a><a id="R---restart"></a><code>R</code> - restart</h4> <p>Restart the debugger session.</p> <h4 id="rerun-rerun-the-current-session"><a id="rerun1"></a><a id="rerun---rerun-the-current-session"></a><code>rerun</code> - rerun the current session</h4> <p>Return to any given position in the <b>true</b>-history list</p> <h4 id="|,-||-pipe-output-through-the-pager"><a id="pipe-output-through-the-pager"></a><code>|, ||</code> - pipe output through the pager</h4> <p>For <code>|</code>, we save <code>OUT</code> (the debugger&#39;s output filehandle) and <code>STDOUT</code> (the program&#39;s standard output). For <code>||</code>, we only save <code>OUT</code>. We open a pipe to the pager (restoring the output filehandles if this fails). If this is the <code>|</code> command, we also set up a <code>SIGPIPE</code> handler which will simply set <code>$signal</code>, sending us back into the debugger.</p> <p>We then trim off the pipe symbols and <code>redo</code> the command loop at the <code>PIPE</code> label, causing us to evaluate the command in <code>$cmd</code> without reading another.</p> <h3 id="END-OF-COMMAND-PARSING"><a id="END"></a>END OF COMMAND PARSING</h3> <p>Anything left in <code>$cmd</code> at this point is a Perl expression that we want to evaluate. We&#39;ll always evaluate in the user&#39;s context, and fully qualify any variables we might want to address in the <code>DB</code> package.</p> <h3 id="POST-COMMAND-PROCESSING"><a id="POST"></a>POST-COMMAND PROCESSING</h3> <p>After each command, we check to see if the command output was piped anywhere. If so, we go through the necessary code to unhook the pipe and go back to our standard filehandles for input and output.</p> <h3 id="COMMAND-LOOP-TERMINATION"><a id="COMMAND1"></a>COMMAND LOOP TERMINATION</h3> <p>When commands have finished executing, we come here. If the user closed the input filehandle, we turn on <code>$fall_off_end</code> to emulate a <code>q</code> command. We evaluate any post-prompt items. We restore <code>$@</code>, <code>$!</code>, <code>$^E</code>, <code>$,</code>, <code>$/</code>, <code>$\</code>, and <code>$^W</code>, and return a null list as expected by the Perl interpreter. The interpreter will then execute the next line and then return control to us again.</p> <p>Special check: if we&#39;re in package <code>DB::fake</code>, we&#39;ve gone through the <code>END</code> block at least once. We set up everything so that we can continue to enter commands and have a valid context to be in.</p> <p>If the program hasn&#39;t finished executing, we scan forward to the next executable line, print that out, build the prompt from the file and line number information, and print that.</p> <h2 id="sub">sub</h2> <p><code>sub</code> is called whenever a subroutine call happens in the program being debugged. The variable <code>$DB::sub</code> contains the name of the subroutine being called.</p> <p>The core function of this subroutine is to actually call the sub in the proper context, capturing its output. This of course causes <code>DB::DB</code> to get called again, repeating until the subroutine ends and returns control to <code>DB::sub</code> again. Once control returns, <code>DB::sub</code> figures out whether or not to dump the return value, and returns its captured copy of the return value as its own return value. The value then feeds back into the program being debugged as if <code>DB::sub</code> hadn&#39;t been there at all.</p> <p><code>sub</code> does all the work of printing the subroutine entry and exit messages enabled by setting <code>$frame</code>. It notes what sub the autoloader got called for, and also prints the return value if needed (for the <code>r</code> command and if the 16 bit is set in <code>$frame</code>).</p> <p>It also tracks the subroutine call depth by saving the current setting of <code>$single</code> in the <code>@stack</code> package global; if this exceeds the value in <code>$deep</code>, <code>sub</code> automatically turns on printing of the current depth by setting the <code>4</code> bit in <code>$single</code>. In any case, it keeps the current setting of stop/don&#39;t stop on entry to subs set as it currently is set.</p> <h3 id="caller()-support"><a id="caller"></a><a id="caller-support"></a><code>caller()</code> support</h3> <p>If <code>caller()</code> is called from the package <code>DB</code>, it provides some additional data, in the following order:</p> <ul> <li><p><code>$package</code></p> <p>The package name the sub was in</p> </li> <li><p><code>$filename</code></p> <p>The filename it was defined in</p> </li> <li><p><code>$line</code></p> <p>The line number it was defined on</p> </li> <li><p><code>$subroutine</code></p> <p>The subroutine name; <code>(eval)</code> if an <code>eval</code>().</p> </li> <li><p><code>$hasargs</code></p> <p>1 if it has arguments, 0 if not</p> </li> <li><p><code>$wantarray</code></p> <p>1 if array context, 0 if scalar context</p> </li> <li><p><code>$evaltext</code></p> <p>The <code>eval</code>() text, if any (undefined for <span style="white-space: nowrap;"><code>eval BLOCK</code></span>)</p> </li> <li><p><code>$is_require</code></p> <p>frame was created by a <code>use</code> or <code>require</code> statement</p> </li> <li><p><code>$hints</code></p> <p>pragma information; subject to change between versions</p> </li> <li><p><code>$bitmask</code></p> <p>pragma information; subject to change between versions</p> </li> <li><p><code>@DB::args</code></p> <p>arguments with which the subroutine was invoked</p> </li> </ul> <h1 id="EXTENDED-COMMAND-HANDLING-AND-THE-COMMAND-API"><a id="EXTENDED"></a>EXTENDED COMMAND HANDLING AND THE COMMAND API</h1> <p>In Perl 5.8.0, there was a major realignment of the commands and what they did, Most of the changes were to systematize the command structure and to eliminate commands that threw away user input without checking.</p> <p>The following sections describe the code added to make it easy to support multiple command sets with conflicting command names. This section is a start at unifying all command processing to make it simpler to develop commands.</p> <p>Note that all the cmd_[a-zA-Z] subroutines require the command name, a line number, and <code>$dbline</code> (the current line) as arguments.</p> <p>Support functions in this section which have multiple modes of failure <code>die</code> on error; the rest simply return a false value.</p> <p>The user-interface functions (all of the <code>cmd_*</code> functions) just output error messages.</p> <h2 id="%set"><a id="set"></a><code>%set</code></h2> <p>The <code>%set</code> hash defines the mapping from command letter to subroutine name suffix.</p> <p><code>%set</code> is a two-level hash, indexed by set name and then by command name. Note that trying to set the CommandSet to <code>foobar</code> simply results in the 5.8.0 command set being used, since there&#39;s no top-level entry for <code>foobar</code>.</p> <h2 id="cmd_wrapper()-(API)"><a id="cmd_wrapper"></a><a id="cmd_wrapper-API"></a><code>cmd_wrapper()</code> (API)</h2> <p><code>cmd_wrapper()</code> allows the debugger to switch command sets depending on the value of the <code>CommandSet</code> option.</p> <p>It tries to look up the command in the <code>%set</code> package-level <i>lexical</i> (which means external entities can&#39;t fiddle with it) and create the name of the sub to call based on the value found in the hash (if it&#39;s there). <i>All</i> of the commands to be handled in a set have to be added to <code>%set</code>; if they aren&#39;t found, the 5.8.0 equivalent is called (if there is one).</p> <p>This code uses symbolic references.</p> <h3 id="cmd_a-(command)"><a id="cmd_a"></a><a id="cmd_a-command"></a><code>cmd_a</code> (command)</h3> <p>The <code>a</code> command handles pre-execution actions. These are associated with a particular line, so they&#39;re stored in <code>%dbline</code>. We default to the current line if none is specified.</p> <h3 id="cmd_A-(command)"><a id="cmd_A"></a><a id="cmd_A-command"></a><code>cmd_A</code> (command)</h3> <p>Delete actions. Similar to above, except the delete code is in a separate subroutine, <code>delete_action</code>.</p> <h3 id="delete_action-(API)"><a id="delete_action"></a><a id="delete_action-API"></a><code>delete_action</code> (API)</h3> <p><code>delete_action</code> accepts either a line number or <code>undef</code>. If a line number is specified, we check for the line being executable (if it&#39;s not, it couldn&#39;t have had an action). If it is, we just take the action off (this will get any kind of an action, including breakpoints).</p> <h3 id="cmd_b-(command)"><a id="cmd_b"></a><a id="cmd_b-command"></a><code>cmd_b</code> (command)</h3> <p>Set breakpoints. Since breakpoints can be set in so many places, in so many ways, conditionally or not, the breakpoint code is kind of complex. Mostly, we try to parse the command type, and then shuttle it off to an appropriate subroutine to actually do the work of setting the breakpoint in the right place.</p> <h3 id="break_on_load-(API)"><a id="break_on_load1"></a><a id="break_on_load-API"></a><code>break_on_load</code> (API)</h3> <p>We want to break when this file is loaded. Mark this file in the <code>%break_on_load</code> hash, and note that it has a breakpoint in <code>%had_breakpoints</code>.</p> <h3 id="report_break_on_load-(API)"><a id="report_break_on_load"></a><a id="report_break_on_load-API"></a><code>report_break_on_load</code> (API)</h3> <p>Gives us an array of filenames that are set to break on load. Note that only files with break-on-load are in here, so simply showing the keys suffices.</p> <h3 id="cmd_b_load-(command)"><a id="cmd_b_load"></a><a id="cmd_b_load-command"></a><code>cmd_b_load</code> (command)</h3> <p>We take the file passed in and try to find it in <code>%INC</code> (which maps modules to files they came from). We mark those files for break-on-load via <code>break_on_load</code> and then report that it was done.</p> <h3 id="$filename_error-(API-package-global)"><a id="filename_error-API-package-global"></a><code>$filename_error</code> (API package global)</h3> <p>Several of the functions we need to implement in the API need to work both on the current file and on other files. We don&#39;t want to duplicate code, so <code>$filename_error</code> is used to contain the name of the file that&#39;s being worked on (if it&#39;s not the current one).</p> <p>We can now build functions in pairs: the basic function works on the current file, and uses <code>$filename_error</code> as part of its error message. Since this is initialized to <code>&quot;&quot;</code>, no filename will appear when we are working on the current file.</p> <p>The second function is a wrapper which does the following:</p> <ul> <li><p>Localizes <code>$filename_error</code> and sets it to the name of the file to be processed.</p> </li> <li><p>Localizes the <code>*dbline</code> glob and reassigns it to point to the file we want to process.</p> </li> <li><p>Calls the first function.</p> <p>The first function works on the <i>current</i> file (i.e., the one we changed to), and prints <code>$filename_error</code> in the error message (the name of the other file) if it needs to. When the functions return, <code>*dbline</code> is restored to point to the actual current file (the one we&#39;re executing in) and <code>$filename_error</code> is restored to <code>&quot;&quot;</code>. This restores everything to the way it was before the second function was called at all.</p> <p>See the comments in <a href="#breakable_line(from%2C-to)-(API)"><span style="white-space: nowrap;"><code>sub breakable_line</code></span></a> and <a href="#breakable_line_in_filename(file%2C-from%2C-to)-(API)"><span style="white-space: nowrap;"><code>sub breakable_line_in_filename</code></span></a> for more details.</p> </li> </ul> <h3 id="breakable_line(from,-to)-(API)"><a id="breakable_line"></a><a id="breakable_line-from-to-API"></a>breakable_line(from, to) (API)</h3> <p>The subroutine decides whether or not a line in the current file is breakable. It walks through <code>@dbline</code> within the range of lines specified, looking for the first line that is breakable.</p> <p>If <code>$to</code> is greater than <code>$from</code>, the search moves forwards, finding the first line <i>after</i> <code>$to</code> that&#39;s breakable, if there is one.</p> <p>If <code>$from</code> is greater than <code>$to</code>, the search goes <i>backwards</i>, finding the first line <i>before</i> <code>$to</code> that&#39;s breakable, if there is one.</p> <h3 id="breakable_line_in_filename(file,-from,-to)-(API)"><a id="breakable_line_in_filename"></a><a id="breakable_line_in_filename-file-from-to-API"></a>breakable_line_in_filename(file, from, to) (API)</h3> <p>Like <code>breakable_line</code>, but look in another file.</p> <h3 id="break_on_line(lineno,-[condition])-(API)"><a id="break_on_line"></a><a id="break_on_line-lineno-condition-API"></a>break_on_line(lineno, [condition]) (API)</h3> <p>Adds a breakpoint with the specified condition (or 1 if no condition was specified) to the specified line. Dies if it can&#39;t.</p> <h3 id="cmd_b_line(line,-[condition])-(command)"><a id="cmd_b_line"></a><a id="cmd_b_line-line-condition-command"></a>cmd_b_line(line, [condition]) (command)</h3> <p>Wrapper for <code>break_on_line</code>. Prints the failure message if it doesn&#39;t work.</p> <h3 id="cmd_b_filename_line(line,-[condition])-(command)"><a id="cmd_b_filename_line"></a><a id="cmd_b_filename_line-line-condition-command"></a>cmd_b_filename_line(line, [condition]) (command)</h3> <p>Wrapper for <code>break_on_filename_line</code>. Prints the failure message if it doesn&#39;t work.</p> <h3 id="break_on_filename_line(file,-line,-[condition])-(API)"><a id="break_on_filename_line"></a><a id="break_on_filename_line-file-line-condition-API"></a>break_on_filename_line(file, line, [condition]) (API)</h3> <p>Switches to the file specified and then calls <code>break_on_line</code> to set the breakpoint.</p> <h3 id="break_on_filename_line_range(file,-from,-to,-[condition])-(API)"><a id="break_on_filename_line_range"></a><a id="break_on_filename_line_range-file-from-to-condition-API"></a>break_on_filename_line_range(file, from, to, [condition]) (API)</h3> <p>Switch to another file, search the range of lines specified for an executable one, and put a breakpoint on the first one you find.</p> <h3 id="subroutine_filename_lines(subname,-[condition])-(API)"><a id="subroutine_filename_lines"></a><a id="subroutine_filename_lines-subname-condition-API"></a>subroutine_filename_lines(subname, [condition]) (API)</h3> <p>Search for a subroutine within a given file. The condition is ignored. Uses <code>find_sub</code> to locate the desired subroutine.</p> <h3 id="break_subroutine(subname)-(API)"><a id="break_subroutine"></a><a id="break_subroutine-subname-API"></a>break_subroutine(subname) (API)</h3> <p>Places a break on the first line possible in the specified subroutine. Uses <code>subroutine_filename_lines</code> to find the subroutine, and <code>break_on_filename_line_range</code> to place the break.</p> <h3 id="cmd_b_sub(subname,-[condition])-(command)"><a id="cmd_b_sub"></a><a id="cmd_b_sub-subname-condition-command"></a>cmd_b_sub(subname, [condition]) (command)</h3> <p>We take the incoming subroutine name and fully-qualify it as best we can.</p> <dl> <dt id="1.-If-it&#39;s-already-fully-qualified,-leave-it-alone."><a id="1"></a><a id="If-its-already-fully-qualified-leave-it-alone"></a>1. If it&#39;s already fully-qualified, leave it alone.</dt> <dd> </dd> <dt id="2.-Try-putting-it-in-the-current-package."><a id="2"></a><a id="Try-putting-it-in-the-current-package"></a>2. Try putting it in the current package.</dt> <dd> </dd> <dt id="3.-If-it&#39;s-not-there,-try-putting-it-in-CORE::GLOBAL-if-it-exists-there."><a id="3"></a><a id="If-its-not-there-try-putting-it-in-CORE::GLOBAL-if-it-exists-there"></a>3. If it&#39;s not there, try putting it in CORE::GLOBAL if it exists there.</dt> <dd> </dd> <dt id="4.-If-it-starts-with-&#39;::&#39;,-put-it-in-&#39;main::&#39;."><a id="4"></a><a id="If-it-starts-with-::-put-it-in-main"></a>4. If it starts with &#39;::&#39;, put it in &#39;main::&#39;.</dt> <dd> </dd> </dl> <p>After all this cleanup, we call <code>break_subroutine</code> to try to set the breakpoint.</p> <h3 id="cmd_B-delete-breakpoint(s)-(command)"><a id="cmd_B"></a><a id="cmd_B---delete-breakpoint-s-command"></a><code>cmd_B</code> - delete breakpoint(s) (command)</h3> <p>The command mostly parses the command line and tries to turn the argument into a line spec. If it can&#39;t, it uses the current line. It then calls <code>delete_breakpoint</code> to actually do the work.</p> <p>If <code>*</code> is specified, <code>cmd_B</code> calls <code>delete_breakpoint</code> with no arguments, thereby deleting all the breakpoints.</p> <h3 id="delete_breakpoint([line])-(API)"><a id="delete_breakpoint"></a><a id="delete_breakpoint-line-API"></a>delete_breakpoint([line]) (API)</h3> <p>This actually does the work of deleting either a single breakpoint, or all of them.</p> <p>For a single line, we look for it in <code>@dbline</code>. If it&#39;s nonbreakable, we just drop out with a message saying so. If it is, we remove the condition part of the &#39;condition\0action&#39; that says there&#39;s a breakpoint here. If, after we&#39;ve done that, there&#39;s nothing left, we delete the corresponding line in <code>%dbline</code> to signal that no action needs to be taken for this line.</p> <p>For all breakpoints, we iterate through the keys of <code>%had_breakpoints</code>, which lists all currently-loaded files which have breakpoints. We then look at each line in each of these files, temporarily switching the <code>%dbline</code> and <code>@dbline</code> structures to point to the files in question, and do what we did in the single line case: delete the condition in <code>@dbline</code>, and delete the key in <code>%dbline</code> if nothing&#39;s left.</p> <p>We then wholesale delete <code>%postponed</code>, <code>%postponed_file</code>, and <code>%break_on_load</code>, because these structures contain breakpoints for files and code that haven&#39;t been loaded yet. We can just kill these off because there are no magical debugger structures associated with them.</p> <h3 id="cmd_stop-(command)"><a id="cmd_stop"></a><a id="cmd_stop-command"></a>cmd_stop (command)</h3> <p>This is meant to be part of the new command API, but it isn&#39;t called or used anywhere else in the debugger. XXX It is probably meant for use in development of new commands.</p> <h3 id="cmd_e-threads"><a id="cmd_e"></a><a id="cmd_e---threads"></a><code>cmd_e</code> - threads</h3> <p>Display the current thread id:</p> <pre><code>e</code></pre> <p>This could be how (when implemented) to send commands to this thread id (e cmd) or that thread id (e tid cmd).</p> <h3 id="cmd_E-list-of-thread-ids"><a id="cmd_E"></a><a id="cmd_E---list-of-thread-ids"></a><code>cmd_E</code> - list of thread ids</h3> <p>Display the list of available thread ids:</p> <pre><code>E</code></pre> <p>This could be used (when implemented) to send commands to all threads (E cmd).</p> <h3 id="cmd_h-help-command-(command)"><a id="cmd_h"></a><a id="cmd_h---help-command-command"></a><code>cmd_h</code> - help command (command)</h3> <p>Does the work of either</p> <ul> <li><p>Showing all the debugger help</p> </li> <li><p>Showing help for a specific command</p> </li> </ul> <h3 id="cmd_L-list-breakpoints,-actions,-and-watch-expressions-(command)"><a id="cmd_L"></a><a id="cmd_L---list-breakpoints-actions-and-watch-expressions-command"></a><code>cmd_L</code> - list breakpoints, actions, and watch expressions (command)</h3> <p>To list breakpoints, the command has to look determine where all of them are first. It starts a <code>%had_breakpoints</code>, which tells us what all files have breakpoints and/or actions. For each file, we switch the <code>*dbline</code> glob (the magic source and breakpoint data structures) to the file, and then look through <code>%dbline</code> for lines with breakpoints and/or actions, listing them out. We look through <code>%postponed</code> not-yet-compiled subroutines that have breakpoints, and through <code>%postponed_file</code> for not-yet-<code>require</code>&#39;d files that have breakpoints.</p> <p>Watchpoints are simpler: we just list the entries in <code>@to_watch</code>.</p> <h3 id="cmd_M-list-modules-(command)"><a id="cmd_M"></a><a id="cmd_M---list-modules-command"></a><code>cmd_M</code> - list modules (command)</h3> <p>Just call <code>list_modules</code>.</p> <h3 id="cmd_o-options-(command)"><a id="cmd_o"></a><a id="cmd_o---options-command"></a><code>cmd_o</code> - options (command)</h3> <p>If this is just <code>o</code> by itself, we list the current settings via <code>dump_option</code>. If there&#39;s a nonblank value following it, we pass that on to <code>parse_options</code> for processing.</p> <h3 id="cmd_O-nonexistent-in-5.8.x-(command)"><a id="cmd_O"></a><a id="cmd_O---nonexistent-in-5.8.x-command"></a><code>cmd_O</code> - nonexistent in 5.8.x (command)</h3> <p>Advises the user that the O command has been renamed.</p> <h3 id="cmd_v-view-window-(command)"><a id="cmd_v"></a><a id="cmd_v---view-window-command"></a><code>cmd_v</code> - view window (command)</h3> <p>Uses the <code>$preview</code> variable set in the second <code>BEGIN</code> block (q.v.) to move back a few lines to list the selected line in context. Uses <code>_cmd_l_main</code> to do the actual listing after figuring out the range of line to request.</p> <h3 id="cmd_w-add-a-watch-expression-(command)"><a id="cmd_w"></a><a id="cmd_w---add-a-watch-expression-command"></a><code>cmd_w</code> - add a watch expression (command)</h3> <p>The 5.8 version of this command adds a watch expression if one is specified; it does nothing if entered with no operands.</p> <p>We extract the expression, save it, evaluate it in the user&#39;s context, and save the value. We&#39;ll re-evaluate it each time the debugger passes a line, and will stop (see the code at the top of the command loop) if the value of any of the expressions changes.</p> <h3 id="cmd_W-delete-watch-expressions-(command)"><a id="cmd_W"></a><a id="cmd_W---delete-watch-expressions-command"></a><code>cmd_W</code> - delete watch expressions (command)</h3> <p>This command accepts either a watch expression to be removed from the list of watch expressions, or <code>*</code> to delete them all.</p> <p>If <code>*</code> is specified, we simply empty the watch expression list and the watch expression value list. We also turn off the bit that says we&#39;ve got watch expressions.</p> <p>If an expression (or partial expression) is specified, we pattern-match through the expressions and remove the ones that match. We also discard the corresponding values. If no watch expressions are left, we turn off the <i>watching expressions</i> bit.</p> <h1 id="SUPPORT-ROUTINES"><a id="SUPPORT"></a>SUPPORT ROUTINES</h1> <p>These are general support routines that are used in a number of places throughout the debugger.</p> <h2 id="save">save</h2> <p>save() saves the user&#39;s versions of globals that would mess us up in <code>@saved</code>, and installs the versions we like better.</p> <h2 id="print_lineinfo-show-where-we-are-now"><a id="print_lineinfo"></a><a id="print_lineinfo---show-where-we-are-now"></a><code>print_lineinfo</code> - show where we are now</h2> <p>print_lineinfo prints whatever it is that it is handed; it prints it to the <code>$LINEINFO</code> filehandle instead of just printing it to STDOUT. This allows us to feed line information to a client editor without messing up the debugger output.</p> <h2 id="postponed_sub"><code>postponed_sub</code></h2> <p>Handles setting postponed breakpoints in subroutines once they&#39;re compiled. For breakpoints, we use <code>DB::find_sub</code> to locate the source file and line range for the subroutine, then mark the file as having a breakpoint, temporarily switch the <code>*dbline</code> glob over to the source file, and then search the given range of lines to find a breakable line. If we find one, we set the breakpoint on it, deleting the breakpoint from <code>%postponed</code>.</p> <h2 id="postponed"><code>postponed</code></h2> <p>Called after each required file is compiled, but before it is executed; also called if the name of a just-compiled subroutine is a key of <code>%postponed</code>. Propagates saved breakpoints (from <span style="white-space: nowrap;"><code>b compile</code></span>, <span style="white-space: nowrap;"><code>b load</code></span>, etc.) into the just-compiled code.</p> <p>If this is a <code>require</code>&#39;d file, the incoming parameter is the glob <code>*{&quot;_&lt;$filename&quot;}</code>, with <code>$filename</code> the name of the <code>require</code>&#39;d file.</p> <p>If it&#39;s a subroutine, the incoming parameter is the subroutine name.</p> <h2 id="dumpit"><code>dumpit</code></h2> <p><code>dumpit</code> is the debugger&#39;s wrapper around dumpvar.pl.</p> <p>It gets a filehandle (to which <code>dumpvar.pl</code>&#39;s output will be directed) and a reference to a variable (the thing to be dumped) as its input.</p> <p>The incoming filehandle is selected for output (<code>dumpvar.pl</code> is printing to the currently-selected filehandle, thank you very much). The current values of the package globals <code>$single</code> and <code>$trace</code> are backed up in lexicals, and they are turned off (this keeps the debugger from trying to single-step through <code>dumpvar.pl</code> (I think.)). <code>$frame</code> is localized to preserve its current value and it is set to zero to prevent entry/exit messages from printing, and <code>$doret</code> is localized as well and set to -2 to prevent return values from being shown.</p> <p><code>dumpit()</code> then checks to see if it needs to load <code>dumpvar.pl</code> and tries to load it (note: if you have a <code>dumpvar.pl</code> ahead of the installed version in <code>@INC</code>, yours will be used instead. Possible security problem?).</p> <p>It then checks to see if the subroutine <code>main::dumpValue</code> is now defined it should have been defined by <code>dumpvar.pl</code>). If it has, <code>dumpit()</code> localizes the globals necessary for things to be sane when <code>main::dumpValue()</code> is called, and picks up the variable to be dumped from the parameter list.</p> <p>It checks the package global <code>%options</code> to see if there&#39;s a <code>dumpDepth</code> specified. If not, -1 is assumed; if so, the supplied value gets passed on to <code>dumpvar.pl</code>. This tells <code>dumpvar.pl</code> where to leave off when dumping a structure: -1 means dump everything.</p> <p><code>dumpValue()</code> is then called if possible; if not, <code>dumpit()</code>just prints a warning.</p> <p>In either case, <code>$single</code>, <code>$trace</code>, <code>$frame</code>, and <code>$doret</code> are restored and we then return to the caller.</p> <h2 id="print_trace"><code>print_trace</code></h2> <p><code>print_trace</code>&#39;s job is to print a stack trace. It does this via the <code>dump_trace</code> routine, which actually does all the ferreting-out of the stack trace data. <code>print_trace</code> takes care of formatting it nicely and printing it to the proper filehandle.</p> <p>Parameters:</p> <ul> <li><p>The filehandle to print to.</p> </li> <li><p>How many frames to skip before starting trace.</p> </li> <li><p>How many frames to print.</p> </li> <li><p>A flag: if true, print a <i>short</i> trace without filenames, line numbers, or arguments</p> </li> </ul> <p>The original comment below seems to be noting that the traceback may not be correct if this routine is called in a tied method.</p> <h2 id="dump_trace(skip[,count])"><a id="dump_trace"></a><a id="dump_trace-skip-count"></a>dump_trace(skip[,count])</h2> <p>Actually collect the traceback information available via <code>caller()</code>. It does some filtering and cleanup of the data, but mostly it just collects it to make <code>print_trace()</code>&#39;s job easier.</p> <p><code>skip</code> defines the number of stack frames to be skipped, working backwards from the most current. <code>count</code> determines the total number of frames to be returned; all of them (well, the first 10^9) are returned if <code>count</code> is omitted.</p> <p>This routine returns a list of hashes, from most-recent to least-recent stack frame. Each has the following keys and values:</p> <ul> <li><p><code>context</code> - <code>.</code> (null), <code>$</code> (scalar), or <code>@</code> (array)</p> </li> <li><p><code>sub</code> - subroutine name, or <code>eval</code> information</p> </li> <li><p><code>args</code> - undef, or a reference to an array of arguments</p> </li> <li><p><code>file</code> - the file in which this item was defined (if any)</p> </li> <li><p><code>line</code> - the line on which it was defined</p> </li> </ul> <h2 id="action()"><a id="action"></a><code>action()</code></h2> <p><code>action()</code> takes input provided as the argument to an add-action command, either pre- or post-, and makes sure it&#39;s a complete command. It doesn&#39;t do any fancy parsing; it just keeps reading input until it gets a string without a trailing backslash.</p> <h2 id="unbalanced">unbalanced</h2> <p>This routine mostly just packages up a regular expression to be used to check that the thing it&#39;s being matched against has properly-matched curly braces.</p> <p>Of note is the definition of the <code>$balanced_brace_re</code> global via <code>||=</code>, which speeds things up by only creating the qr//&#39;ed expression once; if it&#39;s already defined, we don&#39;t try to define it again. A speed hack.</p> <h2 id="gets()"><a id="gets"></a><code>gets()</code></h2> <p><code>gets()</code> is a primitive (very primitive) routine to read continuations. It was devised for reading continuations for actions. it just reads more input with <code>readline()</code> and returns it.</p> <h2 id="_db_system()-handle-calls-to&lt;system()&gt;-without-messing-up-the-debugger"><a id="_db_system"></a><a id="db_system---handle-calls-tosystem-without-messing-up-the-debugger"></a><code>_db_system()</code> - handle calls to&lt;system()&gt; without messing up the debugger</h2> <p>The <code>system()</code> function assumes that it can just go ahead and use STDIN and STDOUT, but under the debugger, we want it to use the debugger&#39;s input and outout filehandles.</p> <p><code>_db_system()</code> socks away the program&#39;s STDIN and STDOUT, and then substitutes the debugger&#39;s IN and OUT filehandles for them. It does the <code>system()</code> call, and then puts everything back again.</p> <h1 id="TTY-MANAGEMENT"><a id="TTY1"></a>TTY MANAGEMENT</h1> <p>The subs here do some of the terminal management for multiple debuggers.</p> <h2 id="setterm">setterm</h2> <p>Top-level function called when we want to set up a new terminal for use by the debugger.</p> <p>If the <code>noTTY</code> debugger option was set, we&#39;ll either use the terminal supplied (the value of the <code>noTTY</code> option), or we&#39;ll use <code>Term::Rendezvous</code> to find one. If we&#39;re a forked debugger, we call <code>resetterm</code> to try to get a whole new terminal if we can.</p> <p>In either case, we set up the terminal next. If the <code>ReadLine</code> option was true, we&#39;ll get a <code>Term::ReadLine</code> object for the current terminal and save the appropriate attributes. We then</p> <h1 id="GET_FORK_TTY-EXAMPLE-FUNCTIONS"><a id="GET_FORK_TTY"></a>GET_FORK_TTY EXAMPLE FUNCTIONS</h1> <p>When the process being debugged forks, or the process invokes a command via <code>system()</code> which starts a new debugger, we need to be able to get a new <code>IN</code> and <code>OUT</code> filehandle for the new debugger. Otherwise, the two processes fight over the terminal, and you can never quite be sure who&#39;s going to get the input you&#39;re typing.</p> <p><code>get_fork_TTY</code> is a glob-aliased function which calls the real function that is tasked with doing all the necessary operating system mojo to get a new TTY (and probably another window) and to direct the new debugger to read and write there.</p> <p>The debugger provides <code>get_fork_TTY</code> functions which work for TCP socket servers, X11, OS/2, and Mac OS X. Other systems are not supported. You are encouraged to write <code>get_fork_TTY</code> functions which work for <i>your</i> platform and contribute them.</p> <h3 id="socket_get_fork_TTY"><code>socket_get_fork_TTY</code></h3> <h3 id="xterm_get_fork_TTY"><code>xterm_get_fork_TTY</code></h3> <p>This function provides the <code>get_fork_TTY</code> function for X11. If a program running under the debugger forks, a new &lt;xterm&gt; window is opened and the subsidiary debugger is directed there.</p> <p>The <code>open()</code> call is of particular note here. We have the new <code>xterm</code> we&#39;re spawning route file number 3 to STDOUT, and then execute the <code>tty</code> command (which prints the device name of the TTY we&#39;ll want to use for input and output to STDOUT, then <code>sleep</code> for a very long time, routing this output to file number 3. This way we can simply read from the &lt;XT&gt; filehandle (which is STDOUT from the <i>commands</i> we ran) to get the TTY we want to use.</p> <p>Only works if <code>xterm</code> is in your path and <code>$ENV{DISPLAY}</code>, etc. are properly set up.</p> <h3 id="os2_get_fork_TTY"><code>os2_get_fork_TTY</code></h3> <p>XXX It behooves an OS/2 expert to write the necessary documentation for this!</p> <h3 id="macosx_get_fork_TTY"><code>macosx_get_fork_TTY</code></h3> <p>The Mac OS X version uses AppleScript to tell Terminal.app to create a new window.</p> <h3 id="tmux_get_fork_TTY"><code>tmux_get_fork_TTY</code></h3> <p>Creates a split window for subprocesses when a process running under the perl debugger in Tmux forks.</p> <h2 id="create_IN_OUT($flags)"><a id="create_IN_OUT"></a><a id="create_IN_OUT-flags"></a><code>create_IN_OUT($flags)</code></h2> <p>Create a new pair of filehandles, pointing to a new TTY. If impossible, try to diagnose why.</p> <p>Flags are:</p> <ul> <li><p>1 - Don&#39;t know how to create a new TTY.</p> </li> <li><p>2 - Debugger has forked, but we can&#39;t get a new TTY.</p> </li> <li><p>4 - standard debugger startup is happening.</p> </li> </ul> <h2 id="resetterm"><code>resetterm</code></h2> <p>Handles rejiggering the prompt when we&#39;ve forked off a new debugger.</p> <p>If the new debugger happened because of a <code>system()</code> that invoked a program under the debugger, the arrow between the old pid and the new in the prompt has <i>two</i> dashes instead of one.</p> <p>We take the current list of pids and add this one to the end. If there isn&#39;t any list yet, we make one up out of the initial pid associated with the terminal and our new pid, sticking an arrow (either one-dashed or two dashed) in between them.</p> <p>If <code>CreateTTY</code> is off, or <code>resetterm</code> was called with no arguments, we don&#39;t try to create a new IN and OUT filehandle. Otherwise, we go ahead and try to do that.</p> <h2 id="readline"><code>readline</code></h2> <p>First, we handle stuff in the typeahead buffer. If there is any, we shift off the next line, print a message saying we got it, add it to the terminal history (if possible), and return it.</p> <p>If there&#39;s nothing in the typeahead buffer, check the command filehandle stack. If there are any filehandles there, read from the last one, and return the line if we got one. If not, we pop the filehandle off and close it, and try the next one up the stack.</p> <p>If we&#39;ve emptied the filehandle stack, we check to see if we&#39;ve got a socket open, and we read that and return it if we do. If we don&#39;t, we just call the core <code>readline()</code> and return its value.</p> <h1 id="OPTIONS-SUPPORT-ROUTINES"><a id="OPTIONS"></a>OPTIONS SUPPORT ROUTINES</h1> <p>These routines handle listing and setting option values.</p> <h2 id="dump_option-list-the-current-value-of-an-option-setting"><a id="dump_option"></a><a id="dump_option---list-the-current-value-of-an-option-setting"></a><code>dump_option</code> - list the current value of an option setting</h2> <p>This routine uses <code>option_val</code> to look up the value for an option. It cleans up escaped single-quotes and then displays the option and its value.</p> <h2 id="option_val-find-the-current-value-of-an-option"><a id="option_val"></a><a id="option_val---find-the-current-value-of-an-option"></a><code>option_val</code> - find the current value of an option</h2> <p>This can&#39;t just be a simple hash lookup because of the indirect way that the option values are stored. Some are retrieved by calling a subroutine, some are just variables.</p> <p>You must supply a default value to be used in case the option isn&#39;t set.</p> <h2 id="parse_options"><code>parse_options</code></h2> <p>Handles the parsing and execution of option setting/displaying commands.</p> <p>An option entered by itself is assumed to be <i>set me to 1</i> (the default value) if the option is a boolean one. If not, the user is prompted to enter a valid value or to query the current value (via <code>option? </code>).</p> <p>If <code>option=value</code> is entered, we try to extract a quoted string from the value (if it is quoted). If it&#39;s not, we just use the whole value as-is.</p> <p>We load any modules required to service this option, and then we set it: if it just gets stuck in a variable, we do that; if there&#39;s a subroutine to handle setting the option, we call that.</p> <p>Finally, if we&#39;re running in interactive mode, we display the effect of the user&#39;s command back to the terminal, skipping this if we&#39;re setting things during initialization.</p> <h1 id="RESTART-SUPPORT"><a id="RESTART1"></a>RESTART SUPPORT</h1> <p>These routines are used to store (and restore) lists of items in environment variables during a restart.</p> <h2 id="set_list">set_list</h2> <p>Set_list packages up items to be stored in a set of environment variables (VAR_n, containing the number of items, and VAR_0, VAR_1, etc., containing the values). Values outside the standard ASCII charset are stored by encoding them as hexadecimal values.</p> <h2 id="get_list">get_list</h2> <p>Reverse the set_list operation: grab VAR_n to see how many we should be getting back, and then pull VAR_0, VAR_1. etc. back out.</p> <h1 id="MISCELLANEOUS-SIGNAL-AND-I/O-MANAGEMENT"><a id="MISCELLANEOUS"></a><a id="MISCELLANEOUS-SIGNAL-AND-I-O-MANAGEMENT"></a>MISCELLANEOUS SIGNAL AND I/O MANAGEMENT</h1> <h2 id="catch()"><a id="catch"></a>catch()</h2> <p>The <code>catch()</code> subroutine is the essence of fast and low-impact. We simply set an already-existing global scalar variable to a constant value. This avoids allocating any memory possibly in the middle of something that will get all confused if we do, particularly under <i>unsafe signals</i>.</p> <h2 id="warn()"><a id="warn"></a><code>warn()</code></h2> <p><code>warn</code> emits a warning, by joining together its arguments and printing them, with couple of fillips.</p> <p>If the composited message <i>doesn&#39;t</i> end with a newline, we automatically add <code>$!</code> and a newline to the end of the message. The subroutine expects $OUT to be set to the filehandle to be used to output warnings; it makes no assumptions about what filehandles are available.</p> <h1 id="INITIALIZATION-TTY-SUPPORT"><a id="INITIALIZATION"></a>INITIALIZATION TTY SUPPORT</h1> <h2 id="reset_IN_OUT"><code>reset_IN_OUT</code></h2> <p>This routine handles restoring the debugger&#39;s input and output filehandles after we&#39;ve tried and failed to move them elsewhere. In addition, it assigns the debugger&#39;s output filehandle to $LINEINFO if it was already open there.</p> <h1 id="OPTION-SUPPORT-ROUTINES"><a id="OPTION1"></a>OPTION SUPPORT ROUTINES</h1> <p>The following routines are used to process some of the more complicated debugger options.</p> <h2 id="TTY"><code>TTY</code></h2> <p>Sets the input and output filehandles to the specified files or pipes. If the terminal supports switching, we go ahead and do it. If not, and there&#39;s already a terminal in place, we save the information to take effect on restart.</p> <p>If there&#39;s no terminal yet (for instance, during debugger initialization), we go ahead and set <code>$console</code> and <code>$tty</code> to the file indicated.</p> <h2 id="noTTY"><code>noTTY</code></h2> <p>Sets the <code>$notty</code> global, controlling whether or not the debugger tries to get a terminal to read from. If called after a terminal is already in place, we save the value to use it if we&#39;re restarted.</p> <h2 id="ReadLine"><code>ReadLine</code></h2> <p>Sets the <code>$rl</code> option variable. If 0, we use <code>Term::ReadLine::Stub</code> (essentially, no <code>readline</code> processing on this <i>terminal</i>). Otherwise, we use <code>Term::ReadLine</code>. Can&#39;t be changed after a terminal&#39;s in place; we save the value in case a restart is done so we can change it then.</p> <h2 id="RemotePort"><code>RemotePort</code></h2> <p>Sets the port that the debugger will try to connect to when starting up. If the terminal&#39;s already been set up, we can&#39;t do it, but we remember the setting in case the user does a restart.</p> <h2 id="tkRunning"><code>tkRunning</code></h2> <p>Checks with the terminal to see if <code>Tk</code> is running, and returns true or false. Returns false if the current terminal doesn&#39;t support <code>readline</code>.</p> <h2 id="NonStop"><code>NonStop</code></h2> <p>Sets nonstop mode. If a terminal&#39;s already been set up, it&#39;s too late; the debugger remembers the setting in case you restart, though.</p> <h2 id="pager"><code>pager</code></h2> <p>Set up the <code>$pager</code> variable. Adds a pipe to the front unless there&#39;s one there already.</p> <h2 id="shellBang"><code>shellBang</code></h2> <p>Sets the shell escape command, and generates a printable copy to be used in the help.</p> <h2 id="ornaments"><code>ornaments</code></h2> <p>If the terminal has its own ornaments, fetch them. Otherwise accept whatever was passed as the argument. (This means you can&#39;t override the terminal&#39;s ornaments.)</p> <h2 id="recallCommand"><code>recallCommand</code></h2> <p>Sets the recall command, and builds a printable version which will appear in the help text.</p> <h2 id="LineInfo-where-the-line-number-information-goes"><a id="LineInfo"></a><a id="LineInfo---where-the-line-number-information-goes"></a><code>LineInfo</code> - where the line number information goes</h2> <p>Called with no arguments, returns the file or pipe that line info should go to.</p> <p>Called with an argument (a file or a pipe), it opens that onto the <code>LINEINFO</code> filehandle, unbuffers the filehandle, and then returns the file or pipe again to the caller.</p> <h1 id="COMMAND-SUPPORT-ROUTINES"><a id="COMMAND2"></a>COMMAND SUPPORT ROUTINES</h1> <p>These subroutines provide functionality for various commands.</p> <h2 id="list_modules"><code>list_modules</code></h2> <p>For the <code>M</code> command: list modules loaded and their versions. Essentially just runs through the keys in %INC, picks each package&#39;s <code>$VERSION</code> variable, gets the file name, and formats the information for output.</p> <h2 id="sethelp()"><a id="sethelp"></a><code>sethelp()</code></h2> <p>Sets up the monster string used to format and print the help.</p> <h3 id="HELP-MESSAGE-FORMAT"><a id="HELP"></a>HELP MESSAGE FORMAT</h3> <p>The help message is a peculiar format unto itself; it mixes <code>pod</code> <i>ornaments</i> (<code><b></b></code> <code><i></i></code>) with tabs to come up with a format that&#39;s fairly easy to parse and portable, but which still allows the help to be a little nicer than just plain text.</p> <p>Essentially, you define the command name (usually marked up with <code><b></b></code> and <code><i></i></code>), followed by a tab, and then the descriptive text, ending in a newline. The descriptive text can also be marked up in the same way. If you need to continue the descriptive text to another line, start that line with just tabs and then enter the marked-up text.</p> <p>If you are modifying the help text, <i>be careful</i>. The help-string parser is not very sophisticated, and if you don&#39;t follow these rules it will mangle the help beyond hope until you fix the string.</p> <h2 id="print_help()"><a id="print_help"></a><code>print_help()</code></h2> <p>Most of what <code>print_help</code> does is just text formatting. It finds the <code>B</code> and <code>I</code> ornaments, cleans them off, and substitutes the proper terminal control characters to simulate them (courtesy of <code>Term::ReadLine::TermCap</code>).</p> <h2 id="fix_less"><code>fix_less</code></h2> <p>This routine does a lot of gyrations to be sure that the pager is <code>less</code>. It checks for <code>less</code> masquerading as <code>more</code> and records the result in <code>$fixed_less</code> so we don&#39;t have to go through doing the stats again.</p> <h1 id="DIE-AND-WARN-MANAGEMENT"><a id="DIE"></a>DIE AND WARN MANAGEMENT</h1> <h2 id="diesignal"><code>diesignal</code></h2> <p><code>diesignal</code> is a just-drop-dead <code>die</code> handler. It&#39;s most useful when trying to debug a debugger problem.</p> <p>It does its best to report the error that occurred, and then forces the program, debugger, and everything to die.</p> <h2 id="dbwarn"><code>dbwarn</code></h2> <p>The debugger&#39;s own default <code>$SIG{__WARN__}</code> handler. We load <code>Carp</code> to be able to get a stack trace, and output the warning message vi <code>DB::dbwarn()</code>.</p> <h2 id="dbdie"><code>dbdie</code></h2> <p>The debugger&#39;s own <code>$SIG{__DIE__}</code> handler. Handles providing a stack trace by loading <code>Carp</code> and calling <code>Carp::longmess()</code> to get it. We turn off single stepping and tracing during the call to <code>Carp::longmess</code> to avoid debugging it - we just want to use it.</p> <p>If <code>dieLevel</code> is zero, we let the program being debugged handle the exceptions. If it&#39;s 1, you get backtraces for any exception. If it&#39;s 2, the debugger takes over all exception handling, printing a backtrace and displaying the exception via its <code>dbwarn()</code> routine.</p> <h2 id="warnlevel()"><a id="warnlevel"></a><code>warnlevel()</code></h2> <p>Set the <code>$DB::warnLevel</code> variable that stores the value of the <code>warnLevel</code> option. Calling <code>warnLevel()</code> with a positive value results in the debugger taking over all warning handlers. Setting <code>warnLevel</code> to zero leaves any warning handlers set up by the program being debugged in place.</p> <h2 id="dielevel"><code>dielevel</code></h2> <p>Similar to <code>warnLevel</code>. Non-zero values for <code>dieLevel</code> result in the <code>DB::dbdie()</code> function overriding any other <code>die()</code> handler. Setting it to zero lets you use your own <code>die()</code> handler.</p> <h2 id="signalLevel"><code>signalLevel</code></h2> <p>Number three in a series: set <code>signalLevel</code> to zero to keep your own signal handler for <code>SIGSEGV</code> and/or <code>SIGBUS</code>. Otherwise, the debugger takes over and handles them with <code>DB::diesignal()</code>.</p> <h1 id="SUBROUTINE-DECODING-SUPPORT"><a id="SUBROUTINE"></a>SUBROUTINE DECODING SUPPORT</h1> <p>These subroutines are used during the <code>x</code> and <code>X</code> commands to try to produce as much information as possible about a code reference. They use <a href="/pod/Devel::Peek">Devel::Peek</a> to try to find the glob in which this code reference lives (if it does) - this allows us to actually code references which correspond to named subroutines (including those aliased via glob assignment).</p> <h2 id="CvGV_name()"><a id="CvGV_name"></a><code>CvGV_name()</code></h2> <p>Wrapper for <code>CvGV_name_or_bust</code>; tries to get the name of a reference via that routine. If this fails, return the reference again (when the reference is stringified, it&#39;ll come out as <code>SOMETHING(0x...)</code>).</p> <h2 id="CvGV_name_or_bust-coderef"><a id="CvGV_name_or_bust"></a><code>CvGV_name_or_bust</code> <i>coderef</i></h2> <p>Calls <a href="/pod/Devel::Peek">Devel::Peek</a> to try to find the glob the ref lives in; returns <code>undef</code> if <a href="/pod/Devel::Peek">Devel::Peek</a> can&#39;t be loaded, or if <code>Devel::Peek::CvGV</code> can&#39;t find a glob for this ref.</p> <p>Returns <code><i>package</i>::<i>glob name</i></code> if the code ref is found in a glob.</p> <h2 id="find_sub"><code>find_sub</code></h2> <p>A utility routine used in various places; finds the file where a subroutine was defined, and returns that filename and a line-number range.</p> <p>Tries to use <code>@sub</code> first; if it can&#39;t find it there, it tries building a reference to the subroutine and uses <code>CvGV_name_or_bust</code> to locate it, loading it into <code>@sub</code> as a side effect (XXX I think). If it can&#39;t find it this way, it brute-force searches <code>%sub</code>, checking for identical references.</p> <h2 id="methods"><code>methods</code></h2> <p>A subroutine that uses the utility function <code>methods_via</code> to find all the methods in the class corresponding to the current reference and in <code>UNIVERSAL</code>.</p> <h2 id="methods_via($class,-$prefix,-$crawl_upward)"><a id="methods_via"></a><a id="methods_via-class-prefix-crawl_upward"></a><code>methods_via($class, $prefix, $crawl_upward)</code></h2> <p><code>methods_via</code> does the work of crawling up the <code>@ISA</code> tree and reporting all the parent class methods. <code>$class</code> is the name of the next class to try; <code>$prefix</code> is the message prefix, which gets built up as we go up the <code>@ISA</code> tree to show parentage; <code>$crawl_upward</code> is 1 if we should try to go higher in the <code>@ISA</code> tree, 0 if we should stop.</p> <h2 id="setman-figure-out-which-command-to-use-to-show-documentation"><a id="setman"></a><a id="setman---figure-out-which-command-to-use-to-show-documentation"></a><code>setman</code> - figure out which command to use to show documentation</h2> <p>Just checks the contents of <code>$^O</code> and sets the <code>$doccmd</code> global accordingly.</p> <h2 id="runman-run-the-appropriate-command-to-show-documentation"><a id="runman"></a><a id="runman---run-the-appropriate-command-to-show-documentation"></a><code>runman</code> - run the appropriate command to show documentation</h2> <p>Accepts a man page name; runs the appropriate command to display it (set up during debugger initialization). Uses <code>_db_system()</code> to avoid mucking up the program&#39;s STDIN and STDOUT.</p> <h1 id="DEBUGGER-INITIALIZATION-THE-SECOND-BEGIN-BLOCK"><a id="DEBUGGER5"></a><a id="DEBUGGER-INITIALIZATION---THE-SECOND-BEGIN-BLOCK"></a>DEBUGGER INITIALIZATION - THE SECOND BEGIN BLOCK</h1> <p>Because of the way the debugger interface to the Perl core is designed, any debugger package globals that <code>DB::sub()</code> requires have to be defined before any subroutines can be called. These are defined in the second <code>BEGIN</code> block.</p> <p>This block sets things up so that (basically) the world is sane before the debugger starts executing. We set up various variables that the debugger has to have set up before the Perl core starts running:</p> <ul> <li><p>The debugger&#39;s own filehandles (copies of STD and STDOUT for now).</p> </li> <li><p>Characters for shell escapes, the recall command, and the history command.</p> </li> <li><p>The maximum recursion depth.</p> </li> <li><p>The size of a <code>w</code> command&#39;s window.</p> </li> <li><p>The before-this-line context to be printed in a <code>v</code> (view a window around this line) command.</p> </li> <li><p>The fact that we&#39;re not in a sub at all right now.</p> </li> <li><p>The default SIGINT handler for the debugger.</p> </li> <li><p>The appropriate value of the flag in <code>$^D</code> that says the debugger is running</p> </li> <li><p>The current debugger recursion level</p> </li> <li><p>The list of postponed items and the <code>$single</code> stack (XXX define this)</p> </li> <li><p>That we want no return values and no subroutine entry/exit trace.</p> </li> </ul> <h1 id="READLINE-SUPPORT-COMPLETION-FUNCTION"><a id="READLINE"></a><a id="READLINE-SUPPORT---COMPLETION-FUNCTION"></a>READLINE SUPPORT - COMPLETION FUNCTION</h1> <h2 id="db_complete">db_complete</h2> <p><code>readline</code> support - adds command completion to basic <code>readline</code>.</p> <p>Returns a list of possible completions to <code>readline</code> when invoked. <code>readline</code> will print the longest common substring following the text already entered.</p> <p>If there is only a single possible completion, <code>readline</code> will use it in full.</p> <p>This code uses <code>map</code> and <code>grep</code> heavily to create lists of possible completion. Think LISP in this section.</p> <h3 id="b-postpone|compile"><a id="b"></a><a id="b-postpone-compile"></a><code>b postpone|compile</code></h3> <ul> <li><p>Find all the subroutines that might match in this package</p> </li> <li><p>Add <code>postpone</code>, <code>load</code>, and <code>compile</code> as possibles (we may be completing the keyword itself)</p> </li> <li><p>Include all the rest of the subs that are known</p> </li> <li><p><code>grep</code> out the ones that match the text we have so far</p> </li> <li><p>Return this as the list of possible completions</p> </li> </ul> <h3 id="b-load"><a id="b1"></a><code>b load</code></h3> <p>Get all the possible files from <code>@INC</code> as it currently stands and select the ones that match the text so far.</p> <h3 id="V-(list-variable)-and-m-(list-modules)"><a id="V1"></a><a id="V-list-variable-and-m-list-modules"></a><code>V</code> (list variable) and <code>m</code> (list modules)</h3> <p>There are two entry points for these commands:</p> <h4 id="Unqualified-package-names"><a id="Unqualified"></a>Unqualified package names</h4> <p>Get the top-level packages and grab everything that matches the text so far. For each match, recursively complete the partial packages to get all possible matching packages. Return this sorted list.</p> <h4 id="Qualified-package-names"><a id="Qualified"></a>Qualified package names</h4> <p>Take a partially-qualified package and find all subpackages for it by getting all the subpackages for the package so far, matching all the subpackages against the text, and discarding all of them which start with &#39;main::&#39;. Return this list.</p> <h3 id="f-switch-files1"><a id="f1"></a><a id="f---switch-files1"></a><code>f</code> - switch files</h3> <p>Here, we want to get a fully-qualified filename for the <code>f</code> command. Possibilities are:</p> <dl> <dt id="1.-The-original-source-file-itself"><a id="11"></a><a id="The-original-source-file-itself"></a>1. The original source file itself</dt> <dd> </dd> <dt id="2.-A-file-from-@INC"><a id="21"></a><a id="A-file-from-INC"></a>2. A file from <code>@INC</code></dt> <dd> </dd> <dt id="3.-An-eval-(the-debugger-gets-a-(eval-N)-fake-file-for-each-eval)."><a id="31"></a><a id="An-eval-the-debugger-gets-a-eval-N-fake-file-for-each-eval"></a>3. An <code>eval</code> (the debugger gets a <code>(eval N)</code> fake file for each <code>eval</code>).</dt> <dd> </dd> </dl> <p>Under the debugger, source files are represented as <code>_&lt;/fullpath/to/file</code> (<code>eval</code>s are <code>_&lt;(eval NNN)</code>) keys in <code>%main::</code>. We pull all of these out of <code>%main::</code>, add the initial source file, and extract the ones that match the completion text so far.</p> <h3 id="Subroutine-name-completion"><a id="Subroutine"></a>Subroutine name completion</h3> <p>We look through all of the defined subs (the keys of <code>%sub</code>) and return both all the possible matches to the subroutine name plus all the matches qualified to the current package.</p> <h3 id="Scalar,-array,-and-hash-completion:-partially-qualified-package"><a id="Scalar"></a><a id="Scalar-array-and-hash-completion:-partially-qualified-package"></a>Scalar, array, and hash completion: partially qualified package</h3> <p>Much like the above, except we have to do a little more cleanup:</p> <ul> <li><p>Determine the package that the symbol is in. Put it in <code>::</code> (effectively <code>main::</code>) if no package is specified.</p> </li> <li><p>Figure out the prefix vs. what needs completing.</p> </li> <li><p>Look through all the symbols in the package. <code>grep</code> out all the possible hashes/arrays/scalars, and then <code>grep</code> the possible matches out of those. <code>map</code> the prefix onto all the possibilities.</p> </li> <li><p>If there&#39;s only one hit, and it&#39;s a package qualifier, and it&#39;s not equal to the initial text, re-complete it using the symbol we actually found.</p> </li> </ul> <h3 id="Symbol-completion:-current-package-or-package-main"><a id="Symbol"></a>Symbol completion: current package or package <code>main</code></h3> <ul> <li><p>If it&#39;s <code>main</code>, delete main to just get <code>::</code> leading.</p> </li> <li><p>We set the prefix to the item&#39;s sigil, and trim off the sigil to get the text to be completed.</p> </li> <li><p>We look for the lexical scope above DB::DB and auto-complete lexical variables if PadWalker could be loaded.</p> </li> <li><p>If the package is <code>::</code> (<code>main</code>), create an empty list; if it&#39;s something else, create a list of all the packages known. Append whichever list to a list of all the possible symbols in the current package. <code>grep</code> out the matches to the text entered so far, then <code>map</code> the prefix back onto the symbols.</p> </li> <li><p>If there&#39;s only one hit, it&#39;s a package qualifier, and it&#39;s not equal to the initial text, recomplete using this symbol.</p> </li> </ul> <h3 id="Options">Options</h3> <p>We use <code>option_val()</code> to look up the current value of the option. If there&#39;s only a single value, we complete the command in such a way that it is a complete command for setting the option in question. If there are multiple possible values, we generate a command consisting of the option plus a trailing question mark, which, if executed, will list the current value of the option.</p> <h3 id="Filename-completion"><a id="Filename"></a>Filename completion</h3> <p>For entering filenames. We simply call <code>readline</code>&#39;s <code>filename_list()</code> method with the completion text to get the possible completions.</p> <h1 id="MISCELLANEOUS-SUPPORT-FUNCTIONS"><a id="MISCELLANEOUS1"></a>MISCELLANEOUS SUPPORT FUNCTIONS</h1> <p>Functions that possibly ought to be somewhere else.</p> <h2 id="end_report">end_report</h2> <p>Say we&#39;re done.</p> <h2 id="clean_ENV">clean_ENV</h2> <p>If we have $ini_pids, save it in the environment; else remove it from the environment. Used by the <code>R</code> (restart) command.</p> <dl> <dt id="rerun">rerun</dt> <dd> <p>Rerun the current session to:</p> <pre><code>rerun current position rerun 4 command number 4 rerun -4 current command minus 4 (go back 4 steps)</code></pre> <p>Whether this always makes sense, in the current context is unknowable, and is in part left as a useful exercise for the reader. This sub returns the appropriate arguments to rerun the current session.</p> </dd> <dt id="restart">restart</dt> <dd> <p>Restarting the debugger is a complex operation that occurs in several phases. First, we try to reconstruct the command line that was used to invoke Perl and the debugger.</p> <p>After the command line has been reconstructed, the next step is to save the debugger&#39;s status in environment variables. The <code>DB::set_list</code> routine is used to save aggregate variables (both hashes and arrays); scalars are just popped into environment variables directly.</p> <p>The most complex part of this is the saving of all of the breakpoints. They can live in an awful lot of places, and we have to go through all of them, find the breakpoints, and then save them in the appropriate environment variable via <code>DB::set_list</code>.</p> <p>After all the debugger status has been saved, we take the command we built up and then return it, so we can <code>exec()</code> it. The debugger will spot the <code>PERLDB_RESTART</code> environment variable and realize it needs to reload its state from the environment.</p> </dd> </dl> <h1 id="END-PROCESSING-THE-END-BLOCK"><a id="END1"></a><a id="END-PROCESSING---THE-END-BLOCK"></a>END PROCESSING - THE <code>END</code> BLOCK</h1> <p>Come here at the very end of processing. We want to go into a loop where we allow the user to enter commands and interact with the debugger, but we don&#39;t want anything else to execute.</p> <p>First we set the <code>$finished</code> variable, so that some commands that shouldn&#39;t be run after the end of program quit working.</p> <p>We then figure out whether we&#39;re truly done (as in the user entered a <code>q</code> command, or we finished execution while running nonstop). If we aren&#39;t, we set <code>$single</code> to 1 (causing the debugger to get control again).</p> <p>We then call <code>DB::fake::at_exit()</code>, which returns the <code>Use &#39;q&#39; to quit ...</code> message and returns control to the debugger. Repeat.</p> <p>When the user finally enters a <code>q</code> command, <code>$fall_off_end</code> is set to 1 and the <code>END</code> block simply exits with <code>$single</code> set to 0 (don&#39;t break, run to completion.).</p> <h1 id="PRE-5.8-COMMANDS"><a id="PRE1"></a>PRE-5.8 COMMANDS</h1> <p>Some of the commands changed function quite a bit in the 5.8 command realignment, so much so that the old code had to be replaced completely. Because we wanted to retain the option of being able to go back to the former command set, we moved the old code off to this section.</p> <p>There&#39;s an awful lot of duplicated code here. We&#39;ve duplicated the comments to keep things clear.</p> <h2 id="Null-command"><a id="Null"></a>Null command</h2> <p>Does nothing. Used to <i>turn off</i> commands.</p> <h2 id="Old-a-command"><a id="Old"></a>Old <code>a</code> command</h2> <p>This version added actions if you supplied them, and deleted them if you didn&#39;t.</p> <h2 id="Old-b-command"><a id="Old1"></a>Old <code>b</code> command</h2> <p>Add breakpoints.</p> <h2 id="Old-D-command"><a id="Old2"></a>Old <code>D</code> command</h2> <p>Delete all breakpoints unconditionally.</p> <h2 id="Old-h-command"><a id="Old3"></a>Old <code>h</code> command</h2> <p>Print help. Defaults to printing the long-form help; the 5.8 version prints the summary by default.</p> <h2 id="Old-W-command"><a id="Old4"></a>Old <code>W</code> command</h2> <p><code>W &lt;expr&gt;</code> adds a watch expression, <code>W</code> deletes them all.</p> <h1 id="PRE-AND-POST-PROMPT-COMMANDS-AND-ACTIONS"><a id="PRE2"></a>PRE-AND-POST-PROMPT COMMANDS AND ACTIONS</h1> <p>The debugger used to have a bunch of nearly-identical code to handle the pre-and-post-prompt action commands. <code>cmd_pre590_prepost</code> and <code>cmd_prepost</code> unify all this into one set of code to handle the appropriate actions.</p> <h2 id="cmd_pre590_prepost"><code>cmd_pre590_prepost</code></h2> <p>A small wrapper around <code>cmd_prepost</code>; it makes sure that the default doesn&#39;t do something destructive. In pre 5.8 debuggers, the default action was to delete all the actions.</p> <h2 id="cmd_prepost"><code>cmd_prepost</code></h2> <p>Actually does all the handling for <code>&lt;</code>, <code>&gt;</code>, <code>{{</code>, <code>{</code>, etc. Since the lists of actions are all held in arrays that are pointed to by references anyway, all we have to do is pick the right array reference and then use generic code to all, delete, or list actions.</p> <h1 id="DB::fake"><a id="DB2"></a><code>DB::fake</code></h1> <p>Contains the <code>at_exit</code> routine that the debugger uses to issue the <code>Debugged program terminated ...</code> message after the program completes. See the <a href="#END-PROCESSING-THE-END-BLOCK"><code>END</code></a> block documentation for more details.</p></div> <div id="metacpan_install-instructions-dialog" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> <h4 class="modal-title">Module Install Instructions</h4> </div> <div class="modal-body"> <p>To install less, copy and paste the appropriate command in to your terminal.</p> <p><a href="/dist/App-cpanminus/view/bin/cpanm">cpanm</a></p> <pre><code>cpanm less</code></pre> <p><a href="/pod/CPAN">CPAN shell</a></p> <pre><code>perl -MCPAN -e shell install less</code></pre> <p>For more information on module installation, please visit <a href="https://www.cpan.org/modules/INSTALL.html">the detailed CPAN module installation guide</a>.</p> </div> <div class="modal-footer"> <a href="#" data-dismiss="modal" class="btn">Close</a> </div> </div> </div> </div> </main> <div class="content-pagination"> </div> </div> <footer class="footer"> <div class="footer-container"> <div class="footer-social"> <div class="footer-link footer-logo"> <a href="/"> <img src="/static/images/metacpan-logo.svg" alt="MetaCPAN" /> </a> </div> <a class="footer-social-link" href="https://github.com/metacpan"> <i class="fab fa-github-square"></i> </a> <a class="footer-social-link" href="https://fosstodon.org/@metacpan"> <i class="fab fa-mastodon"></i> </a> </div> <div class="footer-links"> <div class="footer-link"> <a href="/about">About</a> </div> <div class="footer-link"> <a href="/about/sponsors">Sponsor</a> </div> <div class="footer-link"> <a href="https://grep.metacpan.org">grep::cpan</a> </div> <div class="footer-link"> <a href="/recent">Recent</a> </div> <div class="footer-link"> <a href="/about/faq">FAQ</a> </div> <div class="footer-link"> <a href="/tools">Tools</a> </div> <div class="footer-link"> <a href="https://fastapi.metacpan.org/">API</a> </div> <div class="footer-link"> <a href="https://www.perl.org/">Perl.org</a> </div> </div> <div class="footer-sponsors"> <a class="footer-sponsor-link" target="_blank" href="https://www.bytemark.co.uk/" rel="noopener"> <img class="footer-sponsor-bytemark" src="/static/images/sponsors/bytemark_logo.svg" alt="Bytemark logo"> </a> <a class="footer-sponsor-link" target="_blank" href="https://www.liquidweb.com/" rel="noopener"> <img class="footer-sponsor-liquidweb" src="/static/images/sponsors/liquidweb_logo.png" alt="liquidweb logo"> </a> <a class="footer-sponsor-link" target="_blank" href="https://deriv.com/careers/" rel="noopener"> <img class="footer-sponsor-deriv" src="/static/images/sponsors/deriv.svg" alt="Deriv logo"> </a> <a class="footer-sponsor-link" target="_blank" href="https://geocode.xyz" rel="noopener"> <img class="footer-sponsor-geocode" src="/static/images/sponsors/geocodelogo.svg" alt="Geocode logo"> </a> <a class="footer-sponsor-link" target="_blank" href="https://www.fastly.com/" rel="noopener"> <img class="footer-sponsor-fastly" src="/static/images/sponsors/fastly_logo.svg" alt="Fastly logo"> </a> <a class="footer-sponsor-link" target="_blank" href="https://opencagedata.com" rel="noopener"> <img class="footer-sponsor-opencage" src="/static/images/sponsors/open-cage.svg" alt="OpenCage logo"> </a> <!-- Added 2024-07-22 --> <a class="footer-sponsor-link" target="_blank" href="https://www.elastic.co/" rel="noopener"> <img class="footer-sponsor-elastic" src="/static/images/sponsors/elastic.svg" alt="Elastic logo"> </a> <!-- Added 2024-07-22 --> <a class="footer-sponsor-link" target="_blank" href="https://route4me.com/" rel="noopener"> <img class="footer-sponsor-route4me" src="/static/images/sponsors/route4me.png" alt="Route4Me logo"> </a> </div> </div> </footer> <div class="modal fade" tabindex="-1" role="dialog" id="metacpan_keyboard-shortcuts"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">&times;</button> <h4 class="modal-title">Keyboard Shortcuts</h4> </div> <div class="modal-body row"> <div class="col-md-6"> <table class="table keyboard-shortcuts"> <thead> <tr> <th></th> <th>Global</th> </tr> </thead> <tbody> <tr> <td class="keys"> <kbd>s</kbd> </td> <td>Focus search bar</td> </tr> <tr> <td class="keys"> <kbd>?</kbd> </td> <td>Bring up this help dialog</td> </tr> </tbody> </table> <table class="table keyboard-shortcuts"> <thead> <tr> <th></th> <th>GitHub</th> </tr> </thead> <tbody> <tr> <td class="keys"> <kbd>g</kbd> <kbd>p</kbd> </td> <td>Go to pull requests</td> </tr> <tr> <td class="keys"> <kbd>g</kbd> <kbd>i</kbd> </td> <td>go to github issues (only if github is preferred repository)</td> </tr> </tbody> </table> </div> <div class="col-md-6"> <table class="table keyboard-shortcuts"> <thead> <tr> <th></th> <th>POD</th> </tr> </thead> <tbody> <tr> <td class="keys"> <kbd>g</kbd> <kbd>a</kbd> </td> <td>Go to author</td> </tr> <tr> <td class="keys"> <kbd>g</kbd> <kbd>c</kbd> </td> <td>Go to changes</td> </tr> <tr> <td class="keys"> <kbd>g</kbd> <kbd>i</kbd> </td> <td>Go to issues</td> </tr> <tr> <td class="keys"> <kbd>g</kbd> <kbd>d</kbd> </td> <td>Go to dist</td> </tr> <tr> <td class="keys"> <kbd>g</kbd> <kbd>r</kbd> </td> <td>Go to repository/SCM</td> </tr> <tr> <td class="keys"> <kbd>g</kbd> <kbd>s</kbd> </td> <td>Go to source</td> </tr> <tr> <td class="keys"> <kbd>g</kbd> <kbd>b</kbd> </td> <td>Go to file browse</td> </tr> </tbody> </table> </div> <div class="col-md-12"> <table class="table keyboard-shortcuts"> <thead> <tr> <th></th> <th>Search terms</th> </tr> </thead> <tbody> <tr> <td><em>module:</em> (e.g. <a href="/search?q=module%3APlugin">module:Plugin</a>)</td> </tr> <tr> <td><em>distribution:</em> (e.g. <a href="/search?q=distribution%3ADancer+auth">distribution:Dancer auth</a>)</td> </tr> <tr> <td><em>author:</em> (e.g. <a href="/search?q=author%3ASONGMU+Redis">author:SONGMU Redis</a>)</td> </tr> <tr> <td><em>version:</em> (e.g. <a href="/search?q=version%3A1.00">version:1.00</a>)</td> </tr> </tbody> </table> </div> </div> <div class="modal-footer"></div> </div> </div> </div> </body> </html>

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