Author: tim.bunce
Date: Mon Oct 27 17:59:49 2008
New Revision: 561

Added:
    trunk/xt/
    trunk/xt/test90-stress.p
Removed:
    trunk/t/test90-stress.p
Modified:
    trunk/Changes
    trunk/HACKING
    trunk/MANIFEST

Log:
Move t/test90-stress.p to xt/test90-stress.p
More random thoughts dumped into HACKING.
Tweak Changes.


Modified: trunk/Changes
==============================================================================
--- trunk/Changes       (original)
+++ trunk/Changes       Mon Oct 27 17:59:49 2008
@@ -41,7 +41,7 @@
    The html global subroutine index pages no longer list subs that
      were never called.

-  More readable formatting of timestamps inlined in the code.
+  Assorted report formating enhancements thanks to Gisle Aas.

    Exclusive and Inclusive time column positions have been switched
      to be consistent with how the times are presented elsewhere.

Modified: trunk/HACKING
==============================================================================
--- trunk/HACKING       (original)
+++ trunk/HACKING       Mon Oct 27 17:59:49 2008
@@ -302,10 +302,6 @@

  Report max recursion depth and reci_time per sub in per-file reports.

-Could add ::Data method to write source code for each fid into  
$dir/nytprof_src_$fid.txt
-OR, probably better, add method to return source code array ref, that  
defaults to returning
-the embeded source array, if available, else hunts for and loads current  
source file.
-
  Bug or limitation?: sub calls in a continue { ... } block of a while () get
  associated with the 'next;' within the loop.
  Also, test sub caller location for
@@ -315,3 +311,18 @@
        ... # no calls to foo() should appear here
    }

+Report could track which subs it has reported caller info for
+and so be able to identify subs that were called but haven't been included
+in the report because we didn't know where the sub was.
+They could them be included in a separate 'miscellaneous' page.
+This is a more general way to view the problem of xsubs in packages
+for which we don't have any perl source code.
+
+Investigate style.css problem when using --outfile=some/other/dir
+
+Could save 'current subname' in sub profiler so we can say A was called by  
B
+and not just A was called by line X of file Y. (Will need to SAVE* a link  
to
+previous current subname and restore it on return from sub.)
+
+Add per-package summary table like the per-sub stats to make it easier to  
see
+a package where a lot of time is being spent in lots of different subs.

Modified: trunk/MANIFEST
==============================================================================
--- trunk/MANIFEST      (original)
+++ trunk/MANIFEST      Mon Oct 27 17:59:49 2008
@@ -98,5 +98,5 @@
  t/test70-subexcl.p
  t/test80-recurs.p
  t/test80-recurs.rdt
-t/test90-stress.p
+xt/test90-stress.p
  typemap

Added: trunk/xt/test90-stress.p
==============================================================================
--- (empty file)
+++ trunk/xt/test90-stress.p    Mon Oct 27 17:59:49 2008
@@ -0,0 +1,27 @@
+# Assorted stress tests
+# We're happy if we run this without dieing...
+
+my $is_developer = (-d '.svn');
+
+check_readonly() if $is_developer;
+
+sub check_readonly {
+    unless (eval { require Readonly }) {
+        warn "readonly test skipped - Readonly module not installed\n";
+        return;
+    }
+    # Check for #   "Invalid tie at .../Readonly.pm line 278"
+    # which was noticed first around r266 (when Readonly::XS is not  
installed).
+    # Looks like it only affects perl <5.8.8. It's not related to
+    # the DB::DB workaround because it happens with use_db_sub=0 as well.
+    # Readonly uses caller() to explicitly check where it's being called  
from:
+    #   my $whence = (caller 2)[3];    # Check if naughty user is trying  
to tie directly.
+    #   Readonly::croak "Invalid tie"  unless $whence && $whence =~  
/^Readonly::(?:Scalar1?|Readonly)$/;
+    eval q{
+        Readonly::Scalar  my $sca => 42;
+        Readonly::Array   my @arr => qw(A B C);
+        Readonly::Hash    my %has => (A => 1, B => 2);
+        1;
+    } or die;
+    #warn "ok - readonly\n";
+}

--~--~---------~--~----~------------~-------~--~----~
You've received this message because you are subscribed to
the Devel::NYTProf Development User group.

Group hosted at:  http://groups.google.com/group/develnytprof-dev
Project hosted at:  http://perl-devel-nytprof.googlecode.com
CPAN distribution:  http://search.cpan.org/dist/Devel-NYTProf

To post, email:  [email protected]
To unsubscribe, email:  [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---

Reply via email to