DebugClients/Python3/coverage/doc/CHANGES.txt

changeset 29
391dc0bc4ae5
parent 0
de9c2efb9d02
child 3495
fac17a82b431
equal deleted inserted replaced
28:dde24fc7f7ba 29:391dc0bc4ae5
1 ------------------------------ 1 ------------------------------
2 Change history for Coverage.py 2 Change history for Coverage.py
3 ------------------------------ 3 ------------------------------
4 4
5 5
6 Version 3.2, 5 December 2009
7 ----------------------------
8
9 - Added a --version options on the command line.
10
11
12 Version 3.2b4, 1 December 2009
13 ------------------------------
14
15 - Branch coverage improvements:
16
17 - The XML report now includes branch information.
18
19 - Click-to-sort HTML report columns are now persisted in a cookie. Viewing
20 a report will sort it first the way you last had a coverage report sorted.
21 Thanks, `Chris Adams`_.
22
23 - On Python 3.x, setuptools has been replaced by `Distribute`_.
24
25 .. _Distribute: http://packages.python.org/distribute/
26
27
28 Version 3.2b3, 23 November 2009
29 -------------------------------
30
31 - Fixed a memory leak in the C tracer that was introduced in 3.2b1.
32
33 - Branch coverage improvements:
34
35 - Branches to excluded code are ignored.
36
37 - The table of contents in the HTML report is now sortable: click the headers
38 on any column. Thanks, `Chris Adams`_.
39
40 .. _Chris Adams: http://improbable.org/chris/
41
42
43 Version 3.2b2, 19 November 2009
44 -------------------------------
45
46 - Branch coverage improvements:
47
48 - Classes are no longer incorrectly marked as branches: `issue 32`_.
49
50 - "except" clauses with types are no longer incorrectly marked as branches:
51 `issue 35`_.
52
53 - Fixed some problems syntax coloring sources with line continuations and
54 source with tabs: `issue 30`_ and `issue 31`_.
55
56 - The --omit option now works much better than before, fixing `issue 14` and
57 `issue 33`_. Thanks, Danek Duvall.
58
59 .. _issue 14: http://bitbucket.org/ned/coveragepy/issue/14
60 .. _issue 30: http://bitbucket.org/ned/coveragepy/issue/30
61 .. _issue 31: http://bitbucket.org/ned/coveragepy/issue/31
62 .. _issue 32: http://bitbucket.org/ned/coveragepy/issue/32
63 .. _issue 33: http://bitbucket.org/ned/coveragepy/issue/33
64 .. _issue 35: http://bitbucket.org/ned/coveragepy/issue/35
65
66
67 Version 3.2b1, 10 November 2009
68 -------------------------------
69
70 - Branch coverage!
71
72 - XML reporting has file paths that let Cobertura find the source code.
73
74 - The tracer code has changed, it's a few percent faster.
75
76 - Some exceptions reported by the command line interface have been cleaned up
77 so that tracebacks inside coverage.py aren't shown. Fixes `issue 23`_.
78
79 .. _issue 23: http://bitbucket.org/ned/coveragepy/issue/23
80
81
82 Version 3.1, 4 October 2009
83 ---------------------------
84
85 - Source code can now be read from eggs. Thanks, Ross Lawley. Fixes
86 `issue 25`_.
87
88 .. _issue 25: http://bitbucket.org/ned/coveragepy/issue/25
89
90
91 Version 3.1b1, 27 September 2009
92 --------------------------------
93
94 - Python 3.1 is now supported.
95
96 - Coverage.py has a new command line syntax with sub-commands. This expands
97 the possibilities for adding features and options in the future. The old
98 syntax is still supported. Try "coverage help" to see the new commands.
99 Thanks to Ben Finney for early help.
100
101 - Added an experimental "coverage xml" command for producing coverage reports
102 in a Cobertura-compatible XML format. Thanks, Bill Hart.
103
104 - Added the --timid option to enable a simpler slower trace function that works
105 for DecoratorTools projects, including TurboGears. Fixed `issue 12`_ and
106 `issue 13`_.
107
108 - HTML reports show modules from other directories. Fixed `issue 11`_.
109
110 - HTML reports now display syntax-colored Python source.
111
112 - Programs that change directory will still write .coverage files in the
113 directory where execution started. Fixed `issue 24`_.
114
115 - Added a "coverage debug" command for getting diagnostic information about the
116 coverage.py installation.
117
118 .. _issue 11: http://bitbucket.org/ned/coveragepy/issue/11
119 .. _issue 12: http://bitbucket.org/ned/coveragepy/issue/12
120 .. _issue 13: http://bitbucket.org/ned/coveragepy/issue/13
121 .. _issue 24: http://bitbucket.org/ned/coveragepy/issue/24
122
123
6 Version 3.0.1, 7 July 2009 124 Version 3.0.1, 7 July 2009
7 -------------------------- 125 --------------------------
8 126
9 - Removed the recursion limit in the tracer function. Previously, code that 127 - Removed the recursion limit in the tracer function. Previously, code that
10 ran more than 500 frames deep would crash. 128 ran more than 500 frames deep would crash. Fixed `issue 9`.
11 129
12 - Fixed a bizarre problem involving pyexpat, whereby lines following XML parser 130 - Fixed a bizarre problem involving pyexpat, whereby lines following XML parser
13 invocations could be overlooked. 131 invocations could be overlooked. Fixed `issue 10`.
14 132
15 - On Python 2.3, coverage.py could mis-measure code with exceptions being 133 - On Python 2.3, coverage.py could mis-measure code with exceptions being
16 raised. This is now fixed. 134 raised. This is now fixed.
17 135
18 - The coverage.py code itself will now not be measured by coverage.py, and no 136 - The coverage.py code itself will now not be measured by coverage.py, and no
19 coverage modules will be mentioned in the nose --with-cover plugin. 137 coverage modules will be mentioned in the nose --with-cover plug-in. Fixed
138 `issue 8`.
20 139
21 - When running source files, coverage.py now opens them in universal newline 140 - When running source files, coverage.py now opens them in universal newline
22 mode just like Python does. This lets it run Windows files on Mac, for 141 mode just like Python does. This lets it run Windows files on Mac, for
23 example. 142 example.
24 143
144 .. _issue 9: http://bitbucket.org/ned/coveragepy/issue/9
145 .. _issue 10: http://bitbucket.org/ned/coveragepy/issue/10
146 .. _issue 8: http://bitbucket.org/ned/coveragepy/issue/8
147
25 148
26 Version 3.0, 13 June 2009 149 Version 3.0, 13 June 2009
27 ------------------------- 150 -------------------------
28 151
29 - Fixed the way the Python library was ignored. Too much code was being 152 - Fixed the way the Python library was ignored. Too much code was being
30 excluded the old way. 153 excluded the old way.
31 154
32 - Tabs are now properly converted in HTML reports. Previously indentation was 155 - Tabs are now properly converted in HTML reports. Previously indentation was
33 lost. 156 lost. Fixed `issue 6`.
34 157
35 - Nested modules now get a proper flat_rootname. Thanks, Christian Heimes. 158 - Nested modules now get a proper flat_rootname. Thanks, Christian Heimes.
159
160 .. _issue 6: http://bitbucket.org/ned/coveragepy/issue/6
36 161
37 162
38 Version 3.0b3, 16 May 2009 163 Version 3.0b3, 16 May 2009
39 -------------------------- 164 --------------------------
40 165
41 - Added parameters to coverage.__init__ for options that had been set on the 166 - Added parameters to coverage.__init__ for options that had been set on the
42 coverage object itself. 167 coverage object itself.
43 168
44 - Added clear_exclude() and get_exclude_list() methods for programmatic 169 - Added clear_exclude() and get_exclude_list() methods for programmatic
45 manipulation of the exclude regexes. 170 manipulation of the exclude regexes.
46 171
47 - Added coverage.load() to read previously-saved data from the data file. 172 - Added coverage.load() to read previously-saved data from the data file.
48 173
49 - Improved the finding of code files. For example, .pyc files that have been 174 - Improved the finding of code files. For example, .pyc files that have been
50 installed after compiling are now located correctly. Thanks, Detlev 175 installed after compiling are now located correctly. Thanks, Detlev
51 Offenbach. 176 Offenbach.
52 177
53 - When using the object api (that is, constructing a coverage() object), data 178 - When using the object API (that is, constructing a coverage() object), data
54 is no longer saved automatically on process exit. You can re-enable it with 179 is no longer saved automatically on process exit. You can re-enable it with
55 the auto_data=True parameter on the coverage() constructor. The module-level 180 the auto_data=True parameter on the coverage() constructor. The module-level
56 interface still uses automatic saving. 181 interface still uses automatic saving.
57 182
58 183
96 much faster. Thanks to David Christian for productive micro-sprints and 221 much faster. Thanks to David Christian for productive micro-sprints and
97 other encouragement. 222 other encouragement.
98 223
99 - Executable lines are identified by reading the line number tables in the 224 - Executable lines are identified by reading the line number tables in the
100 compiled code, removing a great deal of complicated analysis code. 225 compiled code, removing a great deal of complicated analysis code.
101 226
102 - Precisely which lines are considered executable has changed in some cases. 227 - Precisely which lines are considered executable has changed in some cases.
103 Therefore, your coverage stats may also change slightly. 228 Therefore, your coverage stats may also change slightly.
104 229
105 - The singleton coverage object is only created if the module-level functions 230 - The singleton coverage object is only created if the module-level functions
106 are used. This maintains the old interface while allowing better 231 are used. This maintains the old interface while allowing better
107 programmatic use of Coverage. 232 programmatic use of Coverage.
108 233
109 - The minimum supported Python version is 2.3. 234 - The minimum supported Python version is 2.3.
110 235
111 236
112 Version 2.85, 14 September 2008 237 Version 2.85, 14 September 2008
113 ------------------------------- 238 -------------------------------
114 239
115 - Add support for finding source files in eggs. Don't check for 240 - Add support for finding source files in eggs. Don't check for
116 morf's being instances of ModuleType, instead use duck typing so that 241 morf's being instances of ModuleType, instead use duck typing so that
117 pseudo-modules can participate. Thanks, Imri Goldberg. 242 pseudo-modules can participate. Thanks, Imri Goldberg.
118 243
119 - Use os.realpath as part of the fixing of filenames so that symlinks won't 244 - Use os.realpath as part of the fixing of file names so that symlinks won't
120 confuse things. Thanks, Patrick Mezard. 245 confuse things. Thanks, Patrick Mezard.
121 246
122 247
123 Version 2.80, 25 May 2008 248 Version 2.80, 25 May 2008
124 ------------------------- 249 -------------------------
128 253
129 Version 2.78, 30 September 2007 254 Version 2.78, 30 September 2007
130 ------------------------------- 255 -------------------------------
131 256
132 - Don't try to predict whether a file is Python source based on the extension. 257 - Don't try to predict whether a file is Python source based on the extension.
133 Extensionless files are often Pythons scripts. Instead, simply parse the file 258 Extension-less files are often Pythons scripts. Instead, simply parse the file
134 and catch the syntax errors. Hat tip to Ben Finney. 259 and catch the syntax errors. Hat tip to Ben Finney.
135 260
136 261
137 Version 2.77, 29 July 2007 262 Version 2.77, 29 July 2007
138 -------------------------- 263 --------------------------
168 mode is invoked, and fix erase() so that it erases the cache when called 293 mode is invoked, and fix erase() so that it erases the cache when called
169 programmatically. 294 programmatically.
170 295
171 - In reports, ignore code executed from strings, since we can't do anything 296 - In reports, ignore code executed from strings, since we can't do anything
172 useful with it anyway. 297 useful with it anyway.
173 298
174 - Better file handling on Linux, thanks Guillaume Chazarain. 299 - Better file handling on Linux, thanks Guillaume Chazarain.
175 300
176 - Better shell support on Windows, thanks Noel O'Boyle. 301 - Better shell support on Windows, thanks Noel O'Boyle.
177 302
178 - Python 2.2 support maintained, thanks Catherine Proulx. 303 - Python 2.2 support maintained, thanks Catherine Proulx.
196 Version 2.5, 4 December 2005 321 Version 2.5, 4 December 2005
197 ---------------------------- 322 ----------------------------
198 323
199 - Call threading.settrace so that all threads are measured. Thanks Martin 324 - Call threading.settrace so that all threads are measured. Thanks Martin
200 Fuzzey. 325 Fuzzey.
201 326
202 - Add a file argument to report so that reports can be captured to a different 327 - Add a file argument to report so that reports can be captured to a different
203 destination. 328 destination.
204 329
205 - coverage.py can now measure itself. 330 - coverage.py can now measure itself.
206 331
207 - Adapted Greg Rogers' patch for using relative filenames, and sorting and 332 - Adapted Greg Rogers' patch for using relative file names, and sorting and
208 omitting files to report on. 333 omitting files to report on.
209 334
210 335
211 Version 2.2, 31 December 2004 336 Version 2.2, 31 December 2004
212 ----------------------------- 337 -----------------------------
230 other quirks of Python execution aren't mistakenly identified as missing 355 other quirks of Python execution aren't mistakenly identified as missing
231 lines. 356 lines.
232 357
233 - Lines can be excluded from consideration, even entire suites of lines. 358 - Lines can be excluded from consideration, even entire suites of lines.
234 359
235 - The filesystem cache of covered lines can be disabled programmatically. 360 - The file system cache of covered lines can be disabled programmatically.
236 361
237 - Modernized the code. 362 - Modernized the code.
238 363
239 364
240 Earlier History 365 Earlier History

eric ide

mercurial