README.rst
1.. Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0
2.. For details: https://bitbucket.org/ned/coveragepy/src/default/NOTICE.txt
3
4===========
5Coverage.py
6===========
7
8Code coverage testing for Python.
9
10| |license| |versions| |status| |docs|
11| |ci-status| |win-ci-status| |codecov|
12| |kit| |format| |repos|
13| |tidelift| |saythanks|
14
15.. downloads badge seems to be broken... |downloads|
16
17Coverage.py measures code coverage, typically during test execution. It uses
18the code analysis tools and tracing hooks provided in the Python standard
19library to determine which lines are executable, and which have been executed.
20
21.. |tideliftlogo| image:: https://nedbatchelder.com/pix/Tidelift_Logo_small.png
22 :width: 75
23 :alt: Tidelift
24 :target: https://tidelift.com/subscription/pkg/pypi-coverage?utm_source=pypi-coverage&utm_medium=referral&utm_campaign=readme
25
26.. list-table::
27 :widths: 10 100
28
29 * - |tideliftlogo|
30 - Professional support for coverage.py is available as part of the `Tidelift
31 Subscription`_. Tidelift gives software development teams a single source for
32 purchasing and maintaining their software, with professional grade assurances
33 from the experts who know it best, while seamlessly integrating with existing
34 tools.
35
36.. _Tidelift Subscription: https://tidelift.com/subscription/pkg/pypi-coverage?utm_source=pypi-coverage&utm_medium=referral&utm_campaign=readme
37
38Coverage.py runs on many versions of Python:
39
40* CPython 2.6, 2.7 and 3.3 through beta 3.8.
41* PyPy2 6.0 and PyPy3 6.0.
42* Jython 2.7.1, though not for reporting.
43* IronPython 2.7.7, though not for reporting.
44
45Documentation is on `Read the Docs`_. Code repository and issue tracker are on
46`GitHub`_.
47
48.. _Read the Docs: https://coverage.readthedocs.io/
49.. _GitHub: https://github.com/nedbat/coveragepy
50
51
52**New in 4.5:** Configurator plug-ins.
53
54New in 4.4: Suppressable warnings, continuous coverage measurement.
55
56New in 4.3: HTML ``--skip-covered``, sys.excepthook support, tox.ini
57support.
58
59New in 4.2: better support for multiprocessing and combining data.
60
61New in 4.1: much-improved branch coverage.
62
63New in 4.0: ``--concurrency``, plugins for non-Python files, setup.cfg
64support, --skip-covered, HTML filtering, and more than 50 issues closed.
65
66
67Getting Started
68---------------
69
70See the `Quick Start section`_ of the docs.
71
72.. _Quick Start section: https://coverage.readthedocs.io/#quick-start
73
74
75Contributing
76------------
77
78See the `Contributing section`_ of the docs.
79
80.. _Contributing section: https://coverage.readthedocs.io/en/latest/contributing.html
81
82
83Security
84--------
85
86To report a security vulnerability, please use the `Tidelift security
87contact`_. Tidelift will coordinate the fix and disclosure.
88
89.. _Tidelift security contact: https://tidelift.com/security
90
91
92License
93-------
94
95Licensed under the `Apache 2.0 License`_. For details, see `NOTICE.txt`_.
96
97.. _Apache 2.0 License: http://www.apache.org/licenses/LICENSE-2.0
98.. _NOTICE.txt: https://bitbucket.org/ned/coveragepy/src/default/NOTICE.txt
99
100
101.. |ci-status| image:: https://travis-ci.org/nedbat/coveragepy.svg?branch=master
102 :target: https://travis-ci.org/nedbat/coveragepy
103 :alt: Build status
104.. |win-ci-status| image:: https://ci.appveyor.com/api/projects/status/kmeqpdje7h9r6vsf/branch/master?svg=true
105 :target: https://ci.appveyor.com/project/nedbat/coveragepy
106 :alt: Windows build status
107.. |docs| image:: https://readthedocs.org/projects/coverage/badge/?version=latest&style=flat
108 :target: https://coverage.readthedocs.io/
109 :alt: Documentation
110.. |reqs| image:: https://requires.io/github/nedbat/coveragepy/requirements.svg?branch=master
111 :target: https://requires.io/github/nedbat/coveragepy/requirements/?branch=master
112 :alt: Requirements status
113.. |kit| image:: https://badge.fury.io/py/coverage.svg
114 :target: https://pypi.python.org/pypi/coverage
115 :alt: PyPI status
116.. |format| image:: https://img.shields.io/pypi/format/coverage.svg
117 :target: https://pypi.python.org/pypi/coverage
118 :alt: Kit format
119.. |downloads| image:: https://img.shields.io/pypi/dw/coverage.svg
120 :target: https://pypi.python.org/pypi/coverage
121 :alt: Weekly PyPI downloads
122.. |versions| image:: https://img.shields.io/pypi/pyversions/coverage.svg
123 :target: https://pypi.python.org/pypi/coverage
124 :alt: Python versions supported
125.. |status| image:: https://img.shields.io/pypi/status/coverage.svg
126 :target: https://pypi.python.org/pypi/coverage
127 :alt: Package stability
128.. |license| image:: https://img.shields.io/pypi/l/coverage.svg
129 :target: https://pypi.python.org/pypi/coverage
130 :alt: License
131.. |codecov| image:: http://codecov.io/github/nedbat/coveragepy/coverage.svg?branch=master&precision=2
132 :target: http://codecov.io/github/nedbat/coveragepy?branch=master
133 :alt: Coverage!
134.. |repos| image:: https://repology.org/badge/tiny-repos/python:coverage.svg
135 :target: https://repology.org/metapackage/python:coverage/versions
136 :alt: Packaging status
137.. |saythanks| image:: https://img.shields.io/badge/saythanks.io-%E2%98%BC-1EAEDB.svg
138 :target: https://saythanks.io/to/nedbat
139 :alt: Say thanks :)
140.. |tidelift| image:: https://tidelift.com/badges/github/nedbat/coveragepy
141 :target: https://tidelift.com/subscription/pkg/pypi-coverage?utm_source=pypi-coverage&utm_medium=referral&utm_campaign=readme
142 :alt: Tidelift
143