pydocstyle
Python docstring style checker
Decision gist · record as of 2026-08-14
Yes, but with caution. pydocstyle remains functional for enforcing PEP 257 docstring conventions and has low install friction. However, the project is archived and abandoned—no maintenance since 2023-11-03. Install it if you need a stable, lightweight docstring linter for existing codebases, but be aware that compatibility with future Python versions is not guaranteed and no bug fixes or updates will be released.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.6 or later; the project is no longer maintained, so compatibility with Python versions released after 2023-01-17 is not guaranteed.
- Low install friction with only two lightweight runtime dependencies (snowballstemmer and importlib-metadata).
- However, the project is archived and abandoned as of 2023-11-03, with no releases since 2023-01-17—maintenance has stopped.
License · maintenance · safety
MIT (permissive) — MIT license is permissive and imposes no restrictions on use, modification, or distribution in your own projects.
last release 2023-01-17 (1305 days) · last repo commit 2023-11-03 · 1,116 stars · archived
0 known vulnerabilities (OSV.dev, 2026-08-14) · 4,949,358 downloads/mo, #2,190 on PyPI
Alternatives
Verify before relying
pip install pydocstyle
# Run from command line
pydocstyle mymodule.py
# Or import and use programmatically
from pydocstyle import checker
results = checker.check(['mymodule.py'])- Whether pydocstyle still works correctly with Python 3.10, 3.11, and later versions given the project's abandoned status.
- Whether the tool's PEP 257 implementation remains aligned with current best practices or if newer docstring standards have emerged.
- Active community forks or maintained alternatives that may have superseded this package.
What it is and what it does
pydocstyle is a static docstring checker that enforces PEP 257 conventions across your Python codebase. It scans files and reports violations like missing docstrings, incorrect quote styles, and improper blank line placement around docstrings. The tool runs from the command line and integrates into CI/CD pipelines or development workflows to catch documentation style issues early.
The package depends on snowballstemmer for linguistic processing and importlib-metadata for runtime metadata access. It supports Python 3.6 and later, though the project itself has been archived and is no longer actively maintained—the last release was 2023-01-17 and the repository received its final commit on 2023-11-03.
Use it for
- Enforce consistent docstring formatting across a team's Python codebase during code review or CI/CD checks.
- Identify missing or malformed docstrings in existing projects before documentation generation.
- Validate that public APIs and functions meet PEP 257 documentation standards automatically.
- Integrate into pre-commit hooks to catch docstring style violations before commits are pushed.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, but with caution.
pydocstyle remains functional for enforcing PEP 257 docstring conventions and has low install friction. However, the project is archived and abandoned—no maintenance since 2023-11-03. Install it if you need a stable, lightweight docstring linter for existing codebases, but be aware that compatibility with future Python versions is not guaranteed and no bug fixes or updates will be released.
Install
pydocstyle on PyPI
Before you install
Low install friction with only two lightweight runtime dependencies (snowballstemmer and importlib-metadata). However, the project is archived and abandoned as of 2023-11-03, with no releases since 2023-01-17—maintenance has stopped.
Requires Python 3.6 or later; the project is no longer maintained, so compatibility with Python versions released after 2023-01-17 is not guaranteed.
License in practice
MIT license is permissive and imposes no restrictions on use, modification, or distribution in your own projects.
Quickstart
pip install pydocstyle
# Run from command line
pydocstyle mymodule.py
# Or import and use programmatically
from pydocstyle import checker
results = checker.check(['mymodule.py'])
Verify before relying
- Whether pydocstyle still works correctly with Python 3.10, 3.11, and later versions given the project's abandoned status.
- Whether the tool's PEP 257 implementation remains aligned with current best practices or if newer docstring standards have emerged.
- Active community forks or maintained alternatives that may have superseded this package.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.6 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagessnowballstemmerimportlib-metadata |
| Maintenance | Abandoned 1,305 days since the last release |
| Last repo commit | repository archived |
| First released | |
| Downloads | 4,949,358 / month, #2,190 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: pydocstyle-6.3.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “docstring style checker”
- pydocstylepydocstyle is a static analysis tool that checks Python docstrings…
- pydocstringformatterAutomatically formats Python docstrings to comply with PEP 8 and PEP…
- flake8-docstringsIntegrates pydocstyle docstring checking into flake8, allowing you to…
Give your agent the search over MCP, or paste the wish link into any chat.
More Quality Assurance packages
Coverage.py measures which lines of Python code are executed during test runs, reporting coverage percentages and identifying untested code paths.
Install it if you want to measure test completeness or enforce coverage thresholds in your project.
Ruff is a Python linter and code formatter written in Rust that combines linting, formatting, and code fixing into a single tool, replacing Flake8, Black, isort, and related utilities.
Pexpect spawns and controls interactive console applications by sending input and matching output patterns, automating tasks that would otherwise require manual interaction.
Black reformats Python source code to a consistent style by parsing entire files and rewriting them according to an opinionated, deterministic set of rules, eliminating manual formatting decisions.
pytest-xdist distributes pytest tests across multiple CPU cores or machines to speed up test execution, with the simplest usage being `pytest -n auto` to spawn workers equal to available CPUs.
Install it if your test suite takes long enough that parallelization would save meaningful time.
Validates AWS CloudFormation templates in YAML or JSON format against resource provider schemas and best practices, checking property values and configuration correctness.
Install it if you work with CloudFormation templates.
See also flake8-docstrings · pydocstringformatter · pydoclint · docformatter · pycodestyle · docstr-coverage · flake8-rst-docstrings · pep8 · pylint-quotes · pydoctor