Skip to content

refactor: consolidate mypy and ruff config into pyproject.toml #368

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
May 3, 2025

Conversation

sooperset
Copy link
Owner

Description

This PR consolidates the configuration for MyPy and Ruff into the central pyproject.toml file, following modern Python packaging standards (PEP 518/621). The separate mypy.ini, ruff.toml, and .pylintrc files are removed to reduce root directory clutter and improve project organization. All relevant settings are now under [tool.mypy] and [tool.ruff] in pyproject.toml.

Fixes: # (see PLAN.md for context)

Changes

  • Migrated all MyPy settings from mypy.ini to [tool.mypy] in pyproject.toml
  • Migrated all Ruff settings from ruff.toml to [tool.ruff] in pyproject.toml
  • Deleted mypy.ini, ruff.toml, and .pylintrc from the project root
  • Updated pyproject.toml to include all previous configuration, preserving overrides and per-file ignores
  • No changes to runtime code or functionality

Testing

  • Unit tests added/updated
  • Integration tests passed
  • Manual checks performed:
    • Ran ruff check . and ruff format . to verify Ruff uses the new config
    • Ran mypy . to verify MyPy uses the new config
    • Ran pre-commit run --all-files to ensure hooks work with consolidated config
    • Verified all tests pass and linting is enforced as before

Checklist

  • Code follows project style guidelines (linting passes).
  • Tests added/updated for changes.
  • All tests pass locally.
  • Documentation updated (if needed).

sooperset added 2 commits May 3, 2025 17:53
… into pyproject.toml

This commit deletes the old .pylintrc, mypy.ini, and ruff.toml files, consolidating their configurations into the pyproject.toml file. This streamlines project configuration management and ensures all settings are centralized for easier maintenance.
@sooperset sooperset merged commit 44b6894 into main May 3, 2025
5 checks passed
@sooperset sooperset deleted the refactor/consolidate-config-files branch May 3, 2025 09:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant