Skip to content

[Enhancement] Adopt a Modern Python Development Toolchain #85

@lcy-seso

Description

@lcy-seso

The project currently lacks standardized tooling for testing, formatting, linting, and static type checking. Adopting a modern Python toolchain will improve code quality, consistency, and contributor experience, while aligning the project with current community best practices.

Proposed Tooling

Area Tool Purpose
Testing pytest Unit and integration testing
Linting ruff Fast linting, import sorting, and bug detection
Formatting black Opinionated, consistent code formatting
Type Checking mypy Static type checking using Python type hints

Proposed Changes

  • Add the above tools as development dependencies
  • Introduce or update pyproject.toml with tool configurations
  • Organize tests under a standard tests/ directory
  • Update documentation with instructions for:
    • Running tests
    • Running linting / formatting
    • Running type checks
  • Add CI checks to enforce these tools

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions