← Index
NYTProf Performance Profile   « line view »
For starman worker -M FindBin --max-requests 50 --workers 2 --user=kohadev-koha --group kohadev-koha --pid /var/run/koha/kohadev/plack.pid --daemonize --access-log /var/log/koha/kohadev/plack.log --error-log /var/log/koha/kohadev/plack-error.log -E deployment --socket /var/run/koha/kohadev/plack.sock /etc/koha/sites/kohadev/plack.psgi
  Run on Fri Jan 8 14:31:06 2016
Reported on Fri Jan 8 14:31:36 2016

Filename/usr/share/perl5/strictures.pm
StatementsExecuted 123 statements in 1.19ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
121211107µs316µsstrictures::::importstrictures::import
101010101µs198µsstrictures::::VERSIONstrictures::VERSION
11117µs26µsstrictures::::BEGIN@3strictures::BEGIN@3
11110µs10µsstrictures::::CORE:ftisstrictures::CORE:ftis (opcode)
1118µs22µsstrictures::::BEGIN@21strictures::BEGIN@21
1118µs24µsstrictures::::BEGIN@4strictures::BEGIN@4
1115µs5µsstrictures::::BEGIN@6strictures::BEGIN@6
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package strictures;
2
3245µs235µs
# spent 26µs (17+9) within strictures::BEGIN@3 which was called: # once (17µs+9µs) by Sub::Quote::BEGIN@3 at line 3
use strict;
# spent 26µs making 1 call to strictures::BEGIN@3 # spent 9µs making 1 call to strict::import
4277µs240µs
# spent 24µs (8+16) within strictures::BEGIN@4 which was called: # once (8µs+16µs) by Sub::Quote::BEGIN@3 at line 4
use warnings FATAL => 'all';
# spent 24µs making 1 call to strictures::BEGIN@4 # spent 16µs making 1 call to warnings::import
5
6
# spent 5µs within strictures::BEGIN@6 which was called: # once (5µs+0s) by Sub::Quote::BEGIN@3 at line 8
BEGIN {
715µs *_PERL_LT_5_8_4 = ($] < 5.008004) ? sub(){1} : sub(){0};
8183µs15µs}
# spent 5µs making 1 call to strictures::BEGIN@6
9
101400nsour $VERSION = '1.005005';
11
12
# spent 198µs (101+97) within strictures::VERSION which was called 10 times, avg 20µs/call: # once (15µs+20µs) by Sub::Quote::BEGIN@3 at line 3 of Sub/Quote.pm # once (13µs+13µs) by Moo::BEGIN@3 at line 3 of Moo.pm # once (12µs+11µs) by Method::Generate::Constructor::BEGIN@3 at line 3 of Method/Generate/Constructor.pm # once (9µs+10µs) by Moo::sification::BEGIN@3 at line 3 of Moo/sification.pm # once (12µs+7µs) by Method::Generate::Accessor::BEGIN@3 at line 3 of Method/Generate/Accessor.pm # once (11µs+8µs) by Moo::_mro::BEGIN@2 at line 2 of Moo/_mro.pm # once (8µs+7µs) by Moo::Object::BEGIN@3 at line 3 of Moo/Object.pm # once (8µs+8µs) by Moo::HandleMoose::_TypeMap::BEGIN@2 at line 2 of Moo/HandleMoose/_TypeMap.pm # once (7µs+7µs) by Sub::Defer::BEGIN@3 at line 3 of Sub/Defer.pm # once (6µs+7µs) by Moo::_Utils::BEGIN@11 at line 11 of Moo/_Utils.pm
sub VERSION {
13107µs my ($class, $version) = @_;
141012µs for ($version) {
151016µs last unless defined && !ref && int != 1;
16 die "Major version specified as $_ - this is strictures version 1";
17 }
18 # passing undef here may either warn or die depending on the version of perl.
19 # we can't match the caller's warning state in this case, so just disable the
20 # warning.
212404µs236µs
# spent 22µs (8+14) within strictures::BEGIN@21 which was called: # once (8µs+14µs) by Sub::Quote::BEGIN@3 at line 21
no warnings 'uninitialized';
# spent 22µs making 1 call to strictures::BEGIN@21 # spent 14µs making 1 call to warnings::unimport
2210182µs1097µs shift->SUPER::VERSION(@_);
# spent 97µs making 10 calls to version::vxs::_VERSION, avg 10µs/call
23}
24
251100nsour $extra_load_states;
26
27118µs110µsour $Smells_Like_VCS = (-e '.git' || -e '.svn' || -e '.hg'
# spent 10µs making 1 call to strictures::CORE:ftis
28 || (-e '../../dist.ini'
29 && (-e '../../.git' || -e '../../.svn' || -e '../../.hg' )));
30
31
# spent 316µs (107+209) within strictures::import which was called 12 times, avg 26µs/call: # once (7µs+31µs) by Moo::_Utils::BEGIN@11 at line 11 of Moo/_Utils.pm # once (12µs+25µs) by Method::Generate::Constructor::BEGIN@3 at line 3 of Method/Generate/Constructor.pm # once (10µs+21µs) by Moo::BEGIN@3 at line 3 of Moo.pm # once (15µs+15µs) by Moo::Object::BEGIN@3 at line 3 of Moo/Object.pm # once (10µs+19µs) by Method::Generate::Constructor::__ANON__[/usr/share/perl5/Method/Generate/Constructor.pm:202] at line 202 of Method/Generate/Constructor.pm # once (10µs+15µs) by Sub::Quote::BEGIN@3 at line 3 of Sub/Quote.pm # once (8µs+15µs) by Moo::sification::BEGIN@3 at line 3 of Moo/sification.pm # once (7µs+15µs) by DBIx::Class::Storage::BlockRunner::__ANON__[/usr/share/perl5/DBIx/Class/Storage/BlockRunner.pm:29] at line 29 of DBIx/Class/Storage/BlockRunner.pm # once (7µs+14µs) by Moo::_mro::BEGIN@2 at line 2 of Moo/_mro.pm # once (6µs+14µs) by Moo::HandleMoose::_TypeMap::BEGIN@2 at line 2 of Moo/HandleMoose/_TypeMap.pm # once (7µs+13µs) by Method::Generate::Accessor::BEGIN@3 at line 3 of Method/Generate/Accessor.pm # once (7µs+13µs) by Sub::Defer::BEGIN@3 at line 3 of Sub/Defer.pm
sub import {
3212133µs12102µs strict->import;
# spent 102µs making 12 calls to strict::import, avg 8µs/call
3312146µs12107µs warnings->import(FATAL => 'all');
# spent 107µs making 12 calls to warnings::import, avg 9µs/call
34
35126µs my $extra_tests = do {
36129µs if (exists $ENV{PERL_STRICTURES_EXTRA}) {
37 if (_PERL_LT_5_8_4 and $ENV{PERL_STRICTURES_EXTRA}) {
38 die 'PERL_STRICTURES_EXTRA checks are not available on perls older than 5.8.4: '
39 . "please unset \$ENV{PERL_STRICTURES_EXTRA}\n";
40 }
41129µs $ENV{PERL_STRICTURES_EXTRA};
42 } elsif (! _PERL_LT_5_8_4) {
43 !!((caller)[1] =~ /^(?:t|xt|lib|blib)/
44 and $Smells_Like_VCS)
45 }
46 };
471234µs if ($extra_tests) {
48 $extra_load_states ||= do {
49
50 my (%rv, @failed);
51 foreach my $mod (qw(indirect multidimensional bareword::filehandles)) {
52 eval "require $mod; \$rv{'$mod'} = 1;" or do {
53 push @failed, $mod;
54
55 # courtesy of the 5.8 require bug
56 # (we do a copy because 5.16.2 at least uses the same read-only
57 # scalars for the qw() list and it doesn't seem worth a $^V check)
58
59 (my $file = $mod) =~ s|::|/|g;
60 delete $INC{"${file}.pm"};
61 };
62 }
63
64 if (@failed) {
65 my $failed = join ' ', @failed;
66 print STDERR <<EOE;
67strictures.pm extra testing active but couldn't load all modules. Missing were:
68
69 $failed
70
71Extra testing is auto-enabled in checkouts only, so if you're the author
72of a strictures-using module you need to run:
73
74 cpan indirect multidimensional bareword::filehandles
75
76but these modules are not required by your users.
77EOE
78 }
79
80 \%rv;
81 };
82
83 indirect->unimport(':fatal') if $extra_load_states->{indirect};
84 multidimensional->unimport if $extra_load_states->{multidimensional};
85 bareword::filehandles->unimport if $extra_load_states->{'bareword::filehandles'};
86 }
87}
88
8914µs1;
90
91__END__
 
# spent 10µs within strictures::CORE:ftis which was called: # once (10µs+0s) by Sub::Quote::BEGIN@3 at line 27
sub strictures::CORE:ftis; # opcode