4066696956
Version 4.1 --- 2016-05-21 - The internal attribute Reporter.file_reporters was removed in 4.1b3. It should have come has no surprise that there were third-party tools out there using that attribute. It has been restored, but with a deprecation warning. Version 4.1b3 --- 2016-05-10 - When running your program, execution can jump from an except X: line to some other line when an exception other than X happens. This jump is no longer considered a branch when measuring branch coverage. - When measuring branch coverage, yield statements that were never resumed were incorrectly marked as missing. This is now fixed. - During branch coverage of single-line callables like lambdas and generator expressions, coverage.py can now distinguish between them never being called, or being called but not completed. - The HTML report now has a map of the file along the rightmost edge of the page, giving an overview of where the missed lines are. Thanks, Dmitry Shishov. - The HTML report now uses different monospaced fonts, favoring Consolas over Courier. Along the way not properly handling one-space indents was fixed. The index page also has slightly different styling, to try to make the clickable detail pages more apparent. - Missing branches reported with coverage report -m will now say ->exit for missed branches to the exit of a function, rather than a negative number. - coverage --help and coverage --version now mention which tracer is installed, to help diagnose problems. The docs mention which features need the C extension. - Officially support PyPy 5.1, which required no changes, just updates to the docs. - The Coverage.report function had two parameters with non-None defaults, which have been changed. show_missing used to default to True, but now defaults to None. If you had been calling Coverage.report without specifying show_missing, you'll need to explicitly set it to True to keep the same behavior. skip_covered used to default to False. It is now None, which doesn't change the behavior. - It's never been possible to pass a namespace module to one of the analysis functions, but now at least we raise a more specific error message, rather than getting confused. - The coverage.process_startup function now returns the Coverage instance it creates. - Make a small tweak to how we compare threads, to avoid buggy custom comparison code in thread classes. Version 4.1b2 --- 2016-01-23 - Problems with the new branch measurement in 4.1 beta 1 were fixed: - Class docstrings were considered executable. Now they no longer are. - yield from and await were considered returns from functions, since they could tranfer control to the caller. This produced unhelpful "missing branch" reports in a number of circumstances. Now they no longer are considered returns. - In unusual situations, a missing branch to a negative number was reported. - The XML report now produces correct package names for modules found in directories specified with source=. - coverage report won't produce trailing whitespace. Version 4.1b1 --- 2016-01-10 - Branch analysis has been rewritten: it used to be based on bytecode, but now uses AST analysis. This has changed a number of things: - More code paths are now considered runnable, especially in try/except structures. This may mean that coverage.py will identify more code paths as uncovered. This could either raise or lower your overall coverage number. - Python 3.5's async and await keywords are properly supported - Some long-standing branch coverage bugs were fixed: - functions with only a docstring for a body would incorrectly report a missing branch on the def line. - code in an except block could be incorrectly marked as a missing branch. - context managers (with statements) in a loop or try block could confuse the branch measurement, reporting incorrect partial branches. - In Python 3.5, an actual partial branch could be marked as complete. - Pragmas to disable coverage measurement can now be used on decorator lines, and they will apply to the entire function or class being decorated. - Multiprocessing support is now available on Windows. - Files with two encoding declarations are properly supported. - Non-ascii characters in regexes in the configuration file worked in 3.7, but stopped working in 4.0. Now they work again. - Form-feed characters would prevent accurate determination of the beginning of statements in the rest of the file. This is now fixed. |
||
---|---|---|
.. | ||
dev | ||
testbrowser_cpp | ||
__init__.py | ||
asciidoc2html.py | ||
hostblock_blame.py | ||
importer.py | ||
keytester.py | ||
link_pyqt.py | ||
setupcommon.py | ||
testbrowser.py | ||
utils.py |