1.. Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0
2.. For details: https://github.com/nedbat/coveragepy/blob/master/NOTICE.txt
3
4===========
5Coverage.py
6===========
7
8Code coverage testing for Python.
9
10|  |license| |versions| |status|
11|  |ci-status| |win-ci-status| |docs| |codecov|
12|  |kit| |format| |repos|
13|  |stars| |forks| |contributors|
14|  |tidelift| |twitter-coveragepy| |twitter-nedbat|
15
16Coverage.py measures code coverage, typically during test execution. It uses
17the code analysis tools and tracing hooks provided in the Python standard
18library to determine which lines are executable, and which have been executed.
19
20Coverage.py runs on many versions of Python:
21
22* CPython 2.7.
23* CPython 3.5 through 3.9 alpha 4.
24* PyPy2 7.3.0 and PyPy3 7.3.0.
25
26Documentation is on `Read the Docs`_.  Code repository and issue tracker are on
27`GitHub`_.
28
29.. _Read the Docs: https://coverage.readthedocs.io/
30.. _GitHub: https://github.com/nedbat/coveragepy
31
32
33**New in 5.0:** SQLite data storage, JSON report, contexts, relative filenames,
34dropped support for Python 2.6, 3.3 and 3.4.
35
36
37For Enterprise
38--------------
39
40.. |tideliftlogo| image:: https://nedbatchelder.com/pix/Tidelift_Logo_small.png
41   :width: 75
42   :alt: Tidelift
43   :target: https://tidelift.com/subscription/pkg/pypi-coverage?utm_source=pypi-coverage&utm_medium=referral&utm_campaign=readme
44
45.. list-table::
46   :widths: 10 100
47
48   * - |tideliftlogo|
49     - `Available as part of the Tidelift Subscription. <https://tidelift.com/subscription/pkg/pypi-coverage?utm_source=pypi-coverage&utm_medium=referral&utm_campaign=readme>`_
50       Coverage and thousands of other packages are working with
51       Tidelift to deliver one enterprise subscription that covers all of the open
52       source you use.  If you want the flexibility of open source and the confidence
53       of commercial-grade software, this is for you.
54       `Learn more. <https://tidelift.com/subscription/pkg/pypi-coverage?utm_source=pypi-coverage&utm_medium=referral&utm_campaign=readme>`_
55
56
57Getting Started
58---------------
59
60See the `Quick Start section`_ of the docs.
61
62.. _Quick Start section: https://coverage.readthedocs.io/#quick-start
63
64
65Change history
66--------------
67
68The complete history of changes is on the `change history page`_.
69
70.. _change history page: https://coverage.readthedocs.io/en/latest/changes.html
71
72
73Contributing
74------------
75
76See the `Contributing section`_ of the docs.
77
78.. _Contributing section: https://coverage.readthedocs.io/en/latest/contributing.html
79
80
81Security
82--------
83
84To report a security vulnerability, please use the `Tidelift security
85contact`_.  Tidelift will coordinate the fix and disclosure.
86
87.. _Tidelift security contact: https://tidelift.com/security
88
89
90License
91-------
92
93Licensed under the `Apache 2.0 License`_.  For details, see `NOTICE.txt`_.
94
95.. _Apache 2.0 License: http://www.apache.org/licenses/LICENSE-2.0
96.. _NOTICE.txt: https://github.com/nedbat/coveragepy/blob/master/NOTICE.txt
97
98
99.. |ci-status| image:: https://travis-ci.com/nedbat/coveragepy.svg?branch=master
100    :target: https://travis-ci.com/nedbat/coveragepy
101    :alt: Build status
102.. |win-ci-status| image:: https://ci.appveyor.com/api/projects/status/kmeqpdje7h9r6vsf/branch/master?svg=true
103    :target: https://ci.appveyor.com/project/nedbat/coveragepy
104    :alt: Windows build status
105.. |docs| image:: https://readthedocs.org/projects/coverage/badge/?version=latest&style=flat
106    :target: https://coverage.readthedocs.io/
107    :alt: Documentation
108.. |reqs| image:: https://requires.io/github/nedbat/coveragepy/requirements.svg?branch=master
109    :target: https://requires.io/github/nedbat/coveragepy/requirements/?branch=master
110    :alt: Requirements status
111.. |kit| image:: https://badge.fury.io/py/coverage.svg
112    :target: https://pypi.org/project/coverage/
113    :alt: PyPI status
114.. |format| image:: https://img.shields.io/pypi/format/coverage.svg
115    :target: https://pypi.org/project/coverage/
116    :alt: Kit format
117.. |downloads| image:: https://img.shields.io/pypi/dw/coverage.svg
118    :target: https://pypi.org/project/coverage/
119    :alt: Weekly PyPI downloads
120.. |versions| image:: https://img.shields.io/pypi/pyversions/coverage.svg?logo=python&logoColor=FBE072
121    :target: https://pypi.org/project/coverage/
122    :alt: Python versions supported
123.. |status| image:: https://img.shields.io/pypi/status/coverage.svg
124    :target: https://pypi.org/project/coverage/
125    :alt: Package stability
126.. |license| image:: https://img.shields.io/pypi/l/coverage.svg
127    :target: https://pypi.org/project/coverage/
128    :alt: License
129.. |codecov| image:: https://codecov.io/github/nedbat/coveragepy/coverage.svg?branch=master&precision=2
130    :target: https://codecov.io/github/nedbat/coveragepy?branch=master
131    :alt: Coverage!
132.. |repos| image:: https://repology.org/badge/tiny-repos/python:coverage.svg
133    :target: https://repology.org/metapackage/python:coverage/versions
134    :alt: Packaging status
135.. |tidelift| image:: https://tidelift.com/badges/package/pypi/coverage
136    :target: https://tidelift.com/subscription/pkg/pypi-coverage?utm_source=pypi-coverage&utm_medium=referral&utm_campaign=readme
137    :alt: Tidelift
138.. |stars| image:: https://img.shields.io/github/stars/nedbat/coveragepy.svg?logo=github
139    :target: https://github.com/nedbat/coveragepy/stargazers
140    :alt: Github stars
141.. |forks| image:: https://img.shields.io/github/forks/nedbat/coveragepy.svg?logo=github
142    :target: https://github.com/nedbat/coveragepy/network/members
143    :alt: Github forks
144.. |contributors| image:: https://img.shields.io/github/contributors/nedbat/coveragepy.svg?logo=github
145    :target: https://github.com/nedbat/coveragepy/graphs/contributors
146    :alt: Contributors
147.. |twitter-coveragepy| image:: https://img.shields.io/twitter/follow/coveragepy.svg?label=coveragepy&style=flat&logo=twitter&logoColor=4FADFF
148    :target: https://twitter.com/coveragepy
149    :alt: coverage.py on Twitter
150.. |twitter-nedbat| image:: https://img.shields.io/twitter/follow/nedbat.svg?label=nedbat&style=flat&logo=twitter&logoColor=4FADFF
151    :target: https://twitter.com/nedbat
152    :alt: nedbat on Twitter
153