chore: replace darglint with pydoclint#151
Conversation
Migrates docstring linting from archived darglint to pydoclint per updated standards manifest (TOOL-007/PC-006/TOOL-013). Adds pydoclint >=0.8.4 to dev deps, [tool.pydoclint] config block (google style), and pydoclint pre-commit hook. darglint was absent so this is a net addition. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Converts NumPy-style Args/Returns dash-underlines to Google style, adds missing Returns sections (DOC201/203), adds type hints to docstring arg entries (DOC105/109/110), and adds type annotations to ExampleModel class attributes to satisfy DOC605. All 59 violations resolved; pydoclint now exits clean. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Combines __init__ docstring into class docstring (DOC301), converts NumPy-style sections to Google style, adds CONFIG_ERROR_MSG attribute to class Attributes section (DOC601/603), and adds type annotation to the class attribute. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Warning Review limit reached
More reviews will be available in 45 minutes and 14 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (8)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
FIPS Compatibility Check: PASSED
|
There was a problem hiding this comment.
Pull request overview
Migrates docstring linting from the archived darglint to pydoclint (Google style) and fixes the resulting 59 violations across the codebase. Since darglint wasn't actually wired into this repo, this PR is effectively net-new docstring linting plus the docstring fixups required to make it pass.
Changes:
- Add
pydoclint>=0.8.4dev dependency,[tool.pydoclint]config block, and a pinned pre-commit hook. - Convert NumPy-style docstrings to Google style across
encryption.py,plaid_service.py,security.py, andconfig.py(remove dash underlines, normalize type hints). - Add missing
Returns:sections inerror_handlers.py/config.py, foldEncryptor.__init__docstring into the class docstring, and add type annotations toExampleModelcolumns.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| pyproject.toml | Adds pydoclint dev dep and configures Google style with lenient Returns/Yields. |
| .pre-commit-config.yaml | New pinned pydoclint hook; exclude list differs from pyproject config. |
| encryption.py | Converts NumPy- to Google-style docstrings; merges __init__ Raises into class docstring. |
| src/ledgerbase/config.py | Adds explicit return types and signature-style hints to docstring args. |
| src/ledgerbase/error_handlers.py | Adds Returns sections to the three error handlers. |
| src/ledgerbase/models.py | Annotates id/name columns as int/str (misleading vs SQLAlchemy Column semantics). |
| src/ledgerbase/security.py | Drops NumPy dash underlines, normalizes section headers. |
| src/services/plaid_service.py | Replaces NumPy-style headers and Optional[Dict[...]] with PEP 604 union types in docstrings. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| id: int = db.Column(db.Integer, primary_key=True) | ||
| name: str = db.Column(db.String(50), nullable=False) |
| args: ["--config=pyproject.toml"] | ||
| types: [python] | ||
| stages: [pre-commit] | ||
| exclude: ^(tests|scripts|benchmarks|tools)/ |
Summary
Changes
Test plan
Generated with Claude Code