summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--TODO.txt7
-rw-r--r--coverage/collector.py5
2 files changed, 9 insertions, 3 deletions
diff --git a/TODO.txt b/TODO.txt
index b45c2c87..d2cf8d37 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -1,9 +1,12 @@
Coverage TODO
* Cleanups discovered while doing --source:
- - PyTracer doesn't use should_trace_cache!!
+ + PyTracer doesn't use should_trace_cache!!
- optparse recommends using make_option, not Option constructor
-
+* --source stuff:
+ - warn if a package is never found.
+ - warn if no data was collected
+ - tie --source into reporting
* plugin work
+ add --cover-include.
diff --git a/coverage/collector.py b/coverage/collector.py
index 06ccda7e..55211f2a 100644
--- a/coverage/collector.py
+++ b/coverage/collector.py
@@ -60,7 +60,10 @@ class PyTracer(object):
# in this file.
self.data_stack.append((self.cur_file_data, self.last_line))
filename = frame.f_code.co_filename
- tracename = self.should_trace(filename, frame)
+ tracename = self.should_trace_cache.get(filename)
+ if tracename is None:
+ tracename = self.should_trace(filename, frame)
+ self.should_trace_cache[filename] = tracename
if tracename:
if tracename not in self.data:
self.data[tracename] = {}