pytest/changelog
..
.gitignore
4112.improvement.rst
6649.doc.rst
6649.misc.rst
6985.improvement.rst
7683.improvement.rst
8612.doc.rst
9037.bugfix.rst
10224.improvement.rst
10404.bugfix.rst
10839.deprecation.rst
11067.bugfix.rst
11118.improvement.rst
11372.breaking.rst
11381.improvement.rst
11525.improvement.rst
11538.feature.rst
12008.bugfix.rst
12017.contrib.rst
12081.feature.rst
12346.breaking.rst
12426.improvement.rst
12504.feature.rst
12535.doc.rst
12647.contrib.rst
12707.improvement.rst
12713.feature.rst
12749.feature.rst
12765.feature.rst
12863.bugfix.rst
12874.breaking.rst
12938.bugfix.rst
12943.improvement.rst
12946.bugfix.rst
12958.improvement.rst
12960.breaking.rst
12981.bugfix.rst
13010.improvement.rst
13016.improvement.rst
13031.improvement.rst
13047.bugfix.rst
13115.improvement.rst
13119.bugfix.rst
13122.improvement.rst
13125.feature.rst
13175.bugfix.rst
13192.feature.1.rst
13192.feature.2.rst
13192.feature.rst
13218.doc.rst
13221.doc.rst
13228.feature.rst
13248.bugfix.rst
13253.feature.rst
13291.bugfix.rst
13317.packaging.rst
13345.bugfix.rst
13377.bugfix.rst
README.rst
_template.rst

README.rst

This directory contains "newsfragments" which are short files that contain a small **ReST**-formatted
text that will be added to the next ``CHANGELOG``.

The ``CHANGELOG`` will be read by **users**, so this description should be aimed to pytest users
instead of describing internal changes which are only relevant to the developers.

Make sure to use full sentences in the **past or present tense** and use punctuation, examples::

    Improved verbose diff output with sequences.

    Terminal summary statistics now use multiple colors.

Each file should be named like ``<ISSUE>.<TYPE>.rst``, where
``<ISSUE>`` is an issue number, and ``<TYPE>`` is one of:

* ``feature``: new user facing features, like new command-line options and new behavior.
* ``improvement``: improvement of existing functionality, usually without requiring user intervention (for example, new fields being written in ``--junit-xml``, improved colors in terminal, etc).
* ``bugfix``: fixes a bug.
* ``doc``: documentation improvement, like rewording an entire session or adding missing docs.
* ``deprecation``: feature deprecation.
* ``breaking``: a change which may break existing suites, such as feature removal or behavior change.
* ``vendor``: changes in packages vendored in pytest.
* ``packaging``: notes for downstreams about unobvious side effects
  and tooling. changes in the test invocation considerations and
  runtime assumptions.
* ``contrib``: stuff that affects the contributor experience. e.g.
  Running tests, building the docs, setting up the development
  environment.
* ``misc``: changes that are hard to assign to any of the above
  categories.

So for example: ``123.feature.rst``, ``456.bugfix.rst``.

.. tip::

   See :file:`pyproject.toml` for all available categories
   (``tool.towncrier.type``).

If your PR fixes an issue, use that number here. If there is no issue,
then after you submit the PR and get the PR number you can add a
changelog using that instead.

If you are not sure what issue type to use, don't hesitate to ask in your PR.

``towncrier`` preserves multiple paragraphs and formatting (code blocks, lists, and so on), but for entries
other than ``features`` it is usually better to stick to a single paragraph to keep it concise.

You can also run ``tox -e docs`` to build the documentation
with the draft changelog (``doc/en/_build/html/changelog.html``) if you want to get a preview of how your change will look in the final release notes.