line |
true |
false |
branch |
687
|
346 |
3060 |
if (my $handler = delete $params{'handler'}) |
689
|
346 |
0 |
unless ($subclass eq $class) |
690
|
0 |
346 |
unless eval "require $subclass" |
697
|
716 |
2344 |
if (ref $params{'filters'} eq 'ARRAY') |
700
|
777 |
1 |
unless $pkg =~ /::/ |
701
|
308 |
470 |
if ($filters{$pkg}) { } |
707
|
0 |
470 |
unless eval "require $pkg" |
711
|
116 |
769 |
unless my $code = *{$v;}{'CODE'} |
722
|
966 |
2094 |
unless ref $params{'to'} |
726
|
3 |
3057 |
if $params{'verbose'} |
728
|
1 |
3059 |
unless $params{'repos_path'} |
730
|
1 |
3058 |
unless $params{'revision'} |
741
|
3050 |
8 |
unless $params{'smtp'} |
744
|
0 |
8 |
unless $params{'sendmail'} or $params{'smtp'} |
747
|
210 |
2848 |
if ($params{'language'} and not $ENV{'LANG'}) |
751
|
0 |
420 |
if uc $encoding ne 'UTF-8' |
760
|
0 |
3058 |
if ($params{'revision_url'} and not $params{'revision_url'} =~ /%s/) |
767
|
77 |
2981 |
if ($params{'ticket_regex'}) |
773
|
283 |
11949 |
if ($params{$param}) |
776
|
0 |
283 |
unless $track->{$system} =~ /%s/ |
779
|
77 |
2981 |
if $track |
782
|
3 |
3055 |
if $params{'verbose'} |
830
|
665 |
0 |
if (my $opt = shift()) |
920
|
0 |
4 |
unless Getopt::Long::GetOptions('repos-path|p=s', \$opts->{'repos_path'}, 'revision|r=s', \$opts->{'revision'}, 'to|t=s@', \$opts->{'to'}, 'to-regex-map|x=s%', \$opts->{'to_regex_map'}, 'to-email-map=s%', \$opts->{'to_email_map'}, 'from|f=s', \$opts->{'from'}, 'user-domain|D=s', \$opts->{'user_domain'}, 'svnlook|l=s', \$opts->{'svnlook'}, 'sendmail|s=s', \$opts->{'sendmail'}, 'set-sender|E', \$opts->{'set_sender'}, 'smtp=s', \$opts->{'smtp'}, 'smtp-port=i', \$opts->{'smtp_port'}, 'smtp-tls!', \$opts->{'smtp_tls'}, 'encoding|charset|c=s', \$opts->{'encoding'}, 'diff-encoding=s', \$opts->{'diff_encoding'}, 'svn-encoding=s', \$opts->{'svn_encoding'}, 'language|g=s', \$opts->{'language'}, 'with-diff|d', \$opts->{'with_diff'}, 'attach-diff|a', \$opts->{'attach_diff'}, 'diff-switches|w=s', \$opts->{'diff_switches'}, 'diff-content-type=s', \$opts->{'diff_content_type'}, 'reply-to|R=s', \$opts->{'reply_to'}, 'subject-prefix|P=s', \$opts->{'subject_prefix'}, 'subject-cx|C', \$opts->{'subject_cx'}, 'strip-cx-regex|X=s@', \$opts->{'strip_cx_regex'}, 'no-first-line|O', \$opts->{'no_first_line'}, 'max-sub-length|i=i', \$opts->{'max_sub_length'}, 'max-diff-length|e=i', \$opts->{'max_diff_length'}, 'handler|H=s', \$opts->{'handler'}, 'filter|F=s@', \$opts->{'filters'}, 'author-url|A=s', \$opts->{'author_url'}, 'ticket-regex=s', \$opts->{'ticket_regex'}, 'ticket-map=s%', \$opts->{'ticket_map'}, 'verbose|V+', \$opts->{'verbose'}, 'help|h', \$opts->{'help'}, 'man|m', \$opts->{'man'}, 'version|v', \$opts->{'version'}, 'header=s', \$opts->{'header'}, 'footer=s', \$opts->{'footer'}, 'smtp-user=s', \$opts->{'smtp_user'}, 'smtp-pass=s', \$opts->{'smtp_pass'}, 'smtp-authtype=s', \$opts->{'smtp_authtype'}, 'add-header=s%', sub {
shift();
push @{$opts->{'add_headers'}{shift()};}, shift();
}
, 'revision-url|U|svnweb-url|S|viewcvs-url=s', \$opts->{'revision_url'}, 'rt-url|T|bugzilla-url|B|jira-url|J|gnats-url|G|ticket-url=s', \$opts->{'ticket_url'}) |
923
|
1 |
3 |
if (my $hand = $opts->{'handler'}) |
924
|
0 |
1 |
unless eval 'require SVN::Notify' . "::$hand" |
925
|
0 |
1 |
if ($hand eq 'Alternative') |
930
|
0 |
0 |
unless $opts->{'alternatives'} |
931
|
0 |
0 |
unless eval 'require SVN::Notify' . "::$alt" |
937
|
1 |
3 |
if ($opts->{'filters'}) |
939
|
1 |
0 |
unless $pkg =~ /::/ |
940
|
0 |
1 |
unless eval "require $pkg" |
947
|
2 |
2 |
if (%OPTS) { } |
989
|
26 |
58 |
if $opts->{$opt} |
1047
|
1 |
2 |
if -f $file and -x _ |
1083
|
1 |
0 |
unless @{$self->{'to'};} or $self->{'to_regex_map'} or $self->{'to_email_map'} |
1085
|
0 |
2707 |
unless @{$self->{'to'};} |
1114
|
3 |
2796 |
if $self->{'verbose'} |
1115
|
2493 |
71 |
unless ($self->{'to_regex_map'} or $self->{'subject_cx'} or $self->{'to_email_map'}) |
1130
|
71 |
160 |
$self->{'to_email_map'} ? : |
|
75 |
231 |
$self->{'to_regex_map'} ? : |
|
0 |
306 |
$self->{'to_regex_map'} && $self->{'to_email_map'} ? : |
1133
|
146 |
160 |
if ($regexen) { } |
1135
|
0 |
146 |
if $self->{'verbose'} > 1 |
1137
|
0 |
438 |
if $self->{'verbose'} > 2 |
1146
|
0 |
306 |
if $self->{'svn_env_lang'} |
1163
|
2448 |
6192 |
if (/$rx/) |
1164
|
0 |
2448 |
if $self->{'verbose'} > 2 |
1165
|
288 |
2160 |
unless $seen{$email}++ |
1169
|
2113 |
2880 |
if ($self->{'subject_cx'}) |
1177
|
0 |
300 |
if $self->{'subject_cx'} and $self->{'verbose'} > 1 |
1178
|
0 |
300 |
unless close $fh |
1182
|
0 |
300 |
if $self->{'verbose'} > 1 |
1200
|
3 |
2790 |
if $self->{'verbose'} |
1201
|
210 |
2583 |
if $self->{'svn_env_lang'} |
1210
|
2709 |
0 |
unless ($self->{'from'}) |
1212
|
43 |
2666 |
$self->{'user_domain'} ? : |
1216
|
2 |
2707 |
if ($self->{'verbose'} > 1) |
1243
|
2 |
2707 |
if $self->{'verbose'} |
1245
|
207 |
2502 |
if $self->{'svn_env_lang'} |
1258
|
46761 |
0 |
if (s/^(.)(.)\s+//) |
1259
|
0 |
46761 |
if $self->{'verbose'} > 2 |
1261
|
2404 |
44357 |
if $2 ne ' ' and $1 ne '_' |
1265
|
51 |
2574 |
if ($self->{'subject_cx'} and $. == 1) |
1270
|
0 |
51 |
if $self->{'verbose'} > 1 |
1274
|
0 |
2625 |
unless close $fh |
1298
|
1 |
2624 |
if $self->{'verbose'} |
1303
|
127 |
2498 |
if (defined $self->{'subject_prefix'}) { } |
1304
|
59 |
68 |
if (index($self->{'subject_prefix'}, '%d') > 0) { } |
1316
|
148 |
2477 |
if ($self->{'cx'}) |
1317
|
42 |
106 |
if (my $rx = $self->{'strip_cx_regex'}) |
1320
|
42 |
106 |
$self->{'no_first_line'} ? : |
1321
|
148 |
0 |
if $self->{'cx'} |
1325
|
2583 |
42 |
unless ($self->{'no_first_line'}) |
1328
|
2583 |
0 |
if $min > 10 |
1332
|
2538 |
45 |
$i > 0 ? : |
1338
|
45 |
2580 |
if $self->{'max_sub_length'} and length $self->{'subject'} > $self->{'max_sub_length'} |
1342
|
1 |
2624 |
if $self->{'verbose'} |
1362
|
1 |
2624 |
if $self->{'verbose'} |
1364
|
0 |
2625 |
unless @{$self->{'to'};} |
1366
|
4 |
2621 |
$self->{'smtp'} ? : |
1367
|
204 |
2417 |
if $self->{'env_lang'} |
1372
|
0 |
2621 |
$self->{'set_sender'} ? : |
1379
|
0 |
2514 |
unless close $out |
1380
|
1 |
2513 |
if $self->{'verbose'} |
1424
|
1 |
2661 |
if $self->{'verbose'} > 1 |
1425
|
2434 |
228 |
unless $no_headers |
1431
|
704 |
1958 |
if ($self->{'with_diff'}) { } |
1434
|
155 |
520 |
if ($self->{'attach_diff'}) { } |
1462
|
0 |
2543 |
if $self->{'verbose'} > 2 |
1467
|
2155 |
388 |
$self->{'subject'} =~ /(?:\P{ASCII}|=)/s ? : |
1476
|
2932 |
2502 |
if ($addr) { } |
1477
|
0 |
2932 |
if (my $phrase = $addr->phrase) |
1503
|
64 |
2479 |
if $self->{'reply_to'} |
1505
|
1 |
2542 |
if (my $heads = $self->{'add_headers'}) |
1507
|
1 |
1 |
ref $v ? : |
1536
|
0 |
2662 |
if $self->{'verbose'} > 2 |
1538
|
159 |
2503 |
if ($self->{'attach_diff'}) |
1546
|
159 |
2503 |
if $self->{'attach_diff'} |
1548
|
201 |
2461 |
$self->{'language'} ? : |
1567
|
15 |
1570 |
$self->{'header'} ? : |
1569
|
62 |
1523 |
if $start and @$start |
1589
|
103 |
1507 |
if (my $url = $self->{'revision_url'}) |
1595
|
32 |
1578 |
if (my $url = $self->{'author_url'}) |
1617
|
1 |
1584 |
if $self->{'verbose'} > 1 |
1625
|
103 |
1482 |
if (my $url = $self->{'revision_url'}) |
1626
|
103 |
0 |
if (my(@matches) = $msg =~ /\b(?:(?:rev(?:ision)?\s*#?\s*|r)(\d+))\b/gi) |
1633
|
26 |
1559 |
if (my $map = $self->ticket_map) |
1638
|
26 |
208 |
unless ($has_header) |
1664
|
0 |
1607 |
unless my $files = $self->{'files'} |
1665
|
1 |
1606 |
if $self->{'verbose'} > 1 |
1672
|
369 |
6059 |
unless $files->{$type} |
1674
|
0 |
6059 |
if $self->{'verbose'} > 2 |
1704
|
0 |
1576 |
if $self->{'verbose'} > 2 |
1705
|
15 |
1561 |
$self->{'footer'} ? : |
1707
|
62 |
1514 |
if $end and @$end |
1724
|
0 |
228 |
if $self->{'verbose'} > 1 |
1741
|
0 |
155 |
if $self->{'verbose'} > 2 |
1746
|
75 |
80 |
$self->{'language'} ? : |
1765
|
155 |
2478 |
if $self->{'attach_diff'} |
1785
|
0 |
65 |
unless my $map = $self->ticket_map |
1806
|
36852 |
1329 |
unless my $filters = $self->{'filters'}{$type} |
1853
|
48 |
0 |
if defined $_ |
1858
|
48 |
656 |
$self->{'diff_switches'} ? : |
1873
|
12 |
371 |
if (my $max = $self->{'max_diff_length'}) { } |
1877
|
276 |
12 |
if (($length += length $_) < $max) { } |
1894
|
0 |
383 |
unless close $diff |
1955
|
32729 |
53 |
unless @_ |
1973
|
156 |
0 |
unless @_ |
1974
|
0 |
0 |
if (my $url = shift()) { } |
1988
|
117 |
0 |
wantarray ? : |
|
117 |
0 |
unless @_ |
2333
|
5 |
9128 |
if $self->{'verbose'} |
2346
|
0 |
9133 |
unless defined $pid |
2348
|
8848 |
285 |
if ($pid) { } |
2350
|
8848 |
0 |
if $encode |
2354
|
0 |
0 |
unless exec @_ |
2370
|
0 |
2709 |
unless close $fh |
2389
|
3 |
0 |
unless $0 =~ /\bsvnnotify(?:[.]bat)?$/ |
2421
|
1 |
3 |
$notifier->{'smtp_port'} ? : |
|
0 |
4 |
$notifier->{'smtp_tls'} ? : |
|
1 |
3 |
$notifier->{'smtp_user'} ? : |
|
1 |
3 |
$notifier->{'smtp_pass'} ? : |
|
1 |
3 |
$notifier->{'verbose'} ? : |
|
0 |
4 |
unless my $smtp = 'Net::SMTP::TLS'->new($notifier->{'smtp'}, 'Hello', Sys::Hostname::hostname(), $notifier->{'smtp_port'} ? ('Port', $notifier->{'smtp_port'}) : (), $notifier->{'smtp_tls'} ? () : ('NoTLS', 1), $notifier->{'smtp_user'} ? ('User', $notifier->{'smtp_user'}) : (), $notifier->{'smtp_pass'} ? ('Password', $notifier->{'smtp_pass'}) : (), $notifier->{'verbose'} ? ('Debug', 1) : ()) |