File: config.rst

package info (click to toggle)
pydocstyle 6.3.0-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 776 kB
  • sloc: python: 5,183; makefile: 162
file content (87 lines) | stat: -rw-r--r-- 2,752 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
``pydocstyle`` supports *ini*-like and *toml* configuration files.
In order for ``pydocstyle`` to use a configuration file automatically, it must
be named one of the following options.

* ``setup.cfg``
* ``tox.ini``
* ``.pydocstyle``
* ``.pydocstyle.ini``
* ``.pydocstylerc``
* ``.pydocstylerc.ini``
* ``pyproject.toml``

When searching for a configuration file, ``pydocstyle`` looks for one of the
file specified above *in that exact order*. *ini*-like configuration files must
have a ``[pydocstyle]`` section while *toml* configuration files must have a
``[tool.pydocstyle]`` section. If a configuration file was not found,
``pydocstyle`` keeps looking for one up the directory tree until one is found
or uses the default configuration.

.. note::

    *toml* configuration file support is only enabled if the ``toml`` python
    package is installed. You can ensure that this is the case by installing
    the ``pydocstyle[toml]`` optional dependency.

.. note::

    For backwards compatibility purposes, **pydocstyle** supports configuration
    files named ``.pep257``, as well as section header ``[pep257]``. However,
    these are considered deprecated and support will be removed in the next
    major version.

Available Options
#################

Not all configuration options are available in the configuration files.
Available options are:

* ``convention``
* ``select``
* ``ignore``
* ``add_select``
* ``add_ignore``
* ``match``
* ``match_dir``
* ``ignore_decorators``
* ``property_decorators``
* ``ignore_self_only_init``

See the :ref:`cli_usage` section for more information.

Inheritance
###########

By default, when finding a configuration file, ``pydocstyle`` tries to inherit
the parent directory's configuration and merge them to the local ones.

The merge process is as follows:

* If one of ``select``, ``ignore`` or ``convention`` was specified in the child
  configuration - Ignores the parent configuration and set the new error codes
  to check. Otherwise, simply copies the parent checked error codes.
* If ``add-ignore`` or ``add-select`` were specified, adds or removes the
  specified error codes from the checked error codes list.
* If ``match`` or ``match-dir`` were specified - use them. Otherwise, use the
  parent's.

In order to disable this (useful for configuration files located in your repo's
root), simply add ``inherit=false`` to your configuration file.


.. note::

  If any of ``select``, ``ignore`` or ``convention`` were specified in
  the CLI, the configuration files will take no part in choosing which error
  codes will be checked. ``match`` and ``match-dir`` will still take effect.

Example
#######

.. code::

    [pydocstyle]
    inherit = false
    ignore = D100,D203,D405
    match = .*\.py