Radio-Spectrum/SHARC

Modernize Python package build system: Migrate to pyproject.toml

Open

#234 建立於 2025年10月24日

在 GitHub 查看
 (3 留言) (0 反應) (0 負責人)Python (26 fork)auto 404
enhancementhelp wanted

倉庫指標

Star
 (11 star)
PR 合併指標
 (PR 指標待抓取)

描述

Current Status

The project currently uses an outdated package build configuration based on setup.py with several issues:

  • Using outdated Python package build system (setup.py)
  • Conflicting and outdated dependency specifications across multiple files
  • Support for EOL Python versions
  • Incomplete package requirements configuration
  • Outdated development and testing dependencies

Proposed Changes

1. Migration to Modern Build System

  • Replace setup.py, setup.cfg with pyproject.toml
  • Implement modern build backend using uv, hatchling orpoetry-core
  • Define clear dependency groups for runtime, development, and testing

2. Dependencies Cleanup

  • Move all runtime dependencies from requirements.txt to pyproject.toml
  • Update minimum Python version requirement to 3.10+
  • Resolve conflicting package versions
  • Remove support for EOL Python versions
  • Update all development dependencies to current versions

3. Testing and CI Updates

  • Modernize tox configuration for current Python versions (3.10-3.12)
  • Update testing tools:
    • pytest >= 7.0
    • coverage >= 7.0
    • tox >= 4.0
  • Add proper test coverage configuration
  • Add GitHub Actions workflow for CI

貢獻者指南