summaryrefslogtreecommitdiff
path: root/coverage/tracer.c
Commit message (Collapse)AuthorAgeFilesLines
* Move tracer.c into a subdirectory, so we can split it up.Ned Batchelder2015-08-011-1415/+0
| | | | | --HG-- rename : coverage/tracer.c => coverage/ctracer/tracer.c
* Implement FileDisposition in C for speed. Final part of fix for #387.Ned Batchelder2015-08-011-26/+139
|
* Make the file more navigableNed Batchelder2015-07-311-4/+4
|
* Intern the SetAttr strings for uniformityNed Batchelder2015-07-311-2/+4
|
* Also intern method names for PyObject_CallMethod, though that matters far less.Ned Batchelder2015-07-311-4/+10
|
* Intern our stringsNed Batchelder2015-07-301-9/+53
|
* Add a stat for number of calls into Python objectsNed Batchelder2015-07-291-2/+12
| | | | | | Trying to track down a performance degradation between 3.7.1 and 4.0a7, I wondered if we accidentally called back into Python too many times. This counter shows that we did not... :(
* Use more specific names than 'plugins', since there will be more of them in ↵Ned Batchelder2015-07-241-4/+4
| | | | the future.
* Add license mention to the top of all files. #313.Ned Batchelder2015-07-241-1/+4
|
* Be more careful about reading bytecodes. #375Ned Batchelder2015-06-161-2/+14
|
* Be more disciplined about the values in should_trace_cache. #374.Ned Batchelder2015-06-141-7/+21
|
* Make sure not to call functions with an error set.Ned Batchelder2015-06-031-3/+3
| | | | | Python 3.5 is stricter about getting this right. So we have to call PyErr_Print to print and clear the error before calling the warn function.
* Used the wrong string macro, this fixes Py3Ned Batchelder2015-04-201-1/+1
|
* Fix another conflict.Ned Batchelder2015-04-201-1/+1
|
* I don't know how to resolve conflicts I guess.Ned Batchelder2015-04-201-4/+1
|
* Merge issue-324 fixNed Batchelder2015-04-201-3/+16
|\
| * Fix branch coverage for yield statements. #308 #324Ned Batchelder2015-04-201-4/+13
| | | | | | | | | | | | | | | | | | | | | | Turns out the "call" and "return" trace events are really "start frame" and "end frame". They happen not only when functions are entered and left, but when generators yield and resume. We aren't interested in arcs into and out of yield statements, so the trace functions look more closely to see what's really happening, and record an arc in human-friendly terms. Thanks for Mickie Betz for pushing on this bug, although her code is no longer here. :(
* | Stick to old-school C syntaxNed Batchelder2015-02-281-1/+2
| |
* | Last of the C extension review comments addressed.Ned Batchelder2015-02-281-11/+31
| |
* | Finish the plugin error checking in CTracer.Ned Batchelder2015-02-281-9/+50
| |
* | Refactor the plugin-disabler so we can use it in other places.Ned Batchelder2015-02-281-27/+69
| |
* | This seems to work better. Windows didn't like the other way.Ned Batchelder2015-02-261-3/+5
| |
* | More tracer.c improvements from code reviewNed Batchelder2015-02-261-11/+8
| |
* | No need to zero new memory, and be consistent about checking returnsNed Batchelder2015-02-261-48/+15
| |
* | Handle exceptions from dynamic_source_filename.Ned Batchelder2015-02-261-21/+65
| | | | | | | | This required disabling plugins from the C tracer.
* | Fix a symptom-less error in tracer.c, and lots of other suggested fixes ↵Ned Batchelder2015-02-211-4/+18
| | | | | | | | noted from Yhg1s.
* | Make branch=True get along with plugins.Ned Batchelder2015-02-181-12/+11
|/
* Do at least a little error checking on the return from line_number_range.Ned Batchelder2015-02-161-0/+3
|
* Fix some refcounting mistakesNed Batchelder2015-02-161-8/+8
|
* Refactor the trace function into smaller piecesNed Batchelder2015-02-151-219/+296
|
* Protect against misbehaving plugins.Ned Batchelder2015-02-151-3/+7
| | | | | Also, test some misbehavior, and move our own annotations of plugins into prefixed attributes.
* Fix a bad check that was causing mysterious py2/py3 differencesNed Batchelder2015-02-101-3/+1
|
* Don't need this any moreNed Batchelder2015-02-081-4/+0
|
* Plugin support is in C tracer as well as Python tracerNed Batchelder2015-02-081-48/+121
|
* Use goto-error style in more placesNed Batchelder2015-02-071-20/+35
|
* Move stats.errors stuff to reduce repetition and noiseNed Batchelder2015-02-061-15/+4
|
* Switch to 'goto error' style to reduce the number of DECREFs neededNed Batchelder2015-02-061-37/+27
|
* Don't need these includes any moreNed Batchelder2015-02-041-2/+0
|
* Use a WeakKeyDictionary to track coroutine objects to prevent leaks. Fixes #330.Ned Batchelder2014-11-081-3/+15
|
* More plugin re-shapingNed Batchelder2014-10-191-6/+6
|
* "concurrency" is a better name that "coroutine"Ned Batchelder2014-09-241-10/+10
| | | | | --HG-- rename : tests/test_coroutine.py => tests/test_concurrency.py
* Be struct about C declaration rules. Travis cares...Ned Batchelder2014-09-191-1/+3
|
* It's always worthwhile to get rid of trailing spacesNed Batchelder2014-09-171-1/+1
|
* Merge in the C implementation of coroutine support.Ned Batchelder2014-09-171-65/+187
|\
| * Remove a TODONed Batchelder2014-07-261-1/+1
| | | | | | | | | | --HG-- branch : c-coroutine
| * Finish implementation of coroutine_id_func in C tracer, but it doesn't make ↵Ned Batchelder2014-07-261-15/+77
| | | | | | | | | | | | | | gevent better. --HG-- branch : c-coroutine
| * Refactor DataStack code into its own functionsNed Batchelder2014-07-251-39/+79
| | | | | | | | | | --HG-- branch : c-coroutine
| * Refactor some C tracer code in prep for data stacksNed Batchelder2014-07-201-57/+59
| | | | | | | | | | --HG-- branch : c-coroutine
| * Start implementing coroutine tracing in C tracer, will be hard :(Ned Batchelder2014-07-201-0/+18
| | | | | | | | | | --HG-- branch : c-coroutine
* | Progress on pluginsNed Batchelder2014-09-141-0/+37
| |