Install & Compatibility
Where this runs
tested against v1.3.2 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.910 runs
installs and imports cleanly · install 0.0s · import 0.000s · 32.3MB
glibcpy 3.10–3.910 runs
installs and imports cleanly · install 5.5s · import 0.000s · 32MB
31MB installed
● package 31MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
check
✓ from rstcheck_core import check
✗ from rstcheck_core import check
This quickstart demonstrates how to use the `check` function from `rstcheck_core` to programmatically validate reStructuredText content. It will yield a series of (line_number, message) tuples for any detected issues.
from rstcheck_core import check
rst_content = '''
Example
=======
.. code:: python
print("Hello, rstcheck!")
.. code:: badlang
This language does not exist.
'''
issues = list(check(rst_content))
for line, message in issues:
print(f"Line {line}: {message}")
# Example with an actual error:
error_rst = '''
Bad RST
=======
This title underline is too short.
===
'''
issues_with_error = list(check(error_rst))
for line, message in issues_with_error:
print(f"Line {line}: {message}")
rstcheck --version
Debug
Known issues
breakingThe `rstcheck` project underwent a significant architectural change with version 6.0.0, where the core logic was extracted into the `rstcheck-core` library. Direct imports or interactions with internal `rstcheck` modules from versions 5.x or earlier will break when migrating to `rstcheck-core` or `rstcheck` v6+.fixUpdate import paths to use `rstcheck_core` where applicable. Review CLI options and configuration file keys as many were renamed or changed in `rstcheck` v6.
affects: rstcheck <6.0.0 (when migrating to rstcheck-core v1+)
gotchaWindows support for `rstcheck-core` is explicitly stated as not stable. Tests can fail with incorrect positives and negatives for unknown reasons, which may lead to unreliable linting results on Windows systems.fixFor critical usage, consider running `rstcheck-core` within a Linux environment (e.g., WSL, Docker) or use a CI/CD pipeline running on Linux. Monitor GitHub issues for updates on Windows stability.
affects: All versions
gotchaConfiguration settings defined in files (e.g., `.rstcheck.cfg`, `pyproject.toml`, `setup.cfg`) can be completely overridden by command-line interface (CLI) options. Additionally, `rstcheck-core` searches for configuration files by traversing up the directory tree from the checked file, which might lead to unexpected configuration being applied if not carefully managed.fixBe explicit with CLI options if overriding configuration is intended. If you need to debug which configuration file is being used, `rstcheck` (the CLI tool) has a `--log-level DEBUG` option that can help. Ensure your project structure and configuration file placement match the expected search behavior, or explicitly specify the config file path using `--config`.
affects: All versions
Upgrade
Version history
1.3.2latest on PyPI · released Aug 23, 2026
Audit
Dependencies
pythonrequiredRequires Python 3.9 or newer.
docutilsrequiredUsed internally for reStructuredText parsing.
sphinxoptionalOptional dependency for Sphinx integration (e.g., when installing `rstcheck[sphinx]`).
tomloptionalOptional dependency for TOML configuration file support (e.g., when installing `rstcheck[toml]`).
pyyamloptionalOptional dependency for YAML configuration file support (e.g., when installing `rstcheck[yaml]`).