Migrate to pyproject.toml-based configuration by RustyBower · Pull Request #1088 · scoringengine/scoringengine · GitHub
Skip to content

Migrate to pyproject.toml-based configuration#1088

Merged
RustyBower merged 3 commits into
masterfrom
claude/consolidate-config-files-2LxuC
Jan 24, 2026
Merged

Migrate to pyproject.toml-based configuration#1088
RustyBower merged 3 commits into
masterfrom
claude/consolidate-config-files-2LxuC

Conversation

@RustyBower

Copy link
Copy Markdown
Collaborator

Summary

This PR modernizes the project configuration by migrating from legacy setup files to a unified pyproject.toml configuration. This aligns with current Python packaging best practices and simplifies project maintenance.

Key Changes

  • Removed legacy configuration files:

    • Deleted setup.py - all package metadata now defined in pyproject.toml
    • Deleted .flake8 - linting configuration moved to pyproject.toml
  • Consolidated tool configurations in pyproject.toml:

    • Moved flake8 configuration to [tool.flake8] section
    • Added isort configuration with black-compatible settings (profile = "black", line_length = 120)
    • Added black configuration with matching line length (line-length = 120)
  • Updated version management:

    • Removed setup.py from bumpversion file tracking
    • Updated VERSION_MANAGEMENT.md to reflect that version bumping now only updates pyproject.toml and scoring_engine/version.py
    • Updated documentation to reference pyproject.toml configuration instead of .bumpversion.cfg

Benefits

  • Single source of truth: All project configuration now lives in pyproject.toml
  • Modern standards: Follows PEP 517/518 and current Python packaging conventions
  • Reduced maintenance: Fewer configuration files to manage and keep in sync
  • Better tooling support: Modern Python tools have native pyproject.toml support
  • Consistent formatting: Unified line length (120) across black, isort, and flake8

- Remove setup.py (redundant with pyproject.toml)
- Move .flake8 config to [tool.flake8] in pyproject.toml
- Add [tool.isort] and [tool.black] config for consistency
- Remove setup.py from bumpversion file list
- Update VERSION_MANAGEMENT.md to reflect changes
Remove references to deleted files (setup.py, .flake8, .bumpversion.cfg)
and update pyproject.toml description to mention it contains all tool config.
The .flake8 file was consolidated into pyproject.toml, but the tester
Dockerfile still tried to copy it. Flake8 6.0+ reads config from
pyproject.toml natively.
@RustyBower RustyBower merged commit 687cbb7 into master Jan 24, 2026
6 checks passed
@RustyBower RustyBower deleted the claude/consolidate-config-files-2LxuC branch March 25, 2026 14:49
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.

2 participants