{"id":4934,"library":"doc8","title":"RST Documentation Style Checker","description":"doc8 is an opinionated style checker for reStructuredText (RST) based documentation, including Sphinx-compatible projects. It helps enforce style guidelines for `.rst` and plain text files. The library is currently at version 2.0.0, with a release cadence that addresses Python compatibility, bugfixes, and minor enhancements.","status":"active","version":"2.0.0","language":"en","source_language":"en","source_url":"https://github.com/pycqa/doc8","tags":["linter","documentation","rst","sphinx","style-checker","qa"],"install":[{"cmd":"pip install doc8","lang":"bash","label":"Install stable version"}],"dependencies":[{"reason":"Requires Python 3.10 or newer.","package":"python","optional":false}],"imports":[{"note":"Can be used programmatically by importing the main function.","symbol":"doc8","correct":"from doc8 import doc8"}],"quickstart":{"code":"pip install doc8\ndoc8 path/to/your/docs","lang":"bash","description":"Run doc8 against a directory containing your reStructuredText documentation to check for style violations."},"warnings":[{"fix":"Upgrade your Python environment to 3.10 or newer. For older Python versions, use doc8 < 2.0.0, e.g., `pip install 'doc8<2.0.0'`.","message":"Version 2.0.0 and newer explicitly require Python 3.10 or higher. Users on older Python versions (e.g., 3.9 or below) must upgrade their Python environment to use the latest doc8.","severity":"breaking","affected_versions":"2.0.0+"},{"fix":"Ensure your project's Python version meets the minimum requirements for the doc8 version you intend to use.","message":"Support for Python 3.7 was removed in v1.1.1. Further, Python 3.6 support was dropped in v1.0.0, and Python 2.7/3.5 support in v0.9.0.","severity":"breaking","affected_versions":"1.1.1+, 1.0.0+, 0.9.0+"},{"fix":"Migrate your configuration to `pyproject.toml` for future compatibility. Example configuration structures can be found in the official documentation.","message":"Configuration files have evolved. While `setup.cfg`, `doc8.ini`, `tox.ini`, and `.config/doc8.ini` are supported, `pyproject.toml` is the modern and preferred method for configuration. Ensure your configuration is correctly placed under a `[tool.doc8]` section in `pyproject.toml`.","severity":"gotcha","affected_versions":"All versions with `pyproject.toml` support (0.9.0+)"},{"fix":"Explicitly set the file encoding using the `--file-encoding` option if your documentation files are not UTF-8.","message":"The `chardet` based input encoding detection was removed in v0.9.0, meaning `doc8` no longer attempts to automatically detect file encodings.","severity":"gotcha","affected_versions":"0.9.0+"}],"env_vars":null,"last_verified":"2026-04-12T00:00:00.000Z","next_check":"2026-07-11T00:00:00.000Z"}