Skip to content

Proposal: Adopt pyproject.toml for Project Improvement #52

@iconFehu

Description

@iconFehu

Description:

Issue Description:

The current configuration file format in use shows signs of being outdated, potentially hindering the project's adaptability and distancing it from modern Python development practices. To address this, I propose migrating to pyproject.toml, a widely accepted standard for Python projects introduced by PEP 518 and implemented in Python 3.7. This move aims to ensure our project stays current and well-supported.

Advantages:

  • Standardization: pyproject.toml has become a widely accepted standard for Python project configuration. Adopting it will align our project with industry norms, fostering collaboration, and making integration with other tools and frameworks more straightforward.

  • Future-Proofing: By embracing pyproject.toml, we future-proof our project, ensuring compatibility with evolving Python standards and best practices. This is crucial for maintaining the project's long-term viability and reducing technical debt.

Historical Background:

The introduction of the pyproject.toml file was realized through PEP 518, titled "Specifying Minimum Build System Requirements for Python Projects." This PEP was accepted and implemented in Python 3.7, providing a standardized way to specify build system requirements for Python projects, replacing the previous use of setup.py or setup.cfg files.

Proposed Steps:

  1. Configuration Migration: Swiftly transition the existing configuration to pyproject.toml to align with best practices in the Python community.

  2. Documentation Update: Promptly update project documentation to guide users and contributors through the new pyproject.toml configuration structure.

  3. Testing and Validation: Rigorously test the project's build and dependency management under the new configuration to guarantee a smooth transition without compromising project stability.

Additional Context:

I am willing to actively contribute to this migration process and submit a Pull Request promptly.

Thank you for your attention to this matter.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions