Main code has high complexity score (381) at line 1, column 1. Consider refactoring. (Severity: 3)
Literal line breaks in a string at line 1028, column 1. See pages 60,61 of PBP. (Severity: 3)
Literal line breaks in a string at line 1040, column 1. See pages 60,61 of PBP. (Severity: 3)
Regular expression without "/x" flag at line 1212, column 33. See page 236 of PBP. (Severity: 3)
Regular expression without "/x" flag at line 1221, column 33. See page 236 of PBP. (Severity: 3)
Regular expression without "/x" flag at line 1238, column 18. See page 236 of PBP. (Severity: 3)
Literal line breaks in a string at line 1312, column 1. See pages 60,61 of PBP. (Severity: 3)
Literal line breaks in a string at line 1345, column 1. See pages 60,61 of PBP. (Severity: 3)
Code structure is deeply nested at line 1711, column 41. Consider refactoring. (Severity: 3)
Literal line breaks in a string at line 1859, column 1. See pages 60,61 of PBP. (Severity: 3)
Subroutine "errors_incr" does not end with "return" at line 1881, column 1. See page 197 of PBP. (Severity: 4)
Subroutine "tests_live_result" does not end with "return" at line 1906, column 1. See page 197 of PBP. (Severity: 4)
Reused variable name in lexical scope: $nb_errors at line 1907, column 2. Invent unique variable names. (Severity: 3)
Subroutine "foldersizesatend" does not end with "return" at line 1915, column 1. See page 197 of PBP. (Severity: 4)
Too many arguments at line 1941, column 1. See page 182 of PBP. (Severity: 3)
Too many arguments at line 1959, column 1. See page 182 of PBP. (Severity: 3)
Too many arguments at line 1969, column 1. See page 182 of PBP. (Severity: 3)
Too many arguments at line 2216, column 1. See page 182 of PBP. (Severity: 3)
Too many arguments at line 2277, column 1. See page 182 of PBP. (Severity: 3)
Subroutine "authenticate_imap" with high complexity score (21) at line 2338, column 1. Consider refactoring. (Severity: 3)
Too many arguments at line 2338, column 1. See page 182 of PBP. (Severity: 3)
Too many arguments at line 2442, column 1. See page 182 of PBP. (Severity: 3)
Regular expression without "/x" flag at line 2515, column 51. See page 236 of PBP. (Severity: 3)
Backtick operator used at line 2523, column 12. Use IPC::Open3 instead. (Severity: 3)
Subroutine "is_valid_directory" does not end with "return" at line 2653, column 1. See page 197 of PBP. (Severity: 4)
Close filehandles as soon as possible after opening them at line 2673, column 2. See page 209 of PBP. (Severity: 4)
Subroutine "remove_tmp_files" does not end with "return" at line 2684, column 1. See page 197 of PBP. (Severity: 4)
"die" used instead of "croak" at line 2698, column 2. See page 283 of PBP. (Severity: 3)
Always unpack @_ first at line 2799, column 1. See page 178 of PBP. (Severity: 4)
Regular expression without "/x" flag at line 2806, column 15. See page 236 of PBP. (Severity: 3)
Regular expression without "/x" flag at line 2807, column 15. See page 236 of PBP. (Severity: 3)
Regular expression without "/x" flag at line 2808, column 15. See page 236 of PBP. (Severity: 3)
Regular expression without "/x" flag at line 2834, column 31. See page 236 of PBP. (Severity: 3)
Reused variable name in lexical scope: $imap2 at line 2894, column 9. Invent unique variable names. (Severity: 3)
Regular expression without "/x" flag at line 2913, column 25. See page 236 of PBP. (Severity: 3)
Regular expression without "/x" flag at line 2916, column 20. See page 236 of PBP. (Severity: 3)
Mixed high and low-precedence booleans at line 2917, column 13. See page 70 of PBP. (Severity: 4)
Expression form of "eval" at line 3356, column 13. See page 161 of PBP. (Severity: 5)
Expression form of "eval" at line 3581, column 13. See page 161 of PBP. (Severity: 5)
Subroutine "select_msgs" does not end with "return" at line 3722, column 1. See page 197 of PBP. (Severity: 4)
Subroutine "tests_msgs_from_maxmin" does not end with "return" at line 3861, column 1. See page 197 of PBP. (Severity: 4)
Subroutine "copy_message" with high complexity score (25) at line 3938, column 1. Consider refactoring. (Severity: 3)
Too many arguments at line 3938, column 1. See page 182 of PBP. (Severity: 3)
Too many arguments at line 4016, column 1. See page 182 of PBP. (Severity: 3)
Too many arguments at line 4050, column 1. See page 182 of PBP. (Severity: 3)
Subroutine "tests_subject" does not end with "return" at line 4177, column 1. See page 197 of PBP. (Severity: 4)
Too many arguments at line 4240, column 1. See page 182 of PBP. (Severity: 3)
Subroutine "sleep_if_needed" does not end with "return" at line 4299, column 1. See page 197 of PBP. (Severity: 4)
Reused variable name in lexical scope: $total_bytes_transferred at line 4300, column 2. Invent unique variable names. (Severity: 3)
Reused variable name in lexical scope: $nb_msg_transferred at line 4300, column 2. Invent unique variable names. (Severity: 3)
Reused variable name in lexical scope: $nb_msg_transferred at line 4312, column 9. Invent unique variable names. (Severity: 3)
Reused variable name in lexical scope: $maxmessagespersecond at line 4312, column 9. Invent unique variable names. (Severity: 3)
Reused variable name in lexical scope: $total_bytes_transferred at line 4333, column 9. Invent unique variable names. (Severity: 3)
Reused variable name in lexical scope: $maxbytespersecond at line 4333, column 9. Invent unique variable names. (Severity: 3)
Hard tabs used at line 4918, column 10. See page 20 of PBP. (Severity: 3)
Expression form of "eval" at line 5522, column 13. See page 161 of PBP. (Severity: 5)
Regular expression without "/x" flag at line 5757, column 22. See page 236 of PBP. (Severity: 3)
Expression form of "eval" at line 5762, column 13. See page 161 of PBP. (Severity: 5)
Too many arguments at line 5926, column 1. See page 182 of PBP. (Severity: 3)
Always unpack @_ first at line 6088, column 1. See page 178 of PBP. (Severity: 4)
Backtick operator used at line 6095, column 4. Use IPC::Open3 instead. (Severity: 3)
Subroutine "tests_pipemess" does not end with "return" at line 6112, column 1. See page 197 of PBP. (Severity: 4)
Backtick operator used at line 6301, column 12. Use IPC::Open3 instead. (Severity: 3)
Backtick operator used at line 6321, column 11. Use IPC::Open3 instead. (Severity: 3)
Split long regexps into smaller qr// chunks at line 6459, column 12. See page 261 of PBP. (Severity: 3)
Split long regexps into smaller qr// chunks at line 6485, column 12. See page 261 of PBP. (Severity: 3)
Split long regexps into smaller qr// chunks at line 6514, column 12. See page 261 of PBP. (Severity: 3)
Split long regexps into smaller qr// chunks at line 6526, column 12. See page 261 of PBP. (Severity: 3)
Expression form of "eval" at line 6632, column 43. See page 161 of PBP. (Severity: 5)
Expression form of "eval" at line 6636, column 45. See page 161 of PBP. (Severity: 5)
Split long regexps into smaller qr// chunks at line 6841, column 20. See page 261 of PBP. (Severity: 3)
"$i" is declared but not used at line 6900, column 9. Unused variables clutter code and make it harder to read. (Severity: 3)
Magic variable "$ENV" should be assigned as "local" at line 6947, column 12. See pages 81,82 of PBP. (Severity: 4)
Magic variable "$ENV" should be assigned as "local" at line 6955, column 12. See pages 81,82 of PBP. (Severity: 4)
Test without a label at line 6962, column 2. Add a label argument to all Test::More functions. (Severity: 3)
Test without a label at line 6963, column 2. Add a label argument to all Test::More functions. (Severity: 3)
Reused variable name in lexical scope: $logfile at line 6968, column 2. Invent unique variable names. (Severity: 3)
Subroutine "teelaunch" does not end with "return" at line 6975, column 1. See page 197 of PBP. (Severity: 4)
Reused variable name in lexical scope: $logfile at line 6976, column 2. Invent unique variable names. (Severity: 3)
Close filehandles as soon as possible after opening them at line 6979, column 2. See page 209 of PBP. (Severity: 4)
"die" used instead of "croak" at line 6980, column 7. See page 283 of PBP. (Severity: 3)
Magic variable "*STDERR" should be assigned as "local" at line 6982, column 10. See pages 81,82 of PBP. (Severity: 4)
One-argument "select" used at line 6983, column 2. See page 224 of PBP. (Severity: 4)
Subroutine "testslive" does not end with "return" at line 7462, column 1. See page 197 of PBP. (Severity: 4)
Return value of eval not tested at line 7484, column 17. You can't depend upon the value of $@/$EVAL_ERROR to tell whether an eval failed. (Severity: 3)
Return value of eval not tested at line 7523, column 17. You can't depend upon the value of $@/$EVAL_ERROR to tell whether an eval failed. (Severity: 3)