# phpman > man > perlbug(1)

[PERLBUG(1)](https://www.chedong.com/phpMan.php/man/PERLBUG/1/markdown)                        Perl Programmers Reference Guide                        [PERLBUG(1)](https://www.chedong.com/phpMan.php/man/PERLBUG/1/markdown)



## NAME
       perlbug - how to submit bug reports on Perl

## SYNOPSIS
### perlbug

       **perlbug** [ **-v** ] [ **-a** _address_ ] [ **-s** _subject_ ] [ **-b** _body_ | **-f** _inputfile_ ] [ **-F** _outputfile_ ]
       [ **-r** _returnaddress_ ] [ **-e** _editor_ ] [ **-c** _adminaddress_ | **-C** ] [ **-S** ] [ **-t** ]  [ **-d** ]  [ **-h** ]
       [ **-T** ]

       **perlbug** [ **-v** ] [ **-r** _returnaddress_ ]
        [ **-ok** | **-okay** | **-nok** | **-nokay** ]

### perlthanks

## DESCRIPTION
       This program is designed to help you generate bug reports (and thank-you notes) about perl5
       and the modules which ship with it.

       In most cases, you can just run it interactively from a command line without any special
       arguments and follow the prompts.

       If you have found a bug with a non-standard port (one that was not part of the _standard_
       _distribution_), a binary distribution, or a non-core module (such as Tk, DBI, etc), then
       please see the documentation that came with that distribution to determine the correct place
       to report bugs.

       Bug reports should be submitted to the GitHub issue tracker at
       <<https://github.com/Perl/perl5/issues>>. The **<perlbug@perl.org>** address no longer automatically
       opens tickets. You can use this tool to compose your report and save it to a file which you
       can then submit to the issue tracker.

       In extreme cases, **perlbug** may not work well enough on your system to guide you through
       composing a bug report. In those cases, you may be able to use **perlbug** **-d** or **perl** **-V** to get
       system configuration information to include in your issue report.

       When reporting a bug, please run through this checklist:

       What version of Perl you are running?
           Type "perl -v" at the command line to find out.

       Are you running the latest released version of perl?
           Look at <<http://www.perl.org/>> to find out.  If you are not using the latest released
           version, please try to replicate your bug on the latest stable release.

           Note that reports about bugs in old versions of Perl, especially those which indicate you
           haven't also tested the current stable release of Perl, are likely to receive less
           attention from the volunteers who build and maintain Perl than reports about bugs in the
           current release.

       Are you sure what you have is a bug?
           A significant number of the bug reports we get turn out to be documented features in
           Perl.  Make sure the issue you've run into isn't intentional by glancing through the
           documentation that comes with the Perl distribution.

           Given the sheer volume of Perl documentation, this isn't a trivial undertaking, but if
           you can point to documentation that suggests the behaviour you're seeing is _wrong_, your
           issue is likely to receive more attention. You may want to start with **perldoc** perltrap
           for pointers to common traps that new (and experienced) Perl programmers run into.

           If you're unsure of the meaning of an error message you've run across, **perldoc** perldiag
           for an explanation.  If the message isn't in perldiag, it probably isn't generated by
           Perl.  You may have luck consulting your operating system documentation instead.

           If you are on a non-UNIX platform **perldoc** perlport, as some features may be unimplemented
           or work differently.

           You may be able to figure out what's going wrong using the Perl debugger.  For
           information about how to use the debugger **perldoc** perldebug.

       Do you have a proper test case?
           The easier it is to reproduce your bug, the more likely it will be fixed -- if nobody can
           duplicate your problem, it probably won't be addressed.

           A good test case has most of these attributes: short, simple code; few dependencies on
           external commands, modules, or libraries; no platform-dependent code (unless it's a
           platform-specific bug); clear, simple documentation.

           A good test case is almost always a good candidate to be included in Perl's test suite.
           If you have the time, consider writing your test case so that it can be easily included
           into the standard test suite.

       Have you included all relevant information?
           Be sure to include the **exact** error messages, if any.  "Perl gave an error" is not an
           exact error message.

           If you get a core dump (or equivalent), you may use a debugger (**dbx**, **gdb**, etc) to produce
           a stack trace to include in the bug report.

           NOTE: unless your Perl has been compiled with debug info (often **-g**), the stack trace is
           likely to be somewhat hard to use because it will most probably contain only the function
           names and not their arguments.  If possible, recompile your Perl with debug info and
           reproduce the crash and the stack trace.

       Can you describe the bug in plain English?
           The easier it is to understand a reproducible bug, the more likely it will be fixed.  Any
           insight you can provide into the problem will help a great deal.  In other words, try to
           analyze the problem (to the extent you can) and report your discoveries.

       Can you fix the bug yourself?
           If so, that's great news; bug reports with patches are likely to receive significantly
           more attention and interest than those without patches.  Please submit your patch via the
           GitHub Pull Request workflow as described in **perldoc** perlhack.  You may also send patches
           to **<perl5-porters@perl.org>**.  When sending a patch, create it using "git format-patch" if
           possible, though a unified diff created with "diff -pu" will do nearly as well.

           Your patch may be returned with requests for changes, or requests for more detailed
           explanations about your fix.

           Here are a few hints for creating high-quality patches:

           Make sure the patch is not reversed (the first argument to diff is typically the original
           file, the second argument your changed file).  Make sure you test your patch by applying
           it with "git am" or the "patch" program before you send it on its way.  Try to follow the
           same style as the code you are trying to patch.  Make sure your patch really does work
           ("make test", if the thing you're patching is covered by Perl's test suite).

       Can you use "perlbug" to submit a thank-you note?
           Yes, you can do this by either using the "-T" option, or by invoking the program as
           "perlthanks". Thank-you notes are good. It makes people smile.

       Please make your issue title informative.  "a bug" is not informative.  Neither is "perl
       crashes" nor is "HELP!!!".  These don't help.  A compact description of what's wrong is fine.

       Having done your bit, please be prepared to wait, to be told the bug is in your code, or
       possibly to get no reply at all.  The volunteers who maintain Perl are busy folks, so if your
       problem is an obvious bug in your own code, is difficult to understand or is a duplicate of
       an existing report, you may not receive a personal reply.

       If it is important to you that your bug be fixed, do monitor the issue tracker (you will be
       subscribed to notifications for issues you submit or comment on) and the commit logs to
       development versions of Perl, and encourage the maintainers with kind words or offers of
       frosty beverages.  (Please do be kind to the maintainers.  Harassing or flaming them is
       likely to have the opposite effect of the one you want.)

       Feel free to update the ticket about your bug on <<https://github.com/Perl/perl5/issues>> if a
       new version of Perl is released and your bug is still present.

## OPTIONS
### -a

### -b -f
               will get a chance to edit the report.

### -C

### -c
               address of the local perl administrator (recorded when perl was built).

### -d
               configuration data, without saving or mailing anything.  You can use this with **-v** to
               get more complete data.

### -e

### -f

### -F

### -h

### -ok -S -C
               supplies values for **-s** and **-b**. Only prompts for a return address if it cannot guess
               it (for use with **make**). Honors return address specified with **-r**.  You can use this
               with **-v** to get more complete data.   Only makes a report if this system is less than
               60 days old.

### -okay -ok

### -nok -C
               for **-s**, then requires you to edit the report and say what went wrong.  Alternatively,
               a prepared report may be supplied using **-f**.  Only prompts for a return address if it
               cannot guess it (for use with **make**). Honors return address specified with **-r**.  You
               can use this with **-v** to get more complete data.  Only makes a report if this system
               is less than 60 days old.

### -nokay -nok

### -p
               the report.  Multiple files must be separated with commas.

### -r
               use this option.

### -S

### -s
               the command line.

### -t
               purposes.

### -T

### -v

## AUTHORS
       Kenneth Albanowski (<<kjahds@kjahds.com>>), subsequently _doc_tored by Gurusamy Sarathy
       (<<gsar@activestate.com>>), Tom Christiansen (<<tchrist@perl.com>>), Nathan Torkington
       (<<gnat@frii.com>>), Charles F. Randall (<<cfr@pobox.com>>), Mike Guy (<<mjtg@cam.ac.uk>>), Dominic
       Dunlop (<<domo@computer.org>>), Hugo van der Sanden (<<hv@crypt.org>>), Jarkko Hietaniemi
       (<<jhi@iki.fi>>), Chris Nandor (<<pudge@pobox.com>>), Jon Orwant (<<orwant@media.mit.edu>>, Richard
       Foley (<<richard.foley@rfi.net>>), Jesse Vincent (<<jesse@bestpractical.com>>), and Craig A.
       Berry (<<craigberry@mac.com>>).

## SEE ALSO
       [**perl**(1)](https://www.chedong.com/phpMan.php/man/perl/1/markdown), [**perldebug**(1)](https://www.chedong.com/phpMan.php/man/perldebug/1/markdown), [**perldiag**(1)](https://www.chedong.com/phpMan.php/man/perldiag/1/markdown), [**perlport**(1)](https://www.chedong.com/phpMan.php/man/perlport/1/markdown), [**perltrap**(1)](https://www.chedong.com/phpMan.php/man/perltrap/1/markdown), [**diff**(1)](https://www.chedong.com/phpMan.php/man/diff/1/markdown), [**patch**(1)](https://www.chedong.com/phpMan.php/man/patch/1/markdown), [**dbx**(1)](https://www.chedong.com/phpMan.php/man/dbx/1/markdown),
       [**gdb**(1)](https://www.chedong.com/phpMan.php/man/gdb/1/markdown)

## BUGS
       None known (guess what must have been used to report them?)



perl v5.34.0                                 2025-07-25                                   [PERLBUG(1)](https://www.chedong.com/phpMan.php/man/PERLBUG/1/markdown)
