This PR introduces a series of structural and configuration changes aimed at improving the maintainability, performance, and simplicity of the project. Key changes include transitioning to a src-based layout, consolidating configuration files, and optimizing the linting setup.
Changes
Moved from a flat project structure to a src-based layout.
Removed setup.cfg and MANIFEST.in.
Merged their relevant contents into pyproject.toml, streamlining the configuration management.
The pyproject.toml now serves as the central configuration file, encapsulating build system requirements and tool configurations as suggested in PEP621.
Replaced individual tools isort, flake8, and black with ruff.
Ruff offers a unified, fast, and highly configurable approach to linting and formatting.
Updated pyproject.tomlto include ruff configuration, ensuring it adheres to the project's style guidelines.
This PR introduces a series of structural and configuration changes aimed at improving the maintainability, performance, and simplicity of the project. Key changes include transitioning to a
src
-based layout, consolidating configuration files, and optimizing the linting setup.Changes
setup.cfg
andMANIFEST.in
.pyproject.toml
, streamlining the configuration management.pyproject.toml
now serves as the central configuration file, encapsulating build system requirements and tool configurations as suggested in PEP621.isort
,flake8
, andblack
withruff
.pyproject.toml
to includeruff
configuration, ensuring it adheres to the project's style guidelines.