diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2010-06-13 22:28:36 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2010-06-13 22:28:36 -0400 |
commit | 3d1c1e7383bcb3ce0348a467b7b6dd8fde61d73f (patch) | |
tree | c47fa2a8755d1a43a0a3752decc8404031b8e9b2 | |
parent | bf5a93c1bd03e007219e616a6f6b0a30280dae30 (diff) | |
download | python-coveragepy-3d1c1e7383bcb3ce0348a467b7b6dd8fde61d73f.tar.gz |
Yikes: when using the Python tracing function, we haven't been caching the results of should_trace since <<changeset a480f40d1fa4>>
-rw-r--r-- | TODO.txt | 7 | ||||
-rw-r--r-- | coverage/collector.py | 5 |
2 files changed, 9 insertions, 3 deletions
@@ -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 06ccda7..55211f2 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] = {} |